
La estrategia RSI-BB es una estrategia de breakout que combina un indicador relativamente débil (RSI) y un indicador de la banda de Brin (BB). La estrategia utiliza el RSI para determinar la tendencia del mercado y el fenómeno de sobreventa y sobreventa, y utiliza el BB para determinar el breakout y realizar las operaciones de compra o venta correspondientes cuando el RSI y el indicador BB emiten señales de compra o venta al mismo tiempo.
En el código, primero se calculan los dos 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))
En este caso, el rsi se calcula de acuerdo con la relación entre el aumento y la disminución de los precios de cierre en los últimos 30 días.
El método de cálculo de BB es:
basis = sma(close, 50)
dev = 0.2 * stdev(close, 50)
upper = basis + dev
lower = basis - dev
La base es el promedio de 50 días, el dev es 0,2 veces la diferencia estándar, y el upper y el lower son la línea media y la línea media.
bbi es el índice de ancho de banda de Bryn, calculado de la siguiente manera:
bbr = close>upper? 1 : close<lower? -1 : 0
bbi = bbr - bbr[1]
bbr determina si el cercano actual se ha roto en el tren ascendente o descendente, se rompe a 1, se cae a 1, o es 0. BBI es el cercano actual menos el cercano anterior, mayor a 0 significa un cercano ascendente, menor a 0 significa un cercano descendente.
Después de calcular el RSI y el BBI, la lógica de la estrategia para determinar las señales de negociación es:
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
Es decir, cuando el RSI está en el rango de 52-65 y el BBI es mayor a 0.11 es menor que 0.7; cuando el RSI está en el rango de 35-48 y el BBI es menor que -0.11 es mayor que -0.7 y está cerrado.
La combinación de los indicadores RSI y BB permite determinar con mayor precisión el punto de compra y venta. El RSI determina la sobrecompra y la sobreventa, y el BB determina la brecha, y ambas son más confiables.
El parámetro RSI se configura como una línea de 30 días, que puede filtrar parte del ruido en el mercado para identificar las principales tendencias.
El parámetro BB se establece en la línea de 50 días y 0,2 veces la diferencia estándar, lo que puede tener el efecto de la oscilación del filtro.
BBI añade las condiciones de filtración 0.11 y 0.7 para filtrar falsas brechas.
El RSI tiene un rango de más de 52-65 y 35-48 para hacer un descuento, y un mayor buffer para evitar perder puntos de venta y compra.
Las estrategias de ruptura son fácilmente manipulables, y los riesgos deben ser controlados mediante el establecimiento de un stop loss.
Los datos de la detección pueden estar sobre-ajustados, y los resultados en el disco duro pueden ser diferentes.
El mercado puede cambiar drásticamente, lo que lleva a que el stop loss sea superado y se produzcan grandes pérdidas.
Los parámetros del RSI y del BB necesitan ser optimizados, incluyendo los parámetros del ciclo y los parámetros del intervalo de compra y venta.
La configuración de precios de los pedidos también tiene un gran impacto en el rendimiento del disco duro.
Prueba diferentes combinaciones de parámetros de RSI y BB para encontrar el parámetro óptimo.
Añadir otros indicadores para juzgar la señal de filtración, como MACD, KD, etc.
Optimización y ajuste de los parámetros del intervalo RSI de las operaciones de compraventa, reduciendo el intervalo para filtrar más ruido.
Optimice los parámetros de filtración de BBI y configure el filtro de brecha falsa en el intervalo dinámico.
Añadir indicadores de tendencia para evitar operaciones de contracorriente
Prueba diferentes métodos de detención para encontrar la solución de detención más aceptable para la retirada.
Probar diferentes formas de ordenar para encontrar el esquema de pedido que tenga el menor impacto en el punto de deslizamiento.
La estrategia de ruptura dinámica RSI-BB combina las ventajas del juicio de tendencia y el juicio de breakout, y se desempeña bien en la retroalimentación. Sin embargo, la efectividad del disco puede verse afectada por los puntos de deslizamiento y los paros.
/*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)