Esta estrategia es una estrategia de negociación de ruptura basada en el indicador Bollinger Bands. Calcula los rieles superior e inferior de las Bandas de Bollinger y los combina con umbrales de compra y venta dinámicamente ajustables para automatizar la negociación de BTCUSDT en Binance.
El indicador central de esta estrategia es las bandas de Bollinger. Las bandas de Bollinger consisten en un promedio móvil de N días y bandas superiores e inferiores trazadas en un nivel de desviación estándar por encima y por debajo de él. Las bandas de Bollinger en esta estrategia tienen una duración de 20 días y un multiplicador de desviación estándar de 2. Cuando el precio se acerca o toca el rieles inferior de las bandas de Bollinger, se considera sobreventa, y la estrategia abrirá una posición larga. Cuando el precio se acerca o toca el rieles superior, se considera sobrecomprado, y la estrategia cerrará posiciones largas.
Además del indicador Bollinger Bands, esta estrategia también introduce dos parámetros ajustables: umbral de compra y umbral de venta. El umbral de compra se impone a 58 puntos por debajo de la banda inferior y sirve como condición de entrada para abrir posiciones largas. El umbral de venta se impone a 470 puntos por encima de la banda inferior y sirve como condición de salida para cerrar posiciones. Estos umbrales se pueden ajustar dinámicamente en función de las condiciones reales del mercado y los resultados de las pruebas de retroceso para hacer que la estrategia sea más flexible.
Cuando se cumple la condición de compra, la estrategia abrirá una posición larga utilizando el 10% del capital de la cuenta. Después de abrir la posición larga, si el precio aumenta hasta alcanzar el nivel de stop loss (-125%), las posiciones se cerrarán mediante órdenes de stop loss. Cuando el precio aumenta para activar el umbral de venta, la estrategia elegirá cerrar todas las posiciones para recoger ganancias.
Las principales ventajas de esta estrategia incluyen:
También hay algunos riesgos con esta estrategia:
Contramedidas:
La estrategia se puede optimizar aún más en los siguientes aspectos:
En resumen, esta es una estrategia de ruptura general simple y práctica. Adopta bandas de Bollinger para identificar oportunidades de reversión y establece umbrales dinámicos para la entrada y salida. Mientras tanto, se utilizan condiciones razonables de tamaño de posición y de stop loss para controlar los riesgos. Después de optimizar varios parámetros clave, esta estrategia puede producir rendimientos relativamente constantes. Es adecuada para el comercio algorítmico y también puede servir como una herramienta auxiliar para la selección de acciones o la medición del sentimiento del mercado. En términos generales, esta estrategia tiene una gran practicidad y extensibilidad.
/*backtest start: 2023-12-01 00:00:00 end: 2023-12-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/ // © SuperDS_BTC //@version=5 strategy("布林通道策略多5min", overlay=true) // 布林通道计算 length = input(20, title="布林通道周期") mult = input(2.0, title="标准差倍数") basis = ta.sma(close, length) dev = mult * ta.stdev(close, length) upper = basis + dev lower = basis - dev // 计算买入数量:每次检查仓位的大小 // 每次买入使用总资金的10% position_size = strategy.equity * 10 / close // 定義可調整的閾值 buy_threshold = input(58, title="買入閾值") exit_threshold = input(470, title="賣出閾值") // 买入条件:当现价低于布林通道的下限减去 buy_threshold buy_condition = close < lower - buy_threshold // 卖出条件和结清仓位条件 exit_condition = close > lower + exit_threshold // 买入逻辑 if buy_condition strategy.entry("BuyLong", strategy.long, qty=position_size, comment="LongBTC") // 卖出逻辑 if exit_condition strategy.close("BuyLong") // 止损逻辑 stop_loss_percent = -1.25 //止损百分比为-125% if strategy.position_size > 0 position_profit_percent = (strategy.position_avg_price - close) / strategy.position_avg_price * 100 if position_profit_percent <= stop_loss_percent strategy.close("BuyLong")