Se aplicará el método de cálculo de las pérdidas de valor en el cálculo de las pérdidas de valor.

El autor:¿ Qué pasa?, Fecha: 2023-11-03 15:02:19
Las etiquetas:

img

Resumen general

La estrategia de ruptura de impulso RSI-BB combina el índice de fuerza relativa (RSI) y los indicadores de bandas de Bollinger (BB) para la negociación de ruptura. Utiliza RSI para determinar las tendencias del mercado y los niveles de sobrecompra / sobreventa, y BB para identificar los puntos de ruptura.

Estrategia lógica

El código calcula primero los indicadores RSI y BB.

El RSI se calcula de la siguiente manera:

up = rma(max(change(close), 0), 30)
down = rma(-min(change(close), 0), 30) 
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))

Donde el up mide el movimiento de los precios al alza durante 30 períodos, el down mide el movimiento de los precios a la baja, y rsi se calcula sobre la base de la relación de up a down.

El BB se calcula de la siguiente manera:

basis = sma(close, 50)
dev = 0.2 * stdev(close, 50)
upper = basis + dev
lower = basis - dev

Donde la base es la media móvil de 50 períodos, dev es 0,2 veces la desviación estándar, superior e inferior son las bandas.

bbi es el índice de ancho de banda de Bollinger, calculado como:

bbr = close>upper? 1 : close<lower? -1 : 0 
bbi = bbr - bbr[1]

bbr comprueba si el cierre rompe la banda superior o inferior. La ruptura es 1, el desglose es -1, de lo contrario 0. bbi es la diferencia entre el bbr actual y el anterior. bbi positivo indica ruptura ascendente, negativo indica descendente.

Las señales estratégicas se determinan como:

long = rsi>52 and rsi<65 and bbi>0.11 and bbi<0.7
short = rsi<48 and rsi>35 and bbi<-0.11 and bbi>-0.7 

Ir largo cuando el RSI está entre 52-65 y el BBI está entre 0.11 y 0.7.

Ventajas

  1. La combinación de RSI y BB proporciona señales más confiables.

  2. El RSI de 30 períodos filtra algo de ruido del mercado y se centra en las tendencias principales.

  3. BB de 50 períodos con 0.2 desviación estándar ayuda a filtrar las flechas.

  4. Los umbrales de BBI filtran las fugas falsas.

  5. Las zonas RSI largo/corto de 52-65 y 35-48 proporcionan cierto amortiguador para evitar operaciones perdidas.

Los riesgos

  1. Las estrategias de breakout son propensas a ser atrapadas en los golpes, necesitan gestionar el riesgo con stop loss.

  2. Los resultados de las pruebas de retroceso pueden estar sobreajustados, el rendimiento en vivo puede variar.

  3. Los movimientos extremos del mercado pueden afectar al stop loss, lo que resulta en grandes pérdidas.

  4. Es necesario optimizar los parámetros del índice de rendimiento y del índice de pérdida, incluidos los períodos y los umbrales.

  5. El precio de la orden puede afectar significativamente el rendimiento en vivo.

Oportunidades de mejora

  1. Prueba diferentes combinaciones de parámetros RSI y BB para encontrar los ajustes óptimos.

  2. Añadir otros indicadores como MACD, KD para la filtración de señales.

  3. Optimice las zonas RSI larga / corta para filtrar más ruido.

  4. Optimizar los umbrales dinámicos de BBI para filtrar mejor las falsificaciones.

  5. Añadir filtro de tendencia para evitar el comercio contra la tendencia principal.

  6. Prueba diferentes técnicas de stop loss para encontrar el control óptimo del riesgo.

  7. Prueba diferentes tipos de orden para minimizar el impacto del deslizamiento.

Conclusión

La estrategia RSI-BB combina las ventajas de usar indicadores de tendencia y impulso. Los resultados de las pruebas de retroceso son prometedores, pero el rendimiento en vivo puede variar debido a factores del mundo real como deslizamiento y stop loss. Los parámetros y filtros deben optimizarse en función de los resultados de las pruebas de retroceso.


/*backtest
start: 2023-10-03 00:00:00
end: 2023-11-02 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
//Based on Larry Connors RSI-2 Strategy - Lower RSI
strategy(title="Spyfrat Strat", shorttitle="SpyfratStrat", overlay=true)
src = close, 
// BB Init
source = close
length = input(50, minval=1)
mult = input(0.2, title="Mult Factor", minval=0.001, maxval=50)
alertLevel=input(0.1)
impulseLevel=input(0.75)
showRange = input(false, type=bool)
//RSI CODE
up = rma(max(change(src), 0), 30)
down = rma(-min(change(src), 0), 30)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
//BB CODE
basis = sma(source, length)
dev = mult * stdev(source, length)
upper = basis + dev
lower = basis - dev
bbr = source>upper?(((source-upper)/(upper-lower))/10): source<lower?(((source-lower)/(upper-lower))/10) : 0.1
bbi = bbr - nz(bbr[1]) 
//Rule
long = rsi>52 and rsi<65 and  bbi>0.11 and bbi<0.7
short = rsi<48 and rsi>35 and  bbi<-0.11 and bbi>-0.7
//Trade Entry
strategy.entry("long", strategy.long, when=long)
strategy.entry("short", strategy.short, when=short)
//Trade Exit
TP = input(250) * 10
SL = input(20) * 10
TS = input(0) * 10
CQ = 100

TPP = (TP > 0) ? TP : na
SLP = (SL > 0) ? SL : na
TSP = (TS > 0) ? TS : na

strategy.exit("Close Long", "long", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)
strategy.exit("Close Short", "short", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)

Más.