이중 이동 평균 터널 추세 돌파 거래 전략

EMA ATR 趋势跟踪 隧道突破 风险管理 移动平均线
생성 날짜: 2025-08-08 10:51:36 마지막으로 수정됨: 2025-08-08 10:51:36
복사: 8 클릭수: 328
avatar of ianzeng123 ianzeng123
2
집중하다
319
수행원

이중 이동 평균 터널 추세 돌파 거래 전략 이중 이동 평균 터널 추세 돌파 거래 전략

개요

쌍평평선통 트렌드 브레이크 트레이딩 전략은 지수 이동 평균 ((EMA) 에 기반한 트렌드 추적 시스템으로, 144주기 EMA와 169주기 EMA로 형성된 “터널”을 이용하여 시장의 장기적인 트렌드 방향을 식별한다. 단기 이동 평균 ((EMA) 이 이 터널을 돌파할 때, 시스템은 입문 신호를 생성하고, 확인 운동량은 장기적인 트렌드 방향과 일치한다. 이 전략은 특히 4시간 또는 일선 차트에서 적용되며, 트렌드가 뚜렷한 거래 상품의 효과는 최선이다.

전략 원칙

이 전략의 핵심 원칙은 시장의 추세를 식별하고 적절한 시기에 거래하기 위해 다양한 주기에서 지수 이동 평균 사이의 관계를 확인하는 것입니다. 구체적으로, 전략은 다음과 같은 몇 가지 중요한 EMA 지표를 사용합니다.

  • 빠른 EMA (12주기): 단기 가격 움직임을 포착하는 데 사용됩니다.
  • 중간 속도 EMA ((25주기): 추가적인 참조 지표로
  • 느린 EMA ((144주기): 터널이 형성되는 하위 경계
  • 터널 EMA ((169주기): 터널을 형성하는 상단 경계

이 전략은 다음과 같이 작동합니다.

  1. 터널 형태 판단

    • 상승 경로: 144 EMA < 169 EMA는 장기적인 상승 경향을 나타냅니다.
    • 하향 경로: 144 EMA>169 EMA는 장기적인 추세를 나타냅니다.
  2. 복수 입학 조건

    • 조건 1: 가격이 터널 위쪽에 위치하고 있습니다. (폐쇄가격> 144EMA와폐쇄가격> 169EMA) 상승 터널
    • 조건 2: 12EMA는 터널 위에 있습니다 ((12EMA > 144EMA 그리고 12EMA > 169EMA)
  3. 공허 입학 조건

    • 조건 1: 가격이 터널 아래에 있습니다. (폐쇄가격 < 144 EMA 그리고 폐쇄가격 < 169 EMA) 그리고 하향 터널
    • 조건 2: 12EMA는 터널 아래에 있습니다 ((12EMA < 144EMA 그리고 12EMA < 169EMA)
  4. 손해 중지 설정

    • 선택적으로 ATR (평균 실제 파도) 에 기반한 동적 스톱로스를 선택하고, 매개 변수화된 ATR 곱셈을 통해 스톱로스 폭을 조정할 수 있습니다.
    • 또는 144EMA를 고정된 중지 지점으로 사용하십시오.
  5. 정지 설정

    • 리스크/이익비율 변수 (기본 2.0) 를 기반으로 자동으로 정지 위치를 계산합니다.
    • 스톱 거리 = 스톱 손실 거리 × 리스크 수익률

전략적 이점

  1. 트렌드 인식 안정성이 전략은 장기 EMA ((144 및 169) 를 이용한 터널을 통해 단기 시장 소음을 필터링하여 더 신뢰할 수 있는 장기 트렌드 방향을 식별할 수 있습니다.

  2. 동력 확인 메커니즘입시 신호는 단기 EMA (12주기) 가 장기 트렌드 방향과 일치하도록 요구합니다. 이것은 추가적인 동력 확인을 제공하여 가짜 돌파의 가능성을 감소시킵니다.

  3. 개선된 위험 관리이 전략은 다음과 같은 완전한 위험 관리 장치를 내장하고 있습니다.

    • ATR 기반의 다이내믹 스톱 옵션으로 시장의 변동성에 따라 자동으로 스톱 거리를 조정할 수 있습니다.
    • 매매에 대한 예상 수익이 위험보다 크다는 것을 보장하는 변수화된 리스크/수익 비율 설정
    • 자산 비율에 기반한 포지션 규모 관리 (부정적으로 각 거래의 위험은 계좌의 1%를 초과하지 않습니다)
  4. 시각적 피드백이 명확합니다.전략: 전략은 모든 관련 EMA 라인과 터널의 배경 색을 차트에 그려서 거래자가 현재의 시장 상태와 전략 신호를 직관적으로 이해할 수 있도록합니다.

  5. 매우 적응력이 좋다: EMA 주기, ATR 곱하기, 리스크 리터드 비율 등과 같은 파라미터를 조정함으로써, 전략은 다른 시장 환경과 거래 스타일에 적응할 수 있다.

전략적 위험

  1. 지역 시장의 부진: 트렌드 추적 전략으로, 수평 정리 또는 명백한 트렌드가 없는 시장에서, 여러 개의 가짜 신호와 소액 손실이 발생할 수 있습니다. 해결책은 변동률 지표 또는 트렌드 강도 확인과 같은 추가 필터링 조건을 추가하는 것입니다.

  2. 뒤처진 문제: 더 긴 기간의 이동 평균을 사용하기 때문에, 전략은 트렌드 전환점에서의 반응이 상대적으로 늦어질 수 있으며, 이는 초기 시장을 일부 놓치거나 트렌드가 끝날 때 늦게 퇴출하는 결과를 초래한다. 다른 더 민감한 지표와 결합하는 것을 보조적으로 고려할 수 있다.

  3. 매개변수 민감도전략적 성능은 EMA 주기와 ATR 곱하기와 같은 파라미터 설정에 민감하며, 다른 파라미터 조합은 다른 시장 환경에서 큰 차이를 나타냅니다. 역검사를 통해 최적의 파라미터 조합을 찾아 주기적으로 재평가하는 것이 좋습니다.

  4. 거래량 확인 부족: 현재 전략은 거래량 요소를 고려하지 않고 가격과 이동 평균에만 기반하여 낮은 거래량 환경에서 잘못된 신호를 일으킬 수 있습니다. 거래량 확인 조건을 추가하여 개선 할 수 있습니다.

  5. 고정된 리스크/수익률의 한계: 고정된 리스크/이익 비율을 사용하는 것은 모든 시장 상황에 적합하지 않을 수 있으며, 특정 시장 환경에서 너무 멀리 또는 너무 가까이 스톱 포즈를 설정할 수 있습니다. 시장의 변동성이나 지지 저항 포즈의 동력에 따라 적응된 스톱 포즈를 사용하는 것을 고려하십시오.

전략 최적화 방향

  1. 추세 강도 필터 추가트렌드 강도를 측정하기 위해 ADX (평균 방향 지수) 또는 유사한 지표를 도입하고, 트렌드가 충분히 강할 때만 거래 신호를 실행하고, 약한 트렌드 또는 간격 시장에서 자주 거래하는 것을 피하십시오.

  2. 입학 시점을 최적화: 현재 전략이 조건을 충족하면 즉시 입문할 수 있으며, 상향 트렌드에서 가격 회귀를 터널 근처로 기다린 후 다시 입문하여 입문 가격의 유리한 상태를 높이는 등 회귀 입문 논리를 추가하는 것을 고려할 수 있습니다.

  3. 동적 리스크 수익률: 시장의 변동성이나 중요한 지지부진 지점에서의 거리에 따라 위험수익률을 동적으로 조정합니다. 변동성이 큰 시장에서 더 높은 목표를 설정하고, 변동성이 적은 시장에서 더 보수적인 목표를 사용합니다.

  4. 시간 필터 추가: 특정 시장의 특정 시간 (예: EUR/USD 거래 시간) 의 추세는 더 뚜렷합니다. 시간 필터를 추가하여 거래 신호가 해당 시간 동안만 실행됩니다.

  5. 부분 차단 장치의 도입: 분기 중단 전략을 적용하는 것을 고려하십시오. 예를 들어, 1 배의 위험 거리를 달성했을 때 일부 포지션을 청산하고, 나머지 포지션을 추세를 따라 계속하도록하고, 손실을 이동하는 방법으로 이익을 보호 할 수 있습니다.

  6. 통합 다중주기 분석: 더 긴 주기 (예: 주주선 또는 달선) 의 트렌드 방향이 추가적인 필터링 조건으로 결합되어 거래 방향이 더 큰 주기 트렌드와 일치하도록 보장하여 승률을 높인다.

  7. 채널 판단 논리를 최적화: 현재 전략은 단순히 두 EMA의 위치 관계를 비교하여 터널 방향을 판단할 수 있으며, 터널이 형성되는 것뿐만 아니라 충분한 방향성을 확보하기 위해 경사 조건을 추가하는 것을 고려할 수 있습니다.

요약하다

쌍방향 경로 트렌드 브레이크 트레이딩 전략은 명확하고 논리적으로 엄격한 트렌드 추적 시스템으로, 긴 기간의 EMA를 통해 형성된 터널을 통해 트렌드 방향을 식별하고, 짧은 기간의 EMA의 브레이크를 활용하여 진입 시기를 확인한다. 전략은 ATR 기반의 동적 중지 손실과 변수화 된 위험 수익 비교 설정을 포함한 완벽한 위험 관리 장치를 내장하여, 거래자가 위험을 제어하면서 장기적인 트렌드를 추적할 수 있도록 한다.

전략은 트렌드가 뚜렷한 시장에서 잘 작동하지만, 간격 시장에서는 추가 필터링 조건을 통해 최적화를 필요로하는 도전이있을 수 있습니다. 전략의 주요 위험 지점에 대해, 우리는 전략의 안정성과 수익성을 더욱 향상시킬 수 있는 최적화 방안을 제시합니다. 전략의 주요 위험 지점에는 트렌드 강도 필터를 추가하고, 진입 시기를 최적화하고, 위험 수익률을 동적으로 조정하고, 다주기 분석을 도입하는 등 여러 가지 최적화 방안이 있습니다.

전반적으로, 이것은 합리적으로 설계된 트렌드 추적 전략 프레임워크이며, 적절한 파라미터를 조정하고 최적화하여 다양한 시장 환경에서 안정적인 거래 성과를 얻을 수 있습니다. 중장기 트렌드 거래를 선호하는 투자자에게는 이 전략은 좋은 출발점을 제공하며, 개인의 위험 선호와 시장 특성에 따라 추가적으로 조정할 수 있습니다.

전략 소스 코드
/*backtest
start: 2024-08-08 00:00:00
end: 2025-08-06 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/

//@version=5
strategy("Vegas Tunnel Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)

// === 参数设置 ===
emaFast = ta.ema(close, 12)
emaMedium = ta.ema(close, 25)
emaSlow = ta.ema(close, 144)
emaTunnel = ta.ema(close, 169)

riskRewardRatio = input.float(2.0, "风险回报比", step=0.1)
riskPercent = input.float(1.0, "每笔风险百分比", step=0.1)
useATR = input.bool(true, "使用ATR止损", inline="atr")
atrLength = input.int(14, "ATR长度", inline="atr")
atrMult = input.float(1.5, "ATR乘数", inline="atr")
atr = ta.atr(atrLength)

// === 隧道形态 ===
tunnelUp = emaSlow < emaTunnel
tunnelDown = emaSlow > emaTunnel

// === 多头入场条件 ===
longCond1 = close > emaSlow and close > emaTunnel and tunnelUp
longCond2 = emaFast > emaSlow and emaFast > emaTunnel

// === 空头入场条件 ===
shortCond1 = close < emaSlow and close < emaTunnel and tunnelDown
shortCond2 = emaFast < emaSlow and emaFast < emaTunnel

// === 止损与止盈计算 ===
entryPrice = strategy.position_avg_price
longStopLoss = useATR ? entryPrice - atrMult * atr : emaSlow
shortStopLoss = useATR ? entryPrice + atrMult * atr : emaSlow
longTakeProfit = entryPrice + (entryPrice - longStopLoss) * riskRewardRatio
shortTakeProfit = entryPrice - (shortStopLoss - entryPrice) * riskRewardRatio

// === 开仓逻辑 ===
// 多头开仓
if (longCond1 and longCond2)
    strategy.entry("Long", strategy.long)
    strategy.exit("TP/SL Long", from_entry="Long", stop=longStopLoss, limit=longTakeProfit)

// 空头开仓
if (shortCond1 and shortCond2)
    strategy.entry("Short", strategy.short)
    strategy.exit("TP/SL Short", from_entry="Short", stop=shortStopLoss, limit=shortTakeProfit)

// === 图形显示 ===
plot(emaFast, color=color.yellow, title="EMA 12")
plot(emaMedium, color=color.orange, title="EMA 25")
plot(emaSlow, color=color.green, title="EMA 144")
plot(emaTunnel, color=color.blue, title="EMA 169")
bgcolor(tunnelUp ? color.new(color.green, 85) : tunnelDown ? color.new(color.red, 85) : na)