Esta estrategia utiliza la línea de la proporción dorada de las bandas de Bollinger combinadas con formaciones de promedio móvil para negociar reversiones de la media.
El uso de vwma en lugar de sma para la línea media de BB refleja mejor el movimiento de los precios
La proporción de oro es importante soporte/resistencia, proporciona base para la reversión
El MA en tendencia al alza asegura que la tendencia general sea al alza
Las pérdidas de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés de las operaciones de tipo de interés.
La línea de la proporción de oro no es un soporte garantizado, el precio puede romper
Las pérdidas de detención fijas pueden ser arbitrarias, debe considerarse el ajuste basado en la volatilidad
La tendencia al alza de MA puede ser una ruptura falsa, debe comprobar más indicadores
No estoy seguro de la duración de la reversión, necesito un beneficio razonable al salir.
Prueba diferentes combinaciones de parámetros como el período BB, el multiplicador SD, el porcentaje de pérdida de parada fija, etc.
Añadir más indicadores para determinar la tendencia del mercado y la probabilidad de reversión, por ejemplo, MACD, KD, etc.
Considere las paradas dinámicas, como las paradas ATR o las paradas traseras
Optimizar la toma de ganancias como el movimiento de la parada de ganancias, la toma parcial de ganancias, etc.
Esta estrategia de operaciones significa reversiones utilizando la línea de ratio de oro BB, con lógica clara, parámetros simples y reducción controlable. Pero también tiene riesgos, requiere más pruebas y optimización, añadiendo más indicadores técnicos para la tendencia y mejores paradas / salidas antes del uso real. En general, proporciona la idea de usar el ratio de oro en el comercio de cantidades, vale la pena explorar más.
/*backtest start: 2023-10-01 00:00:00 end: 2023-10-31 23:59:59 period: 1h basePeriod: 15m 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/ // © mohanee //@version=4 strategy(title="Bollinger Band with Fib Golden Ratio (0.618)", shorttitle="Bollinger Band with Fib Golden Ratio" , overlay=true, pyramiding=1, default_qty_type=strategy.percent_of_equity, default_qty_value=20, initial_capital=10000, currency=currency.USD) length = input(50,title="BB Length" , minval=1) src1 = input(hlc3, title="Source") //mult1 = input(1.33, minval=0.001, maxval=50) mult = input(1.5,title="multplier", minval=0.001, maxval=50) stopLoss=input(5,title="Stop Loss",minval=1) basis = vwma(src1, length) dev = mult * stdev(src1, length) //dev3 = mult3 * stdev(src, length) upper_618= basis + (0.618*dev) lower_618= basis - (0.618*dev) //lower_618_dev3= basis - (0.618*dev3) plot_upper618= plot(upper_618, color=color.purple, linewidth=2, title="0.618") plot(basis, color=color.purple,style=plot.style_circles, linewidth=2) plot_lower618= plot(lower_618, color=color.purple, linewidth=2, title="0.618 entry") //plot_lower618_dev3= plot(lower_618_dev3, color=color.red, linewidth=1, title="0.618 stop") //plot_lower618= plot(lower_618, color=color.purple, linewidth=1, title="0.618 entry") ema200=ema(close,200) ema50=ema(close,50) plot (ema200, title="ema200", color=color.orange, linewidth=2) plot (ema50, title="ema50", color=color.blue , linewidth=2) longCondition= ema50 > ema200 strategy.entry(id="BB_Fib618", long=true, when = longCondition and ( close < lower_618 or low <= lower_618) ) strategy.close(id="BB_Fib618", comment="points="+tostring(close - strategy.position_avg_price, "###.##") , when = strategy.position_size >= 1 and crossover(close,upper_618 )) //stoploss exit stopLossVal = strategy.position_size>=1 ? strategy.position_avg_price * ( 1 - (stopLoss/100) ) : 0.00 strategy.close(id="BB_Fib618", comment="SL="+tostring(close - strategy.position_avg_price, "###.##"), when=abs(strategy.position_size)>=1 and close < stopLossVal ) //and close > strategy.position_avg_price )