Stratégie de trading de suivi de tendance de volatilité à plage adaptative

WPR RSI SMA ATR Trend
Date de création: 2024-11-28 17:24:30 Dernière modification: 2024-11-28 17:24:30
Copier: 4 Nombre de clics: 452
1
Suivre
1617
Abonnés

Stratégie de trading de suivi de tendance de volatilité à plage adaptative

Aperçu

Il s’agit d’une stratégie de suivi de tendance auto-adaptative basée sur la volatilité combinée à la Williams Percent Range (WPI). La stratégie ajuste la sensibilité des jugements de tendance en calculant la gamme des fluctuations des prix et des compteurs personnalisés, ce qui permet une meilleure adaptabilité dans différents environnements de marché. Le cœur de la stratégie est d’ajuster dynamiquement les paramètres de l’indicateur Williams en observant l’ampleur des fluctuations des prix, afin de capturer plus précisément les points de conversion des tendances du marché.

Principe de stratégie

La stratégie calcule d’abord la fourchette de fluctuation des prix (Range) et sa moyenne mobile (AvgRange) au cours d’une période. Elle établit deux compteurs (TrueCount et TrueCount2) pour enregistrer la fréquence des fluctuations significatives en comparant les variations de prix en temps réel avec la fourchette de fluctuation moyenne. Ces compteurs sont utilisés pour ajuster dynamiquement les paramètres de calcul de l’indicateur William, ce qui permet à la stratégie d’ajuster automatiquement sa sensibilité en fonction de l’état de fluctuation du marché.

Avantages stratégiques

  1. Adaptabilité - grâce à un mécanisme d’adaptation à la volatilité, la stratégie est capable de maintenir une performance stable dans différents environnements de marché
  2. Contrôle du risque perfectionné - paramètres de risque intégrés RISK permettant aux traders d’ajuster l’intensité de la stratégie en fonction de leurs préférences en matière de risque
  3. Signal clair - utilisez un mécanisme de signal de rupture clair pour éviter les faux signaux
  4. Scalabilité - le cadre de stratégie permet d’intégrer d’autres indicateurs techniques pour les optimiser
  5. Haute efficacité de calcul - utilisation de méthodes de calcul simples et efficaces pour les transactions en temps réel

Risque stratégique

  1. Sensitivité des paramètres - le choix des paramètres ASClength et RISK peut avoir un impact significatif sur la performance de la stratégie
  2. Dépendance aux conditions du marché - des signaux de trading excessifs peuvent être générés dans un marché en crise
  3. Le retard - l’utilisation d’une moyenne mobile peut entraîner des retards d’entrée et de sortie
  4. Fausse rupture - Faux signaux peuvent apparaître pendant les périodes de forte volatilité Il est recommandé de réduire le risque en évaluant les paramètres d’optimisation et en les combinant avec d’autres indicateurs de confirmation.

Orientation de l’optimisation de la stratégie

  1. Introduction d’indicateurs de chiffre d’affaires - l’efficacité du changement de tendance est confirmée par le chiffre d’affaires
  2. Optimisation de la logique des compteurs - on peut envisager d’utiliser des méthodes statistiques plus complexes pour évaluer les fluctuations du marché
  3. Ajout d’un mécanisme de stop-loss - introduction de stop-loss dynamique est recommandée pour une meilleure maîtrise des risques
  4. Filtre d’environnement de marché - ajout d’un module de jugement d’environnement de marché pour éviter de négocier dans des conditions de marché inappropriées
  5. Adaptabilité des paramètres - développer des mécanismes d’optimisation automatique des paramètres pour améliorer l’adaptabilité des stratégies

Résumer

Il s’agit d’une stratégie innovante combinant l’analyse de la volatilité et le suivi des tendances, qui améliore la stabilité et la fiabilité de la stratégie grâce à un mécanisme d’adaptation. Bien qu’il existe des risques inhérents, la stratégie est susceptible de maintenir une performance stable dans une variété d’environnements de marché grâce à une mise en œuvre de paramètres raisonnables et de directions d’optimisation. La conception du cadre de la stratégie permet une expansion et une optimisation supplémentaires et présente un bon potentiel de développement.

Code source de la stratégie
/*backtest
start: 2024-10-28 00:00:00
end: 2024-11-27 00:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("ASCTrend", shorttitle="ASCTrend", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100)

eternalfg = input(false, title="eternal 確定")
eternal = eternalfg ? 1 : 0
ASClength = input.int(title="ASC Length", minval=4, defval=10)
RISK = input.int(title="RISK", minval=0, defval=3)

// Custom sum function
customSum(source, length) =>
    sum = 0.0
    for i = 0 to length - 1
        sum := sum + source[i]
    sum

x1 = 67 + RISK
x2 = 33 - RISK
Range = ta.highest(ASClength) - ta.lowest(ASClength)
AvgRange = ta.sma(Range, ASClength)
CountFg = math.abs(open - close) >= AvgRange * 2.0 ? 1 : 0
TrueCount = customSum(CountFg, ASClength)
CountFg2 = math.abs(close[3] - close) >= AvgRange * 4.6 ? 1 : 0
TrueCount2 = customSum(CountFg2, ASClength - 3)
wpr3RR = ta.wpr(3 + RISK + RISK)
wpr3 = ta.wpr(3)
wpr4 = ta.wpr(4)
WprAbs = 100 + (TrueCount2 > 0 ? wpr4 : TrueCount > 0 ? wpr3 : wpr3RR)
ASC_Trend = 0
ASC_Trend := WprAbs[eternal] < x2[eternal] ? -1 : WprAbs[eternal] > x1[eternal] ? 1 : ASC_Trend[1]

if (ta.crossover(ASC_Trend, 0))
    strategy.entry("Long", strategy.long)

if (ta.crossunder(ASC_Trend, 0))
    strategy.entry("Short", strategy.short)

plotshape(ta.crossover(ASC_Trend, 0), location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small, text="B", textcolor=color.white)
plotshape(ta.crossunder(ASC_Trend, 0), location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small, text="S", textcolor=color.white)

alertcondition(ta.crossover(ASC_Trend, 0), title="ASC_Trend UP", message="ASC_Trend UP")
alertcondition(ta.crossunder(ASC_Trend, 0), title="ASC_Trend Down", message="ASC_Trend Down")