Stratégie de l'indice Dynamic Trader


Date de création: 2023-11-13 10:09:48 Dernière modification: 2023-11-13 10:09:48
Copier: 1 Nombre de clics: 668
1
Suivre
1617
Abonnés

Stratégie de l’indice Dynamic Trader

Aperçu

Cette stratégie utilise l’indice dynamique des traders (TDI) comme indicateur technique principal pour générer des signaux de trading en combinant des moyennes mobiles de différentes périodes. Son but est de trouver des occasions de revirement en cas de survente.

Principe de stratégie

La stratégie commence par calculer le RSI de la clôture, d’une longueur de 13 cycles. On calcule ensuite la moyenne mobile simple de 34 cycles du RSI, puis on multiplie la différence standard de 34 cycles du RSI par 1,6185 pour la trajectoire ascendante et descendante.

On calcule ensuite les MA rapides du RSI de 2 cycles et les MA lents de 7 cycles. On prend ensuite les valeurs historiques de ces indicateurs à partir de cycles plus élevés. Lorsque la MA rapide traverse la MA lente de haut en bas, elle génère un signal d’achat.

Analyse des avantages

La stratégie utilise la caractéristique de la réversion moyenne du RSI, combinée à l’indicateur de dynamique pour implémenter des transactions de réversion. Les hauts et les bas du RSI reflètent les zones de survente et de survente, et le milieu du RSI reflète la moyenne des prix. La réversion moyenne et les opportunités de réversion sont reflétées de manière croisée par les MA rapides et lents.

Plus précisément, le RSI en amont et en aval définit des seuils raisonnables de sur-achat et de sur-vente, ce qui permet de détecter rapidement les anomalies. La voie médiane maîtrise le prix d’équilibre. La MA rapide filtre le bruit à court terme et la MA lente juge la tendance à moyen terme.

Analyse des risques

La stratégie est principalement basée sur des transactions inversées, avec un certain risque d’efficacité temporelle. Si la situation se développe de manière irrationnelle sur une longue période, comme la baisse des cours, la stratégie entraînera des pertes continues. En outre, si le MA est mal réglé, il est possible de manquer certaines opportunités de reprise ou de produire des erreurs de jugement.

Pour contrôler les risques mentionnés ci-dessus, il est recommandé d’ajuster correctement le cycle de la MA, ou d’augmenter le mécanisme de stop loss, etc. Lorsque le marché entre dans une phase irrationnelle, il est conseillé de réduire la position ou même de cesser de négocier.

Direction d’optimisation

Cette stratégie peut être optimisée dans les domaines suivants:

  1. Tester les paramètres du cycle RSI de différentes longueurs pour trouver le réglage le plus approprié pour le marché actuel

  2. Optimisation de la longueur des MA rapides et des MA lents, équilibre entre capture de retournement et filtrage du bruit

  3. Augmentation des arrêts basés sur la volatilité pour contrôler les retraits maximaux

  4. Essayez d’inclure d’autres facteurs dans la logique de commande, tels que les variations du volume des transactions, pour augmenter le taux de réussite.

  5. Test de l’efficacité d’un même ensemble de signaux de transaction REUSE sur plusieurs périodes

  6. Développer un mécanisme d’optimisation adaptatif des paramètres pour permettre l’ajustement dynamique des paramètres de la stratégie

Résumer

L’architecture globale de la stratégie de réversion du RSI est raisonnable, la logique de la transaction est clairement expliquée. Il a un espace personnalisable et un potentiel d’optimisation. Sa capacité à saisir les opportunités de réversion est à espérer dans des conditions de réglage des paramètres et de contrôle du risque. La prochaine étape consiste à optimiser la stratégie en effectuant plus de retours et de réglage des paramètres pour améliorer la résistance à la stratégie et le niveau de rendement.

Code source de la stratégie
/*backtest
start: 2022-11-06 00:00:00
end: 2023-11-12 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2

strategy("TDI - Traders Dynamic Index [Mehdi]", shorttitle="TDIMEHDI")

rsiPeriod = input(13, minval = 1, title = "RSI Period")
bandLength = input(34, minval = 1, title = "Band Length")
lengthrsipl = input(7, minval = 0, title = "Fast MA on RSI")
lengthtradesl = input(2, minval = 1, title = "Slow MA on RSI")
p1 = input("15", title = "Signal Timeframe")

src = close                                                             // Source of Calculations (Close of Bar)

r = rsi(src, rsiPeriod)                                                 // RSI of Close
ma = sma(r, bandLength)                                                 // Moving Average of RSI [current]
offs = (1.6185 * stdev(r, bandLength))                                  // Offset
up = ma + offs                                                          // Upper Bands
dn = ma - offs                                                          // Lower Bands
mid = (up + dn) / 2                                                     // Average of Upper and Lower Bands
fastMA = sma(r, lengthrsipl)                                            // Moving Average of RSI 2 bars back
slowMA = sma(r, lengthtradesl)                                          // Moving Average of RSI 7 bars back

hline(20)                                                               // ExtremelyOversold
hline(30)                                                               // Oversold
hline(50)                                                               // Midline
hline(70)                                                               // Overbought
hline(80)                                                               // ExtremelyOverbought

up1 = request.security(syminfo.tickerid, p1, up)
dn1 = request.security(syminfo.tickerid, p1, dn)
mid1 = request.security(syminfo.tickerid, p1, mid)
slowMA1 = request.security(syminfo.tickerid, p1, slowMA)
fastMA1 = request.security(syminfo.tickerid, p1, fastMA)

plot(up1, "Upper Band", color = #3286c3, linewidth = 2)               // Upper Band
plot(dn1, "Lower Band", color = #3286c3, linewidth = 2)               // Lower Band
plot(mid1, "Middle of Bands", color = yellow, linewidth = 2)      // Middle of Bands
plot(slowMA1, "Slow MA", color=green, linewidth=2)                       // Plot Slow MA
plot(fastMA1, "Fast MA", color=red, linewidth=1)                         // Plot Fast MA

if (crossover(slowMA1, fastMA1))
    strategy.entry("Buy", strategy.long, comment="Buy")

if (crossunder(slowMA1, fastMA1))
    strategy.entry("Sell", strategy.short, comment="Sell")