
La stratégie de croisement des moyennes mobiles est une stratégie d’analyse technique très classique. Elle juge les tendances du marché en calculant les moyennes mobiles de différentes périodes et en observant leur croisement, dans le but de réaliser des transactions à bas prix et à prix élevé.
La stratégie consiste principalement à calculer la moyenne mobile simple à 10 jours (SMA) et la moyenne mobile triangulaire à 10 jours (TRIMA). Lorsqu’une SMA traverse la TRIMA, un signal d’achat est généré, indiquant que le marché passe de la baisse à la hausse. Lorsqu’une SMA traverse la TRIMA, un signal de vente est généré, indiquant que le marché passe de la hausse à la baisse et peut être vendu.
Plus précisément, la stratégie commence par saisir le prix de clôture et définit la longueur de cycle pour calculer les SMA et les TRIMA. La formule de calcul des SMA est:
SMA = (P1 + P2 + … + Pn) / n
où Pn est le prix de clôture des n derniers jours.
La formule de calcul de TRIMA est la suivante:
TRIMA = (SMA1 + SMA2 + SMA3) / 3
Les SMA1 et les SMA2 et les SMA3 sont les SMA de la clôture des n derniers jours.
Ainsi, TRIMA est l’équivalent d’un SMA de plus, avec un meilleur effet de lissage. Lorsque le SMA de courte période est traversé par le TRIMA de longue période, indiquant une rupture sur la moyenne de courte période, il est possible d’acheter.
Le plus grand avantage de cette stratégie est l’utilisation de la capacité de détection de la tendance des moyennes mobiles, qui permet d’identifier efficacement les tendances du marché, d’éliminer le bruit du marché à court terme et de réaliser des transactions à bas prix. Par rapport à une seule moyenne mobile, l’utilisation combinée de SMA et de TRIMA peut améliorer la fiabilité de la rupture et réduire la probabilité de fausse rupture.
Le principal risque de cette stratégie est que la moyenne mobile elle-même soit en retard par rapport aux variations de prix et pourrait manquer la phase initiale de la tendance, ce qui entraînerait une entrée trop tardive. De plus, la stratégie produirait plus de fausses ruptures lorsque le marché n’est pas clairement tendance. Enfin, la stratégie de moyenne mobile est plus dépendante de l’optimisation des paramètres, et si les paramètres sont mal configurés, cela peut également affecter considérablement l’efficacité de la stratégie.
Cette stratégie peut être optimisée dans les domaines suivants:
Optimiser les paramètres cycliques des moyennes mobiles pour trouver les combinaisons de cycles optimales avec une approche plus scientifique.
Augmenter le filtrage de la circulation pour éviter les signaux erronés en cas de mauvaise circulation.
Les indicateurs de tendance tels que le MACD sont utilisés pour déterminer les tendances locales et éviter les transactions répétitives lors de la liquidation.
Les moyennes mobiles adaptatives sont utilisées pour ajuster dynamiquement les paramètres du cycle lorsque le marché entre dans une phase particulière.
La validation s’effectue selon plusieurs périodes, par exemple, l’admission n’est considérée que si la ligne du jour et la ligne des 4 heures sont franchies.
La stratégie de croisement des moyennes mobiles est une stratégie d’analyse technique simple et pratique, très appropriée pour les transactions de détention de positions sur les lignes moyennes et longues, qui permet d’identifier efficacement la direction de la tendance. Cependant, la stratégie présente également un certain retard, nécessitant une optimisation des filtres en combinaison avec des indicateurs de jugement de la tendance, afin de réduire la probabilité de faux signaux. Si les paramètres sont optimisés, il peut à la fois protéger les fonds et saisir de grandes opportunités de tendance.
/*backtest
start: 2022-10-31 00:00:00
end: 2023-11-06 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//TMA strategy I came across, uses sma to display entry/exit points for both margin and non margin trading. The buy/sell signals as well as syntax are hidden behind comments if you scroll down.
//Change the commented fields for margin or spot trading!
//@version=3
strategy("MP Rollercoaster Strat", overlay=true)
bgcolor ( color=black, transp=0, title='Blackground', editable=true)
x = input(close, "Red")
n = input(10, "periods")
trima = sma(sma(x,n), n)
kisa=input(5, "Green")
sma = sma(close, kisa)
bull = (sma>trima)
fill(plot(sma, color = green), plot(trima, color=red), bull ? green : red)
//Conditions
buy_signal = crossover(sma,trima)
sell_signal = crossunder(sma,trima)
plotshape(sell_signal, style=shape.triangleup, color = red, text="Short")
plotshape(buy_signal, style=shape.triangledown, color = green, text="Long")
//plotshape(sell_signal, style=shape.triangleup, color = red, text="Sell")
//plotshape(buy_signal, style=shape.triangledown, color = green, text="Buy")
alertcondition(sell_signal, title = 'Short', message = 'e= s= c=position b=long t=market l= | delay=30 | e= s= b=short l= t=market q=0.01')
alertcondition(buy_signal, title = 'Long', message = 'e= s= c=position b=short t=market l= | delay=30 | e= s= b=long l= t=market q=0.01')
//alertcondition(sell_signal, title = 'Sell', message = 'e= s= c=order b=buy | delay=3 | e= b=sell q=99% p=0.70% u=currency')
//alertcondition(buy_signal, title = 'Buy', message = 'e= s= c=order b=sell | delay=30 | e= b=buy q=80 p=0.1% u=currency')
testStartYear = input(2018, "From Year")
testStartMonth = input(4, "From Month")
testStartDay = input(1, "From Day")
testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,0,0)
testStopYear = input(2019, "To Year")
testStopMonth = input(1, "To Month")
testStopDay = input(1, "To Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)
testPeriod() => true
if testPeriod()
if buy_signal
strategy.entry("Long", true)
if sell_signal
strategy.close("Long")