Tendance à la suite d'une double stratégie de moyenne mobile

Auteur:ChaoZhang est là., Date: 2023-10-25 11h42 et 23h
Les étiquettes:

img

Résumé

Cette stratégie utilise l'indice de classement de l'indice de mouvement directionnel moyen (ADXR) pour identifier les tendances du marché et combine des moyennes mobiles doubles pour générer des signaux de trading. Elle appartient à une stratégie typique de suivi des tendances.

La logique de la stratégie

  1. Calculer la valeur de l'indicateur ADXR. ADX reflète la force de la tendance; ADXR lissé ADX et affiche mieux la tendance.

  2. Définissez des seuils doubles pour l'indicateur ADXR. Lorsque l'ADXR dépasse le premier seuil, il indique une tendance haussière. Lorsqu'il dépasse le deuxième seuil, il indique une tendance à la baisse.

  3. Déterminez la direction de position en fonction des signaux ADXR. Allez long quand ADXR dépasse le premier seuil, et allez court quand il dépasse le deuxième seuil.

  4. Filtrez les signaux avec des moyennes mobiles doubles. Allez long seulement lorsque le prix est au-dessus de la MA rapide, et allez court seulement lorsque le prix est en dessous de la MA lente. Ce filtrage évite les mauvais métiers lors des renversements de tendance.

  5. Les positions longues sont en vert, les positions courtes en rouge.

Analyse des avantages

  1. L'ADXR assure la fluctuation des prix et identifie efficacement les tendances, évitant ainsi les risques commerciaux liés aux différents marchés.

  2. Le double filtrage des moyennes mobiles réduit les retraits en évitant les pertes dues à des renversements de tendance.

  3. La combinaison d'un indicateur de tendance et de moyennes mobiles permet de négocier selon les tendances tout en contrôlant les risques, ce qui convient aux marchés en tendance.

  4. La logique de la stratégie est simple et flexible pour l'ajustement des paramètres pour différents environnements de marché.

Analyse des risques

  1. Les paramètres ADXR inappropriés peuvent ne pas détecter les changements de tendance en temps opportun.

  2. Des paramètres de moyenne mobile incorrects peuvent filtrer trop de signaux valides, qui doivent être ajustés en fonction des conditions du marché.

  3. Tout indicateur peut donner des signaux erronés. Des tendances à plus long terme devraient être envisagées pour éviter les pièges.

  4. Réduire la taille des positions sur des marchés variés afin de limiter les pertes.

Directions d'optimisation

  1. D'autres indicateurs comme le MACD et les bandes de Bollinger peuvent être ajoutés pour confirmer les signaux ADXR et améliorer la précision.

  2. Des stratégies de stop-loss comme les trailing stops et les time stops peuvent être ajoutées pour limiter les pertes par transaction.

  3. Optimiser les paramètres basés sur l'efficacité du marché, comme des périodes de moyenne plus longues pour les marchés à faible efficacité.

  4. Incorporer des stratégies de gestion de l'argent comme la taille des positions fractionnaires fixes pour mieux contrôler les risques globaux.

Conclusion

Cette stratégie est une stratégie typique de suivi des tendances, utilisant l'ADXR pour déterminer la direction de la tendance et des moyennes mobiles doubles pour réduire les retraits. Les avantages résident dans sa simplicité et sa flexibilité pour être adapté à différents marchés. Mais tout indicateur technique peut donner de faux signaux, et les risques doivent être gérés avec des filtres de tendance et une gestion de l'argent.


/*backtest
start: 2023-10-17 00:00:00
end: 2023-10-24 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 04/05/2018
// The Average Directional Movement Index Rating (ADXR) measures the strength 
// of the Average Directional Movement Index (ADX). It's calculated by taking 
// the average of the current ADX and the ADX from one time period before 
// (time periods can vary, but the most typical period used is 14 days).
// Like the ADX, the ADXR ranges from values of 0 to 100 and reflects strengthening 
// and weakening trends. However, because it represents an average of ADX, values 
// don't fluctuate as dramatically and some analysts believe the indicator helps 
// better display trends in volatile markets.
//
// You can change long to short in the Input Settings
// WARNING:
//  - For purpose educate only
//  - This script to change bars colors.
////////////////////////////////////////////////////////////
fADX(Len) =>
    up = change(high)
    down = -change(low)
    trur = rma(tr, Len)
    plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, Len) / trur)
    minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, Len) / trur)
    sum = plus + minus 
    100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), Len)

strategy(title="Average Directional Movement Index Rating Backtest", shorttitle="ADXR")
LengthADX = input(title="Length ADX", defval=14)
LengthADXR = input(title="Length ADXR", defval=14)
reverse = input(false, title="Trade reverse")
Signal1 = input(13, step=0.01)
Signal2 = input(45, step=0.01)
hline(Signal1, color=green, linestyle=line)
hline(Signal2, color=red, linestyle=line)
xADX = fADX(LengthADX)
xADXR = (xADX + xADX[LengthADXR]) / 2
pos = iff(xADXR < Signal1, 1,
       iff(xADXR > Signal2, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 
plot(xADXR, color=green, title="ADXR")

Plus de