La estrategia de negociación de inversión de media móvil RSI de Connors combina el índice de fuerza relativa (RSI) y las medias móviles duales para identificar oportunidades de negociación de inversión de alta probabilidad.
Esta estrategia utiliza tanto el RSI como los promedios móviles duales para determinar las tendencias del mercado. En primer lugar, calcula un RSI de 2 períodos para juzgar las reversiones de tendencia a corto plazo. En segundo lugar, calcula un promedio móvil de 200 períodos para determinar la dirección de la tendencia a largo plazo. Cuando el RSI a corto plazo rebota desde el área de sobrecompra / sobreventa y se mueve contra la tendencia a largo plazo, indica que el mercado está a punto de revertirse y se puede establecer una posición comercial.
Las señales de entrada: Ir largo cuando el RSI está por debajo del área de sobreventa (default 5) y el precio a corto plazo está por encima del precio a largo plazo; Ir corto cuando el RSI está por encima del área de sobrecompra (default 95) y el precio a corto plazo está por debajo del precio a largo plazo.
Las señales de salida: Salir cuando la media móvil a corto plazo de 5 períodos da una señal opuesta a la dirección de entrada; o detener la pérdida (pérdida por defecto del 3%).
Esta estrategia combina múltiples indicadores para juzgar la estructura del mercado y puede mejorar la precisión de la negociación.
Hay algunos riesgos con esta estrategia:
Esta estrategia puede optimizarse en varios aspectos:
La estrategia de inversión de RSI de Connors captura las reversiones del mercado en posiciones de alta probabilidad mediante el filtrado de señales de reversión de RSI con promedios móviles dobles.
/*backtest start: 2023-10-21 00:00:00 end: 2023-11-16 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Connors RSI-MA Strategy", overlay=true) // Strategy parameters rsiLength = input(2, title="RSI Length") maLength = input(200, title="MA Length") exitMaLength = input(5, title="Exit MA Length") overboughtThreshold = input(95, title="Overbought Threshold") oversoldThreshold = input(5, title="Oversold Threshold") stopLossPercentage = input(3, title="Stop Loss Percentage") // 2-period RSI rsi2 = ta.rsi(close, rsiLength) // 200-period MA ma200 = ta.sma(close, maLength) // 5-period MA for exit signals ma5_exit = ta.sma(close, exitMaLength) // Positive trend condition positiveTrend = close > ma200 // Negative trend condition negativeTrend = close < ma200 // Buy and sell conditions buyCondition = rsi2 < oversoldThreshold and positiveTrend sellCondition = rsi2 > overboughtThreshold and negativeTrend // Exit conditions exitLongCondition = close > ma5_exit exitShortCondition = close < ma5_exit // Stop Loss stopLossLevelLong = strategy.position_avg_price * (1 - stopLossPercentage / 100) stopLossLevelShort = strategy.position_avg_price * (1 + stopLossPercentage / 100) // Strategy logic if (buyCondition) strategy.entry("Buy", strategy.long) if (sellCondition) strategy.entry("Sell", strategy.short) if (exitLongCondition or close >= stopLossLevelLong) strategy.close("Buy") if (exitShortCondition or close <= stopLossLevelShort) strategy.close("Sell") // Plotting plot(ma200, title="200 MA", color=color.blue) plot(ma5_exit, title="Exit MA", color=color.red) // Plot stop loss levels plotshape(series=stopLossLevelLong, title="Long Stop Loss", color=color.green, style=shape.triangledown, size=size.small) plotshape(series=stopLossLevelShort, title="Short Stop Loss", color=color.red, style=shape.triangleup, size=size.small)