A Estratégia do Indicador de Momento Absoluto é uma versão aprimorada baseada no indicador de momento CMO desenvolvido por Tushar Chande. Esta estratégia julga se o mercado está atualmente sobrecomprado ou sobrevendido, calculando o valor absoluto do momento do preço para capturar flutuações de preços de médio prazo no mercado.
O indicador central desta estratégia é o indicador melhorado da OCM, denominado AbsCMO.
AbsCMO = abs(100 * (latest closing price - closing price Length periods ago) / (simple moving average of absolute price fluctuations over Length period * Length))
O intervalo dos valores AbsCMO é de 0 a 100. Este indicador combina direcionalidade e força da monumentalidade do ímpeto para determinar claramente as tendências do mercado a médio prazo e as áreas de sobrecompra/supervenda.
Quando o AbsCMO ultrapassa o nível superior especificado (padrão 70), indica que o mercado entrou em território de sobrecompra e vai para curto; quando o AbsCMO ultrapassa o nível inferior especificado (padrão 20), indica que o mercado entrou em território de sobrecompra e vai para longo.
Em comparação com outros indicadores de dinâmica, o indicador AbsCMO tem as seguintes vantagens:
Os principais riscos desta estratégia são:
Estes riscos poderiam ser reduzidos através da redução dos períodos de detenção, da otimização dos parâmetros ou da incorporação de outros indicadores.
Esta estratégia pode ser otimizada a partir dos seguintes aspectos:
Em resumo, a Estratégia de Indicador de Momento Absoluto é uma estratégia de negociação útil de médio prazo. Reflete as características de momento absoluto do preço no médio prazo e tem forte poder preditivo de tendências de médio prazo. No entanto, esta estratégia é menos sensível a flutuações de curto prazo e carrega certos riscos.
/*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")