Stratégie de suivi de tendance basée sur la moyenne mobile et la volatilité réelle moyenne


Date de création: 2024-01-12 11:14:01 Dernière modification: 2024-01-12 11:14:01
Copier: 1 Nombre de clics: 539
1
Suivre
1617
Abonnés

Stratégie de suivi de tendance basée sur la moyenne mobile et la volatilité réelle moyenne

Aperçu

La stratégie utilise les moyennes mobiles et les moyennes réelles pour juger de la direction des tendances du marché et pour suivre les transactions en fonction de la direction des tendances.

Principe de stratégie

Cette stratégie utilise la moyenne mobile de la période de l’année, ma, et la moyenne réelle de la période de l’année,atr, multipliée par deux, pour déterminer la tendance du marché. Les règles de détermination sont:

Lorsque le prix minimum est supérieur à la moyenne mobile plus la moyenne des fluctuations réelles (<< > ma + atr), il est considéré comme une tendance à la hausse.
Lorsque le prix maximal est inférieur à la moyenne mobile moins la moyenne des fluctuations réelles (< ma - atr), il est jugé comme une tendance à la baisse.

Pour les autres cas, la décision précédente est maintenue.

Pour juger de la tendance à la hausse, il est permis de faire plus, mais dans une certaine proportion.
Pour déterminer la tendance à la baisse, le taux de dépréciation doit être proportionnel au taux de dépréciation autorisé.

Les conditions de placement sont d’arriver à la date de clôture de la transaction.

Analyse des avantages

Cette stratégie présente les avantages suivants:

  1. Utilisez les moyennes mobiles pour juger de la direction générale de la tendance et ne vous laissez pas induire en erreur par les fluctuations à court terme du marché.
  2. Le stop-loss dynamique est un moyen de contrôler le risque en utilisant la fluctuation moyenne réelle.
  3. Il est important de savoir que les investisseurs ont un potentiel de revenus plus élevé lorsqu’ils sont en mesure de saisir les opportunités de tendance en temps opportun.
  4. Les règles sont relativement simples et faciles à utiliser.

Analyse des risques

Les principaux risques de cette stratégie sont les suivants:

  1. Il est facile de faire des pertes en période de forte volatilité.
  2. Il n’est pas possible de déterminer avec précision le point de basculement de la tendance, et il est possible de courir le risque d’une reprise ou d’une baisse.
  3. Une mauvaise configuration des paramètres de fluctuation réelle moyenne peut entraîner une extrémité trop lâche ou trop stricte.

La solution est simple:

  1. Ajustez le paramètre de la moyenne mobile pour un paramètre plus stable.
  2. En combinaison avec d’autres indicateurs, les signaux de confirmation permettent d’éviter de poursuivre les hauts et les bas.
  3. Optimiser les paramètres du taux de fluctuation réel moyen et définir les paramètres appropriés.

Direction d’optimisation

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

  1. Testez différents systèmes de moyennes pour trouver des combinaisons de paramètres plus stables.
  2. Ajouter d’autres indicateurs auxiliaires pour juger de la fiabilité du signal.
  3. Les paramètres du taux de fluctuation réel moyen sont testés pour trouver les paramètres optimaux.
  4. Optimiser l’utilisation des fonds et augmenter les rendements grâce au levier.
  5. L’optimisation dynamique des paramètres en combinant des méthodes telles que l’apprentissage automatique.

Résumer

L’idée générale de la stratégie est claire et facile à comprendre. Elle utilise les moyennes mobiles pour déterminer la direction de la tendance et utilise les moyennes réelles pour définir des arrêts et suivre efficacement la tendance.

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

//2019
//Noro

//@version=4
strategy(title = "Noro's MA+ATR Strategy", shorttitle = "MA+ATR str", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Capital, %")
len = input(30, minval = 2, title = "MA Length")
src = input(ohlc4, title = "MA Source")
limitmode = input(false)
fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//MA + BG
atr = sma(tr, len) * 2
ma = sma(src, len)
plot(ma, color = color.blue, linewidth = 4)
trend = 0
trend := low > ma + atr ? 1 : high < ma - atr ? -1 : trend[1]
col = trend == 1 ? color.lime : color.red
bgcolor(col, transp = 70)

//Trading
lot = 0.0
lot := strategy.position_size != strategy.position_size[1] ? strategy.equity / close * capital / 100 : lot[1]
if trend == 1 and limitmode == false
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot)
if trend == -1 and limitmode == false
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot)
if trend == 1 and limitmode
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot)
if trend == -1 and limitmode
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot)
// if time > timestamp(toyear, tomonth, today, 23, 59)
//     strategy.close_all()