Stratégie de trading dynamique à moyenne mobile avec lissage exponentiel double


Date de création: 2024-02-06 09:38:32 Dernière modification: 2024-02-06 09:38:32
Copier: 0 Nombre de clics: 577
1
Suivre
1617
Abonnés

Stratégie de trading dynamique à moyenne mobile avec lissage exponentiel double

Aperçu

Cette stratégie est basée sur la stratégie de trading quantitative basée sur la moyenne mobile exponentielle double. La stratégie consiste à calculer le taux de variation du prix d’une action, puis à effectuer un traitement de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force de l’indice de la force

Principe de stratégie

L’indicateur central de la stratégie est l’indice de force réelle (TSI). La formule de calcul du TSI est:

TSI = 100 * (PC1 / PC2)

Les PC1 et PC2 sont respectivement les doubles moyennes doubles du taux de variation des prix et les doubles moyennes doubles du taux de variation des prix. La méthode de calcul de la doubles moyennes doubles consiste à appliquer d’abord une moyenne mobile de l’indicateur sur le taux de variation des prix, puis une moyenne mobile plus courte sur le taux de variation de l’indicateur.

Après avoir calculé la valeur du TSI, la stratégie calcule également la ligne de signal de la valeur du TSI. La ligne de signal est définie comme la moyenne mobile indicielle d’une période donnée de la valeur du TSI. Lors de la négociation réelle, la stratégie détermine la tendance du marché et génère un signal de négociation en observant la relation entre la valeur du TSI et la ligne de signal.

Une autre caractéristique de la stratégie est que la taille des transactions est dynamique. Le code de la stratégie définit un capital initial et un ratio de seuil de risque comme paramètres d’entrée. Ces deux paramètres, combinés au prix actuel de l’action, permettent de calculer dynamiquement le nombre de transactions par transaction ou le seuil de risque.

Analyse des avantages

La stratégie de négociation d’une moyenne mobile dynamique à deux indices présente divers avantages:

  1. Il utilise l’indicateur TSI, qui applique un doublement de l’indice, ce qui lui permet d’être moins sensible au bruit du marché et de produire un signal plus précis.

  2. Il est basé sur un principe éprouvé, à savoir que les indicateurs croisés et leurs lignes de signaux produisent des signaux de transaction. Cela élimine de nombreux faux signaux.

  3. La stratégie consiste à ajuster la taille de la position en fonction de la dynamique du budget de risque. Cela aide à prévenir la survente et les opérations émotionnelles.

  4. Il s’applique à des périodes quotidiennes et hebdomadaires, et est adapté pour les opérations de swing et de position.

  5. En raison de sa logique d’entrée/sortie simple, il est facile à implémenter dans les robots et autres systèmes de transaction.

  6. Il n’y a pas beaucoup de paramètres à ajuster, ce qui rend l’optimisation du système simple.

Ces avantages combinés en font une stratégie de trading puissante et polyvalente pour les traders boursiers. Un traitement soigné et un réglage de la taille de la position aident à prévenir les faux signaux et les pertes importantes.

Analyse des risques

Bien que la stratégie de négociation d’une moyenne mobile binaire dynamique présente de nombreux avantages, elle comporte des risques inhérents, comme la plupart des stratégies de négociation d’actions:

  1. Comme le TSI et la ligne de signaux sont basés sur des données de prix historiques, il y a toujours un risque de faux signaux, en particulier lorsque le marché est très volatil.

  2. Si le marché oscille autour de la ligne zéro de l’indicateur TSI, il peut y avoir un rebond. Cela peut entraîner des pertes.

  3. Si la tendance se poursuit, le TSI pourrait inverser prématurément la tendance et ainsi manquer des bénéfices.

  4. Le risque de perte peut être supérieur à la limite fixée par le paramètre de risque en raison de l’effet de levier

Cependant, ces risques peuvent être atténués par l’application de facteurs tels que la taille de la position, le stop loss et d’autres techniques de gestion des risques. En outre, les paramètres et les filtres peuvent être optimisés davantage pour maximiser les performances dans différentes conditions de marché.

Direction d’optimisation

Voici quelques idées pour optimiser cette stratégie:

  1. Tester différentes combinaisons de paramètres de doubles-souplessions pour trouver celles qui produisent des signaux de transaction plus précis. Les paramètres de longues et courtes périodes peuvent être ajustés pour optimiser.

  2. Ajouter des filtres basés sur la volatilité, le volume des transactions ou d’autres indicateurs pour réduire les signaux de transactions inutiles. Cela peut réduire la fréquence des transactions tout en améliorant la rentabilité de chaque transaction.

  3. Augmentation de la logique d’arrêt des pertes. Par exemple, l’arrêt des pertes lorsque les valeurs du TSI traversent l’axe zéro. Cela peut réduire les pertes inutiles.

  4. Évaluer la performance des différentes variétés de transactions telles que les indices, les marchandises, etc. dans le cadre de la stratégie. Sélectionner les variétés les plus performantes pour la concentration des transactions.

  5. Filtrage sélectif des variétés négociées. Par exemple, évaluer la liquidité des variétés, les indicateurs de volatilité, sélectionner les variétés les mieux classées dans les paramètres de l’indicateur.

  6. Utiliser des méthodes d’apprentissage automatique Comment effectuer une analyse avant Choisir la meilleure combinaison de paramètres. Cela peut réduire les biais de la sélection artificielle et obtenir des paramètres plus favorables.

  7. Il utilise plusieurs ensembles de paramètres en fonction de différents environnements de marché et les change de manière dynamique. Par exemple, une combinaison de paramètres plus positive peut être utilisée lors d’un marché haussier et une combinaison plus conservatrice lors d’un marché baissier.

En testant et en optimisant les aspects ci-dessus, il est possible d’améliorer encore la stabilité et la rentabilité de la stratégie.

Résumer

Dans l’ensemble, cette stratégie est basée sur les caractéristiques de l’indice de doubles indices de l’indice TSI, conçu pour une stratégie de négociation d’actions relativement stable et fiable. En ajustant dynamiquement la taille de la position, le niveau de risque global peut être contrôlé efficacement.

Bien sûr, comme la plupart des stratégies de trading quantitatif, cette stratégie présente certaines limites, principalement en ce qui concerne la vulnérabilité aux fortes fluctuations du marché. En outre, le choix des paramètres et les conditions de filtrage doivent également être testés et optimisés pour une plus grande adaptabilité et rentabilité dans des marchés complexes et changeants.

Code source de la stratégie
/*backtest
start: 2024-01-06 00:00:00
end: 2024-02-05 00:00:00
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/
// © shankardey7310

//@version=5
strategy("TSI STOCKS", shorttitle="TSI", overlay=true)

initialCapital = input(10000, title="Initial Capital")
riskPercent = input(1, title="Risk Percentage") / 100

longLength = input(12, title="Long Length")
shortLength = input(9, title="Short Length")
signalLength = input(12, title="Signal Length")

price = close
pc = ta.change(price)

double_smooth(src, long, short) =>
    first_smooth = ta.ema(src, long)
    ta.ema(first_smooth, short)

double_smoothed_pc = double_smooth(pc, longLength, shortLength)
double_smoothed_abs_pc = double_smooth(math.abs(pc), longLength, shortLength)
tsi_value = 100 * (double_smoothed_pc / double_smoothed_abs_pc)
tsi_signal = ta.ema(tsi_value, signalLength)

riskAmount = (initialCapital * riskPercent) / close

if (tsi_value > tsi_signal and tsi_value[1] <= tsi_signal[1])
    strategy.entry("Long", strategy.long)

if (tsi_value < tsi_signal and tsi_value[1] >= tsi_signal[1])
    strategy.close("Long")

plot(tsi_value, title="True Strength Index", color=#2962FF)
plot(tsi_signal, title="Signal", color=#E91E63)
hline(0, title="Zero", color=#787B86)