La stratégie de l'indicateur de dynamique absolue est une version améliorée basée sur l'indicateur de dynamique CMO développé par Tushar Chande.
L'indicateur de base de cette stratégie est l'indicateur amélioré de l'OMC, appelé AbsCMO.
AbsCMO = abs(100 * (latest closing price - closing price Length periods ago) / (simple moving average of absolute price fluctuations over Length period * Length))
où Length représente la durée de la période de moyenne. La plage des valeurs AbsCMO est de 0 à 100. Cet indicateur combine la directionnalité et la force de la monumentalité de l'élan pour déterminer clairement les tendances du marché à moyen terme et les zones de surachat/survente.
Lorsque l'AbsCMO franchit le niveau supérieur spécifié (défaut 70), il indique que le marché est entré en territoire de surachat et passe à la vente courte; lorsque l'AbsCMO franchit le niveau inférieur spécifié (défaut 20), il indique que le marché est entré en territoire de survente et passe à la vente longue.
Comparé à d'autres indicateurs de dynamique, l'indicateur AbsCMO présente les avantages suivants:
Les principaux risques de cette stratégie sont les suivants:
Ces risques pourraient être réduits en raccourcissant les périodes de détention, en optimisant les paramètres ou en incorporant d'autres indicateurs.
Cette stratégie peut être optimisée par les aspects suivants:
En résumé, la stratégie de l'indicateur de momentum absolu est une stratégie de trading utile à moyen terme. Elle reflète les caractéristiques de momentum absolu du prix à moyen terme et a un fort pouvoir prédictif des tendances à moyen terme. Cependant, cette stratégie est moins sensible aux fluctuations à court terme et comporte certains risques.
/*backtest start: 2023-02-12 00:00:00 end: 2024-02-18 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 17/02/2017 // This indicator plots the absolute value of CMO. CMO was developed by Tushar // Chande. A scientist, an inventor, and a respected trading system developer, // Mr. Chande developed the CMO to capture what he calls "pure momentum". For // more definitive information on the CMO and other indicators we recommend the // book The New Technical Trader by Tushar Chande and Stanley Kroll. // 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. // // You can change long to short in the Input Settings // Please, use it only for learning or paper trading. Do not for real trading. //////////////////////////////////////////////////////////// strategy(title="CMOabs", shorttitle="CMOabs") Length = input(9, minval=1) TopBand = input(70, minval=1) LowBand = input(20, minval=0) reverse = input(false, title="Trade reverse") // hline(0, color=gray, linestyle=dashed) // hline(TopBand, color=red, linestyle=line) // hline(LowBand, color=green, linestyle=line) xMom = abs(close - close[1]) xSMA_mom = sma(xMom, Length) xMomLength = close - close[Length] nRes = abs(100 * (xMomLength / (xSMA_mom * Length))) pos = iff(nRes > TopBand, -1, iff(nRes < LowBand, 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")