Stratégie de la croix dorée et de la croix morte à moyenne mobile


Date de création: 2023-09-21 10:47:24 Dernière modification: 2023-09-21 10:47:24
Copier: 0 Nombre de clics: 639
1
Suivre
1617
Abonnés

Aperçu

Cette stratégie est basée sur une forme de fourchette dorée avec trois moyennes mobiles. Faites plus lorsque vous traversez la moyenne rapide sur la moyenne rapide et la moyenne sur la moyenne lente; faites moins lorsque vous traversez la moyenne rapide sous la moyenne rapide et la moyenne lente sous la moyenne lente.

Principe de stratégie

  1. Mettre en place trois moyennes mobiles de différentes périodes: la ligne rapide, la ligne moyenne et la ligne lente
  2. Faire plus lorsque la ligne rapide traverse la ligne moyenne et que la ligne moyenne traverse la ligne lente
  3. Lorsque la ligne rapide traverse la ligne moyenne et que la ligne moyenne traverse la ligne lente, faites une pause
  4. Délai d’accès réglable, filtre de fausse percée
  5. Lorsque le signal de recul est déclenché

Plus précisément, la stratégie utilise les croisements entre trois moyennes mobiles de différentes périodes pour effectuer des transactions. La ligne rapide représente la tendance à court terme actuelle, la ligne moyenne représente la tendance à moyen terme et la ligne lente représente la tendance à long terme.

Analyse des avantages

  1. L’utilisation de trois lignes de mesure pour détecter les changements de direction de la tendance améliore la précision
  2. Le retard d’entrée permet de filtrer les fausses intrusions et d’éviter les pièges
  3. La logique de transaction est simple, intuitive et facile à comprendre.
  4. Paramètres de la moyenne linéaire flexibles pour différents cycles
  5. Le risque de trading à la baisse

Analyse des risques

  1. Le grand cycle nécessite un temps de détention plus long et un risque d’expansion des pertes
  2. Le triangle est en retard et risque de manquer le meilleur point d’entrée.
  3. Il faut optimiser les paramètres de la ligne moyenne, sinon le signal peut être inexact
  4. Les investisseurs doivent tenir compte des risques à long terme

Le risque peut être géré en ajustant la durée de la position, en optimisant les paramètres de la ligne moyenne et en introduisant des stratégies de stop-loss.

Direction d’optimisation

  1. Tester différents paramètres de périodes moyennes pour trouver le paramètre optimal
  2. Évaluer les avantages et les inconvénients des différents délais d’entrée en filtrant les signaux
  3. Introduction d’une stratégie de stop-loss et adaptation de la position de stop-loss en fonction de la situation réelle
  4. Étudier les préférences paramétriques des différentes variétés et créer un système d’optimisation des paramètres
  5. Test des règles de réentrée et de mise en place pour optimiser la tenue des positions

Résumer

Cette stratégie est basée sur la direction de la tendance. Les avantages sont que les signaux de négociation sont simples, clairs et configurables. Les inconvénients sont les retards et l’optimisation des paramètres.

Code source de la stratégie
/*backtest
start: 2023-08-21 00:00:00
end: 2023-09-20 00:00:00
period: 3h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// © DaynTrading

//@version=4
// strategy(
//      title="Simple Moving Average Cross",
//      overlay=true,
//      initial_capital=5000,
//      default_qty_type=strategy.percent_of_equity,
//      default_qty_value=2,
//      commission_type=strategy.commission.percent,
//      commission_value=0.075,
//      pyramiding=0
//      )

sma_top_input = input(title="SMA Top", type=input.integer, defval=20)
sma_mid_input = input(title="SMA Mid", type=input.integer, defval=50)
sma_low_input = input(title="SMA Low", type=input.integer, defval=200)

bars_long = input(title="Long: After trigger, how many bars to wait?", type=input.integer, defval=5)
bars_short = input(title="Short: After trigger, how many bars to wait?", type=input.integer, defval=5)

sma_top = sma(close, sma_top_input)
sma_mid = sma(close, sma_mid_input)
sma_low = sma(close, sma_low_input)

long = sma_top > sma_mid and sma_mid > sma_low
short = sma_top < sma_mid and sma_mid < sma_low

long_condition = long and long[bars_long] and not long[bars_long + 1]
short_condition = short and short[bars_short] and not short[bars_short + 1]

close_long = sma_top < sma_mid and sma_mid < sma_low and not long[bars_long + 1]
close_short = sma_top > sma_mid and sma_mid > sma_low and not short[bars_short + 1]

plot(sma_top, title="SMA Top", color=#95f252, linewidth=2)
plot(sma_mid, title="SMA Mid", color=#FF1493, linewidth=2)
plot(sma_low, title="SMA Low", color=#6a0dad, linewidth=2)

strategy.entry("LongPosition", strategy.long, when = long_condition)
strategy.entry("ShortPosition", strategy.short, when = short_condition)
    
strategy.close("LongPosition", when = close_short)
strategy.close("ShortPosition", when = close_long)