TEMA/DEMA/HMA 추세 전략

저자:차오장, 날짜: 2023-09-21 10:56:41
태그:

전반적인 설명

이 전략은 TEMA, DEMA 및 HMA 이동 평균을 결합하여 TEMA / DEMA 황금 십자 / 죽은 십자 신호에 입력하여 HMA를 사용하여 트렌드 방향을 결정하여 역 트렌드 거래를 필터합니다.

전략 논리

  1. TEMA, DEMA 및 HMA 이동 평균을 계산합니다.
  2. TEMA가 DEMA를 넘을 때
  3. TEMA가 DEMA 아래로 넘어가면 단축
  4. HMA 트렌드 방향을 계산합니다. HMA 트렌드와 일치하는 경우에만 입력합니다.

특히, 중장기 트렌드를 측정하기 위해 DEMA, 단기 트렌드를 측정하기 위해 TEMA, 장기 트렌드를 측정하기 위해 HMA를 사용합니다. 단기 / 중장기 움직임이 정렬될 때만 거래됩니다 (TEMA / DEMA 조정 브레이크아웃), 장기 트렌드가 일치합니다 (HMA 방향이 브레이크아웃과 일치합니다).

이점 분석

  1. 여러 이동 평균을 조합하면 정확도가 향상됩니다.
  2. HMA 트렌드 필터는 트렌드 반대 거래를 피합니다.
  3. TEMA/DEMA는 명확한 거래 신호를 형성합니다.
  4. 세 줄의 사용자 지정 기간은 다른 주기에 적합합니다.
  5. 트렌드에 따라 거래하면 마감 위험을 줄일 수 있습니다.

위험 분석

  1. 복잡한 다선 조합은 매개 변수를 조정해야 합니다.
  2. HMA 추세는 가격 움직임에 뒤떨어질 수 있습니다.
  3. 후진 진출의 위험이 존재합니다.
  4. 나쁜 매개 변수는 불필요한 리버스 트레이드를 증가시킬 수 있습니다

리스크는 매개 변수 최적화, 스톱 로스, 느슨한 엔트리 규칙 등으로 관리 될 수 있습니다.

최적화 방향

  1. 최적의 매개 변수를 찾기 위해 다른 기간 조합을 테스트
  2. MACD 등을 보조 확인으로 추가하는 것을 평가하십시오.
  3. 수익을 잠금하기 위해 후속 스톱 손실을 추가, 드래운 다운을 줄여
  4. 다른 제품에서 연구 매개 변수 선호도
  5. 장기적인 경향을 가진 거래에 대한 입시 규정을 완화

요약

이 전략은 트렌드를 결정하기 위해 여러 이동 평균 지표를 결합하여 신호를 생성합니다. 장점은 명확한 신호와 높은 구성성입니다; 단점은 지연 위험과 매개 변수 의존성입니다. 위험은 매개 변수 최적화, 중지 손실 등을 통해 제어 할 수 있습니다. 결합된 이동 평균 시스템의 힘을 활용하기 위해. 트레이더가 트렌드 거래 기술을 종합적으로 마스터하는 데 도움이됩니다.


// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © tuned-com

//@version=4
strategy("TEMA/DEMA/HMA", overlay=true, pyramiding=0, default_qty_type=strategy.percent_of_equity, default_qty_value=100, initial_capital=1000000, commission_type=strategy.commission.percent, commission_value=0.1)

Tlength = input(8, title="TEMA Length", minval=1)
Dlength = input(43, title="DEMA Length", minval=1)
Hlength = input(52, title="Hull Length", minval=1)
Rlength = input(2, title="Hull Trend Test Length", minval=1)


//TEMA//
ema1 = ema(close, Tlength)
ema2 = ema(ema1, Tlength)
ema3 = ema(ema2, Tlength)
tema = 3 * (ema1 - ema2) + ema3

//DEMA//
e1 = ema(close, Dlength)
e2 = ema(e1, Dlength)
dema = 2 * e1 - e2

//HMA//
hma = wma(2 * wma(close, Hlength / 2) - wma(close, Hlength), round(sqrt(Hlength)))


up = crossunder(dema, tema) and rising(hma, Rlength)
down = crossover(dema, tema) and falling(hma, Rlength)

downc = crossunder(dema, tema)
upc = crossover(dema, tema)

plot(dema, color=color.green, linewidth=2)
plot(tema, color=color.aqua, linewidth=2)

plot(hma, color=rising(hma, Rlength) ? color.green : na, linewidth=2, transp=0)
plot(hma, color=falling(hma, Rlength) ? color.red : na, linewidth=2, transp=0)

bgcolor(rising(hma, Rlength) ? color.green : na, transp=70)
bgcolor(falling(hma, Rlength) ? color.red : na, transp=70)

plotarrow(tema - dema, colorup=color.green, colordown=color.red, transp=70)



if up
    strategy.entry("Long Entry", strategy.long)

if down
    strategy.entry("Short Entry", strategy.short)

더 많은