// Downloaded From https://www.WiseStockTrader.com
function funcCMO(periods) {
local cmo_1;
local cmo_2;
local cmo;

cmo_1=Sum( IIf( C > Ref( C, -1 ) , ( C - Ref( C ,-1 ) ) ,0 ) , periods ) ;
cmo_2=Sum( IIf( C < Ref( C ,-1 ) , ( Ref( C ,-1 ) - C ) ,0 ) , periods );
cmo=100 * (( cmo_1 -cmo_2) /( cmo_1+cmo_2));
return cmo;
}

cmo = funcCMO(20);
Plot(cmo,"cmo",IIf(cmo>Ref(cmo,-1),5,4),2|styleThick);
Plot(MA(cmo,9),"Trigger",colorYellow);
Plot(50,"",15);
Plot(-50,"",15);

Title="cmo"+WriteVal(cmo)+" Trigger"+WriteVal(MA(cmo,9));