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

삼중 슈퍼트렌드 및 계수적인 이동 평균 트렌드 양적 거래 전략을 따르는

저자:차오장, 날짜: 2024-12-27 15:56:53
태그:EMAATR

img

전반적인 설명

이 전략은 트렌드 추적을 위해 세 개의 슈퍼트렌드 지표와 기하급수적인 이동 평균 (EMA) 을 결합합니다. 다양한 감수성을 가진 세 개의 슈퍼트렌드 라인과 하나의 EMA 라인을 사용하여 다차원 확인을 통해 시장 트렌드를 캡처합니다. 이 전략은 동적 지원 / 저항 수준을 계산하기 위해 ATR (평균 진정한 범위) 을 사용하여 이러한 라인에 대한 가격 지위에 기반하여 트렌드 방향과 거래 신호를 결정합니다.

전략 원칙

이 전략은 다음과 같은 핵심 요소로 구성됩니다.

  1. 50주기 EMA는 전반적인 트렌드 방향을 결정하는데, EMA 이상의 가격은 상승 추세를 나타내고 그 아래의 가격은 하락 추세를 나타냅니다.
  2. 3개의 슈퍼트렌드 라인 10페리오드 ATR을 이용하여 계산된 3개의 슈퍼트렌드 라인 3.0, 2.0, 1.0의 곱셈과 감도 감소
  3. 엔트리 신호: 가격이 EMA보다 높고 세 개의 슈퍼 트렌드 라인이 모두 상승 신호를 표시 할 때 긴; 가격이 EMA보다 낮고 세 가지 슈퍼 트렌드 라인이 모두 하락 신호를 표시 할 때 짧은.
  4. 출구 신호: 세 번째 슈퍼 트렌드 라인 (최저 민감한) 이 방향을 역전하면 포지션을 닫습니다.

전략적 장점

  1. 복수 확인 메커니즘은 신호 신뢰성을 향상시키고 잘못된 신호를 줄입니다.
  2. 빠른 반응과 안정성을 위해 단기 및 장기 트렌드 지표를 결합합니다.
  3. 동적 스톱 로스 설정, 자동으로 시장 변동에 적응
  4. 조절 가능한 매개 변수와 함께 명확한 전략 논리
  5. 좋은 보편성을 가진 여러 시장 주기에 적용됩니다.

전략 위험

  1. 다양한 시장에서 빈번한 거래를 생성하여 거래 비용을 증가시킬 수 있습니다. 해결책: 신호 필터를 추가하거나 이동 평균 기간을 연장합니다.

  2. 트렌드 반전 초기 잠재적인 지연. 해결책: 보조를 위해 추진력 지표를 포함합니다.

  3. 여러 번 확인해야 하는 경우 수익성이 있는 기회를 놓칠 수 있습니다. 해결책: 시장 특성에 따라 확인 조건을 조정합니다.

전략 최적화 방향

  1. 추가 확인을 위해 부피 지표를 포함합니다.
  2. 시장 조건에 동적으로 적응하는 적응적 매개 변수 메커니즘을 개발합니다.
  3. 높은 변동성 기간 동안 포지션 크기를 조정하기 위해 변동성 필터를 추가합니다.
  4. 후속 스톱을 고려하여 스톱 손실 메커니즘을 최적화하십시오.
  5. 최대 마감 한도를 가진 마감 제어 모듈을 추가합니다.

요약

이 전략은 논리적으로 엄격하고 안정적인 트렌드 추종 전략이다. 여러 기술적 지표의 조합을 통해 좋은 위험 통제 기능을 유지하면서 신호 신뢰성을 보장한다. 전략 매개 변수는 매우 조정 가능하며 다른 시장 조건에 최적화 될 수 있다. 약간의 내재적 지연이 있지만 적절한 최적화는 위험과 수익 사이의 좋은 균형을 달성할 수 있다.


/*backtest
start: 2024-12-19 00:00:00
end: 2024-12-26 00:00:00
period: 45m
basePeriod: 45m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Supertrend EMA Strategy", overlay=true)

// Input Parameters
ema_length = input(50, title="EMA Length")
supertrend_atr_period = input(10, title="ATR Period")
supertrend_multiplier1 = input.float(3.0, title="Supertrend Multiplier 1")
supertrend_multiplier2 = input.float(2.0, title="Supertrend Multiplier 2")
supertrend_multiplier3 = input.float(1.0, title="Supertrend Multiplier 3")

// Calculations
emaValue = ta.ema(close, ema_length)

[supertrend1, SupertrendDirection1] = ta.supertrend(supertrend_multiplier1, supertrend_atr_period)
[supertrend2, SupertrendDirection2] = ta.supertrend(supertrend_multiplier2, supertrend_atr_period)
[supertrend3, SupertrendDirection3] = ta.supertrend(supertrend_multiplier3, supertrend_atr_period)

// Plot Indicators
plot(emaValue, title="EMA", color=color.blue, linewidth=2)
plot(supertrend1, title="Supertrend 1 (10,3)", color=(SupertrendDirection1 == -1 ? color.green : color.red), linewidth=1, style=plot.style_line)
plot(supertrend2, title="Supertrend 2 (10,2)", color=(SupertrendDirection2 == -1 ? color.green : color.red), linewidth=1, style=plot.style_line)
plot(supertrend3, title="Supertrend 3 (10,1)", color=(SupertrendDirection3 == -1 ? color.green : color.red), linewidth=1, style=plot.style_line)

// Entry Conditions
long_condition = (SupertrendDirection1 == -1 and SupertrendDirection2 == -1 and SupertrendDirection3 == -1 and close > emaValue)
short_condition = (SupertrendDirection1 == 1 and SupertrendDirection2 == 1 and SupertrendDirection3 == 1 and close < emaValue)

// Exit Conditions
long_exit = (SupertrendDirection3 == 1)
short_exit = (SupertrendDirection3 == -1)

// Execute Strategy
if (long_condition)
    strategy.entry("Long", strategy.long)
if (short_condition)
    strategy.entry("Short", strategy.short)

if (long_exit)
    strategy.close("Long")
if (short_exit)
    strategy.close("Short")


관련

더 많은