알리거터 RSI 거래 전략은 시장 트렌드를 결정하고 거래 신호를 생성하기 위해 여러 가지 상대 강도 지수 (RSI) 이동 평균의 조합을 사용하는 양적 거래 전략이다. 이 전략은 알리거터가 사냥하는 방식에서 영감을 받아 단기 RSI 라인이 장기 RSI 라인을 넘을 때 거래를 개시합니다.
알리거터 RSI 거래 전략은 5 기간, 13 기간 및 34 기간의 3 개의 RSI 라인을 사용합니다. 5 기간 RSI 라인은
핵심은 단기 및 장기적인 RSI 라인 사이의 교차를 파악하여 단기 및 장기적인 트렌드 사이의 관계를 측정하고 반전 기회를 식별하는 데 있습니다. 단기 RSI가 장기적인 RSI를 넘을 때 단기 가격 행동의 반전을 신호하여 반대 방향으로 입장을 취함으로써 임박한 장기적인 트렌드 반전에서 이익을 얻을 수 있습니다.
알리거터 RSI 거래 전략은 다음과 같은 장점을 가지고 있습니다.
알리거터 RSI 거래 전략은 또한 다음과 같은 위험을 가지고 있습니다.
이러한 위험은 추가 지표를 결합하고 매개 변수를 최적화하고 포지션 크기를 적절히 조정함으로써 완화될 수 있습니다.
알리거터 RSI 거래 전략은 다음과 같은 방법으로 최적화 될 수 있습니다.
알리거터 RSI 거래 전략은 시장 반전 기회를 포착하기 위해 RSI MA 교차를 사용합니다. 그것은 간단하며 알고 거래에 사용할 수 있지만 몇 가지 결함이 있습니다. 매개 변수 최적화 및 지표 조합은이 안정적으로 수익성있는 알고리즘 거래 전략으로 만들기 위해이 전략을 향상시킬 수 있습니다.
/*backtest start: 2022-11-30 00:00:00 end: 2023-12-06 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("RSI Alligator", overlay=false) jaws = rsi(close, 34) teeth = rsi(close, 5) lips = rsi(close, 13) plot(jaws, color=blue, title="Jaw") plot(teeth, color=green, title="Teeth") plot(lips, color=red, title="Lips") longCondition = crossover(rsi(close, 13), rsi(close, 34)) and (rsi(close, 5) > rsi(close, 34)) longCondition1 = crossover(rsi(close, 5), rsi(close, 34)) and (rsi(close, 13) > rsi(close, 34)) if (longCondition) strategy.entry("Long", strategy.long) if (longCondition1) strategy.entry("Long", strategy.long) shortCondition = crossunder(rsi(close, 13), rsi(close, 34)) and (rsi(close, 5) < rsi(close, 34)) shortCondition1 = crossunder(rsi(close, 5), rsi(close, 34)) and (rsi(close, 13) < rsi(close, 34)) if (shortCondition) strategy.entry("Short", strategy.short) if (shortCondition1) strategy.entry("Short", strategy.short) // === BACKTESTING: EXIT strategy === sl_inp = input(10, title='Stop Loss %', type=float)/100 tp_inp = input(90, title='Take Profit %', type=float)/100 stop_level = strategy.position_avg_price * (1 - sl_inp) take_level = strategy.position_avg_price * (1 + tp_inp) strategy.exit("Stop Loss/Profit", "Long", stop=stop_level, limit=take_level)