
Cette stratégie est une stratégie de négociation bi-équilibrée basée sur l’indicateur de dynamique des prix Chandre dynamique de l’oscillateur (CMO) et sa moyenne mobile pondérée (WMA). Attempts to identify trend reversals and continuation Using CMO crossover
La stratégie commence par calculer le CMO, un indicateur qui mesure la dynamique en ligne des variations de prix. Les valeurs positives représentent l’élan à la hausse et les valeurs négatives représentent l’élan à la baisse.
Les étapes clés pour calculer le CMO sont:
L’avantage de cette stratégie est de capturer les points de basculement de la tendance des prix à moyen terme. La taille de la valeur absolue du CMO reflète la force de la tendance de la course des prix, la WMA étant propice à une fausse rupture des fluctuations.
Le plus grand avantage de cette stratégie est qu’elle utilise les valeurs absolues de l’indicateur CMO pour juger de l’humeur des masses du marché, le filtrage WMA pour identifier les points de basculement des tendances à moyen terme. Comparé à une stratégie de moyenne mobile unique, la stratégie capte mieux les tendances à moyen terme qui ont plus d’espace d’élasticité.
Le CMO standardise les variations de prix et les mappe sur une plage de 100 à 100 pour permettre de juger de l’humeur des masses sur le marché; la taille absolue représente la force de la tendance actuelle. La WMA effectue des fluctuations supplémentaires sur le CMO pour éviter de trop de faux signaux.
Les principaux risques que cette stratégie pourrait présenter sont:
Les méthodes d’optimisation sont les suivantes:
L’optimisation de la stratégie est principalement axée sur l’optimisation des paramètres, le filtrage des signaux et le blocage des pertes:
Optimisation des paramètres du CMO et de la WMA: trouver la meilleure combinaison de paramètres en parcourant
Filtrez les signaux en combinant des indicateurs auxiliaires tels que le volume de transactions, les indicateurs de force et de faiblesse, afin d’éviter les fausses percées.
Ajout d’un mécanisme d’arrêt dynamique pour les sorties en cas de rechute des prix au-dessous de la CMO et de la WMA
On peut considérer le modèle de Breakout Failure comme un signal d’entrée, c’est-à-dire le cas où le CMO et le WMA franchissent d’abord le point critique, mais retombent rapidement
Il est possible d’identifier les grandes tendances en combinant des indicateurs de cycle plus long et d’éviter les transactions à contre-courant.
La stratégie utilise globalement les indicateurs CMO pour déterminer la force de la tendance et les points de basculement, et génère des signaux de négociation en cascade en combinaison avec le WMA. Elle appartient au système bi-linear typique. Par rapport à la stratégie de la seule MA, elle a l’avantage d’une plus grande élasticité de capture des tendances intermédiaires.
/*backtest
start: 2023-12-25 00:00:00
end: 2024-01-24 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
////////////////////////////////////////////////////////////
// Copyright by HPotter v1.0 18/10/2018
// This indicator plots Chandre Momentum Oscillator and its WMA on the
// same chart. This indicator plots the absolute value of CMO.
// The CMO is closely related to, yet unique from, other momentum oriented
// indicators such as Relative Strength Index, Stochastic, Rate-of-Change,
// etc. It is most closely related to Welles Wilder?s RSI, yet it differs
// in several ways:
// - It uses data for both up days and down days in the numerator, thereby
// directly measuring momentum;
// - The calculations are applied on unsmoothed data. Therefore, short-term
// extreme movements in price are not hidden. Once calculated, smoothing
// can be applied to the CMO, if desired;
// - The scale is bounded between +100 and -100, thereby allowing you to clearly
// see changes in net momentum using the 0 level. The bounded scale also allows
// you to conveniently compare values across different securities.
////////////////////////////////////////////////////////////
strategy(title="CMO & WMA Backtest ver 2.0", shorttitle="CMO & WMA")
Length = input(9, minval=1)
LengthWMA = input(9, minval=1)
BuyZone = input(60, step = 0.01)
SellZone = input(-60, step = 0.01)
reverse = input(false, title="Trade reverse")
hline(BuyZone, color=green, linestyle=line)
hline(SellZone, color=red, linestyle=line)
hline(0, color=gray, linestyle=line)
xMom = abs(close - close[1])
xSMA_mom = sma(xMom, Length)
xMomLength = close - close[Length]
nRes = 100 * (xMomLength / (xSMA_mom * Length))
xWMACMO = wma(nRes, LengthWMA)
pos = 0.0
pos := iff(xWMACMO > BuyZone, 1,
iff(xWMACMO < SellZone, -1, nz(pos[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)
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(nRes, color=blue, title="CMO")
plot(xWMACMO, color=red, title="WMA")