Stratégie de moyenne mobile Momentum Crossover


Date de création: 2023-12-07 15:26:38 Dernière modification: 2023-12-07 15:26:38
Copier: 0 Nombre de clics: 569
1
Suivre
1619
Abonnés

Stratégie de moyenne mobile Momentum Crossover

Aperçu

La stratégie consiste à calculer et à tracer des moyennes mobiles simples à 14 jours (SMA) et à 28 jours (SMA), en faisant plus lorsque les deux génèrent des fourches dorées et en faisant moins lorsque les deux génèrent des fourches mortes, afin de capturer les variations de la dynamique du marché.

Principe de stratégie

Le 14e SMA et le 28e SMA sont les indicateurs centraux de la stratégie. Le 14e SMA réagit plus rapidement aux variations de prix, reflétant la tendance à court terme; le 28e SMA est plus stable, reflétant la tendance à moyen terme.

Le croisement des lignes SMA pour juger de la volatilité est un signal de négociation plus courant. Comparé à l’indicateur SMA unique, le croisement des deux SMA combine des informations de différentes durées, évitant ainsi de faux signaux.

Analyse des avantages

Cette stratégie présente les avantages suivants:

  1. L’opération est simple et facile à mettre en œuvre.
  2. Les prix des matières premières sont les plus élevés au monde, et les prix des matières premières sont les plus élevés.
  3. Les signaux sont relativement fiables, combinés à des informations à court et à moyen terme.
  4. Les paramètres SMA peuvent être ajustés en fonction du marché et sont très adaptatifs.

Analyse des risques

Cette stratégie comporte aussi des risques:

  1. Le SMA est lui-même retardé et peut entraîner des retards de signal.
  2. Le marché de l’immobilier est un marché très dynamique, qui ne peut pas faire face à de fortes fluctuations telles que des percées rapides.
  3. Les deux lignes se croisent plus souvent, ce qui augmente la fréquence et le coût des transactions.
  4. Les règles d’entrée et de sortie sont plus simples et il y a de la place pour l’optimisation.

Les mesures de contrôle des risques correspondantes comprennent: une assouplissement appropriée de l’amplitude de stop loss, une attention particulière au contrôle des risques; l’ajustement des paramètres du cycle SMA en fonction du marché; le filtrage des signaux en combinaison avec d’autres indicateurs.

Direction d’optimisation

Cette stratégie peut être optimisée à partir des dimensions suivantes:

  1. Ajout de conditions de filtrage pour éviter les faux signaux croisés. La confirmation de tendance peut être combinée avec le volume de transactions, l’indicateur Stoch, etc.
  2. Le système de stop-loss est augmenté. Il peut être arrêté en fonction de l’ATR, ou combiné à un stop-loss de rupture.
  3. Optimiser les paramètres de cycle SMA. Les paramètres d’optimisation peuvent être adaptés au SMA ou sélectionnés dynamiquement via la méthode ML.
  4. Il est possible de combiner les stratégies de retrait et de suivi des tendances avec d’autres types de stratégies.

Résumer

Les stratégies dynamiques de croisement de la même ligne captent les tendances du marché en calculant les signaux de croisement de la double SMA. Les stratégies sont faciles à mettre en œuvre et à répondre rapidement, mais il existe également un risque de retard.

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

//@version=5
strategy("Tu Estrategia", overlay=true)

// Variables de estrategia
var bool longCondition = na
var bool shortCondition = na

// Indicador
emaValue = ta.ema(close, 30)
plotColor = close > open ? color.green : color.red
plot(emaValue, color=plotColor, linewidth=2)
value = 10 * open / close
plotColor2 = close == open ? color.orange : color.blue
plot(value, color=plotColor2, linewidth=2)

// Lógica de la estrategia
longCondition := ta.crossover(ta.sma(close, 14), ta.sma(close, 28))
shortCondition := ta.crossunder(ta.sma(close, 14), ta.sma(close, 28))

// Entradas de estrategia
if (longCondition)
    strategy.entry("Long", strategy.long)
if (shortCondition)
    strategy.entry("Short", strategy.short)

plotColor3 = strategy.position_size > 0 ? color.green :
     strategy.position_size < 0 ? color.red :
     color.yellow

plot(ta.sma(close, 10), color=plotColor3)