
La estrategia es una estrategia de negociación basada en la banda de Brin y el oscilador aleatorio. Utiliza el Brin para determinar el rango de fluctuación del mercado y usa el oscilador aleatorio para juzgar el estado de sobrecompra y sobreventa del mercado.
El núcleo de la estrategia son los dos indicadores técnicos de la banda de Brin y el oscilador aleatorio. La banda de Brin se compone de tres líneas: la media, la media y la media. La media es una media móvil simple de los precios, la media y la media son un múltiplo de la diferencia estándar de precios de la media, más y menos la media.
El oscilador aleatorio está formado por dos líneas: la línea %K y la línea %D. La línea %K mide la posición del precio de cierre entre el precio más alto y el precio más bajo en el período más reciente. La línea %D es la media móvil de la línea %K.
La estrategia combina estos dos indicadores, con una estrategia de reajuste cuando el precio rompe la banda de Brin y cruza la línea de %D con el oscilador %K al azar; y una estrategia de reajuste cuando el precio rompe la banda de Brin y cruza la línea de %D con el oscilador %K al azar. Esta combinación puede capturar de manera efectiva las tendencias del mercado y, al mismo tiempo, evitar el comercio frecuente en mercados con fluctuaciones.
La estrategia es una estrategia de negociación simple y eficaz que, mediante la combinación de los dos indicadores técnicos clásicos de las bandas de Brin y los oscilantes aleatorios, puede obtener ganancias estables en ambos estados de mercado de tendencia y oscilación. Aunque la estrategia también tiene algunos riesgos y limitaciones, con la optimización y mejora adecuadas, se puede mejorar aún más el rendimiento y la adaptabilidad de la estrategia, convirtiéndose en una estrategia de negociación digna de referencia y aprendizaje.
/*backtest
start: 2023-05-03 00:00:00
end: 2024-05-08 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Unique Bollinger Bands Strategy", overlay=true)
src = input(close)
length = input.int(34, minval=1)
mult = input.float(2.0, minval=0.001, maxval=50)
basis = ta.sma(src, length)
dev = ta.stdev(src, length)
dev2 = mult * dev
upper1 = basis + dev
lower1 = basis - dev
upper2 = basis + dev2
lower2 = basis - dev2
colorBasis = src >= basis ? color.blue : color.orange
pBasis = plot(basis, linewidth=2, color=colorBasis)
pUpper1 = plot(upper1, color=color.new(color.blue, 0), style=plot.style_circles)
pUpper2 = plot(upper2, color=color.new(color.blue, 0))
pLower1 = plot(lower1, color=color.new(color.orange, 0), style=plot.style_circles)
pLower2 = plot(lower2, color=color.new(color.orange, 0))
fill(pBasis, pUpper2, color=color.new(color.blue, 80))
fill(pUpper1, pUpper2, color=color.new(color.blue, 80))
fill(pBasis, pLower2, color=color.new(color.orange, 80))
fill(pLower1, pLower2, color=color.new(color.orange, 80))
// Parameters
bbLength = input.int(34, title="Length", minval=1)
bbMultiplier = input.float(2.0, title="Multiplier", minval=0.001, maxval=50)
// Source
priceData = close // Unique name for price data source
// Bollinger Bands Calculation
bbBasis = ta.sma(priceData, bbLength)
bbDeviation = ta.stdev(priceData, bbLength)
bbDeviationMultiplied = bbMultiplier * bbDeviation
bbUpperBand = bbBasis + bbDeviationMultiplied
bbLowerBand = bbBasis - bbDeviationMultiplied
// Plot Bollinger Bands
plot(bbBasis, color=color.blue, linewidth=2)
plot(bbUpperBand, color=color.blue)
plot(bbLowerBand, color=color.orange)
// Strategy Logic for Entry and Exit
enterLong = ta.crossover(priceData, bbUpperBand)
enterShort = ta.crossunder(priceData, bbLowerBand)
// Enter Long when price crosses over upper band
if (enterLong)
strategy.entry("Long", strategy.long)
// Enter Short when price crosses under lower band
if (enterShort)
strategy.entry("Short", strategy.short)
// Close Long when Short condition is met (i.e., price under lower band)
if (enterShort)
strategy.close("Long")
// Close Short when Long condition is met (i.e., price over upper band)
if (enterLong)
strategy.close("Short")