전략에 따른 AO 지표 기반 트렌드

저자:차오장, 날짜: 2023-12-20 11:59:48
태그:

img

전반적인 설명

이 전략은 트렌드 방향을 결정하고 트렌드를 확인하기 위해 이동 평균을 사용한다. 트렌드를 따르는 전략에 속한다. AO 지표가 0 수준을 넘어서고 빠른 MA가 느린 MA를 넘어서면 길게, AO가 0 수준을 넘어서고 빠른 MA가 느린 MA를 넘어서면 짧게, 트렌드의 방향성을 활용하여 이익을 얻는다.

전략 논리

이 전략은 주로 AO 지표에 의존하여 단기 트렌드 방향을 결정한다. AO 지표는 5 기간과 34 기간 간 간평균의 차이에 기초하여 계산된다. 이 지표는 모멘텀 지표 범주에 속한다. AO가 긍정적 인 경우 단기 MA가 장기 MA보다 높다는 것을 의미하며, 이는 상승 신호로 해석되어야 한다. AO가 부정적 인 경우 단기 MA가 장기 MA보다 낮다는 것을 의미하며, 이는 하향 신호로 해석되어야 한다.

따라서 AO 지표는 트렌드의 방향을 효과적으로 결정할 수 있습니다. AO가 0 수준을 넘을 때 시장 트렌드가 상승세를 보이며 우리는 길게 가야한다는 신호입니다. AO가 0 수준을 넘을 때 시장 트렌드가 하락세를 보며 우리는 짧게 가야한다는 신호입니다.

또한 이 전략은 20주기 및 200주기 이동 평균도 포함합니다. 이 두 MA의 기울기는 중장기 트렌드의 방향을 나타냅니다. 단기 트렌드 방향에 대한 AO 지표만으로 판단하는 것은 충분하지 않습니다. 중장기 트렌드의 확인도 필요합니다. 따라서 MA 교차 규칙이 추가되었습니다.

빠른 MA가 느린 MA를 넘을 때 중장기 트렌드가 상승세를 타게 되고, AO가 0을 넘어서 상승세를 타게 되면 우리는 장면을 타게 됩니다. 빠른 MA가 느린 MA를 넘을 때 중장기 트렌드가 하향세를 타게 되고, AO가 0을 넘어서 하락세를 타게 되면 우리는 단면을 타게 됩니다.

장점

  1. AO 지표를 사용하여 단기 트렌드 방향을 정확하게 결정
  2. 중장기 트렌드를 확인하기 위해 MA 필터를 추가하여 잘못된 파장을 효과적으로 방지합니다.
  3. 빠른 수익, 단기 거래에 적합

위험 분석

  1. 마이너스 엔트리가 실패할 위험이 있습니다. AO가 0을 넘어서고 MA 신호가 하락하기 전에 가격이 계속 상승할 수 있습니다.
  2. 장기화 시 실패 진입 위험이 있습니다. AO가 0을 넘고 MA 신호가 상승하기 전에 구매 한 후 가격이 잠시 계속 하락 할 수 있습니다.
  3. 주요 기술 수준에서 AO 신호가 왜곡되는 위험

개선 방향

  1. 더 나은 설정을 찾기 위해 다른 MA 조합을 테스트하십시오. 예를 들어 10 및 50 기간 MA
  2. 신호 확인을 위해 RSI와 같은 다른 지표를 추가
  3. 더 나은 리스크/이익 비율을 위해 스톱 로스 비율을 최적화

결론

이 전략은 간단한 트렌드 다음 전략이다. 중장기 MAs에 의해 확인된 단기 트렌드 방향을 결정하기 위해 AO를 사용하는 것은 논리적으로 타당하다. AO와 MAs의 조합은 널리 사용되고 상대적으로 성숙하다. 이 전략은 또한 매우 신뢰할 수 있다. 매개 변수 및 기타 지표의 추가 최적화는 전략 성능을 향상시킬 수 있다.


/*backtest
start: 2023-12-12 00:00:00
end: 2023-12-14 20:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// https://www.youtube.com/watch?v=zr3AVwjCtDA

//@version=5
strategy(title="Bingx ESTRATEGIA de Trading en 1 minuto ", shorttitle="AO")
long = input.bool(true, "long")
short = input.bool(true, "short")
profit = (input.float(10, "profit") / 100) + 1
stop = (input.float(5, "stop") / 100) + 1
ao = ta.sma(hl2,5) - ta.sma(hl2,34)
diff = ao - ao[1]
plot(ao, color = diff <= 0 ? #F44336 : #009688, style=plot.style_columns)
changeToGreen = ta.crossover(diff, 0)
changeToRed = ta.crossunder(diff, 0)
alertcondition(changeToGreen, title = "AO color changed to green", message = "Awesome Oscillator's color has changed to green")
alertcondition(changeToRed, title = "AO color changed to red", message = "Awesome Oscillator's color has changed to red")

ema20 = ta.ema(close, 20)
ema200 = ta.ema(close, 200)
rsi = ta.rsi(close, 7)
plot(rsi)
plot(0, color=color.white)
var float pentry = 0.0
var float lentry = 0.0
var bool oab = false
// oab := ta.crossover(ao, 0) ? true : ta.crossover(0, ao) ? false : oab[1]

if long and close > open and ta.crossover(close, ema20) and ema20 > ema200 and ao > 0 and rsi > 50
    strategy.entry("long", strategy.long)
    pentry := close
strategy.exit("exit long", "long", limit=pentry * profit, stop=pentry / stop)

if short and close < open and ta.crossunder(close, ema20) and ema20 < ema200 and ao < 0 and rsi < 50
    strategy.entry("short", strategy.short)
    lentry := close
strategy.exit("exit short", "short", limit=lentry / profit, stop=lentry * stop)

더 많은