La stratégie de suivi de la moyenne mobile double est une stratégie de suivi de tendance basée sur les moyennes mobiles. Elle détermine la direction de la tendance en calculant les moyennes mobiles de différentes périodes et génère des signaux de trading en conséquence.
La double moyenne mobile suivante juge la direction de la tendance en calculant les moyennes mobiles simples (SMA) de 14 périodes et 28 périodes du prix de clôture. Plus précisément, elle calcule la SMA de 14 périodes et la SMA de 28 périodes du prix de clôture à la fin de chaque période. Lorsque la SMA de 14 périodes traverse la SMA de 28 périodes, elle envoie un signal long et ouvre une position longue. Lorsque la SMA de 14 périodes traverse en dessous de la SMA de 28 périodes, elle envoie un signal court et ouvre une position courte.
Après l'entrée des positions, il gère les risques en définissant les niveaux de prise de profit et d'arrêt de perte. Les points de prise de profit et d'arrêt de perte sont convertis en prix en fonction des paramètres d'entrée. Il trace également la ligne de prise de profit, la ligne de stop-loss et la ligne de prix moyen d'entrée sur le graphique pour un jugement visuel du profit et du risque.
La double moyenne mobile suivie par la stratégie présente les avantages suivants:
La double moyenne mobile suivante présente également des risques:
Les risques peuvent être gérés à partir des aspects suivants:
La stratégie suivante de la moyenne mobile double peut être optimisée de la manière suivante:
Ajouter des indicateurs de volatilité pour le point de stop loss dynamique. Par exemple, combiner avec ATR pour étendre le stop loss lorsque la volatilité augmente pour éviter une sortie prématurée.
Optimiser les paramètres du cycle de la moyenne mobile en testant plus de combinaisons et en sélectionnant les périodes appropriées avec une fréquence appropriée des signaux de trading.
Ajoutez un indicateur de filtre de tendance, tel que MACD, DMI pour éviter les faux signaux près des points de basculement de la tendance, réduisant ainsi les transactions inutiles.
Augmenter les modèles d'apprentissage automatique pour prédire la tendance des prix et remplacer les règles traditionnelles.
Diversifier les variétés de négociation en utilisant une faible corrélation pour réduire le tirage global.
En conclusion, la stratégie de suivi des moyennes mobiles doubles est un système de suivi des tendances simple et pratique. Elle se déplace le long de la tendance, ce qui réduit les risques de retrait, et est facile à mettre en œuvre. Nous pouvons l'optimiser en ajustant les paramètres du cycle, en définissant le stop loss et le take profit, en ajoutant des indicateurs de jugement des tendances, pour nous adapter à plus d'environnements de marché et gagner des rendements plus stables.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © coinilandBot // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © adolgov // @description // //@version=4 strategy("coiniland copy trading platform", overlay=true) // random entry condition longCondition = crossover(sma(close, 14), sma(close, 28)) if (longCondition) strategy.entry("My Long Entry Id", strategy.long) shortCondition = crossunder(sma(close, 14), sma(close, 28)) if (shortCondition) strategy.entry("My Short Entry Id", strategy.short) moneyToSLPoints(money) => strategy.position_size !=0 ? (money / syminfo.pointvalue / abs(strategy.position_size)) / syminfo.mintick : na p = moneyToSLPoints(input(200, title = "Take Profit $$")) l = moneyToSLPoints(input(100, title = "Stop Loss $$")) strategy.exit("x", profit = p, loss = l) // debug plots for visualize SL & TP levels pointsToPrice(pp) => na(pp) ? na : strategy.position_avg_price + pp * sign(strategy.position_size) * syminfo.mintick pp = plot(pointsToPrice(p), style = plot.style_linebr ) lp = plot(pointsToPrice(-l), style = plot.style_linebr ) avg = plot( strategy.position_avg_price, style = plot.style_linebr ) fill(pp, avg, color = color.green) fill(avg, lp, color = color.red)