이 전략은 두 개의 이동 평균 (빠른 이동 평균과 느린 이동 평균) 과 상대적 강도 지수 (RSI) 를 사용하여 단기 시장 추세와 과잉 구매 / 과잉 판매 조건을 식별합니다. 빠른 이동 평균이 느린 이동 평균보다 높고 RSI가 과잉 판매 수준보다 낮을 때 전략은 긴 지위에 진입합니다. 빠른 이동 평균이 느린 이동 평균보다 낮고 RSI가 과잉 구매 수준보다 높을 때 전략은 짧은 지위에 진입합니다. 전략은 이동 평균과 RSI 수준의 교차를 기반으로 입점 및 출구 지점을 결정하여 단기 가격 추세를 파악합니다.
이 전략은 이중 이동 평균과 RSI 지표를 결합하여 단기 가격 추세를 파악하여 변동적인 시장에서 단기 거래에 적합합니다. 전략 논리는 명확하고 매개 변수는 유연하며 구현 및 최적화하기가 쉽습니다. 그러나 불안정한 시장에서 과도한 거래 신호를 생성 할 수 있으며 장기적인 추세를 파악하는 능력이 약합니다. 따라서 실용적인 응용에서는 추가 지표를 도입하고 매개 변수 선택을 최적화하고 위험 관리 조치를 구현하고 전략의 안정성과 수익성을 향상시키는 다른 접근 방식을 고려하십시오.
/*backtest start: 2024-03-24 00:00:00 end: 2024-03-25 05:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Short-Term Scalp Trading Strategy", overlay=true) // Define strategy parameters fastMA_length = input(5, title="Fast MA Length") slowMA_length = input(10, title="Slow MA Length") rsi_length = input(7, title="RSI Length") rsi_oversold = input(20, title="RSI Oversold Level") rsi_overbought = input(80, title="RSI Overbought Level") // Calculate Moving Averages fastMA = ta.sma(close, fastMA_length) slowMA = ta.sma(close, slowMA_length) // Calculate RSI rsi = ta.rsi(close, rsi_length) // Define entry conditions longCondition = ta.crossunder(fastMA, slowMA) and rsi < rsi_oversold shortCondition = ta.crossover(fastMA, slowMA) and rsi > rsi_overbought // Enter long position strategy.entry("Long", strategy.long, when=longCondition) // Enter short position strategy.entry("Short", strategy.short, when=shortCondition) // Define exit conditions longExitCondition = ta.crossunder(fastMA, slowMA) or ta.crossover(rsi, rsi_overbought) shortExitCondition = ta.crossover(fastMA, slowMA) or ta.crossunder(rsi, rsi_oversold) // Exit long position if (longExitCondition) strategy.close("Exit Long", "Long") // Exit short position if (shortExitCondition) strategy.close("Exit Short", "Short") // Plot buy and sell signals plotshape(series=longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small) plotshape(series=shortCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)