Stratégie de suivi de tendance basée sur le lissage des différences moyennes


Date de création: 2024-02-20 11:15:54 Dernière modification: 2024-02-20 11:15:54
Copier: 0 Nombre de clics: 656
1
Suivre
1621
Abonnés

Stratégie de suivi de tendance basée sur le lissage des différences moyennes

Aperçu

Cette stratégie est une stratégie d’indicateur de tendance qui utilise les hauts et les bas à court terme et le décalage entre les coûts moyens à court et à long terme. La stratégie vise à augmenter la sensibilité de la courbe courte, en augmentant la fonction d’aplatissement de la valeur moyenne avant et après pour réduire les pertes d’équilibrage afin de réduire les petites pertes dans l’équilibrage, tout en conservant les gains importants lorsque les bandes apparaissent.

Principe de stratégie

  1. Calculer le coût à court terme: calculer le prix le plus élevé et le prix le plus bas de la racine courte de K en utilisant les fonctions ta.highest et ta.lowest, puis calculer la moyenne comme coût à court terme

  2. Calculer le coût à long terme: utiliser la fonction ta.sma pour calculer la moyenne mobile simple du prix de clôture du dernier longTerm root K comme coût à long terme

  3. Calcul de l’écart moyen: coûts à court terme moins coûts à long terme

  4. Une moyenne mobile simple est utilisée ici avec ta.sma pour lisser la moyenne afin de réduire les erreurs de jugement

  5. Déterminer la tendance: définir un seuil de seuil, juger la tendance à la hausse lorsque le seuil est supérieur à la moyenne de l’équilibre, juger la tendance à la baisse lorsque le seuil est inférieur à négatif

  6. Entrée et sortie: suivi de la hausse à la hausse, suivi de la baisse à la baisse

Analyse des avantages

  1. Une sensibilité accrue à court terme pour saisir rapidement les opportunités de court-circuit
  2. Un traitement plus fluide, moins de malentendus
  3. La mise en place d’une passerelle pour réduire le nombre de dépôts inutiles
  4. Suivre la tendance et arrêter les pertes en temps opportun

Analyse des risques

  1. La concentration à court terme est susceptible d’être manipulée et nécessite une amplification appropriée du périmètre.
  2. Paramètres nécessitant des tests répétés, tels que le nombre de jours à court et à long terme, le paramètre de lissage moyen, etc. Une mauvaise configuration peut entraîner une sursensibilité ou une lenteur
  3. Il faut une largeur de passage raisonnable, il y a des problèmes de grandeur et de petiteur.
  4. La plupart des prisonniers ont été emprisonnés dans des centres de détention.

Comment gérer les risques:

  1. Augmenter la marge de freinage de manière appropriée pour éviter la prison
  2. Optimisation des paramètres, équilibre de la sensibilité et du taux d’erreur
  3. Tester et optimiser les paramètres de la voie
  4. Les conditions de filtrage ont été ajoutées pour éviter de faire des placements en cas de secousse.

Direction d’optimisation

  1. Optimisation des hauts et des bas à court terme, par exemple en calculant des coûts à court terme plus lisses, tels que le PA ou la pondération
  2. Tester différentes méthodes de calcul des coûts à long terme
  3. Essayez différents algorithmes de lissage
  4. Optimiser les paramètres du canal
  5. Ajouter des filtres de stockage, tels que la rupture, l’augmentation du volume des transactions, etc.
  6. Accéder à des offres de trading inversées

Résumer

L’ensemble de la stratégie est une stratégie de suivi de tendance très simple et directe. Comparée aux moyennes mobiles et autres indicateurs courants, elle permet de juger plus rapidement le renversement de tendance en calculant la moyenne des coûts à court et à long terme.

Code source de la stratégie
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © dead0001ing1

//@version=5
strategy("Trend-Following Indicator", overlay=true)

// 設置參數
shortTerm = input(5, "Short Term")
longTerm = input(20, "Long Term")
smooth = input(5, "Smoothing")
threshold = input(0, "Threshold")

// 計算短期成本
shortH = ta.highest(high, shortTerm)
shortL = ta.lowest(low, shortTerm)
shortCost = (shortH + shortL) / 2

// 計算長期成本
longCost = ta.sma(close, longTerm)

// 計算均差
deviation = shortCost - longCost

// 平滑均差
smoothedDeviation = ta.sma(deviation, smooth)

// 判斷順勢
isTrendingUp = smoothedDeviation > threshold
isTrendingDown = smoothedDeviation < -threshold

// 顯示順勢信號
plotshape(isTrendingUp, title="Trending Up", location=location.belowbar, color=color.green, style=shape.labelup, text="Up", size=size.small)
plotshape(isTrendingDown, title="Trending Down", location=location.abovebar, color=color.red, style=shape.labeldown, text="Down", size=size.small)

// 定義進出場策略
if isTrendingUp
    strategy.entry("Long", strategy.long)
    strategy.close("Long", when=isTrendingDown)
if isTrendingDown
    strategy.entry("Short", strategy.short)
    strategy.close("Short", when=isTrendingUp)