Stratégie de négociation quantitative basée sur l'indice de dynamique stochastique

Auteur:ChaoZhang est là., Date: 2024-03-11 10:46:10 Je vous en prie.
Les étiquettes:

img

Vue d'ensemble de la stratégie

Cet article présente une stratégie de trading quantitative basée sur l'indice de dynamique stochastique (SMI). La stratégie utilise les signaux croisés entre l'indicateur SMI et sa moyenne mobile exponentielle (EMA) pour identifier les opportunités d'achat et de vente potentielles.

Principe de stratégie

Le cœur de cette stratégie est l'indice de dynamique stochastique (SMI). SMI est un oscillateur de dynamique qui mesure le prix de clôture par rapport à la plage haute-basse sur une période spécifiée. Plus précisément, la stratégie calcule d'abord le plus haut et le plus bas bas au cours de la période spécifiée, puis calcule la différence entre le prix de clôture et le point médian de la plage haute-basse, ainsi que la différence entre le plus haut et le plus bas. Ensuite, la stratégie calcule la valeur SMI, qui est le rapport de la différence relative moyenne à la différence absolue moyenne multipliée par 100. Enfin, la stratégie calcule la moyenne mobile exponentielle de SMI comme ligne de signal.

Lorsque la ligne de signal SMI traverse au-dessus de sa EMA, elle indique une dynamique ascendante et déclenche un signal d'achat; lorsque la ligne de signal SMI traverse au-dessous de sa EMA, elle indique une dynamique descendante et déclenche un signal de vente.

Les avantages de la stratégie

  1. La stratégie est basée sur le puissant indicateur de dynamique SMI, qui peut capturer efficacement les changements dans les tendances et la dynamique du marché.

  2. La logique de la stratégie est claire et facile à comprendre et à mettre en œuvre.

  3. En utilisant la moyenne mobile exponentielle comme ligne de signal, la stratégie peut atténuer le bruit des prix et améliorer la fiabilité du signal.

  4. Le marquage des niveaux de surachat et de survente fournit des outils de gestion des risques supplémentaires pour la stratégie.

Risques stratégiques

  1. La stratégie repose sur un seul indicateur, le SMI, et peut faire face au risque d'échec de l'indicateur.

  2. La stratégie peut générer des signaux commerciaux fréquents sur des marchés instables, ce qui entraîne des coûts de transaction élevés.

  3. La stratégie ne dispose pas d'un mécanisme explicite de stop-loss et peut être confrontée au problème du risque excessif de transaction unique.

Directions d'optimisation de la stratégie

  1. Optimisation des paramètres: les performances de la stratégie dépendent en grande partie des paramètres utilisés dans le calcul du SMI, tels que la longueur %K, la longueur %D, etc. En optimisant ces paramètres, les performances de la stratégie peuvent être améliorées.

  2. Filtrage des signaux: afin de réduire la fréquence des transactions et d'améliorer la qualité des signaux, des mécanismes de filtrage supplémentaires tels que la confirmation de tendance et la confirmation de volume peuvent être envisagés.

  3. Gestion des risques: l'intégration de règles explicites de gestion des positions et de stop-loss dans la stratégie permet de mieux contrôler les risques et d'améliorer la robustesse de la stratégie.

  4. Combinaison de facteurs multiples: Combinaison de signaux SMI avec d'autres indicateurs techniques ou facteurs fondamentaux pour former un mécanisme de décision de négociation plus complet et fiable.

Résumé

Cette stratégie est basée sur l'indicateur de dynamique stochastique (SMI). Elle utilise les signaux croisés entre l'indicateur SMI et sa moyenne mobile exponentielle pour identifier les opportunités d'achat et de vente potentielles. Les avantages de la stratégie résident dans son indicateur de dynamique puissant, sa logique claire, sa facilité de mise en œuvre et l'utilisation de moyennes mobiles et de niveaux de surachat / survente pour améliorer la fiabilité du signal et la gestion des risques.


/*backtest
start: 2023-03-05 00:00:00
end: 2024-03-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Stochastics Momentum Index Strategy", shorttitle="SMI_BackTest", overlay=false)

// Input parameters
a = input.int(10, "Percent K Length")
b = input.int(3, "Percent D Length")
ob = input.int(40, "Overbought")
os = input.int(-40, "Oversold")

// Range Calculation
ll = ta.lowest(low, a)
hh = ta.highest(high, a)
diff = hh - ll
rdiff = close - (hh+ll)/2

avgrel = ta.ema(ta.ema(rdiff,b),b)
avgdiff = ta.ema(ta.ema(diff,b),b)

// SMI calculations
SMI = avgdiff != 0 ? (avgrel/(avgdiff/2)*100) : 0
SMIsignal = ta.ema(SMI,b)
emasignal = ta.ema(SMI, 10)

// Color Definition for Stochastic Line
col = SMI >= ob ? color.green : SMI <= os ? color.red : color.white

plot(SMIsignal, title="Stochastic", color=color.white)

plot(emasignal, title="EMA", color=color.yellow)

level_40 = ob
level_40smi = SMIsignal > level_40 ? SMIsignal : level_40

level_m40 = os
level_m40smi = SMIsignal < level_m40 ? SMIsignal : level_m40

plot(level_40, "Level ob", color=color.red)
plot(level_40smi, "Level ob SMI", color=color.red, style=plot.style_line)

plot(level_m40, "Level os", color=color.green)
plot(level_m40smi, "Level os SMI", color=color.green, style=plot.style_line)

//fill(level_40, level_40smi, color=color.red, transp=ob, title="OverSold")
//fill(level_m40, level_m40smi, color=color.green, transp=ob, title="OverBought")

// Strategy Tester
longCondition = ta.crossover(SMIsignal, emasignal)
if (longCondition)
    strategy.entry("Buy", strategy.long)

shortCondition = ta.crossunder(SMIsignal, emasignal)
if (shortCondition)
    strategy.entry("Sell", strategy.short)


Plus de