DEMA et TEMA sont des indicateurs techniques intégrés à MetaTrader 5 (MT5). Abréviations pour la moyenne mobile double exponentielle et la moyenne mobile triple exponentielle, respectivement, traduites en moyenne mobile exponentielle double et moyenne mobile exponentielle triple.
Dans cet article, nous examinerons les différences entre EMA, DEMA et TEMA.
EMA Voici une description de base de l'EMA. Comparaison des moyennes mobiles de type de filtre IIR avec les pandas et scipy
La formule est
DEMA
DEMA est une abréviation de Double EMA, mais il ne s'agit pas seulement d'appliquer deux fois l'EMA. Même si l'EMA est appliqué deux fois, le lissage ne fera que procéder et les caractéristiques caractéristiques ne seront pas obtenues.
La formule EMA ci-dessus
Ensuite, la formule de DEMA est
Peut être écrit. J'utilise également le double EMA, mais j'utilise également l'EMA pour calculer. Le principe de dérivation de cette formule est décrit dans ici.
TEMA
La formule de TEMA est
Écrivez et calculez à l'aide du triple EMA, du double EMA et de l'EMA. Le principe de dérivation de cette équation est ici.
Voici un exemple d'application d'EMA, DEMA et TEMA à un graphique FX.
C'est ce qui est affiché sur le graphique MT5, le rouge est EMA, le bleu est DMA, le vert est TEMA. Toutes les périodes sont également $ period = 14 $.
En regardant cela, nous pouvons voir que DEMA, TEMA et le suivi des prix sont plus élevés que l'EMA. En d'autres termes, le délai qui tend à être une moyenne mobile est réduit. Cependant, je sens que le bruit augmente.
La différence dans l'exemple de traitement ci-dessus peut être expliquée par la différence des caractéristiques de fréquence.
Comparaison des moyennes mobiles de type de filtre IIR avec les pandas et scipy
Selon la fonction système EMA, il peut être écrit comme suit:
En utilisant cela, les fonctions système de DEMA et TEMA sont les suivantes.
En substituant $ H_ {EMA} (z) $ en ceci et en le divisant, le résultat est le suivant.
Cependant, $ b_0 = \ alpha (2- \ alpha) $, $ b_1 = 2 \ alpha (\ alpha-1) $, $ a_0 = 1 $, $ a_1 = 2 (\ alpha-1) $, $ a_2 = (1- \ alpha) ^ 2 $
Cependant, $ b_0 = 3 \ alpha (1- \ alpha) + \ alpha ^ 3 $, $ b_1 = 3 \ alpha (\ alpha-2) (1- \ alpha) $, $ b_2 = 3 \ alpha (1- \ alpha) ^ 2 $, $ a_0 = 1 $, $ a_1 = 3 (\ alpha-1) $, $ a_2 = 3 (1- \ alpha) ^ 2 $, $ a_3 = (\ alpha-1) ^ 3 $
Avec cette transformation, vous pouvez utiliser les fonctions freqz
et group_delay
qui calculent les caractéristiques de fréquence avec les coefficients des polynomies moléculaires et dénominateurs dans le scipy de Python comme arguments.
Trouvons la caractéristique d'amplitude de chaque EMA avec le code suivant.
%matplotlib inline
import numpy as np
import scipy.signal as sp
import matplotlib.pyplot as plt
period = 14 #période
alpha = 2/(period+1)
#EMA
a = [1, alpha-1]
b = alpha
w, h = sp.freqz(b, a)
#DEMA
a_d = [1, 2*(alpha-1), (1-alpha)**2]
b_d = [alpha*(2-alpha), 2*alpha*(alpha-1)]
w, h_d = sp.freqz(b_d, a_d)
#TEMA
a_t = [1, 3*(alpha-1), 3*(1-alpha)**2, (alpha-1)**3]
b_t = [3*alpha*(1-alpha)+alpha**3, 3*alpha*(alpha-2)*(1-alpha), 3*alpha*(1-alpha)**2]
w, h_t = sp.freqz(b_t, a_t)
plt.xlabel('Frequency(rad/s)')
plt.ylabel('Amplitude')
plt.plot(w, abs(h), 'r', label='EMA')
plt.plot(w, abs(h_d), 'b', label='DEMA')
plt.plot(w, abs(h_t), 'g', label='TEMA')
plt.legend(loc="best")
Fondamentalement, la moyenne mobile montre les caractéristiques d'un filtre passe-bas qui laisse passer les basses fréquences, mais comparé à l'EMA, DEMA et TEMA ont une bande légèrement plus large à traverser. Pour cette raison, certains signaux haute fréquence restent. Par conséquent, DEMA et TEMA avaient un peu de bruit par rapport à l'EMA.
Ensuite, parmi les caractéristiques de fréquence, trouvons la caractéristique de retard de groupe qui différencie la caractéristique de phase.
#Caractéristiques du retard de groupe
w, gd = sp.group_delay((b, a))
w, gd_d = sp.group_delay((b_d, a_d))
w, gd_t = sp.group_delay((b_t, a_t))
plt.xlabel('Frequency(rad/s)')
plt.ylabel('Group delay')
plt.plot(w, gd, 'r', label='EMA')
plt.plot(w, gd_d, 'b', label='DEMA')
plt.plot(w, gd_t, 'g', label='TEMA')
plt.legend(loc="best")
La caractéristique de retard de groupe représente le retard du signal à cette fréquence. En regardant cela, EMA a un retard important aux basses fréquences, tandis que DEMA et TEMA ont un petit retard. Cette caractéristique de retard de groupe peut également expliquer la haute capacité de suivi des changements dans l'entrée.
Recommended Posts