Esta estrategia combina los indicadores Bollinger Bands y Stoch RSI para el comercio de múltiples indicadores. Pertenece al tipo típico de estrategia de indicadores combinados. Las bandas de Bollinger determinan la dirección de la tendencia y el Stoch RSI optimiza los tiempos de entrada para las señales comerciales.
La estrategia se basa en dos indicadores principales:
Las bandas de Bollinger
Calcule las bandas superior, media e inferior. Una señal de compra se genera cuando el precio se rompe por encima de la banda inferior.
Indicador de rendimiento de Stoch
Calcule el indicador del RSI de Stoch. Una señal de compra se genera cuando la línea K cruza por encima de la línea D.
La lógica de negociación específica es: abrir largo cuando tanto el break-out inferior de las bandas de Bollinger como la cruz dorada del RSI de Stoch ocurren juntos.
La lógica de salida utiliza las bandas para obtener ganancias y detener pérdidas: cierre para obtener ganancias cuando el precio vuelve a tocar la banda superior o media, cierre para pérdidas cuando el precio vuelve a romper por debajo de la banda inferior.
Los riesgos pueden reducirse:
La estrategia puede mejorarse mediante:
Optimización de los parámetros de las bandas de Bollinger
Ajustar las relaciones de cálculo superior/inferior para el mejor ajuste
Optimización de los parámetros del RSI de Stoch
Encontrar los valores óptimos de K y D
Añadir indicadores de confirmación como el MACD
Evitar señales falsas basadas en un solo indicador
Utilización de paradas de ganancias traseras en lugar de paradas fijas
Paradas basadas en la volatilidad de los precios
Parámetros de ensayo por separado para diferentes productos
Los parámetros óptimos varían según los productos.
Esta estrategia aprovecha las bandas de Bollinger para la dirección de la tendencia y el RSI de Stoch para la optimización de entrada, aprovechando un enfoque de múltiples indicadores. Pero existen desafíos como la optimización de parámetros difíciles y la precisión de la señal.
/*backtest start: 2022-09-14 00:00:00 end: 2023-09-20 00:00:00 period: 2d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy(title = "BB+RSI v2", overlay = true) price=close ////////// /////// BB ///////////////////////// bblength = input(50) bbupmult =input(2,step=0.1,title="Multiplier for BB Upper Band") bblowmult = input(2,step=0.1,title="Multiplier for BB Lower Band") basis = sma(close,bblength) devup = bbupmult * stdev(close, bblength) devlow = bblowmult * stdev(close, bblength) upper = basis + devup lower = basis - devlow plot(basis, color=red) p1 = plot(upper, color=blue) p2 = plot(lower, color=blue) fill(p1, p2) bbbuy= crossover(price,lower) bbsell = crossunder(price,upper) or price>upper or crossunder(price,basis) //////////////////// BB ////////////////////// //////////////////////// S RSI ///////////////////// lengthrsi = input(6) overSold = input( 20 ) overBought = input( 70 ) vrsi = rsi(price, lengthrsi) smoothK = input(3, minval=1) smoothD = input(3, minval=1) lengthRSI = input(14, minval=1) lengthStoch = input(14, minval=1) src = input(close, title="RSI Source") rsi1 = rsi(src, lengthRSI) k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK) d = sma(k, smoothD) SRSIbuy=crossover(k,d) ////////////////////// S RSI /////////////////////// // Conditions longcond = bbbuy and SRSIbuy closelong = bbsell monthfrom =input(6) monthuntil =input(12) dayfrom=input(1) dayuntil=input(31) if ( longcond ) strategy.entry("BUY", strategy.long, stop=close, oca_name="TREND", comment="BUY") else strategy.cancel(id="BUY") if ( closelong ) strategy.close("BUY")