이동평균을 가로질러 전략

저자:차오장, 날짜: 2023-11-06 17:01:53
태그:

img

전반적인 설명

크로싱 이동 평균 전략은 다른 기간의 이동 평균을 계산하고 그 크로스오버를 거래 신호로 사용합니다. 이 전략은 기술 분석 전략에 속합니다. 이 전략은 빠른, 중간 및 느린 이동 평균을 결합하여 거래 신호를 판단하여 시장 소음을 효과적으로 필터하고 트렌드를 식별 할 수 있습니다.

전략 논리

이 전략은 다른 기간과 함께 3 개의 이동 평균을 계산합니다: 34 기간 EMA, 89 기간 EMA 및 200 기간 EMA. 먼저이 3 개의 MAs를 계산하고, 명확한 식별을 위해 다른 색상과 라인 너비로 그래프화합니다.

거래 신호는 서로 다른 MA 사이의 교차를 기반으로 생성됩니다. 빠른 MA가 중간 MA를 넘을 때 구매 신호를 유발합니다. 빠른 MA가 중간 MA를 넘을 때 판매 신호를 유발합니다. 이것은 공격적인 거래 전략에 속합니다.

과도한 잡음을 필터링하기 위해 전략은 느린 MA를 사용한다. 빠른 MA가 느린 MA를 동시에 넘을 때만 실제 구매 및 판매 신호가 발생한다. 예를 들어, 빠른 MA가 중간 및 느린 MA를 넘을 때만 구매 신호가 생성된다. 이것은 중요한 트렌드 변화가 발생할 때만 거래가 발생하도록 보장한다.

장점

  • 소음을 필터링하고 큰 트렌드 변화를 식별하기 위해 여러 기간 MAs를 사용합니다.
  • 빠른 MA는 민감하고 중간 MA는 안정적이며 느린 MA는 가짜 브레이크오프를 필터합니다. 콤보는 트렌드 반전을 잘 식별합니다.
  • 최근 가격에 더 많은 무게를 부여하고 트렌드 변화에 더 잘 반응하는 MAs를 계산하기 위해 EMA를 사용합니다.
  • 신호를 쉽게 식별하기 위해 크로스오버를 통해 다른 MA를 명확하게 표시합니다.
  • 유연한 전략, 다른 시장 환경에 따라 MA 기간 조정.

위험성

  • MA는 지연이 있고 신호 생성에는 지연이 있을 수 있습니다.
  • 강한 추세는 MA를 무시하고 과도한 신호를 생성 할 수 있습니다.
  • 부적절한 MA 기간 설정은 거래 빈도와 위험을 증가시킬 수 있습니다.
  • 극심한 변동성은 잘못된 MA 크로스오버를 일으킬 수 있습니다.
  • 높은 수수료가 있는 시장은 이러한 고주파 전략에 적합하지 않습니다.

개선

  • 최적의 매개 변수를 찾기 위해 다양한 MA 기간 조합을 평가합니다.
  • 변동성 지수 등을 추가하면 큰 변동이 발생하면 거래를 중단합니다.
  • 스토카스틱 오시일레이터 등과 결합하여 극단적으로 구매/판매를 피합니다.
  • 입력 시기를 최적화하기 위해 입력하기 전에 주요 MA 철수를 기다립니다.
  • 적응 가능한 MAs를 사용하여 더 나은 유연성을 위해 기간을 동적으로 조정합니다.

결론

크로싱 이동 평균 전략은 전형적인 기술 분석 전략이다. 시장 반전 지점을 결정하기 위해 서로 다른 시간 프레임의 MAs 사이의 관계를 관찰한다. 빠른, 중간 및 느린 MAs의 동시에 사용은 트렌드에 신속하게 반응하고 가짜 신호를 효과적으로 필터할 수 있다. 적절한 매개 변수 조정으로 다른 시장 환경에 유연할 수 있다. 그럼에도 불구하고, MAs의 지연 문제는 고려되어야 한다. 전반적으로, 전략은 직관적인 논리를 가지고 있으며 라이브 시장에서 검증 및 최적화 할 가치가 있다.


/*backtest
start: 2022-10-30 00:00:00
end: 2023-11-05 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy(title="EMA 34, 89, 200 e cruzamento das EMA", overlay=true)

// Input options
fastMALen = input(title="Fast MA",  defval=34)
midMALen  = input(title="Medium MA",  defval=89)
slowMALen = input(title="Slow MA",  defval=200)

// Calculate values
fastMA = ema(close, fastMALen)
midMA  = ema(close, midMALen)
slowMA = ema(close, slowMALen)

// Plot values
plot(series=fastMA, color=yellow,
     title="Fast MA", linewidth=3, trackprice=false)
plot(series=midMA, color=red,
     title="Mid MA", linewidth=4, trackprice=false)
plot(series=slowMA, color=white,
     title="Slow MA", linewidth=5)

// Highlight crossovers
longCondition = crossover(ema(close, 34), ema(close, 200)) 
if (longCondition)
    strategy.entry("COMPRA FINAL", strategy.long)

longCondition1 = crossover(ema(close, 34), ema(close, 89)) 
if (longCondition1)
    strategy.entry("COMPRA INICIAL", strategy.long)

shortCondition = crossunder(ema(close, 34), ema(close, 200))
if (shortCondition)
    strategy.entry("VENDE FINAL", strategy.short)
    
shortCondition1 = crossunder(ema(close, 34), ema(close, 89))
if (shortCondition1)
    strategy.entry("VENDE INICIAL", strategy.short)


더 많은