이동평균 크로스오버에 기초한 트렌드 추적 전략

저자:차오장, 날짜: 2024-02-22 14:02:03
태그:

img

전반적인 설명

이 전략은 이동 평균의 크로스오버를 기반으로 시장 트렌드 방향을 판단하고 트렌드를 추적하는 양적 거래 전략입니다. 진입점과 출구점을 결정하기 위해 다른 매개 변수와 간단한 이동 평균의 크로스오버를 사용합니다.

전략 원칙

이 전략의 주요 판단 규칙은 다음과 같습니다.

  1. 단기 이동 평균이 하위에서 장기 이동 평균을 넘으면 시장이 상승 추세로 진입할 수 있음을 나타냅니다.

  2. 단기 이동 평균이 상위로부터 장기 이동 평균 아래로 넘어가면 시장이 하락 추세로 진입할 수 있음을 나타냅니다.

  3. 서로 다른 매개 변수를 가진 이동 평균을 사용하여 서로 다른 시간 스케일에서 트렌드를 판단하고 서로 다른 수준에서 트렌드를 추적합니다.

특히, 전략은 20일, 30일, 50일, 60일 및 200일 5개의 이동평균을 사용합니다. 20일 MA가 50일 MA를 넘으면 구매 신호입니다. 10일 MA가 30일 MA를 넘으면 판매 신호입니다. 다른 매개 변수의 MA를 사용하면 더 길고 짧은 시간 스케일에서 트렌드를 알 수 있습니다.

장점

MA 크로스오버에 기반한 이러한 트렌드 추적 전략은 다음과 같은 장점을 가지고 있습니다.

  1. 이해하기 쉽고 실행하기 쉽습니다.
  2. 시장 트렌드 방향과 강도를 효과적으로 결정할 수 있습니다.
  3. 서로 다른 매개 변수 설정은 다른 시간 스케일에서 트렌드를 추적 할 수 있습니다.
  4. MA 매개 변수를 조정하여 필요에 따라 매우 사용자 정의 할 수 있습니다.

위험성

이 전략에는 몇 가지 위험도 있습니다.

  1. MAs는 일정 지연을 초래할 수 있는 지연적 성격을 가지고 있습니다.
  2. 잘못된 MA 매개 변수 설정은 과도한 거래 신호와 불필요한 손실로 이어질 수 있습니다.
  3. 이 전략을 시장 연대 시에는 사용하지 말고, 시장이 분명하게 유행하는 시에만 사용하세요.

위험을 줄이기 위해 MA 매개 변수를 조정하고 매개 변수 설정을 최적화하고 다른 지표를 사용하여 의사결정을 도울 수 있습니다.

개선 할 수 있는 분야

우리는 다음 영역에서 이 전략을 최적화 할 수 있습니다:

  1. 최적의 매개 변수를 찾기 위해 MA 매개 변수를 최적화하고, 수익률을 높이는 동시에 거래 빈도를 줄입니다.
  2. 결정 정확성을 높이기 위해 RSI, KD와 같은 다른 기술 지표를 포함합니다.
  3. 스톱 로스 전략을 추가하여 위험을 효과적으로 제어합니다.
  4. 매개 변수 최적화와 전략 평가를 위한 복잡한 머신러닝 모델을 결합하고, 지속적으로 반복하고 업그레이드합니다.

결론

이것은 매우 기본적인 트렌드 추적 전략입니다. 그것은 MA 크로스오버 원리를 사용하여 시장 트렌드 방향을 결정합니다. 간단하고 효과적이며 이해하기 쉽고 구현하기 쉽습니다. 우리는 더 복잡한 양적 거래에 적합하도록 많은 확장 및 최적화를 할 수 있습니다. 전반적으로 이것은 구축 할 수있는 훌륭한 전략 프레임워크입니다.


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Grafik Formasyonları Alım-Satım Stratejisi", overlay=true)

// Inverse Head and Shoulders (İnverse Omuz-Baş-Omuz)
ihs_condition = ta.crossover(ta.sma(close, 50), ta.sma(close, 200))

// Head and Shoulders (Omuz-Baş-Omuz)
hs_condition = ta.crossunder(ta.sma(close, 50), ta.sma(close, 200))

// Flag Pattern (Bayrak Formasyonu)
flag_condition = ta.crossover(ta.sma(close, 10), ta.sma(close, 30))

// Triangle Pattern (Trekgen Formasyonu)
triangle_condition = ta.crossover(ta.sma(close, 20), ta.sma(close, 50))

// Pennant Pattern (Ters Bayrak Formasyonu)
pennant_condition = ta.crossunder(ta.sma(close, 10), ta.sma(close, 20))

// Inverse Triangle Pattern (Ters Üçgen Formasyonu)
inverse_triangle_condition = ta.crossunder(ta.sma(close, 30), ta.sma(close, 60))

// Alım-Satım Sinyalleri
if (ihs_condition)
    strategy.entry("İHS_Long", strategy.long)
if (hs_condition)
    strategy.close("İHS_Long")
if (flag_condition)
    strategy.entry("Flag_Long", strategy.long)
if (triangle_condition)
    strategy.entry("Triangle_Long", strategy.long)
if (pennant_condition)
    strategy.entry("Pennant_Short", strategy.short)
if (inverse_triangle_condition)
    strategy.close("Pennant_Short")


더 많은