- Carré
- La stratégie de stop loss et de prise de profit dynamique des bandes de Bollinger
La stratégie de stop loss et de prise de profit dynamique des bandes de Bollinger
Auteur:
ChaoZhang est là.Les étiquettes:
SMA
Résumé
Principe de stratégie
- Calculer les bandes de Bollinger supérieure, moyenne et inférieure.
- Générer un signal d'achat lorsque le prix dépasse la bande inférieure et un signal de vente lorsque le prix dépasse la bande supérieure.
- Lors de l'achat, définissez le niveau de stop loss au prix le plus bas au cours d'une période passée et ne définissez pas encore le niveau de prise de profit.
- Lorsque vous vendez, fixez le niveau de stop loss au prix le plus élevé au cours d'une période passée et ne fixez pas encore le niveau de prise de profit.
- Réinitialisez le niveau de prise de profit à vide lorsqu'un nouveau signal d'achat ou de vente apparaît.
Les avantages de la stratégie
- Les bandes de Bollinger sont un indicateur technique mature et largement utilisé qui peut capturer efficacement la volatilité du marché.
- Les paramètres dynamiques de stop loss et de take profit peuvent s'adapter aux différentes conditions du marché, ce qui améliore l'adaptabilité de la stratégie.
- La fixation du niveau d'arrêt des pertes permet de contrôler efficacement le risque et d'éviter des pertes excessives lors d'une seule transaction.
- La logique de la stratégie est claire et facile à comprendre et à mettre en œuvre.
Risques stratégiques
- La fixation du niveau de stop loss est basée sur des données historiques et peut ne pas s'adapter aux changements futurs du marché.
Directions d'optimisation de la stratégie
- Introduire des indicateurs de jugement des tendances, tels que les moyennes mobiles, pour négocier dans le sens de la tendance et améliorer l'adaptabilité de la stratégie à la tendance.
- Ajouter des conditions de filtrage supplémentaires aux signaux d'achat et de vente, telles que le volume des transactions et la volatilité, pour améliorer la fiabilité des signaux.
- Optimiser les paramètres, tels que la longueur et le multiplicateur d'écart type des bandes de Bollinger, pour trouver la meilleure combinaison de paramètres.
Résumé
/*backtest
start: 2024-04-01 00:00:00
end: 2024-04-30 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Bollinger Bands Strategy", overlay=true)
// Bollinger Bands settings
length = 20
src = close
mult = 2.0
// Calculate Bollinger Bands
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
// Plot Bollinger Bands
plot(basis, color=color.blue, title="Middle Band")
plot(upper, color=color.red, title="Upper Band")
plot(lower, color=color.green, title="Lower Band")
// Trade logic
// Buy when the price crosses below the lower Bollinger Band
buySignal = ta.crossover(lower, src)
// Sell when the price crosses above the upper Bollinger Band
sellSignal = ta.crossover(src, upper)
// Define stop loss and take profit levels
var float stopLoss = na
var float takeProfit = na
// Calculate stop loss and take profit levels
if (buySignal)
stopLoss := ta.lowest(low, length)
takeProfit := na
if (sellSignal)
stopLoss := ta.highest(high, length)
takeProfit := na
// Update take profit on new signals
if (buySignal)
takeProfit := na
if (sellSignal)
takeProfit := na
// Execute trades
if (buySignal)
strategy.entry("Buy", strategy.long, stop=stopLoss, limit=takeProfit)
if (sellSignal)
strategy.entry("Sell", strategy.short, stop=stopLoss, limit=takeProfit)
// Plot signals on chart
plotshape(series=buySignal, location=location.belowbar, color=color.green, style=shape.labelup, text="Buy", title="Buy Signal")
plotshape(series=sellSignal, location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell", title="Sell Signal")
// Alert conditions
alertcondition(buySignal, title="Buy Alert", message="Buy Signal detected")
alertcondition(sellSignal, title="Sell Alert", message="Sell Signal detected")
Relationnée
Plus de