이동평균 크로스오버 전략은 이동평균을 기반으로 하는 타이밍 전략이다. 이 전략은 서로 다른 기간 이동평균을 계산하고 크로스오버를 판단하여 구매 및 판매 신호를 생성한다. 이 전략은 또한 신호의 정확성을 더욱 향상시키기 위해 지수 이동평균을 보조 지표로 결합한다.
이 전략의 핵심 논리는 두 이동 평균 사이의 교차에 기반합니다. 구체적으로, 그것은 n 일간 간단한 이동 평균 (단기 MA) 와 m 일간 간단한 이동 평균 (장기 MA) 을 계산합니다. 짧은 MA가 밑에서 위로 긴 MA를 뚫고 갈 때 구매 신호가 생성됩니다. 짧은 MA가 위에서 아래로 긴 MA를 뚫고 갈 때 판매 신호가 생성됩니다. 이것은 장기 트렌드에 대한 단기 트렌드의 씻고 수정을 반영합니다.
또한, 이 전략은 x-day 지수 이동 평균 (EMA) 을 보조 지표로 도입하기도 한다. SMA와 비교할 때, EMA는 부드럽고 가격 변화를 더 빠르게 반영할 수 있다. 그것의 보조 효과는 단기 EMA가 이동 평균 크로스오버 신호를 확인했을 때만 실제 거래 신호가 활성화된다는 것이다. 이것은 잘못된 신호의 약간의 간섭을 피하고 거래 전략의 안정성을 향상시킨다.
이동평균의 크로스오버 전략은 다음과 같은 장점을 가지고 있습니다.
간단하고 사용하기 쉽습니다. 이 전략은 매우 간단하고 이해하기 쉽고 구현하기 쉬운 두 이동 평균 사이의 교차에 전적으로 의존합니다.
직관적이고 생생합니다. 이동 평균은 시장 추세를 명확히 반영 할 수 있으며 복잡한 계산 없이 크로스오버도 매우 직관적입니다.
긴 역사. 이동 평균 전략은 20 세기 초로 거슬러 올라갈 수 있으며 100 년의 시장 테스트를 거쳐 클래식 기술 분석 도구 중 하나가되었습니다.
제어 가능한 위험. 이동 평균 매개 변수를 조정함으로써 거래 신호의 빈도를 제어하고 위험을 제어 할 수 있습니다.
보편적이고 유연합니다. 이동 평균 크로스오버 전략은 다양한 제품과 시간 주기에 적합하므로 매우 다재다능하고 유연한 거래 전략입니다.
이 전략에는 또한 몇 가지 위험이 있습니다.
빈번한 위치 전환: 시장이 급격하게 변동할 때, 이동 평균은 종종 교차하여 빈번한 위치 전환이 발생할 수 있습니다.
지연 효과: 이동 평균 자체는 특정 지연을 가지고 있습니다. 특히 장기 주기 이동 평균은 단기 거래 기회를 놓칠 수 있습니다.
매개 변수 최적화가 필요합니다. 다른 제품과 시간 주기에 대해 이동 평균의 매개 변수는 독립적으로 테스트하고 최적화해야합니다. 그렇지 않으면 결과가 열악 할 수 있습니다.
다른 지표와 결합할 수 있다. 단일 이동 평균 전략은 가장 좋은 성능을 발휘하지 않는다. 종종 신호를 필터링하기 위해 다른 기술적 지표가 필요하다.
이 전략은 다음과 같은 측면에서 최적화 될 수 있습니다.
이동 평균 매개 변수를 다른 주기에 적응하도록 조정합니다. 최적의 매개 변수를 찾기 위해 단기 및 장기 이동 평균의 다양한 조합을 테스트 할 수 있습니다.
거래량에 대한 보조 판단을 추가합니다. 예를 들어, 유효하지 않은 신호를 피하기 위해 거래량을 깨는 지표를 설정하십시오.
판단을 위해 변동성 지표를 추가하십시오. 예를 들어, KDJ와 MACD는 실제 시장 추세를 판단하고 불확실한 신호를 필터 할 수 있습니다.
기본 요소를 결합하고 수익 기대에 따라 매개 변수를 조정하여 전략을 더 미래 지향적으로 만듭니다.
전략의 포트폴리오 응용. 시너지 효과를 달성하기 위해 다른 전략 또는 모델과 함께 사용.
이동 평균 크로스오버 전략은 이동 평균 크로스오버의 간단한 원리를 통해 거래 신호를 생성합니다. 그것은 직관적이고 이해하기 쉽고 매개 변수 조정과 위험 조절에 유연합니다. 그러나 그것은 또한 내재된 지연 속성과 과도한 빈번한 위치 전환의 위험을 가지고 있습니다. 따라서이 전략은 최적화되고 활용도를 극대화하기 위해 다양한 방식으로 결합 될 수 있습니다. 양적 거래에서 간단하고 효과적인 기본 전략이되었습니다.
/*backtest start: 2022-12-25 00:00:00 end: 2023-12-07 05:20:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("MA Crossover Strategy", overlay=true) // Define input parameters shortLength = input(10, title="Short MA Length") longLength = input(40, title="Long MA Length") emaLength = input(20, title="EMA Length") // Calculate moving averages shortMA = ta.sma(close, shortLength) longMA = ta.sma(close, longLength) colorfulEMA = ta.ema(close, emaLength) // Create buy and sell conditions buyCondition = ta.crossover(shortMA, longMA) sellCondition = ta.crossunder(shortMA, longMA) // Execute buy and sell orders if (buyCondition) strategy.entry("Buy", strategy.long) strategy.close("Sell") if (sellCondition) strategy.entry("Sell", strategy.short) strategy.close("Buy") // Color the background based on buy and sell conditions bgcolor(buyCondition ? color.new(color.blue, 90) : na) bgcolor(sellCondition ? color.new(color.red, 90) : na) // Plot moving averages plot(shortMA, color=color.new(color.blue, 90), title="Short MA") plot(longMA, color=color.new(color.red, 90), title="Long MA") // Plot colorful EMA with transparency plot(colorfulEMA, color=color.new(color.green, 90), title="Colorful EMA")