Stratégie de croisement de moyenne mobile à plusieurs niveaux pour les maîtres quantiques

Auteur:ChaoZhang est là., Date: 2024-01-12 12:11:02 Je suis désolé
Les étiquettes:

img

Résumé

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 logique de la stratégie

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.

Analyse des avantages

Les avantages de cette stratégie sont les suivants:

  1. Les paramètres de la stratégie sont optimisés pour correspondre efficacement aux tendances à moyen et à long terme avec un taux de réussite relativement élevé.
  2. La moyenne mobile à plusieurs niveaux filtre le bruit et les faux signaux.
  3. Il convient à tous les types d'actions et de crypto-monnaies avec des résultats de backtesting historique relativement bons.
  4. La fréquence des opérations est faible et chaque position d'ouverture occupe 30% des fonds et le risque est contrôlable.
  5. La période de temps est configurable, ce qui offre une certaine souplesse pour le trading en direct.

Analyse des risques

Cette stratégie comporte également les risques suivants:

  1. La probabilité d'inversions de tendance à long terme est relativement faible, mais lorsque cela se produit, l'ampleur du stop loss peut être importante.
  2. La fréquence des transactions est faible et présente donc le problème d'une utilisation inefficace des capitaux.
  3. Les paramètres de la stratégie doivent être optimisés pour les différentes variétés de négociation, ce qui limite le champ d'application.

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.

Directions d'optimisation

Cette stratégie peut également être optimisée de la manière suivante:

  1. Optimiser le paramètre des jours de la moyenne mobile pour trouver la meilleure combinaison de paramètres
  2. Ajouter des indicateurs de volume pour confirmer et éviter les problèmes d'ajustement de la courbe
  3. Définir la perte maximale pour la stratégie, telle que 20% de retrait maximal, pour forcer le stop loss
  4. Incorporer des modèles d'apprentissage automatique pour évaluer les tendances et améliorer l'adaptabilité de la stratégie

Résumé

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)


Plus de