이중 이동 평균 추적 전략

저자:차오장, 날짜: 2023-12-25 17:04:29
태그:

img

전반적인 설명

이중 이동 평균 추적 전략은 이동 평균 지표에 기반한 양적 거래 전략이다. 이 전략은 주로 이동 평균의 황금 십자와 죽음의 십자 등을 사용하여 구매 및 판매 신호를 생성한다. 단기 이동 평균이 아래에서 장기 이동 평균보다 높을 때 황금 십자 신호가 생성된다. 단기 이동 평균이 위에서 장기 이동 평균보다 낮을 때 죽음의 십자 신호가 생성된다. 이 전략은 또한 RSI 지표와 ADX 지표를 통합하여 트렌드의 방향과 강도를 결정하고 트렌드가 강하게 될 때 입력한다.

전략 원칙

이 전략은 주로 세 가지 기술 지표에 기반합니다.

  1. 슈퍼트렌드: 가격의 주요 트렌드 방향을 판단하는 데 사용됩니다. 슈퍼트렌드 지표 방향이 변경되면 가격 트렌드의 전환점으로 판단되고 거래 신호가 발송됩니다.

  2. RSI 지표 (Relative Strength Index): 과잉 구매 및 과잉 판매 조건을 판단하는 데 사용되는 오스실레이션 지표입니다. 이 전략은 RSI 지표가 가격이 단기간에 과잉 구매 또는 과잉 판매를 나타낼 때 거래 신호를 발산합니다.

  3. ADX 지표 (평균 방향 지표): 트렌드의 강도를 판단하는 데 사용됩니다. 이 전략은 트렌드 강도를 판단하기 위해 ADX를 통합하고 트렌드가 강할 때 입력하도록 선택합니다.

슈퍼트렌드 지표의 방향이 변하면 가격 추세가 역전되었다는 것을 의미합니다. 동시에 RSI 지표는 과잉 매수/ 과잉 판매 현상을 나타내고, 단기적 공급과 수요 관계의 전환을 나타내고, 가격이 역전될 수 있습니다. 또한 ADX 지표는 트렌드 강도가 크다는 것을 나타냅니다. 이것은이 전략의 진입 기회를 제공합니다. 구체적으로, 슈퍼트렌드 방향이 변하면 RSI가 과잉 매매를 나타내고, ADX>20가 긴 신호를 발행합니다. 슈퍼트렌드 방향이 변하고 RSI가 과잉 매입을 표시하면 종료 신호가 발급됩니다.

전략 의 장점

  1. 이중 이동 평균 시스템을 사용하면 가격 트렌드의 변화를 효과적으로 추적하고 트렌드로부터 이익을 얻을 수 있습니다.

  2. 과잉 구매 및 과잉 판매 조건을 판단하기 위해 RSI 지표를 통합하면 가격 전환 지점에서 최고치를 추구하고 판매 하락을 피할 수 있습니다.

  3. ADX 지표는 트렌드의 강도를 판단하기 때문에 이 전략은 주로 트렌드가 강할 때 활동하며 주요 트렌드로부터 이익을 얻습니다.

  4. 전략 매개 변수들은 최적화되고 좋은 성능을 보여주기 위해 테스트되었습니다.

위험 과 해결책

  1. 이중 이동 평균 전략 자체는 가격 변화에 매우 민감하며 더 많은 거래 신호를 생성 할 수 있습니다. 해결책은 거래 빈도를 줄이기 위해 이동 평균 매개 변수를 적절히 조정하는 것입니다.

  2. RSI 및 ADX 지표 모두 실패 할 수 있습니다. 해결책은 매개 변수를 최적화하고 지표 계산 주기를 조정하는 것입니다.

  3. 이 전략은 적절한 스톱 로스 전략을 필요로 합니다. 해결책은 합리적인 움직임 또는 미뤄진 오더 스톱을 설정하는 것입니다.

전략 최적화 방향

  1. 거래 주파수를 최적화하십시오. 거래 주파수를 조정하기 위해 이동 평균 시스템의 매개 변수를 최적화하십시오.

  2. 추가 보조 지표가 도입 될 수 있습니다. 예를 들어 거래량 지표를 도입하고 큰 주문이 들어올 때 입력합니다.

  3. 기계 학습 알고리즘은 매개 변수 최적화를 위해 결합될 수 있다. 최적의 매개 변수 조합을 예측하기 위해 알고리즘을 사용한다.

  4. 스톱 로스 메커니즘을 도입합니다. 단일 손실을 제어하기 위해 움직임 또는 대기 주문을 중지하십시오.

결론

이것은 이중 이동 평균 추적 전략이다. 핵심 아이디어는 가격 추세를 판단하기 위해 이동 평균 지표를 추적하고 RSI 및 ADX 지표와 결합한 입시 시기를 선택하는 것입니다. 이의 장점은 트렌드를 따라 과잉 구매 / 과잉 판매 현상을 세심하게 입력하고 주요 트렌드로부터 이익을 얻을 수 있다는 것입니다. 이 전략의 주요 위험은 가격 변화에 대한 높은 민감성에서 비롯되며 과도하게 빈번한 거래를 생성 할 수 있습니다. 매개 변수 최적화 및 스톱 로스 조치를 통해이 전략은 라이브 거래에서 더 나은 성과를 위해 효과적으로 조정 될 수 있습니다.


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

//@version=5
strategy("Supertrend Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=120,
     initial_capital=1000, margin_long=0.1)

atrPeriod = input(10, "ATR Length")
factor = input.float(3.0, "Factor", step=0.01)

[_, direction] = ta.supertrend(factor, atrPeriod)

adxlen = input(7, title="ADX Smoothing")
dilen = input(7, title="DI Length")
dirmov(len) =>
	up = ta.change(high)
	down = -ta.change(low)
	plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
	minusDM = na(down) ? na : (down > up and down > 0 ? down : 0)
	truerange = ta.rma(ta.tr, len)
	plus = fixnan(100 * ta.rma(plusDM, len) / truerange)
	minus = fixnan(100 * ta.rma(minusDM, len) / truerange)
	[plus, minus]
adx(dilen, adxlen) =>
	[plus, minus] = dirmov(dilen)
	sum = plus + minus
	adx = 100 * ta.rma(math.abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)
sig = adx(dilen, adxlen)

if ta.change(direction) < 0 and ta.rsi(close, 21) < 66 and ta.rsi(close, 3) > 80 and ta.rsi(close, 28) > 49 and sig > 20
    strategy.entry("My Long Entry Id", strategy.long)

if ta.change(direction) > 0
    strategy.close("My Long Entry Id")  // Close long position

//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)


더 많은