// Downloaded From https://www.WiseStockTrader.com _SECTION_BEGIN("@Ocean NDX"); NDX_period = Param("NDX Period",75,40,375); NDX_SmLen = round(NDX_Period*20/40); SumWght = 0; SumDnom = 0; for(i = 1; i < NDX_period+1; i++) { DifAry = ln(Ref(Close,-i+1)) - ln(Ref(Close,-i)); if(i == 1) DnomAry = abs(DifAry); else DnomAry =DNomAry+ abs(DifAry); FracAry =IIf(DNomAry==0, 0,(ln(Close) - ln(Ref(Close,-i))) / DnomAry); TimeAry = 1 / (i^( 0.5)); WghtAry = FracAry * TimeAry; SumWght =SumWght+ WghtAry; SumDnom =SumDnom+ TimeAry; } RawNDX = 100 * SumWght / SumDnom; TemaNDX= TEMA(RawNDX,NDX_SmLen); Plot(TemaNDX,"NDX",colorRed,styleLine); _SECTION_END(); _SECTION_BEGIN("@Ocean NXC"); NDX_period = Param("NDX Period",75,40,375); NDX_SmLen = round(NDX_Period*20/40); NST_period = round(NDX_Period*20/40); NST_SmLen = round(NDX_Period*10/40); SumWght = 0; SumDnom = 0; for(i = 1; i < NDX_period+1; i++) { DifAry = ln(Ref(Close,-i+1)) - ln(Ref(Close,-i)); if(i == 1) DnomAry = abs(DifAry); else DnomAry =DNomAry+ abs(DifAry); FracAry =IIf(DNomAry==0, 0,(ln(Close) - ln(Ref(Close,-i))) / DnomAry); TimeAry = 1 / (i^( 0.5)); WghtAry = FracAry * TimeAry; SumWght =SumWght+ WghtAry; SumDnom =SumDnom+ TimeAry; } RawNDX = 100 * SumWght / SumDnom; TemaNDX= TEMA(RawNDX,NDX_SmLen); SumWgt = 0; SumDnm = 0; for(i = 0; i 0,1,IIf(NAVG<0,-1,0)); NXC =round(Nsign * sqrt(abs(NAvg))); Plot(NXC,"NXC",colorBlue,styleLine); _SECTION_END(); Buy=Cross(NXC,TemaNDX); Sell=Cross(TemaNDX,NXC); Buy=ExRem(Buy,Sell); Sell=ExRem(Sell,Buy); PlotShapes(Buy*shapeUpTriangle,colorPaleGreen,0); PlotShapes(Buy*shapeSmallUpTriangle,colorGreen,0); PlotShapes(Sell*shapeDownTriangle,colorOrange,0); PlotShapes(Sell*shapeSmallDownTriangle,colorBrown,0);