Stratégie de croisement de momentum à trois moyennes mobiles


Date de création: 2023-12-25 12:06:36 Dernière modification: 2023-12-25 12:06:36
Copier: 0 Nombre de clics: 703
1
Suivre
1623
Abonnés

Stratégie de croisement de momentum à trois moyennes mobiles

Aperçu

La stratégie de la dynamique de la croisée des trois équations est une stratégie d’indicateur technique typique pour suivre les tendances du marché. Elle combine trois moyennes mobiles simples de 16 cycles, 36 cycles et 72 cycles pour juger de la tendance du marché par leur croisement à plusieurs têtes et leur croisement à vide, et la moyenne mobile auto-adaptative de Kaufman comme filtre pour effectuer des opérations de plus ou de moins lorsque la direction de la tendance est plus claire.

Principe de stratégie

Le centre de la stratégie est constitué de trois moyennes mobiles simples de 16 cycles, 36 cycles et 72 cycles. Lorsque la courte moyenne périodique traverse la plus longue moyenne périodique, le marché entre dans une tendance à la hausse. Lorsque la courte moyenne périodique traverse la plus longue moyenne périodique, le marché entre dans une tendance à la baisse.

La moyenne mobile adaptative de Kaufman (KAMA) est utilisée comme filtre pour éviter les signaux erronés lorsque la tendance n’est pas claire. Le signal de croisement linéaire uniforme est activé et exécuté uniquement lorsque KAMA est en mode non-accélération ou non-décélération (paragraphe linéaire).

La stratégie consiste à suivre les intersections de la ligne moyenne et, lorsque la tendance est plus claire, à effectuer des opérations de sur- ou de coupe. La condition de sur-opération est de traverser la ligne moyenne 36 et la ligne moyenne 72 sur la ligne moyenne 16 et de ne pas accélérer (KAMA); la condition de coupe est de traverser la ligne moyenne 36 et la ligne moyenne 72 sous la ligne moyenne 16 et de ne pas ralentir (KAMA).

Analyse des avantages

Cette stratégie présente les avantages suivants:

  1. Les lignes moyennes, combinées à des périodes multiples, permettent de suivre efficacement les tendances des lignes longues du marché.
  2. L’introduction d’une moyenne mobile adaptative comme filtre peut réduire les faux signaux lorsque la tendance est incertaine
  3. Simple d’utilisation, facile à mettre en œuvre, adapté aux transactions automatisées ou programmées

Analyse des risques

Cette stratégie comporte aussi des risques:

  1. Dans le cas d’un tremblement de terre, les croisements de ligne peuvent être fréquents et générer trop de signaux inefficaces.
  2. Aucun arrêt de perte, les pertes pourraient s’étendre
  3. La conception d’un marché à forte volatilité comme celui des crypto-monnaies peut être moins efficace pour un marché à faible volatilité

Il est possible de réduire le risque en ajustant le paramètre de la moyenne, en définissant des contraintes de stop loss ou en utilisant cette stratégie uniquement sur les marchés les plus volatiles.

Direction d’optimisation

Cette stratégie peut être optimisée de la manière suivante:

  1. Tester différentes combinaisons de paramètres de moyenne pour trouver le paramètre optimal
  2. Augmentation de la quantité ou de l’indicateur de volatilité comme condition de filtrage auxiliaire
  3. Mise en place d’un mécanisme de prévention des pertes
  4. Combiné à d’autres indicateurs pour déterminer le moment de la rentrée
  5. Optimisation de la gestion des positions et ajustement des risques par des hausses et des baisses progressives

Résumer

La stratégie de dynamique de croisement de trois lignes est une stratégie de suivi de tendance plus classique et pratique dans l’ensemble. Elle permet de juger de la tendance des lignes longues du marché en croisant les lignes moyennes sur plusieurs périodes et filtre efficacement une partie du bruit.

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Wielkieef


//@version=5
strategy(title='Three SMA-crossover strategy [30min] ', overlay=true, pyramiding=1, initial_capital=10000, default_qty_type=strategy.cash, default_qty_value=10000, calc_on_order_fills=false, slippage=0, commission_type=strategy.commission.percent, commission_value=0.03)

src = close

Length1 = input.int(16, title='  1-SMA Lenght', minval=1, group='SMA')
Length2 = input.int(36, title='  2-SMA Lenght', minval=1, group='SMA')
Length3 = input.int(72, title='  3-SMA Lenght', minval=1, group='SMA')
SMA1 = ta.sma(close, Length1)
SMA2 = ta.sma(close, Length2)
SMA3 = ta.sma(close, Length3)

Long_ma = SMA1 > SMA2 and SMA2 > SMA3
Short_ma = SMA1 < SMA2 and SMA2 < SMA3

LengthMainSMA = input.int(100, title='  Trend SMA ', minval=1)

SMAas = ta.sma(src, LengthMainSMA)

//  Powered Kaufman Adaptive Moving Average by alexgrover (modificated by Wielkieef)
lengthas = input.int(50, title='   KAMA Lenght')
sp = input.bool(true, title='  Self Powered')

er = math.abs(ta.change(close, lengthas)) / math.sum(math.abs(ta.change(close)), lengthas)
pow = sp ? 1 / er : 2
per = math.pow(math.abs(ta.change(close, lengthas)) / math.sum(math.abs(ta.change(close)), lengthas), pow)
a = 0.
a := per * src + (1 - per) * nz(a[1], src)
mad4h = 0.
a_f = a / a[1] > .999 and a / a[1] < 1.001

///.

Bar_color = close > SMAas ? color.green : Long_ma ? color.blue : Short_ma ? color.maroon : color.gray

barcolor(color=Bar_color)

long_cond = Long_ma and SMAas < close and not a_f and close > a

short_cond = Short_ma and SMAas > close and not a_f and close < a
  
long_stop = Short_ma and SMAas < close

short_stop = Long_ma and SMAas > close

SMA1plot = plot(SMA1, color=Bar_color, linewidth=2)
SMA2plot = plot(SMA2, color=Bar_color, linewidth=4)
SMA3plot = plot(SMA3, color=Bar_color, linewidth=2)

fill(SMA1plot,SMA3plot,title="RANGE " ,color = color.new(Bar_color, 50))



if  long_cond
    strategy.entry('Long', strategy.long)

if  short_cond
    strategy.entry('Short', strategy.short)

strategy.close_all(when=long_stop or short_stop)



//by wielkieef