Stratégie de négociation quantitative croisée à moyenne mobile double
Cette stratégie prend des décisions commerciales basées sur les signaux croisés de deux moyennes mobiles (MA) avec des périodes différentes. Lorsque le MA à court terme dépasse le MA à long terme, il génère un signal d'achat; lorsque le MA à court terme dépasse le MA à long terme, il génère un signal de vente.
La stratégie utilise deux moyennes mobiles avec des périodes différentes comme indicateurs techniques principaux. L'une est la moyenne mobile à court terme, qui reflète la tendance à court terme des prix; l'autre est la moyenne mobile à long terme, qui reflète la tendance à moyen et à long terme des prix.
Plus précisément, lorsque l'AM à court terme dépasse l'AM à long terme, cela indique que le prix peut entrer dans une tendance à la hausse et que la stratégie générera un signal d'achat. Inversement, lorsque l'AM à court terme dépasse l'AM à long terme, cela indique que le prix peut entrer dans une tendance à la baisse et que la stratégie générera un signal de vente. Cette approche de suivi de tendance peut aider les investisseurs à s'aligner sur les tendances du marché et à tirer profit des hausses ou des baisses de prix.
Dans la mise en œuvre du code de la stratégie, les principales étapes suivantes sont utilisées:
input
fonction de définition des paramètres de période de l'AM à court terme et de l'AM à long terme, permettant aux utilisateurs de les personnaliser.ta.sma
fonction de calcul de l'AM à court terme.strategy.entry
fonction de réaliser des transactions basées sur des signaux d'achat et de vente.plotshape
fonction pour marquer les signaux d'achat et de vente sur le graphique.plot
fonction pour tracer la courbe MA à court terme sur le graphique.Grâce à la combinaison organique de ces étapes, la stratégie peut ajuster dynamiquement les positions en fonction des variations des moyennes mobiles croisées, en essayant de tirer continuellement profit des tendances du marché.
Pour faire face à ces risques, les mesures suivantes peuvent être prises pour améliorer la stratégie:
L'objectif de ces directions d'optimisation est d'améliorer l'adaptabilité, la robustesse et la rentabilité de la stratégie, et mieux faire face aux changements et aux défis du marché.
La double moyenne mobile est une stratégie de trading quantitative simple, facile à comprendre et très adaptable. Elle juge les tendances des prix à travers les changements croisés de deux moyennes mobiles avec des périodes différentes, en essayant de saisir les opportunités à moyen et long terme sur le marché.
Pour améliorer la stratégie, nous pouvons commencer par des aspects tels que l'optimisation des paramètres, le filtrage des signaux, la gestion des positions et la combinaison de plusieurs indicateurs pour améliorer l'adaptabilité et la robustesse de la stratégie.
Dans l'ensemble, la double stratégie de croisement des moyennes mobiles fournit un cadre de base pour le trading quantitatif, mais dans les applications pratiques, elle doit encore être optimisée et améliorée en fonction des caractéristiques spécifiques du marché et des besoins d'investissement pour obtenir de meilleurs résultats.
/*backtest start: 2024-02-01 00:00:00 end: 2024-02-29 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("SMA Crossover Strategy", overlay=true) // SMA parametrelerini ayarla sma_short_length = input.int(15, "Kısa SMA Uzunluğu") sma_long_length = input.int(200, "Uzun SMA Uzunluğu") // Hareketli ortalama hesaplamalarını yap sma_short = ta.sma(close, sma_short_length) // Fiyatın SMA'yı yukarı veya aşağı kestiğini kontrol et price_above_sma = close > sma_short price_below_sma = close < sma_short // Alım-Satım noktalarını belirle longCondition = (close[1] < sma_short[1] and close > sma_short) and price_above_sma shortCondition = (close[1] > sma_short[1] and close < sma_short) and price_below_sma // Al-Sat stratejisi if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // Fiyatın kısa SMA'yı yukarı kesme noktalarını göster plotshape(series=longCondition, title="Long", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small) // Fiyatın kısa SMA'yı aşağı kesme noktalarını göster plotshape(series=shortCondition, title="Short", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small) // Hareketli ortalamaları grafiğe çiz plot(sma_short, color=color.blue, title="Kısa SMA")