리소스 로딩... 로딩...

다중 EMA 크로스오버 추진 동력 추세 전략

저자:차오장, 날짜: 2024-12-12 14:46:33
태그:EMAMA

img

전반적인 설명

이 전략은 여러 가지 기하급수적인 이동 평균 (EMA) 을 기반으로하는 트렌드 추적 시스템이다. 단기 및 장기 EMA 그룹의 평균을 계산하여 시장 트렌드를 식별하고 크로스오버에서 거래 신호를 생성합니다. 전략은 리스크를 제어하고 수익을 확보하기 위해 수익을 취하고 손실을 멈추는 메커니즘을 통합합니다.

전략 원칙

이 전략은 6개의 단기 EMA (3, 5, 8, 10, 12, 15 기간) 와 6개의 장기 EMA (30, 35, 40, 45, 50, 60 기간) 를 사용한다. 이 EMA를 개별적으로 평균화함으로써 단기 및 장기 트렌드 지표를 원활하게 만듭니다. 단기 평균이 장기 평균을 넘을 때 긴 포지션은 시작되며 단기 평균이 그 아래를 넘을 때 짧은 포지션은 취득된다. 각 거래는 10%의 영업률과 5%의 스톱 로스 수준으로 관리된다.

전략적 장점

  1. 여러 EMA는 단일 이동 평균에서 발생할 수있는 잘못된 신호를 줄이고 신호 신뢰성을 향상시킵니다.
  2. 여러 EMA를 평균하는 것은 시장 소음을 필터링하고 주요 트렌드를 더 효과적으로 포착하는 데 도움이됩니다.
  3. 명확한 취익 및 중단 손실 설정은 수익을 확보하는 동시에 효과적인 위험 통제를 보장합니다.
  4. 단순하고 명확한 전략 논리는 이해하기 쉽고 실행하기 쉽다
  5. 양자 거래 능력은 상승과 하락 시장에서 수익 기회를 제공합니다.

전략 위험

  1. 다양한 시장에서 빈번한 잘못된 브레이크 신호를 생성하여 연속적인 손실을 초래할 수 있습니다.
  2. 이동 평균 시스템은 본질적으로 지연, 잠재적으로 트렌드 시작을 놓치고 또는 트렌드 종료 후 위치를 유지
  3. 고정 비율의 영업이익 및 중단 손실 수준은 모든 시장 조건에 적합하지 않을 수 있습니다.
  4. 매우 변동적인 시장에서는 시장 전환 전에 포지션이 중단될 수 있습니다.

전략 최적화 방향

  1. 유동성 지표를 포함하여 수익을 취하고 손실을 멈추는 수준을 동적으로 조정합니다.
  2. 신호 신뢰성을 향상시키기 위해 볼륨 확인 지표를 추가합니다.
  3. 다른 시장 조건에 따라 EMA 매개 변수를 동적으로 조정합니다.
  4. 트렌드 강도 필터를 구현하여 강한 트렌드 환경에서만 거래하십시오.
  5. 입시 시기를 최적화하기 위해 시장 감정 지표를 추가하는 것을 고려하십시오.

요약

이것은 여러 EMA의 조합을 통해 비교적 신뢰할 수 있는 거래 신호를 제공하는 잘 구성된 트렌드 추적 전략입니다. 일부 내재된 지연 위험을 지니고 있지만 적절한 수익 및 스톱 로스 설정 및 제안된 최적화 방향으로 전반적인 성능을 더욱 향상시킬 수 있습니다. 이 전략은 명확한 트렌드를 보이는 시장에 특히 적합합니다.


/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-10 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Pavan Guppy Strategy", shorttitle="Pavan Avg", overlay=true, 
         default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// Short-term EMAs
shortEMA1 = ta.ema(close, 3)
shortEMA2 = ta.ema(close, 5)
shortEMA3 = ta.ema(close, 8)
shortEMA4 = ta.ema(close, 10)
shortEMA5 = ta.ema(close, 12)
shortEMA6 = ta.ema(close, 15)

// Long-term EMAs
longEMA1 = ta.ema(close, 30)
longEMA2 = ta.ema(close, 35)
longEMA3 = ta.ema(close, 40)
longEMA4 = ta.ema(close, 45)
longEMA5 = ta.ema(close, 50)
longEMA6 = ta.ema(close, 60)

// Average short-term EMAs
shortAvg = (shortEMA1 + shortEMA2 + shortEMA3 + shortEMA4 + shortEMA5 + shortEMA6) / 6.0

// Average long-term EMAs
longAvg = (longEMA1 + longEMA2 + longEMA3 + longEMA4 + longEMA5 + longEMA6) / 6.0

// Plot averaged EMAs
plot(shortAvg, color=color.green, linewidth=2, title="Averaged Short-term EMAs")
plot(longAvg, color=color.red, linewidth=2, title="Averaged Long-term EMAs")

// Define the target and stop loss percentages
takeProfitPerc = 10
stopLossPerc = 5

// Generate buy signal when shortAvg crosses above longAvg
if ta.crossover(shortAvg, longAvg)
    strategy.entry("Buy", strategy.long)

// Generate sell signal when shortAvg crosses below longAvg
if ta.crossunder(shortAvg, longAvg)
    strategy.entry("Sell", strategy.short)

// Calculate take profit and stop loss prices for long trades
longTakeProfit = close * (1 + (takeProfitPerc / 100.0))
longStopLoss = close * (1 - (stopLossPerc / 100.0))

// Set take profit and stop loss for long positions
strategy.exit("Take Profit/Stop Loss", from_entry="Buy", limit=longTakeProfit, stop=longStopLoss)

// Calculate take profit and stop loss prices for short trades
shortTakeProfit = close * (1 - takeProfitPerc / 100.0)
shortStopLoss = close * (1 + stopLossPerc / 100.0)

// Set take profit and stop loss for short positions
strategy.exit("Take Profit/Stop Loss", from_entry="Sell", limit=shortTakeProfit, stop=shortStopLoss)

관련

더 많은