이중 기하급수적 이동 평균 교차 전략

저자:차오장, 날짜: 2023-11-23 17:34:06
태그:

img

전반적인 설명

이중 기하급수적 이동 평균 크로스오버 전략은 전형적인 트렌드 추후 전략이다. 시장 추세를 결정하고 그에 따른 긴 포지션과 짧은 포지션을 만들기 위해 다른 매개 변수와 함께 이중 기하급수적 이동 평균 (DEMA) 의 황금 십자와 죽은 십자 를 사용합니다.

전략 논리

이 전략은 다른 매개 변수와 함께 3개의 DEMA를 동시에 사용합니다: DEMA (8). DEMA (.) 20) 및 DEMA (.) 63.

  • DEMA (8). 단기 동향을 파악하는 데 가장 빠르게 반응합니다.

  • 중장기 동향을 파악하기 위해 DEMA))) 가 약간 느려집니다.

  • DEMA (주) 는 장기적인 경향 방향을 판단하기 위해 가장 느리게 반응합니다.

빠른 라인 DEMA ((8) 가 중간 라인 DEMA ((20) 과 느린 라인 DEMA ((63) 을 넘을 때, 시장이 밑에서 위로 돌아가는 것을 나타냅니다. DEMA ((8) 가 DEMA ((20) 과 DEMA ((63) 아래로 넘을 때, 시장이 위에서 아래로 돌아가는 것을 나타냅니다. 짧은 포지션을 만들어야합니다.

이점 분석

단일 이동 평균에 비해 이중 지수 이동 평균은 가격 변화에 더 민감하며 트렌드의 전환점을 더 일찍 감지 할 수 있습니다. 이 전략은 DEMA의 여러 시간 프레임을 결합하여 시장 트렌드 방향을 효과적으로 추적 할 수 있습니다.

멀티 타임프레임 DEM 라인의 조합은 거래 신호의 품질을 향상시키고 잘못된 브레이크오웃을 피합니다. 동시에 전략은 세 라인이 교차 할 때 신호를 생성하여 과도한 거래 빈도를 피합니다.

위험 분석

이 전략의 주요 위험은 다음과 같습니다.

  1. 세 줄의 교차 신호가 적으면 거래 기회를 놓칠 수 있습니다.
  2. 지연된 DEM 라인은 시장의 급격한 변동에 따라 가격 변화에 제때 대응하지 못할 수 있습니다.
  3. 거대한 트렌드 없는 시장에 효과적으로 대처할 수 없습니다.

위험은 매개 변수를 최적화하고 필터 조건을 추가함으로써 더 향상되고 통제 될 수 있습니다.

최적화 방향

전략은 다음 측면에서 최적화 될 수 있습니다:

  1. 이동 평균 매개 변수를 최적화하여 다른 시장 특성에 더 잘 맞게 만듭니다.
  2. 잘못된 신호를 피하기 위해 볼륨, 변동성 같은 필터를 추가합니다.
  3. MACD, KDJ 같은 다른 지표를 결합하여 가짜 신호를 필터합니다.
  4. 단일 손실을 통제하기 위해 스톱 로스 전략을 추가합니다.
  5. 수익률이 손실률보다 높을 수 있도록 포지션 관리를 최적화하십시오.

요약

DEMA 크로스오버 전략은 명확한 전반적인 아이디어를 가지고 있습니다. 다중 타임프레임 DEMA를 결합함으로써 시장 트렌드 방향을 효과적으로 결정할 수 있으며 전형적인 트렌드를 따르는 전략입니다. 더 나은 전략 결과를 얻기 위해 실제 필요에 따라 매개 변수 최적화, 필터 추가, 스톱 손실 관리 등을 통해 전략을 개선 할 수 있습니다.


/*backtest
start: 2022-11-16 00:00:00
end: 2023-11-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

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

//@version=4
//Quoted by Author HighProfit

//Lead-In
strategy("Double Exponential Moving Average 8-20-63 Strategy", 
         shorttitle="DEMA-8-20-63", 
         overlay=true,
         max_bars_back = 5000,
         initial_capital=100000, 
         max_bars_back = 5000,
         default_qty_type=strategy.percent_of_equity, 
         default_qty_value=100, 
         commission_type=strategy.commission.percent, 
         commission_value=0.1,
         pyramiding = 0)

short = input(8, minval=1)
srcShort = input(ohlc4, title="Source Dema 1")

long = input(20, minval=1)
srcLong = input(low, title="Source Dema 2")

long2 = input(63, minval=1)
srcLong2 = input(close, title="Source Dema 3")
e1 = ema(srcShort, short)
e2 = ema(e1, short)
dema1 = 2 * e1 - e2
plot(dema1, color=color.green, linewidth=2)

e3 = ema(srcLong, long)
e4 = ema(e3, long)
dema2 = 2 * e3 - e4
plot(dema2, color=color.blue, linewidth=2)

e5 = ema(srcLong2, long2)
e6 = ema(e5, long2)
dema3 = 2 * e5 - e6
plot(dema3, color=color.black, linewidth=2)

longC  = dema1 > dema2 and dema1 > dema3
shortC = dema1 < dema2 and dema1 < dema3 

alertlong  = longC and  not longC[1]
alertshort = shortC and not shortC[1]


strategy.entry("Long" , strategy.long , when = longC ,comment="Long")
strategy.entry("Short", strategy.short, when = shortC,comment="Short")

// Alerts 

alertcondition(longC  , title='Long' , message=' Buy  Signal ')
alertcondition(shortC , title='Short', message=' Sell Signal ')



더 많은