Cette stratégie utilise le principe du croisement de la ligne moyenne mobile à plusieurs niveaux pour capturer les tendances à moyen et long terme et réaliser des profits stables. Elle utilise trois ensembles de moyennes mobiles rapides, moyennes et lentes avec différents paramètres et prend des décisions de trading en fonction de leurs croisements.
La stratégie utilise trois ensembles de moyennes mobiles: la moyenne mobile rapide MAshort, la moyenne mobile de vitesse moyenne MAmid et la moyenne mobile lente MAlong. MAshort a un paramètre de 9, répond le plus rapidement et est utilisé pour capturer les signaux à court terme; MAmid a un paramètre de 50, a une vitesse moyenne et est utilisé pour confirmer la tendance; MAlong a un paramètre de 100, répond le plus lentement et est utilisé pour déterminer la direction de la tendance à long terme.
La logique de négociation spécifique de la stratégie est la suivante: lorsque la moyenne mobile à moyenne vitesse MAmid traverse au-dessus de la ligne moyenne mobile lente MAlong, cela indique que la dynamique haussière du prix de l'action se forme.
Le plus grand avantage de cette stratégie est qu'en combinant plusieurs moyennes mobiles, elle peut filtrer efficacement les faux signaux et ne choisir que des ruptures relativement fortes pendant une tendance haussière à moyen et long terme pour ouvrir des positions longues.
Les avantages de cette stratégie sont les suivants:
Cette stratégie comporte également les risques suivants:
Pour faire face à ces risques, nous élargirons encore l'applicabilité de la stratégie tout en contrôlant le tirage maximum avec des techniques de stop loss.
Cette stratégie peut également être optimisée de la manière suivante:
Cette stratégie appartient à une stratégie quantitative typique à moyen et long terme qui, avec la prémisse de contrôler les risques commerciaux, tire continuellement des profits en faisant correspondre les moyennes mobiles à plusieurs niveaux avec les tendances à moyen et long terme.
/*backtest start: 2023-12-12 00:00:00 end: 2024-01-11 00:00:00 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/ // © Coinrule //@version=4 strategy(shorttitle='Multi Moving Average Crossing',title='Multi Moving Average Crossing (by Coinrule)', overlay=true, initial_capital=1000, default_qty_type = strategy.percent_of_equity, default_qty_value = 30, commission_type=strategy.commission.percent, commission_value=0.1) //Backtest dates fromMonth = input(defval = 1, title = "From Month", type = input.integer, minval = 1, maxval = 12) fromDay = input(defval = 1, title = "From Day", type = input.integer, minval = 1, maxval = 31) fromYear = input(defval = 2020, title = "From Year", type = input.integer, minval = 1970) thruMonth = input(defval = 1, title = "Thru Month", type = input.integer, minval = 1, maxval = 12) thruDay = input(defval = 1, title = "Thru Day", type = input.integer, minval = 1, maxval = 31) thruYear = input(defval = 2112, title = "Thru Year", type = input.integer, minval = 1970) showDate = input(defval = true, title = "Show Date Range", type = input.bool) start = timestamp(fromYear, fromMonth, fromDay, 00, 00) // backtest start window finish = timestamp(thruYear, thruMonth, thruDay, 23, 59) // backtest finish window window() => true // create function "within window of time" //MA inputs and calculations inlong=input(100, title='MAlong') inmid=input(50, title='MAmid') inshort=input(9, title='MAfast') MAlong = sma(close, inlong) MAshort= sma(close, inshort) MAmid= sma(close, inmid) //Entry bullish = crossover(MAmid, MAlong) strategy.entry(id="long", long = true, when = bullish and window()) //Exit bearish = crossunder(MAshort, MAmid) strategy.close("long", when = bearish and window()) plot(MAshort, color=color.orange, linewidth=2) plot(MAmid, color=color.red, linewidth=2) plot(MAlong, color=color.blue, linewidth=2)