Esta estratégia é uma estratégia de negociação de ruptura baseada no indicador Bollinger Bands. Ela calcula os trilhos superior e inferior das Bandas de Bollinger e os combina com limiares de compra e venda dinamicamente ajustáveis para automatizar a negociação de BTCUSDT no Binance.
O indicador central desta estratégia é as Bandas de Bollinger. As Bandas de Bollinger consistem em uma média móvel de N dias e bandas superiores e inferiores traçadas em um nível de desvio padrão acima e abaixo dela. As Bandas de Bollinger nesta estratégia têm uma duração de 20 dias e um multiplicador de desvio padrão de 2. Quando o preço se aproxima ou toca o trilho inferior das Bandas de Bollinger, é considerado sobrevendido e a estratégia abrirá uma posição longa. Quando o preço se aproxima ou toca o trilho superior, é considerado sobrecomprado e a estratégia fechará posições longas.
Além do indicador Bollinger Bands, esta estratégia também introduz dois parâmetros ajustáveis: limite de compra e limite de venda. O limite de compra é definido em 58 pontos abaixo da faixa inferior e serve como condição de entrada para abrir posições longas. O limite de venda é definido em 470 pontos acima da faixa inferior e serve como condição de saída para fechar posições. Esses limites podem ser ajustados dinamicamente com base nas condições reais do mercado e nos resultados de backtest para tornar a estratégia mais flexível.
Quando a condição de compra é atendida, a estratégia abrirá uma posição longa usando 10% do capital da conta. Após a abertura da posição longa, se o preço subir para atingir o nível de stop loss (-125%), as posições serão fechadas por ordens de stop loss. Quando o preço subir para acionar o limiar de venda, a estratégia optará por fechar todas as posições para coletar lucros.
As principais vantagens desta estratégia incluem:
Há também alguns riscos com esta estratégia:
Contramedidas:
A estratégia pode ser ainda melhorada nos seguintes aspectos:
Em resumo, esta é uma estratégia de breakout geral simples e prática. Adota Bandas de Bollinger para identificar oportunidades de reversão e estabelecer limiares dinâmicos para entrada e saída. Enquanto isso, o dimensionamento razoável da posição e as condições de stop loss são utilizadas para controlar os riscos. Após a otimização de vários parâmetros-chave, esta estratégia pode produzir retornos relativamente estáveis. É adequada para negociação algorítmica e também pode servir como uma ferramenta auxiliar para escolher ações ou medir o sentimento do mercado.
/*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")