이중 이동평균 트렌드 전략

저자:차오장, 날짜: 2023-11-14 16:56:21
태그:

img

전반적인 설명

이중 이동 평균 트렌드 다음 전략은 빠른 라인과 느린 라인을 형성하기 위해 가격의 이중 기하급수 이동 평균을 계산합니다. 이 전략은 트렌드 다음 거래를 구현하기 위해 두 라인의 크로스오버를 기반으로 가격 추세를 식별합니다. 이 전략은 트렌드 다음을 기반으로 한 양적 거래 전략에 속합니다.

전략 논리

이 전략은 먼저 빠른 라인과 느린 라인을 포함한 가격의 이중 기하급수적인 이동 평균을 계산합니다. 빠른 라인은 4의 기간을 가지고 있으며 느린 라인은 8의 기간을 가지고 있습니다. 두 라인이 교차 할 때 거래 신호가 생성됩니다. 빠른 라인이 느린 라인의 위에 교차 할 때 구매 신호가 생성됩니다. 빠른 라인이 느린 라인의 아래에 교차 할 때 판매 신호가 유발됩니다. 또한 전략은 추가 거래 신호를 제공하기 위해 MACD 지표를 계산합니다. 분산되는 빨간 MACD 막대는 판매 신호이며, 회전하는 녹색 막대는 구매 신호입니다. 이중 이동 평균과 MACD 지표의 교차를 결합하여 전략은 트렌드를 따르는 거래를위한 가격 트렌드 방향을 결합합니다.

이점 분석

첫째, 이 전략은 거래 비용을 피하기 위해 가격 추세를 따라 거래한다. 둘째, 이중 이동 평균은 일부 가격 소음을 필터링하고 가격 추세를 원활하게 캡처한다. 또한, 이동 평균과 MACD의 유연한 매개 변수 최적화는 전략이 다른 제품과 환경에 적응할 수 있게 한다. 마지막으로, 단순하고 명확한 논리는 이 전략을 이해하기 쉽고 구현하기 쉽고, 양적 거래 알고리즘 설계에 적합하게 한다.

위험 분석

이 전략은 매개 변수 최적화에 크게 의존한다. 잘못된 매개 변수 설정은 많은 잘못된 신호를 생성할 수 있다. 또한, 이중 이동 평균의 지연 성격은 놓친 전환점을 유발할 수 있다. 트렌드를 따르는 전략은 또한 상승 추세를 추구하고 하락 추세를 죽이는 경향이 있으며, 이는 특정 위험을 초래한다. 또한, 거래 제품의 유동성 및 거래 비용 또한 전략의 수익성에 영향을 미칠 것이다. 위험을 완화하기 위해 매개 변수를 최적화하고 추가 필터를 추가하고 포지션 사이징을 제어할 수 있다.

개선 방향

전략의 다음 측면은 개선될 수 있습니다.

  1. 최적의 조합을 찾기 위해 이중 이동 평균의 기간을 최적화합니다.

  2. RSI와 KD와 같은 다른 지표를 추가하여 신호를 필터하고 품질을 향상시킵니다.

  3. 트렌드 역전시에서 거래를 종료하기 위해 스톱 로스 전략을 적용합니다.

  4. 리스크를 통제하기 위해 시장 조건에 따라 포지션 크기를 동적으로 조정합니다.

  5. 다양한 거래 상품에 대한 매개 변수를 최적화합니다.

  6. 성능을 향상시키기 위해 기계 학습과 같은 고급 전략을 포함합니다.

결론

요약하자면, 이것은 단순한 이중 이동 평균 트렌드를 따르는 전략이다. 전략 논리는 간단하고 구현하기 쉽습니다. 유연한 매개 변수 조정으로 인해 도입적 양적 거래 전략으로 적합합니다. 그러나, 트렌드를 추격하는 위험과 신호 지연은 안정성과 위험 통제를 향상시키기 위해 추가 개선으로 해결해야합니다. 전반적으로,이 전략은 초보자에게 훌륭한 학습 기회를 제공하고 고급 전략의 기초를 마련합니다.


/*backtest
start: 2023-10-14 00:00:00
end: 2023-11-13 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 12/11/2017
// The SMI Ergodic Indicator is the same as the True Strength Index (TSI) developed by 
// William Blau, except the SMI includes a signal line. The SMI uses double moving averages 
// of price minus previous price over 2 time frames. The signal line, which is an EMA of the 
// SMI, is plotted to help trigger trading signals. Adjustable guides are also given to fine 
// tune these signals. The user may change the input (close), method (EMA), period lengths 
// and guide values.
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
//
// WARNING:
// - For purpose educate only
////////////////////////////////////////////////////////////
strategy(title="SMI Ergodic Oscillator")
fastPeriod = input(4, minval=1)
slowPeriod = input(8, minval=1)
SmthLen = input(3, minval=1)
TopBand = input(0.5, step=0.1)
LowBand = input(-0.5, step=0.1)
reverse = input(false, title="Trade reverse")
// hline(0, color=gray, linestyle=dashed)
// hline(TopBand, color=red, linestyle=line)
// hline(LowBand, color=green, linestyle=line)
xPrice = close
xPrice1 = xPrice - xPrice[1]
xPrice2 = abs(xPrice - xPrice[1])
xSMA_R = ema(ema(xPrice1,fastPeriod),slowPeriod)
xSMA_aR = ema(ema(xPrice2, fastPeriod),slowPeriod)
xSMI = xSMA_R / xSMA_aR
xEMA_SMI = ema(xSMI, SmthLen)
pos = iff(xEMA_SMI < xSMI, -1,
	   iff(xEMA_SMI > xSMI, 1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )  
plot(xSMI, color=green, title="Ergotic SMI")
plot(xEMA_SMI, color=red, title="SigLin")

더 많은