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

적응형 EMA 동적 포지션 브레이크아웃 거래 전략

저자:차오장, 날짜: 2024-12-20 16:33:20
태그:EMATP수익률

img

전반적인 설명

이 전략은 트레이딩 성과를 최적화하기 위해 동적 스톱 로스 및 수익 목표와 결합하여 빠른 이동 평균 (EMA25) 과 느린 이동 평균 (EMA100) 의 크로스오버를 통해 구매 신호를 식별하는 이중 이동 평균 시스템을 기반으로 한 적응 트레이딩 시스템입니다. 이 전략은 중장기 트렌드 트레이딩에 적합한 위험 통제에 중점을 둔 브레이크아웃 트레이딩 접근 방식을 채택합니다.

전략 원칙

전략의 핵심 논리는 세 가지 핵심 요소를 포함합니다.

  1. 신호 시스템: EMA25가 EMA100을 넘어서 긴 신호를 생성하여 일반적으로 상승 추세의 시작을 나타냅니다.
  2. 리스크 제어: EMA100 이하의 가장 최근의 빨간 촛불의 가장 낮은 지점을 스톱 로스 포인트로 사용하여 거짓 브레이크로 인한 손실을 효과적으로 방지합니다.
  3. 이윤 관리: 수익 목표에 대한 1: 3 위험/이익 비율을 채택하고, 2%의 이윤에 도달하면 자동으로 스톱-러스를 절제점으로 조정하여 위험 없는 포지션 보유를 달성합니다.

전략적 장점

  1. 높은 신호 신뢰성: 트렌드 확인을 위해 느린 EMA를 사용하면 잘못된 신호를 효과적으로 필터합니다.
  2. 종합적인 리스크 제어: 동적 스톱 로스 설정 및 브레이크오웃 확인 메커니즘은 거래 위험을 줄입니다.
  3. 안정적인 수익성 특성: 합리적인 위험/이익률 설정은 전략의 예상 수익을 향상시킵니다.
  4. 높은 자동화 수준: 완전한 신호 생성, 스톱 손실/이익 취득 및 포지션 관리 로직을 포함한다.
  5. 강한 적응력: 매개 변수는 다른 시장 조건에 따라 조정 할 수 있습니다.

전략 위험

  1. 오스실레이션 시장 위험: 옆 시장에서 빈번한 스톱 로스를 유발할 수 있습니다.
  2. 미끄러짐 위험: 높은 변동성 기간 동안 실행 미끄러짐에 직면 할 수 있습니다.
  3. 가짜 브레이크 위험: 이동 평균 크로스오버 신호는 거짓 브레이크를 일으킬 수 있습니다.
  4. 매개 변수 민감도: 이동 평균 기간 설정은 전략 성과에 상당한 영향을 미칩니다.

전략 최적화 방향

  1. 부피 확인을 포함: 부피 표시기를 신호 시스템에 추가하여 분출 신뢰성을 향상시킵니다.
  2. 스톱 로스 메커니즘을 최적화: 더 나은 적응력을 위해 ATR 동적 스톱 로스를 도입하는 것을 고려하십시오.
  3. 트렌드 강도 필터링을 추가하십시오. ADX와 같은 트렌드 강도 지표를 포함하여 진입 시기를 최적화하십시오.
  4. 완벽한 포지션 관리: 변동성에 따라 포지션 크기를 동적으로 조정합니다.
  5. 시장 환경 평가 포함: 다른 시장 환경에서 다른 매개 변수 설정을 채택하기 위해 시장 체제 식별 메커니즘을 도입하십시오.

요약

이 전략은 이동 평균 크로스오버를 통해 트렌드 시작 지점을 포착하고, 역동적인 스톱 로스 및 수익 관리 메커니즘과 결합하여 유리한 리스크 보상 특성을 달성합니다. 전략 설계는 실용적인 요구 사항을 완전히 고려하고 강력한 실용성을 보여줍니다. 제안된 최적화 방향을 통해 전략의 안정성과 적응력이 더욱 향상 될 수 있습니다. 중장기 안정적인 수익을 추구하는 강력한 리스크 관용을 가진 거래자에게 적합합니다.


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

//@version=5
strategy("EMA Crossover with TP and SL (Buy only) and Break-even", overlay=true)

// EMA sozlamalari
emaFastLength = input.int(25, title="Fast EMA Length")
emaSlowLength = input.int(100, title="Slow EMA Length")

// Hisoblash
emaFast = ta.ema(close, emaFastLength)
emaSlow = ta.ema(close, emaSlowLength)

// Kesishishni aniqlash
bullishCross = ta.crossover(emaFast, emaSlow) // EMA 25 EMA 100 ni yuqoriga kesib o'tganda

// EMA 100 tagidagi oxirgi qizil shamning tagini olish
lastRedCandleLow = ta.valuewhen(close < open and close < emaSlow, low, 0) // EMA 100 pastidagi qizil shamning tagi

// TP va SL darajalarini hisoblash
longSL = lastRedCandleLow
longTP = close + 3 * (close - longSL) // TP SL ga nisbatan 1:2 masofada

// Savdoni ochish va 2% foyda bo'lganda SLni break-even ga o‘zgartirish
if (bullishCross)
    strategy.entry("Buy", strategy.long)  // Buy pozitsiyasini ochish
    strategy.exit("Exit Buy", "Buy", stop=longSL, limit=longTP)  // SL va TP qo'yish

    // 2% foyda bo'lganda SLni break-even ga o'zgartirish
    if (strategy.position_size > 0)
        profitPercentage = (close - strategy.position_avg_price) / strategy.position_avg_price * 100
        if (profitPercentage >= 2)
            strategy.exit("Exit Buy BE", "Buy", stop=strategy.position_avg_price) // SLni break-even ga o'zgartirish

// Signalni ko'rsatish
plotshape(bullishCross, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")

// // TP va SL chizish
// if (bullishCross)
//     line.new(x1=bar_index, y1=longSL, x2=bar_index+1, y2=longSL, color=color.red, width=1, extend=extend.none)
//     line.new(x1=bar_index, y1=longTP, x2=bar_index+1, y2=longTP, color=color.green, width=1, extend=extend.none)
//     label.new(bar_index, longSL, text="SL: " + str.tostring(longSL), style=label.style_label_down, color=color.red, textcolor=color.white, size=size.small)
//     label.new(bar_index, longTP, text="TP: " + str.tostring(longTP), style=label.style_label_up, color=color.green, textcolor=color.white, size=size.small)

// EMA chizish
plot(emaFast, color=color.blue, title="Fast EMA (25)")
plot(emaSlow, color=color.orange, title="Slow EMA (100)")

// Alert qo'shish
alertcondition(bullishCross, title="Buy Signal Alert", message="EMA 25 crossed above EMA 100! Buy Signal!")


관련

더 많은