Cette stratégie est une stratégie de trading de rupture basée sur l'indicateur Bollinger Bands. Elle calcule les rails supérieur et inférieur des Bollinger Bands et les combine avec des seuils d'achat et de vente dynamiquement réglables pour automatiser le trading de BTCUSDT sur Binance.
L'indicateur principal de cette stratégie est les bandes de Bollinger. Les bandes de Bollinger se composent d'une moyenne mobile de N jours et de bandes supérieures et inférieures tracées à un niveau d'écart type au-dessus et en dessous. Les bandes de Bollinger de cette stratégie ont une durée de 20 jours et un multiplicateur d'écart type de 2. Lorsque le prix approche ou touche le rail inférieur des bandes de Bollinger, il est considéré comme survendu et la stratégie ouvrira une position longue. Lorsque le prix approche ou touche le rail supérieur, il est considéré comme suracheté et la stratégie fermera les positions longues.
En plus de l'indicateur Bollinger Bands, cette stratégie introduit également deux paramètres réglables: seuil d'achat et seuil de vente. Le seuil d'achat est par défaut à 58 points en dessous de la bande inférieure et sert de condition d'entrée pour l'ouverture de positions longues. Le seuil de vente est par défaut à 470 points au-dessus de la bande inférieure et sert de condition de sortie pour la fermeture des positions. Ces seuils peuvent être ajustés dynamiquement en fonction des conditions réelles du marché et des résultats des tests antérieurs pour rendre la stratégie plus flexible.
Lorsque la condition d'achat est remplie, la stratégie ouvrira une position longue en utilisant 10% du capital du compte. Après avoir ouvert la position longue, si le prix augmente pour atteindre le niveau de stop loss (-125%), les positions seront fermées par des ordres de stop loss. Lorsque le prix augmente pour déclencher le seuil de vente, la stratégie choisira de fermer toutes les positions pour collecter des bénéfices.
Les principaux avantages de cette stratégie sont les suivants:
Cette stratégie comporte également certains risques:
Les contre-mesures:
La stratégie peut être encore optimisée dans les aspects suivants:
En résumé, il s'agit d'une stratégie de rupture globale simple et pratique. Elle adopte des bandes de Bollinger pour identifier les opportunités d'inversion et définit des seuils dynamiques pour l'entrée et la sortie. Pendant ce temps, des conditions raisonnables de taille de position et de stop-loss sont utilisées pour contrôler les risques. Après optimisation de plusieurs paramètres clés, cette stratégie peut produire des rendements relativement stables. Elle convient au trading algorithmique et peut également servir d'outil auxiliaire pour choisir des actions ou mesurer le sentiment du marché.
/*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")