Stratégie de négociation à double moyenne mobile

Auteur:ChaoZhang est là., Date: 15 janvier 2024 à 12h35
Les étiquettes:

img

Résumé

La stratégie de trading à inversion de moyenne mobile double combine la stratégie de trading à inversion de Bollinger Bands et la stratégie de trading à moyenne mobile exponentielle double pour concevoir une stratégie de trading de jugement de signal complète.

Principes de stratégie

La stratégie se compose de deux parties:

  1. Stratégie de négociation de renversement des bandes de Bollinger

    Utilisez deux lignes de l'indicateur Bollinger Bands - la ligne %K et la ligne %D. Allez long lorsque le prix de clôture est inférieur à celui de la clôture du jour précédent pendant deux jours consécutifs et que la ligne %K est au-dessus de la ligne %D; allez court lorsque le prix de clôture est supérieur à celui de la clôture du jour précédent pendant deux jours consécutifs et que la ligne %K est en dessous de la ligne %D.

  2. Stratégie de moyenne mobile exponentielle double

    Calculer les moyennes mobiles exponentielles doubles de 20 jours et de 20 jours*2. Un signal de trading est généré lorsque le prix dépasse ou dépasse les moyennes mobiles doubles.

La règle du jugement combiné des signaux: un signal de trading réel n'est généré que lorsque les signaux de trading des deux stratégies sont d'accord.

Analyse des avantages

Le plus grand avantage de cette stratégie combinée est sa fiabilité élevée et peu de faux signaux. Parce qu'il nécessite les signaux de deux types de stratégies différentes pour déclencher en même temps, ce qui filtre certains des faux signaux qui peuvent apparaître dans une seule stratégie.

En outre, en combinant des stratégies d'inversion et de tendance, il peut capturer à la fois les inversions à court terme et les tendances à moyen terme des titres sous-jacents.

Analyse des risques

Le principal risque de cette stratégie est que lorsque le marché est en oscillation à long terme, les deux stratégies peuvent ne pas produire de signaux cohérents, ce qui entraîne des conditions de marché invalides.

En outre, en tant qu'indicateur à moyen et à long terme, la moyenne mobile double peut échouer lorsque des renversements à court terme se produisent rapidement.

Directions d'optimisation

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

  1. Ajoutez plus de paramètres tels que le prix du stop loss, la fourchette de prix du stop loss, etc. pour rendre la stratégie plus contrôlable.

  2. Ajouter plus d'indicateurs pour former plusieurs critères de filtrage et éliminer les transactions plus bruyantes.

  3. Optimiser les paramètres de l'indicateur tels que la période de Bollinger, la période de moyenne mobile, etc., pour trouver la meilleure combinaison de paramètres.

  4. Testez l'efficacité de cette stratégie respectivement sur différents produits (actions, forex, crypto, etc.) et sélectionnez ceux qui conviennent le mieux.

Conclusion

La stratégie de renversement de moyenne mobile double génère des signaux de trading combinés relativement fiables en combinant des stratégies de renversement et de tendance. Elle convient aux traders intéressés par les renversements à court terme et les tendances à moyen terme des prix des titres.


/*backtest
start: 2023-01-08 00:00:00
end: 2024-01-14 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 12/04/2019
// This is combo strategies for get 
// a cumulative signal. Result signal will return 1 if two strategies 
// is long, -1 if all strategies is short and 0 if signals of strategies is not equal.
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Secon strategy
// This indicator plots 2/20 exponential moving average. For the Mov 
// Avg X 2/20 Indicator, the EMA bar will be painted when the Alert criteria is met.
// Please, use it only for learning or paper trading. Do not for real trading.
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos

EMA2_20(MA_Length, MA_xPrice) =>
    xXA = ema(MA_xPrice, MA_Length)
    nHH = max(high, high[1])
    nLL = min(low, low[1])
    nXS = iff((nLL > xXA)or(nHH < xXA), nLL, nHH)
    pos = 0.0
    pos := iff(nXS > close[1] , -1, iff(nXS < close[1] , 1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal and 2/20 EMA", shorttitle="Combo Backtest", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
MA_Length = input(20, minval=1)
reverse = input(false, title="Trade reverse")
MA_xPrice = close
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posEMA2_20 = EMA2_20(MA_Length, MA_xPrice)
pos = iff(posReversal123 == 1 and posEMA2_20 == 1 , 1,
	   iff(posReversal123 == -1 and posEMA2_20 == -1, -1, 0)) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 

Plus de