Système de croisement de moyennes mobiles adaptatives Momentum Breakout


Date de création: 2024-02-20 15:43:46 Dernière modification: 2024-02-20 15:43:46
Copier: 1 Nombre de clics: 598
1
Suivre
1617
Abonnés

Système de croisement de moyennes mobiles adaptatives Momentum Breakout

Une vue d’ensemble

Le cœur de cette stratégie est l’utilisation de la courbe d’adaptation et de l’indicateur de dynamique pour réaliser des transactions de rupture. Tout d’abord, la stratégie utilise la moyenne pondérée en chaleur et en soleil et la moyenne mobile en trois paires pour construire la courbe d’adaptation. Ensuite, en combinaison avec l’indicateur de mouvement, les signaux de rupture sont jugés et les décisions de transaction sont formées.

2. Principes de la stratégie

La stratégie se compose de trois volets principaux:

  1. Construction d’une ligne d’équilibre adaptative. La stratégie consiste à construire trois lignes d’équilibre adaptatives utilisant le prix du soleil de Javel et trois paires de moyennes mobiles glissantes. Ces lignes d’équilibre sont capables de répondre rapidement aux variations de prix.

  2. Calcul de l’indicateur de dynamique. La stratégie utilise la différence de trois paires de moyennes mobiles glissantes des prix comme indicateur de dynamique. Cet indicateur permet de mettre en évidence les changements de tendance des prix.

  3. Le croisement de la ligne moyenne sert de signal de transaction. Il génère un signal d’achat lorsque la ligne moyenne rapide traverse la ligne moyenne lente; il génère un signal de vente lorsque la ligne moyenne rapide traverse la ligne moyenne lente.

Troisièmement, les avantages stratégiques.

Cette stratégie, combinée à une ligne moyenne auto-adaptative et à un indicateur de dynamique, permet de saisir rapidement les tendances des changements de prix et de générer des signaux de négociation, principalement avec les avantages suivants:

  1. L’utilisation du prix du photovoltaïque pour la construction d’une ligne d’équilibre adaptative permet de répondre plus rapidement aux changements de prix.
  2. Les trois paires de moyennes mobiles lisse permettent d’aplanir efficacement les données de prix et de traiter les données anormales.
  3. L’indicateur de dynamique identifie clairement les points de changement de tendance des prix.
  4. Le croisement de la même ligne produit un signal de transaction clair.
  5. Les paramètres de la stratégie sont flexibles et peuvent être ajustés pour s’adapter.

Quatrièmement, les risques et les contre-mesures

  1. Lorsque les prix fluctuent fortement, les signaux de croisement de la même ligne peuvent être induits en erreur. Les paramètres peuvent être ajustés de manière appropriée et les signaux filtrés.
  2. Dans les marchés à capitaux multiples, les stratégies sont plus efficaces. Dans les marchés à capitaux nuls, les fonds de protection contre les pertes sont arrêtés.

Cinquièmement, optimiser les idées.

  1. On peut tester plus de types de moyennes mobiles pour trouver de meilleurs paramètres.
  2. Des conditions de filtrage supplémentaires peuvent être ajoutées pour éviter les faux signaux. Par exemple, un filtre pour augmenter le volume des transactions.
  3. Les paramètres peuvent être optimisés pour s’adapter aux différents marchés.

VI. Conclusion

La stratégie intègre des indices de la moyenne et de la dynamique auto-adaptés, réagit rapidement aux variations de prix et produit des signaux de négociation simples et efficaces. La stratégie peut être adaptée de manière flexible aux différents environnements de marché en ajustant les paramètres.

Code source de la stratégie
/*backtest
start: 2024-01-20 00:00:00
end: 2024-02-19 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("YASIN Crossover Strategy", overlay=true)

EMAlength = input(55, 'EMA LENGTH?')

src = ohlc4
var float haOpen = na
haOpen := na(haOpen[1]) ? src : (src + haOpen[1]) / 2
haC = (ohlc4 + haOpen + ta.highest(high, 1) + ta.lowest(low, 1)) / 4
EMA1 = ta.ema(haC, EMAlength)
EMA2 = ta.ema(EMA1, EMAlength)
EMA3 = ta.ema(EMA2, EMAlength)
TMA1 = 3 * EMA1 - 3 * EMA2 + EMA3
EMA4 = ta.ema(TMA1, EMAlength)
EMA5 = ta.ema(EMA4, EMAlength)
EMA6 = ta.ema(EMA5, EMAlength)
TMA2 = 3 * EMA4 - 3 * EMA5 + EMA6
IPEK = TMA1 - TMA2
YASIN = TMA1 + IPEK
EMA7 = ta.ema(hlc3, EMAlength)
EMA8 = ta.ema(EMA7, EMAlength)
EMA9 = ta.ema(EMA8, EMAlength)
TMA3 = 3 * EMA7 - 3 * EMA8 + EMA9
EMA10 = ta.ema(TMA3, EMAlength)
EMA11 = ta.ema(EMA10, EMAlength)
EMA12 = ta.ema(EMA11, EMAlength)
TMA4 = 3 * EMA10 - 3 * EMA11 + EMA12
IPEK1 = TMA3 - TMA4
YASIN1 = TMA3 + IPEK1
t1 = time(timeframe.period, "0020-0030")


// بررسی شرایط سیگنال خرید و فروش
buyCondition = YASIN1 > YASIN and YASIN1[1] <= YASIN[1]
sellCondition = YASIN1 < YASIN and YASIN1[1] >= YASIN[1]

// اعمال سیگنال خرید و فروش
strategy.entry("Buy", strategy.long, when = buyCondition)
strategy.entry("Sell", strategy.short, when = sellCondition)