La stratégie de suivi de tendance à moyenne mobile double calcule les moyennes mobiles exponentielles doubles du prix pour former des lignes rapides et lentes.
La stratégie calcule d'abord les moyennes mobiles exponentielles doubles du prix, y compris les lignes rapides et lentes. La ligne rapide a une période de 4 et la ligne lente a une période de 8. Les signaux de trading sont générés lorsque les deux lignes se croisent. Lorsque la ligne rapide traverse au-dessus de la ligne lente, un signal d'achat est généré. Lorsque la ligne rapide traverse au-dessous de la ligne lente, un signal de vente est déclenché. En outre, la stratégie calcule également l'indicateur MACD pour fournir des signaux de trading supplémentaires. Les barres rouges MACD divergentes sont des signaux de vente, tandis que les barres vertes convergentes sont des signaux d'achat.
Premièrement, cette stratégie négocie le long de la tendance des prix pour éviter les coûts de transaction. Deuxièmement, les moyennes mobiles doubles filtrent certains bruits de prix et capturent la tendance des prix en douceur. En outre, l'optimisation flexible des paramètres des moyennes mobiles et du MACD rend la stratégie adaptable à différents produits et environnements. Enfin, la logique simple et claire rend cette stratégie facile à comprendre et à mettre en œuvre, adaptée à la conception d'algorithmes de trading quantitatifs.
La stratégie repose fortement sur l'optimisation des paramètres. Des paramètres incorrects peuvent générer de nombreux faux signaux. En outre, la nature retardée des moyennes mobiles doubles peut entraîner des points de basculement manqués. Les stratégies de suivi de tendance sont également sujettes à la poursuite des tendances haussières et à la suppression des tendances baissières, ce qui pose certains risques. En outre, la liquidité des produits de négociation et les coûts de transaction affecteront également la rentabilité de la stratégie. Pour atténuer les risques, les paramètres peuvent être optimisés, des filtres supplémentaires peuvent être ajoutés et le dimensionnement des positions peut être contrôlé.
Les aspects suivants de la stratégie peuvent être améliorés:
Optimiser les périodes des moyennes mobiles doubles pour trouver la combinaison optimale.
Ajoutez d'autres indicateurs comme le RSI et le KD pour filtrer les signaux et améliorer la qualité.
Incorporer des stratégies de stop loss pour quitter les transactions en cas d'inversion de tendance.
Ajustez dynamiquement la taille des positions en fonction des conditions du marché afin de contrôler le risque.
Optimiser les paramètres pour différents produits de négociation.
Incorporer des stratégies avancées comme l'apprentissage automatique pour améliorer les performances.
En résumé, il s'agit d'une simple stratégie de suivi de tendance de moyenne mobile double. La logique de la stratégie est simple et facile à mettre en œuvre. Le réglage flexible des paramètres la rend adaptée comme stratégie de trading quantitative d'introduction. Cependant, les risques liés à la poursuite des tendances et au retard du signal doivent être résolus par d'autres améliorations pour améliorer la stabilité et le contrôle des risques. Dans l'ensemble, cette stratégie offre une excellente opportunité d'apprentissage pour les débutants et établit une base pour les stratégies avancées.
/*backtest start: 2023-10-14 00:00:00 end: 2023-11-13 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 12/11/2017 // The SMI Ergodic Indicator is the same as the True Strength Index (TSI) developed by // William Blau, except the SMI includes a signal line. The SMI uses double moving averages // of price minus previous price over 2 time frames. The signal line, which is an EMA of the // SMI, is plotted to help trigger trading signals. Adjustable guides are also given to fine // tune these signals. The user may change the input (close), method (EMA), period lengths // and guide values. // You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect... // // WARNING: // - For purpose educate only //////////////////////////////////////////////////////////// strategy(title="SMI Ergodic Oscillator") fastPeriod = input(4, minval=1) slowPeriod = input(8, minval=1) SmthLen = input(3, minval=1) TopBand = input(0.5, step=0.1) LowBand = input(-0.5, step=0.1) reverse = input(false, title="Trade reverse") // hline(0, color=gray, linestyle=dashed) // hline(TopBand, color=red, linestyle=line) // hline(LowBand, color=green, linestyle=line) xPrice = close xPrice1 = xPrice - xPrice[1] xPrice2 = abs(xPrice - xPrice[1]) xSMA_R = ema(ema(xPrice1,fastPeriod),slowPeriod) xSMA_aR = ema(ema(xPrice2, fastPeriod),slowPeriod) xSMI = xSMA_R / xSMA_aR xEMA_SMI = ema(xSMI, SmthLen) pos = iff(xEMA_SMI < xSMI, -1, iff(xEMA_SMI > xSMI, 1, nz(pos[1], 0))) possig = iff(reverse and pos == 1, -1, iff(reverse and pos == -1, 1, pos)) if (possig == 1) strategy.entry("Long", strategy.long) if (possig == -1) strategy.entry("Short", strategy.short) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(xSMI, color=green, title="Ergotic SMI") plot(xEMA_SMI, color=red, title="SigLin")