Skip to main content

Ocean NDX NXC for Amibroker (AFL)

Divyesh about 13 years ago Amibroker (AFL)

  • Rating:
    2 / 5 (Votes 5)
  • Tags:
    oscillator, trading system, amibroker

this AFL is just Modified AFL of Ocen Theory Posted Here with differnt AFL….!
i have tried of cross over & found very good result….!
thnx to wildeazoscar………!
for NSE use Defolt 75 Period
for MCX use 162 Periods according to Ocean Theory…..!
as starts @ 10A.M. & ends @ 11:30 P.M. so 162 bar during trading Sesson….!
so have to use 5 min Time Frame………

Screenshots

Indicator / Formula

Copy & Paste Friendly
_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 <NST_period+1; i++)
      {
      if(i < 2) 
		{
		HghAry = High;
		LowAry = Low; 
		} 
		HghAry = HHV(High, i);
		LowAry=LLV(Low,i);
	
      RngAry = HghAry - LowAry;
     
	   FrcAry =IIf(RngAry==0, 0,(Close- LowAry) / RngAry);
      TmeAry = 1 / ((i+1)^(0.5));
      WgtAry = TmeAry * FrcAry;
      SumWgt =SumWgt+ WgtAry;
      SumDnm =SumDnm+ TmeAry;
      }
    RawNST = Nz((200 * SumWgt / SumDnm) - 100);

    TemaNST= TEMA(RawNST,NST_SmLen); 

 
      NAvg = (abs(TemaNDX) * TemaNST + abs(TemaNST) * TemaNDX) / 2;
	   Nsign= IIf(NAvg>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);

2 comments

2. Lajoo
over 10 years ago

I AM INTERESTED IN THE CHART IN THE SCREEN SHOT. WHERE IS IT AVAILABLE FOR DOWNLOAD?

Leave Comment

Please login here to leave a comment.