La Estrategia del Indicador de Momentum Absoluto es una versión mejorada basada en el indicador de momento CMO desarrollado por Tushar Chande.
El indicador central de esta estrategia es el mejorado indicador de OCM, llamado AbsCMO.
AbsCMO = abs(100 * (latest closing price - closing price Length periods ago) / (simple moving average of absolute price fluctuations over Length period * Length))
Donde Length representa la duración del período de medición. El rango de valores de AbsCMO es de 0 a 100. Este indicador combina la direccionalidad y la fuerza de la monumentalidad del impulso para determinar claramente las tendencias del mercado a mediano plazo y las áreas de sobrecompra / sobreventa.
Cuando AbsCMO atraviesa el rieles superior especificado (default 70), indica que el mercado ha entrado en territorio de sobrecompra y se queda corto; cuando AbsCMO atraviesa el rieles inferior especificado (default 20), indica que el mercado ha entrado en territorio de sobreventa y se queda largo.
En comparación con otros indicadores de impulso, el indicador AbsCMO tiene las siguientes ventajas:
Los principales riesgos de esta estrategia son:
Estos riesgos podrían reducirse acortando los períodos de retención, optimizando los parámetros o incorporando otros indicadores.
Esta estrategia se puede optimizar a partir de los siguientes aspectos:
En resumen, la Estrategia del Indicador de Momento Absoluto es una estrategia de negociación útil a mediano plazo. Refleja las características de impulso absoluto del precio a mediano plazo y tiene un fuerte poder predictivo de las tendencias a mediano plazo. Sin embargo, esta estrategia es menos sensible a las fluctuaciones a corto plazo y conlleva ciertos riesgos.
/*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")