Cette stratégie est basée sur des indicateurs de dynamique combinés à des moyennes mobiles pour suivre les tendances du marché. Elle va long quand il y a une forte dynamique haussière et va courte quand il y a une forte dynamique baissière. Elle appartient à la catégorie des stratégies de suivi de tendance.
Calculer la dynamique du prix comme suit: (Prix actuel - Prix il y a N périodes) / Prix il y a N périodes
Calculer la moyenne mobile de la mi-prix sur N périodes
Normaliser la valeur de l'élan à la plage de 0 à 1
Lorsque la dynamique normalisée est supérieure à 0,5 et que le prix est au-dessus de la moyenne mobile, passez long
Lorsque la dynamique normalisée est inférieure à 0,5 et que le prix est inférieur à la moyenne mobile, allez court
Utiliser un mécanisme de stop loss mobile avec des niveaux de stop loss appropriés
La stratégie est basée sur le principe de l'évolution de la tendance de l'échange. Lorsque le marché est en tendance, le prix se déplace de manière persistante dans une direction, générant de grandes valeurs de dynamique.
Cette stratégie présente les avantages suivants:
Suivre les tendances du marché, avec des gains potentiellement importants
Le momentum est sensible aux variations de prix et réagit rapidement aux tendances
Les moyennes mobiles filtrent le bruit aléatoire et se combinent bien avec le momentum
Le mécanisme de stop loss limite les pertes sur les transactions individuelles
La logique est simple et claire, facile à mettre en œuvre et à tester
Paramètres flexibles pouvant s'adapter à différentes périodes et régimes de marché
Dans l'ensemble, il s'agit d'une excellente stratégie pour les marchés tendance.
Malgré les avantages, il convient de noter certains risques:
Risque de rupture dans les tendances haussières lorsque le prix s'inverse après la rupture
Risque d'inversion des tendances à la baisse lorsque le prix rebondit après une baisse
Les signaux Whipsaw lorsque le prix oscille autour de la moyenne mobile
Signal incorrect si les paramètres ne sont pas correctement réglés
Performances inférieures sur les marchés instables dans la fourchette
Perte de freinage et mouvement stricts nécessaires pour éviter une sortie prématurée
Pour faire face à ces risques, la stratégie de stop loss doit être optimisée, filtrer les signaux inutiles avec des paramètres lâches, ajuster les paramètres pour différentes périodes et contrôler la taille de la position.
Voici quelques façons d'optimiser davantage la stratégie:
Testez différentes combinaisons de paramètres pour obtenir les meilleurs résultats de backtest
Incorporer les règles de négociation de la tortue de sortie à 2N de perte et 1N de profit
Optimiser le stop loss avec des indicateurs de volatilité pour un stop loss adaptatif
Ajouter des règles de dimensionnement des positions basées sur le tirage, le temps, etc.
Testez différentes méthodes de calcul de la dynamique comme la dynamique moyenne mobile exponentielle
Ajouter des filtres de modèle de chandelier pour des signaux plus robustes
Utiliser l'apprentissage automatique pour l'optimisation des paramètres, la sélection des fonctionnalités, etc.
Incorporer une contribution humaine discrétionnaire aux points clés
Avec ces améliorations, la stratégie peut atteindre une meilleure stabilité, adaptabilité et rentabilité.
La stratégie de suivi de l'élan est une approche simple et pratique de suivi des tendances. Elle peut capturer de manière agile les tendances du marché et tirer profit des bulles et des crashs. Mais les risques d'ajustement de la courbe doivent être gérés avec des contrôles de risque disciplinés pour maintenir la robustesse.
/*backtest start: 2023-11-02 00:00:00 end: 2023-11-09 00:00:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Momentum Strategy, rev.2", overlay=true) // // Data // src = input(close) lookback = input(20) cscheme=input(1, title="Bar color scheme", options=[1,2]) // // Functions // momentum(ts, p) => (ts - ts[p]) / ts[p] normalize(src, len) => hi = highest(src, len) lo = lowest(src, len) res = (src - lo)/(hi - lo) // // Main // price = close mid = sma(src, lookback) mom = normalize(momentum(price, lookback),100) // // Bar Colors // clr1 = cscheme==1?black: red clr2 = cscheme==1?white: green barcolor(close < open ? clr1 : clr2) // // Strategy // if (mom > .5 and price > mid ) strategy.entry("MomLE", strategy.long, stop=high+syminfo.mintick, comment="MomLE") else strategy.cancel("MomLE") if (mom < .5 and price < mid ) strategy.entry("MomSE", strategy.short, stop=low-syminfo.mintick, comment="MomSE") else strategy.cancel("MomSE") //plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)