Estrategia de trading de regresión de media móvil RSI


Fecha de creación: 2023-09-12 14:37:28 Última modificación: 2023-09-12 14:37:28
Copiar: 0 Número de Visitas: 703
1
Seguir
1617
Seguidores

Esta estrategia se basa en el diseño de la característica de la regresión de la línea media del indicador RSI. Cuando el RSI supera la venta por encima de la compra, la regresión ocurre y se forma una oportunidad de negociación. La estrategia utiliza el indicador RSI para juzgar el estado de venta por encima de la compra, y utiliza la regresión de la línea media para establecer posiciones abiertas, con el fin de sistematizar la negociación.

Principio de la estrategia:

  1. Calcula el valor del indicador RSI, estableciendo una línea de sobreventa y una línea de sobreventa. El parámetro típico es la línea de sobreventa 60, la línea de sobreventa 30.

  2. Cuando el RSI cae de arriba hacia abajo y supera la línea de compra, se realiza una operación de venta y se establece una posición corta.

  3. Cuando el RSI supera la línea de venta de abajo hacia arriba, se realiza una operación de compra y se crea una posición de venta.

  4. La línea de pérdida de la posición múltiple es el precio de entrada multiplicado por ((1 + pérdida de la proporción), la línea de pérdida de la posición corta es el precio de entrada multiplicado por ((1 + pérdida de la proporción)

  5. Cuando el precio cruza la línea de stop loss, se realiza una salida de stop loss.

Las ventajas de esta estrategia incluyen:

  1. Utilizando la característica de retorno del RSI, se pueden capturar de forma indirecta las oportunidades de negociación derivadas de la reorientación de la tendencia.

  2. El método de construcción de posiciones de ruptura permite capturar el cambio de tendencia a tiempo.

  3. Establezca un límite de pérdidas para controlar las pérdidas individuales

Los riesgos de esta estrategia incluyen:

  1. La probabilidad de que el indicador RSI emita una señal falsa es mayor y debe confirmarse junto con otros indicadores.

  2. Los puntos de detención cercanos a los puntos de entrada se detienen con frecuencia, por lo que se debe permitir un margen de detención adecuado.

  3. La elección incorrecta de la hora de retorno a la negociación puede llevar a una prolongada duración de la posición.

En resumen, la estrategia de retorno de la línea media RSI realiza operaciones capturando las oportunidades de retorno del indicador RSI. Esta estrategia puede ser aleatoria y controlar eficazmente las pérdidas individuales. Sin embargo, el indicador RSI es de baja fiabilidad y los inversores deben adoptarlo con cautela y ayudarlo con otros indicadores técnicos para confirmar y optimizar el mecanismo de suspensión de pérdidas con el fin de obtener un rendimiento estable a largo plazo.

Código Fuente de la Estrategia
/*backtest
start: 2022-09-05 00:00:00
end: 2023-09-11 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © relevantLeader16058

//@version=4
strategy(shorttitle='RSI Bot Strategy',title='Quadency Mean Reversion Bot Strategy', overlay=true, initial_capital = 100, process_orders_on_close=true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, commission_type=strategy.commission.percent, commission_value=0.08)

//Backtest dates
start = input(defval = timestamp("08 Mar 2021 00:00 -0600"), title = "Start Time", type = input.time)
finish = input(defval = timestamp("9 Mar 2021 23:59 -0600"), title = "Start Time", type = input.time)
window()  => true       // create function "within window of time"

// Complete Control over RSI inputs and source price calculations
lengthRSI = input(14, minval=1)
source = input(title="Source", type=input.source, defval=close)
strat = input(title="Strategy", defval="Long/Short", options=["Long Only", "Long/Short", "Short Only"])
strat_val = strat == "Long Only" ? 1 : strat == "Long/Short" ? 0 : -1
stoploss = input(5.00, "Stop Loss %")
oversold= input(30)
overbought= input(60)

// Standard RSI Calculation
RSI = rsi(close, lengthRSI)
stLossLong=(1-(stoploss*.01))
stLossShort=(1+(stoploss*.01))

//Long and Short Strategy Logic
GoLong = crossunder(RSI, oversold) and window()
GoShort = crossover(RSI, overbought) and window()

// Strategy Entry and Exit
if (GoLong)
    if strat_val > -1
        strategy.entry("LONG", strategy.long)
    if strat_val < 1
        strategy.close("SHORT")
    

if (GoShort)
    if strat_val > -1
        strategy.close("LONG")
    if strat_val < 1
        strategy.entry("SHORT", strategy.short)


LongStopLoss = barssince(GoLong)<barssince(GoShort) and crossunder(low, valuewhen(GoLong, close, 0)*stLossLong)

ShortStopLoss = barssince(GoLong)>barssince(GoShort) and crossover(high, valuewhen(GoShort, close, 0)*stLossShort)

if (ShortStopLoss)
    strategy.close("SHORT")
    
if (LongStopLoss)
    strategy.close("LONG")