Basé sur une stratégie de croisement de moyennes mobiles sur différentes périodes


Date de création: 2023-12-08 12:20:42 Dernière modification: 2023-12-08 12:20:42
Copier: 0 Nombre de clics: 592
1
Suivre
1621
Abonnés

Basé sur une stratégie de croisement de moyennes mobiles sur différentes périodes

Aperçu

La stratégie émet un signal de transaction en calculant les moyennes mobiles de deux périodes différentes et en traçant leur point d’intersection. Faire plus lorsque vous traversez la moyenne mobile à court terme au-dessus de la moyenne mobile à long terme; Faire moins lorsque vous traversez la moyenne mobile à long terme au-dessous de la moyenne mobile à court terme.

Principe de stratégie

La stratégie est basée sur les avantages des moyennes mobiles: elle permet d’éliminer le hasard de la séquence de prix et d’extraire les principales tendances. La stratégie utilise les lignes de 7 jours et de 20 jours pour construire un système de doubles moyennes mobiles, deux cycles plus courants et plus précis.

Lorsque la moyenne mobile à court terme est traversée par la moyenne mobile à long terme, cela signifie que le prix est entré dans une tendance à la hausse; lorsque la moyenne mobile à court terme est traversée par la moyenne mobile à long terme, cela signifie que le prix est entré dans une tendance à la baisse. Selon ce principe, nous achetons en surplus ou vendons à zéro.

Plus précisément, la stratégie consiste à calculer une moyenne mobile simple à 7 jours et une moyenne mobile simple à 20 jours pour déterminer le renversement de tendance et émettre un signal de transaction lorsque les deux moyennes se croisent. Pour distinguer les types de croisement, définissez la ligne à court terme plus grande que la ligne à long terme comme une tendance à la hausse des prix, et vice versa comme une tendance à la baisse des prix.

Analyse des avantages

(1) L’idée stratégique est claire et simple, facile à comprendre et à mettre en œuvre.

(2) Les moyennes mobiles comme indicateur de suivi des tendances permettent de filtrer efficacement une partie du bruit contenu dans les prix, et l’utilisation d’un système de moyennes mobiles doubles améliore encore la stabilité.

(3) La configuration des paramètres est flexible et la combinaison de paramètres peut être ajustée périodiquement pour répondre aux exigences de transaction des différents environnements de marché.

(4) L’utilisation de deux cycles de moyennes mobiles plus couramment utilisés facilite la détermination d’un signal de transaction clair.

(5) L’analyse assistée visuelle est plus puissante et permet de juger intuitivement les tendances, les points importants, etc. par les effets visuels.

(6) Les paramètres peuvent être ajustés en fonction des résultats de l’optimisation après le retestement de la stratégie, ce qui améliore le rendement de la stratégie.

Analyse des risques

(1) Les stratégies à deux moyennes mobiles sont sensibles aux fluctuations du marché et sont sujettes à des pertes de transactions fréquentes dans des situations de choc.

(2) Le simple fait de s’appuyer sur une intersection homogène ne permet pas nécessairement de déterminer avec précision le point d’inversion de la tendance, ce qui peut entraîner des signaux erronés.

(3) Les règles sont rigides, et l’incapacité de la stratégie à s’adapter peut entraîner des pertes importantes lorsque des événements imprévus affectent le marché.

(4) Les paramètres incorrects peuvent également entraîner des signaux erronés ou des opportunités de transactions manquées, ce qui nécessite un test et une optimisation prudents.

Afin d’atténuer ces risques, il est possible d’ajuster la combinaison de paramètres de manière appropriée; d’ajouter d’autres indicateurs pour les aider; de définir une stratégie de contrôle des pertes de stop loss; d’ajuster les paramètres ou la stratégie de fermeture en fonction de l’environnement du marché, etc.

Direction d’optimisation

(1) L’ajout d’indicateurs de transaction, par exemple, qui permettent de déterminer l’amplification de la transaction lors de la croisée des moyennes mobiles, peut augmenter la chance d’entrée.

(2) Ajouter une stratégie de stop loss pour contrôler efficacement les pertes individuelles. Par exemple, lorsque le prix franchit une certaine plage de la moyenne mobile, quittez la position Head actuelle.

(3) Tester des combinaisons de paramètres périodiques pour optimiser les moyennes mobiles. Vous pouvez essayer différentes correspondances de périodes rapides et lentes pour trouver la meilleure combinaison de paramètres. Vous pouvez également tester d’autres indicateurs de moyennes mobiles tels que les moyennes mobiles indicielles, les moyennes mobiles pondérées.

(4) Optimiser les paramètres en fonction des variétés et des conditions du marché. Pour les variétés très volatiles, il est possible de raccourcir le cycle de la moyenne mobile et de réduire la fréquence des transactions.

Résumer

La stratégie de double croisement des moyennes mobiles est une stratégie de suivi de tendance très typique et fondamentale dans son ensemble. Elle permet de juger de la variation de la tendance des prix en calculant des moyennes mobiles de deux périodes différentes et en observant leur croisement.

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

//@version=3
strategy("Ma stratégie", overlay=true)

// Multi-timeframe and price input
pricetype = input(close, title="Price Source For The Moving Averages")
useCurrentRes = input(true, title="Use Current Timeframe As Resolution?")
resCustom = input(title="Use Different Timeframe? Then Uncheck The Box Above",  defval="W")
res = useCurrentRes ? timeframe.period : resCustom
price = request.security(syminfo.tickerid, res, pricetype)

// MA period input
shortperiod = input(7, title="Short Period Moving Average")
longperiod = input(20, title="Long Period Moving Average")



short = ema(price, shortperiod) 
long = ema(price, longperiod) 
   
// MA trend direction color
shortcolor = short > short[1] ? lime : short < short[1] ? red : blue
longcolor = long > long[1] ? lime : long < long[1] ? red : blue

// MA output
MA1 = plot(short, title="Short Period Moving Average", style=linebr, linewidth=2, color=shortcolor)
MA2 = plot(long, title="Long Period Moving Average", style=linebr, linewidth=4, color=longcolor)
fill(MA1, MA2, color=silver, transp=50)

// MA trend bar color
TrendingUp() => short > long 
TrendingDown() => short < long 
barcolor(TrendingUp() ? green : TrendingDown() ? red : blue)

// MA cross alert
MAcrossing = cross(short, long) ? short : na
plot(MAcrossing, style = cross, linewidth = 4,color=black)

// MA cross background color alert
Uptrend() => TrendingUp() and TrendingDown()[1]
Downtrend() => TrendingDown() and TrendingUp()[1]
bgcolor(Uptrend() ? green : Downtrend() ? red : na,transp=50)

// Buy and sell alert
Buy = Uptrend() and close > close[1]
Sell = Downtrend() and close < close[1]
plotshape(Buy, color=black, style=shape.arrowup, text="Buy", location=location.bottom)
plotshape(Sell, color=black, style=shape.arrowdown, text="Sell", location=location.top)



if (Buy)
    strategy.entry("My Long Entry Id", strategy.long)


if (Sell)
    strategy.entry("My Short Entry Id", strategy.short)