La stratégie est basée sur la conversion de la moyenne des lignes - la dispersion de l’indicateur ((CMO)). La valeur absolue du CMO représente la dispersion des prix. La stratégie est déterminée par la moyenne des trois cycles de la valeur absolue du CMO.
La stratégie utilise principalement la logique suivante:
L’indice CMO reflète la dynamique de la variation des prix. Sa taille absolue représente la dispersion des prix, et au-delà d’une certaine marge, il entre dans la zone de survente. La stratégie exploite cette caractéristique du CMO, en prenant des moyennes pluricycliques pour lisser la courbe, pour juger de la situation de survente.
Comment réagir:
Cette stratégie peut être étendue aux dimensions suivantes:
La stratégie utilise le CMO pour déterminer les surachats et les survente pour le trading inversé. Grâce à l’utilisation de moyennes pluricycliques, il est possible d’aplanir efficacement la courbe et d’éviter les signaux erronés. L’indice CMO est lui-même fondé sur une base théorique solide et fiable pour déterminer la dispersion des prix.
/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-14 07:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=2
////////////////////////////////////////////////7////////////
// Copyright by HPotter v1.0 21/02/2017
// This indicator plots the absolute value of CMO averaged over three
// different lengths. This indicator plots a classical-looking oscillator,
// which is really an averaged value based on three different periods.
//
// 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="CMOabsav", shorttitle="CMOabsav")
Length1 = input(5, minval=1)
Length2 = input(10, minval=1)
Length3 = input(20, minval=1)
TopBand = input(58, minval=1)
LowBand = input(5, minval=0)
reverse = input(false, title="Trade reverse")
hline(0, color=green, linestyle=hline.style_dashed)
hline(TopBand, color=purple, linestyle=hline.style_solid)
hline(LowBand, color=red, linestyle=hline.style_solid)
xMom = close - close[1]
xMomabs = abs(close - close[1])
nSum1 = sum(xMom, Length1)
nSumAbs1 = sum(xMomabs, Length1)
nSum2 = sum(xMom, Length2)
nSumAbs2 = sum(xMomabs, Length2)
nSum3 = sum(xMom, Length3)
nSumAbs3 = sum(xMomabs, Length3)
nRes = abs(100 * (nSum1 / nSumAbs1 + nSum2 / nSumAbs2 + nSum3 / nSumAbs3 ) / 3)
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="CMOabsav")