이중 지수 이동 평균 전략


생성 날짜: 2023-10-08 15:14:17 마지막으로 수정됨: 2023-10-08 15:14:17
복사: 0 클릭수: 617
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

개요

이 전략은 쌍 지수 이동 평균을 사용하여 가격의 평균을 돌파하는 방향에 따라 다공간 방향을 판단합니다. 가격이 상승하면 평균을 돌파하고 가격이 하락하면 평균을 돌파 할 때 공백을합니다. 이 전략은 추세 판단과 과매매 과매매를 결합하여 수익을 고정합니다.

전략 원칙

이 전략은 이중 지수 이동 평균 지표에 기초한다. 지표의 Length 파라미터를 설정하면 평균 주기가 20일이다. xPrice 파라미터를 종료 가격으로 설정한다. 20일 지수 이동 평균 xXA를 계산한다. 또한 최근 2일간의 최고 가격과 최저 가격을 nHH와 nLL로 계산한다. nLL이 평균보다 높거나 nHH가 평균보다 낮다면, nLL과 nHH의 작은 키값을 키 가격 nXS로 취한다.

이 전략은 가격이 평균을 돌파하는 방향을 판단하고, 실시간 최고 가격과 최저 가격과 결합하여 돌파의 유효성을 결정하고, 가짜 돌파를 피한다. 가격이 실제로 평균을 돌파했을 때 거래 신호를 낸다.

우위 분석

  1. 이중 지수 이동 평균을 사용하면 트렌드 방향을 더 정확하게 판단할 수 있다.

  2. 최상위 가격과 최하위 가격의 합쳐진 판정으로 돌파의 유효성을 판단하여 가격 변동으로 인한 가짜 돌파를 피할 수 있다.

  3. 리버스 파라미터 조정으로 편리하게 여러 카카오 방향이 가능하며, 다양한 시장 환경에 적응할 수 있다.

  4. 평균을 넘어서서 거래하면 Noise를 효과적으로 필터링할 수 있다.

위험 분석

  1. 이중 지수 이동 평균은 때때로 민감하지 않으며, 단기 거래 기회를 놓칠 수 있다.

  2. 이동 평균 시스템은 평형 시장에서 빈번하게 잘못된 신호를 발생시킬 수 있다.

  3. 이 전략은 트렌드가 뚜렷한 시장 환경에 적합하며, 불안정한 시장을 정리하는 데 적합하지 않습니다.

  4. 손해 방지 탈퇴 메커니즘을 고려하지 않은 채 손실이 확대될 위험이 있습니다.

  5. 포지션 규모가 설정되지 않아 위험 통제가 부적절할 수 있습니다.

최적화 방향

  1. 다른 지표와 결합하여 시장의 흐름을 판단할 수 있으며, 시장을 정리할 때 자주 거래되는 것을 피할 수 있다.

  2. 동적 중지 손실을 추가하여 단편 손실 위험을 제어 할 수 있습니다.

  3. 시장의 변동 정도에 따라 동적으로 이동 평균 파라미터를 조정할 수 있으며, 지표의 민감성을 최적화한다.

  4. 포지션 규모를 설정하여 수익을 확대하면서 위험을 통제할 수 있습니다.

  5. 워크 포워드 분석 방법을 통해 파라미터 최적화를 할 수 있다.

요약하다

이 전략은 쌍 지수 이동 평균 지표를 사용하여 가격 트렌드 방향을 판단하고, 최고 가격과 최저 가격과 결합하여 가짜 돌파구를 피한다. 손해 막기 장치, 포지션 규모 제어 등의 최적화 측면에서 개선할 여지가 있다. 그러나 이 전략은 전반적으로 간단하고 실용적이며, 변수를 조정하여 다른 시장 환경에 적응할 수 있으며, 신뢰할 수있는 추세 추적 전략이다.

전략 소스 코드
/*backtest
start: 2023-09-07 00:00:00
end: 2023-10-07 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 27/12/2016
// Strategy
// This indicator plots 2/20 exponential moving average. For the Mov 
// Avg X 2/20 Indicator, the EMA bar will be painted when the Alert criteria is met.
//
// You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect...
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="Strategy 2/20 Exponential Moving Average", overlay = true)
Length = input(20, minval=1)
reverse = input(false, title="Trade reverse")
xPrice = close
xXA = ema(xPrice, Length)
nHH = max(high, high[1])
nLL = min(low, low[1])
nXS = iff((nLL > xXA)or(nHH < xXA), nLL, nHH)
pos =  iff(close > xXA and close > nXS , 1,
	     iff(close < xXA and close < nXS, -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(nXS, color=blue, title="XAverage")