Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- _SECTION_BEGIN("Background");
- tchoice=Param("Title Selection ",2,1,2,1);
- Plot(C, "", IIf(O>=C, colorWhite, colorBrightGreen), ParamStyle("Price Style",styleCandle,maskPrice));
- //////////////////////////////////////////////////////////////////
- _SECTION_BEGIN("Background text");
- SetChartBkColor(colorBlack);
- strWeekday = StrMid("---sunday---Monday--TuesdayWednesday-Thursday--Friday--Saturday", SelectedValue(DayOfWeek())*9,9);
- GraphXSpace=Param("GraphXSpace",0,-55,200,1);
- C13=Param("fonts",20,10,30,1 );
- C14=Param("left-right",2.1,1.0,5.0,0.1 );
- C15=Param("up-down",12,1,20,1 );
- Miny = Status("axisminy");
- Maxy = Status("axismaxy");
- lvb = Status("lastvisiblebar");
- fvb = Status("firstvisiblebar");
- pxwidth = Status("pxwidth");
- pxheight = Status("pxheight");
- GfxSetBkMode(transparent=1);
- GfxSetOverlayMode(1);
- GfxSelectFont("Candara", Status("pxheight")/C13 );
- GfxSetTextAlign( 6 );
- GfxSetTextColor( ColorRGB (217,217,213));
- GfxTextOut( Name(), Status("pxwidth")/C14, Status("pxheight")/C15 );
- GfxSelectFont("Tahoma", Status("pxheight")/C13*0.5 );
- GfxSetTextColor( ColorRGB (103,103,103));
- GfxTextOut( "By", Status("pxwidth")/C14, Status("pxheight")/C15*2.5 );
- GfxSelectFont("Candara", Status("pxheight")/C13*0.5 );
- GfxSetTextColor( ColorRGB (103,103,103));
- GfxTextOut( "Saisri2320", Status("pxwidth")/C14, Status("pxheight")/C15*4 );
- GfxSelectFont("MS Sans Serif", 10, 500, False, False, 0);
- _SECTION_END();
- _SECTION_BEGIN("ZZZ Zig type");
- // Amibroker AFL code by Edward Pottasch, Oct 2012
- // alternative ZIG type function based on the ATR and VSTOP functions
- // added multiple timeframes. Maximum timeframe set to 1440 minutes
- x=xx=BarIndex();
- tc="ZIG";//ParamList("Display Mode","Zig|VSTOP|Zig&VSTOP",0);
- disp=1;//ParamToggle("Display labels","Off|On",1);
- tf=Param("Time Frame (min)",5,1,1440,1);
- tfrm=in1Minute*tf;
- perBull=20;//Param("perBull",20,1,150,1);
- perBear=20;//Param("perBear",20,1,150,1);
- multBull=2;//Param("multBull",2,0.05,4,0.05);
- multBear=2;//Param("multBear",2,0.05,4,0.05);
- TimeFrameSet(tfrm);
- function vstop_func(trBull,trBear)
- {
- trailArray[0]=C[0];
- for(i=1;i<BarCount;i++)
- {
- prev=trailArray[i-1];
- if(C[i]>prev AND C[i-1]>prev)
- {
- trailArray[i]=Max(prev,C[i]-trBull[i]);
- }
- else if(C[i]<prev AND C[i-1]< prev)
- {
- trailArray[i]=Min(prev,C[i]+trBear[i]);
- }
- else if (C[i]>prev)
- {
- trailArray[i]=C[i]-trBull[i];
- }
- else
- {
- trailArray[i]=C[i]+trBear[i];
- }
- }
- return trailArray;
- }
- trBull=multBull*ATR(perBull);
- trBear=multBear*ATR(perBear);
- trailArray = vstop_func(trBull,trBear);
- ts=IIf(trailArray>C,trailArray,Null);
- tl=IIf(trailArray<C,trailArray,Null);
- TimeFrameRestore();
- ts=TimeFrameExpand(ts,tfrm,expandLast);
- tl=TimeFrameExpand(tl,tfrm,expandLast);
- //GraphXSpace=5;
- //SetChartOptions(0, chartShowDates);
- //SetBarFillColor(IIf(C>O,ParamColor("Candle Up Color", colorBrightGreen),IIf(C<=O,ParamColor("Candle Down Color", colorRed),colorLightGrey)));
- //Plot(C,"Price",IIf(C>O,ParamColor("Shadow Up Color", colorBrightGreen),IIf(C<=O,ParamColor("Shadow Color", colorRed),colorLightGrey)),64,0,0,0,0);
- lll=LLV(L,BarsSince(!IsEmpty(tl)));lll=IIf(ts,lll,Null);llls=lll;
- ttt1=IIf((!IsEmpty(ts) AND IsEmpty(Ref(ts,1))) OR BarIndex()==BarCount-1,1,Null);
- ttt=ValueWhen(ttt1,lll,0);ttt=IIf(ts,ttt,Null);ttt=IIf(ttt1,Ref(ttt,-1),ttt);
- tr=L==ttt;lll=Sum(tr,BarsSince(!IsEmpty(tl)));
- qqq=ValueWhen(ttt1,lll,0);qqq=IIf(ts,qqq,Null);qqq=IIf(ttt1,Ref(qqq,-1),qqq);tr=tr AND lll==qqq;
- tr=IIf((!IsEmpty(ts) AND IsEmpty(Ref(ts,1)) AND IsEmpty(Ref(ts,-1))),1,tr);//exception
- hhh=HHV(H,BarsSince(!IsEmpty(ts)));hhh=IIf(tl,hhh,Null);hhhs=hhh;
- ttt1=IIf((!IsEmpty(tl) AND IsEmpty(Ref(tl,1))) OR BarIndex()==BarCount-1,1,Null);
- ttt=ValueWhen(ttt1,hhh,0);ttt=IIf(tl,ttt,Null);ttt=IIf(ttt1,Ref(ttt,-1),ttt);
- pk=H==ttt;hhh=Sum(pk,BarsSince(!IsEmpty(ts)));
- sss=ValueWhen(ttt1,hhh,0);sss=IIf(tl,sss,Null);sss=IIf(ttt1,Ref(sss,-1),sss);pk=pk AND hhh==sss;
- pk=IIf((!IsEmpty(tl) AND IsEmpty(Ref(tl,1)) AND IsEmpty(Ref(tl,-1))),1,pk);//exception
- px0=ValueWhen(pk,x,0); tx0=ValueWhen(tr,x,0);
- px1=ValueWhen(pk,x,1); tx1=ValueWhen(tr,x,1);
- px2=ValueWhen(pk,x,2); tx2=ValueWhen(tr,x,2);
- ph0=ValueWhen(pk,H,0); tl0=ValueWhen(tr,L,0);
- ph1=ValueWhen(pk,H,1); tl1=ValueWhen(tr,L,1);
- ph2=ValueWhen(pk,H,2); tl2=ValueWhen(tr,L,2);
- switch(tc)
- {
- case("ZIG"):
- aa1=IIf(px0>tx1,(ph0-tl1)/(px0-tx1),0);aa1=IIf(pk,Ref(aa1,-1),aa1);ls1=aa1*(xx-tx1)+tl1;
- bb1=IIf(px0>tx1 AND px1<tx1,1,0);bb1=bb1+Ref(bb1,-1);bb1=IIf(bb1,1,0);ls1=IIf(bb1,ls1,Null);
- aa1=IIf(tx0>px1,(tl0-ph1)/(tx0-px1),0);aa1=IIf(tr,Ref(aa1,-1),aa1);ls1=aa1*(xx-px1)+ph1;
- bb1=IIf(tx0>px1 AND tx1<px1,1,0);bb1=bb1+Ref(bb1,-1);bb1=IIf(bb1,1,0);ls1=IIf(bb1,ls1,Null);
- break;
- case("VSTOP"):
- Plot(ts,"\ntrailShort",colorRed,styleLine,0,0,0,1,1);
- Plot(llls,"",colorRed,styleDashed,0,0,0,1,1);
- Plot(tl,"\ntrailLong",colorGreen,styleLine,0,0,0,1,1);
- Plot(hhhs,"",colorGreen,styleDashed,0,0,0,1,1);
- break;
- case("ZIG&VSTOP"):
- aa1=IIf(px0>tx1,(ph0-tl1)/(px0-tx1),0);aa1=IIf(pk,Ref(aa1,-1),aa1);ls1=aa1*(xx-tx1)+tl1;
- bb1=IIf(px0>tx1 AND px1<tx1,1,0);bb1=bb1+Ref(bb1,-1);bb1=IIf(bb1,1,0);ls1=IIf(bb1,ls1,Null);
- Plot(ls1,"",colorBlue,styleLine,0,0,0,2,3);
- aa1=IIf(tx0>px1,(tl0-ph1)/(tx0-px1),0);aa1=IIf(tr,Ref(aa1,-1),aa1);ls1=aa1*(xx-px1)+ph1;
- bb1=IIf(tx0>px1 AND tx1<px1,1,0);bb1=bb1+Ref(bb1,-1);bb1=IIf(bb1,1,0);ls1=IIf(bb1,ls1,Null);
- Plot(ls1,"",colorOrange,styleLine,0,0,0,2,3);
- Plot(ts,"\ntrailShort",colorRed,styleLine,0,0,0,1,1);
- Plot(llls,"",colorRed,styleDashed,0,0,0,1,1);
- Plot(tl,"\ntrailLong",colorGreen,styleLine,0,0,0,1,1);
- Plot(hhhs,"",colorGreen,styleDashed,0,0,0,1,1);
- break;
- }
- PlotShapes(shapeSmallCircle*tr,colorGreen,0,L,-10);
- PlotShapes(shapeSmallCircle*pk,colorRed,0,H,10);
- qq=Interval()/60;
- if(qq < 60){tf=" min";tt=qq;}
- else if(qq >= 60 AND qq < 1440){tf=" hrs";tt=qq/60;}
- else if(qq >= 1440){tf=" days";tt=(qq/60)/24;}
- qq=Max(tfrm/60,Interval()/60);
- if(qq < 60){tfa=" min";tta=qq;}
- else if(qq >= 60 AND qq < 1440){tfa=" hrs";tta=qq/60;}
- else if(qq >= 1440){tfa=" days";tta=(qq/60)/24;}
- //Title = Name() +
- //"\nChart TF: " + tt + tf +
- //"\nZig TF: " + tta + tfa;
- dxhm=14;dxlm=10;dxh=0;dxl=0;dyhm=5;dylm=3;dyh=18;dyl=29;hm=30;lm=30;
- function GetVisibleBarCount()
- {
- lvb=Status("lastvisiblebar");
- fvb=Status("firstvisiblebar");
- return Min(lvb-fvb,BarCount-fvb);
- }
- function GfxConvertPixelsToBarX(Pixels)
- {
- lvb=Status("lastvisiblebar");
- fvb=Status("firstvisiblebar");
- pxchartleft=Status("pxchartleft");
- pxchartwidth=Status("pxchartwidth");
- fac=pxchartwidth/Pixels;
- bar=(lvb-fvb)/fac;
- return bar;
- }
- function GfxConvertPixelToValueY(Pixels)
- {
- local Miny,Maxy,pxchartbottom,pxchartheight;
- Miny=Status("axisminy");
- Maxy=Status("axismaxy");
- pxchartbottom=Status("pxchartbottom");
- pxchartheight=Status("pxchartheight");
- fac=pxchartheight/Pixels;
- Value=(Maxy-Miny)/fac;
- return Value;
- }
- if(disp)
- {
- ll=tr AND tl1<tl2;
- hl=tr AND tl1>tl2;
- hh=pk AND ph1>ph2;
- lh=pk AND ph1<ph2;
- dt=pk AND ph1==ph2;
- db=tr AND tl1==tl2;
- miny=Status("axisminy");
- maxy=Status("axismaxy");
- AllVisibleBars=GetVisibleBarCount();
- fvb=Status("firstvisiblebar");
- LowMargin=Miny+GfxConvertPixelToValueY(lm);
- HighMargin=Maxy-GfxConvertPixelToValueY(hm);
- dyllm=GfxConvertPixelToValueY(dylm);
- dyhhm=GfxConvertPixelToValueY(dyhm);
- dyll=GfxConvertPixelToValueY(dyl);
- dyhh=GfxConvertPixelToValueY(dyh);
- dxllm=GfxConvertPixelsToBarX(dxlm);
- dxhhm=GfxConvertPixelsToBarX(dxhm);
- dxll=GfxConvertPixelsToBarX(dxl);
- dxhh=GfxConvertPixelsToBarX(dxh);
- for(i=0;i<AllVisibleBars;i++)
- {
- if(ll[i+fvb] AND L[i+fvb]>LowMargin) PlotText("LL",i+fvb+dxll,L[i+fvb]-dyll,colorWhite,colorBlack);
- if(ll[i+fvb] AND L[i+fvb]<=LowMargin) PlotText("LL",i+fvb+dxll+dxllm,L[i+fvb]-dyllm,colorWhite,colorBlack);
- if(hl[i+fvb] AND L[i+fvb]>LowMargin) PlotText("HL",i+fvb+dxll,L[i+fvb]-dyll,colorWhite,colorBlack);
- if(hl[i+fvb] AND L[i+fvb]<=LowMargin) PlotText("HL",i+fvb+dxll+dxllm,L[i+fvb]-dyllm,colorWhite,colorBlack);
- if(db[i+fvb] AND L[i+fvb]>LowMargin) PlotText("DB",i+fvb+dxll,L[i+fvb]-dyll,colorWhite,colorBlack);
- if(db[i+fvb] AND L[i+fvb]<=LowMargin) PlotText("DB",i+fvb+dxll+dxllm,L[i+fvb]-dyllm,colorWhite,colorBlack);
- if(hh[i+fvb] AND H[i+fvb]<HighMargin) PlotText("HH",i+fvb+dxhh,H[i+fvb]+dyhh,colorWhite,colorBlack);
- if(hh[i+fvb] AND H[i+fvb]>=HighMargin) PlotText("HH",i+fvb+dxhh+dxhhm,H[i+fvb]+dyhhm,colorWhite,colorBlack);
- if(lh[i+fvb] AND H[i+fvb]<HighMargin) PlotText("LH",i+fvb+dxhh,H[i+fvb]+dyhh,colorWhite,colorBlack);
- if(lh[i+fvb] AND H[i+fvb]>=HighMargin) PlotText("LH",i+fvb+dxhh+dxhhm,H[i+fvb]+dyhhm,colorWhite,colorBlack);
- if(dt[i+fvb] AND H[i+fvb]<HighMargin) PlotText("DT",i+fvb+dxhh,H[i+fvb]+dyhh,colorWhite,colorBlack);
- if(dt[i+fvb] AND H[i+fvb]>=HighMargin) PlotText("DT",i+fvb+dxhh+dxhhm,H[i+fvb]+dyhhm,colorWhite,colorBlack);
- }
- }
- _SECTION_END();
- _SECTION_BEGIN( "RAJA" );
- /*RAJA*/
- "========";
- H1 = SelectedValue( TimeFrameGetPrice( "H", inDaily, -1 ) );
- L1 = SelectedValue( TimeFrameGetPrice( "L", inDaily, -1 ) );
- C1 = SelectedValue( TimeFrameGetPrice( "C", inDaily, -1 ) );
- H2 = SelectedValue( TimeFrameGetPrice( "H", inDaily, 0 ) );
- L2 = SelectedValue( TimeFrameGetPrice( "L", inDaily, 0 ) );
- O1 = SelectedValue( TimeFrameGetPrice( "open", inDaily, 0 ) );
- /*PIVOT Calculation*/
- D1 = ( H1 - L1 );
- D2 = ( H2 - L2 );
- F1 = D1 * 0.433;
- F2 = D1 * 0.766;
- F3 = D1 * 1.35;
- F4 = 0;
- if ( D2 <= F1 )
- F4 = F1;
- else
- if ( D2 <= F2 )
- F4 = F2;
- else
- F4 = F3;
- p = ( H1 + L1 + C1 ) / 3;
- s1 = ( H1 );
- r1 = ( L1 );
- r2 = SelectedValue( L2 );
- s2 = SelectedValue( H2 );
- //CONDITION
- S = ( C > p );
- SS = ( C < P );
- //Plot
- Plot ( p , "PIVOT", 25, 1 );PlotText( "PIVOT" , BarCount-25, p+0, 25 );
- Plot ( r1, "PRE_LOW", 28, 1 );PlotText( "PreDay LOW" , BarCount-25, r1+0, 28 );
- Plot ( s1, "PRE_HIGH", 28, 1 );PlotText( "PreDay HIGH" , BarCount-25, s1+0, 28 );
- _SECTION_BEGIN("Parameters");
- LB1= Param("Long LookBack Periods",42,1,60,1);
- LB3= Param("Mid LookBack Periods",18,1,30,1);
- LB2= Param("Short LookBack Periods",6,1,30,1);
- _SECTION_END();
- _SECTION_BEGIN("ResistanceLong");
- RsColor=ParamColor("LongResColor",colorRed);
- BrCount=Param("LongBarLength",65,1,500,1);
- for (i=0;i<BarCount-BrCount;i++) //hide the line except most recent 10 bars
- {
- RsColor[i] = colorRed;
- }
- flowerClose = EMA((Open+High+Low+Close)/4,3) ;
- flowerOpen = EMA((Ref(Open,-1) + Ref(flowerClose,-1))/2,3);
- Temp = Max(High, flowerOpen);
- flowerHigh = EMA(Max(Temp, flowerClose),3);
- Temp = Min(Low,flowerOpen);
- flowerLow = EMA(Min(Temp, flowerClose),3);
- R=ValueWhen(Cross(MA(flowerClose,LB1),C),HHV(flowerHigh,LB1),-1);
- Plot(R,"Resistance",RsColor,ParamStyle("LongResStyle",styleNoTitle|styleLine|styleDots|styleStaircase|styleThick,maskAll));
- _SECTION_END();
- _SECTION_BEGIN("ResistanceMid");
- Rs3Color=ParamColor("MidResColor",colorOrange);
- BrCount3=Param("MidBarLength",40,1,500,1);
- for (i=0;i<BarCount-BrCount3;i++) //hide the line except most recent 10 bars
- {
- Rs3Color[i] =colorOrange;
- }
- flowerClose = EMA((Open+High+Low+Close)/4,3) ;
- flowerOpen = EMA((Ref(Open,-1) + Ref(flowerClose,-1))/2,3);
- Temp = Max(High, flowerOpen);
- flowerHigh = EMA(Max(Temp, flowerClose),3);
- Temp = Min(Low,flowerOpen);
- flowerLow = EMA(Min(Temp, flowerClose),3);
- RM2=ValueWhen(Cross(EMA(flowerClose,LB3),C),HHV(flowerHigh,LB3),-1);
- Plot(RM2,"MidRes",Rs3Color,ParamStyle("MidResStyle",styleLine|styleStaircase|styleNoTitle,maskAll));
- _SECTION_END();
- _SECTION_BEGIN("ResistanceShort");
- Rs2Color=ParamColor("ShortResColor",colorCustom12);
- BrCount2=Param("ShortResLength",12,1,500,1);
- for (i=0;i<BarCount-BrCount2;i++) //hide the line except most recent 10 bars
- {
- Rs2Color[i] = colorBlack;
- }
- flowerClose = EMA((Open+High+Low+Close)/4,3) ;
- flowerOpen = EMA((Ref(Open,-1) + Ref(flowerClose,-1))/2,3);
- Temp = Max(High, flowerOpen);
- flowerHigh = EMA(Max(Temp, flowerClose),3);
- Temp = Min(Low,flowerOpen);
- flowerLow = EMA(Min(Temp, flowerClose),3);
- RM=ValueWhen(Cross(TEMA(flowerClose,LB2),C),HHV(flowerHigh,LB2),-1);
- Plot(RM,"ShortRes",Rs2Color,ParamStyle("ShortResStyle",styleDashed|styleThick|styleNoTitle|styleStaircase,maskAll));
- _SECTION_END();
- _SECTION_BEGIN("SupportLong");
- Sup1Color=ParamColor("LongSupColor",colorGreen);
- BrCount4=Param("LongSupBarLength",65,1,500,1);
- for (i=0;i<BarCount-BrCount4;i++) //hide the line except most recent 10 bars
- {
- Sup1Color[i] =colorGreen;
- }
- flowerClose = EMA((Open+High+Low+Close)/4,3) ;
- flowerOpen = EMA((Ref(Open,-1) + Ref(flowerClose,-1))/2,3);
- Temp = Max(High, flowerOpen);
- flowerHigh = EMA(Max(Temp, flowerClose),3);
- Temp = Min(Low,flowerOpen);
- flowerLow = EMA(Min(Temp, flowerClose),3);
- S=ValueWhen(Cross(MA(flowerClose,LB1),C),LLV(flowerLow,LB1),-1);
- Plot(s,"Support",Sup1Color,ParamStyle("SupStyle",styleLine|styleDots|styleStaircase|styleThick|styleNoTitle,maskAll));
- _SECTION_END();
- _SECTION_BEGIN("SupportMid");
- Sup3Color=ParamColor("MidSupColor",colorBlue);
- BrCount6=Param("MidBarLength",40,1,500,1);
- for (i=0;i<BarCount-BrCount6;i++) //hide the line except most recent 10 bars
- {
- Sup3Color[i] =colorBlue;
- }
- flowerClose = EMA((Open+High+Low+Close)/4,3) ;
- flowerOpen = EMA((Ref(Open,-1) + Ref(flowerClose,-1))/2,3);
- Temp = Max(High, flowerOpen);
- flowerHigh = EMA(Max(Temp, flowerClose),3);
- Temp = Min(Low,flowerOpen);
- flowerLow = EMA(Min(Temp, flowerClose),3);
- SM2=ValueWhen(Cross(EMA(flowerClose,LB3),C),LLV(flowerLow,LB3),-1);
- Plot(SM2,"MidSup",Sup3Color,ParamStyle("MidSupStyle",styleLine|styleStaircase|styleNoTitle,maskAll));
- _SECTION_END();
- _SECTION_BEGIN("SupportShort");
- Sup2Color=ParamColor("ShortSupColor",colorPink);
- BrCount5=Param("ShortSupBarLength",12,1,500,1);
- for (i=0;i<BarCount-BrCount5;i++) //hide the line except most recent 10 bars
- {
- Sup2Color[i] =colorBlack;
- }
- flowerClose = EMA((Open+High+Low+Close)/4,3) ;
- flowerOpen = EMA((Ref(Open,-1) + Ref(flowerClose,-1))/2,3);
- Temp = Max(High, flowerOpen);
- flowerHigh = EMA(Max(Temp, flowerClose),3);
- Temp = Min(Low,flowerOpen);
- flowerLow = EMA(Min(Temp, flowerClose),3);
- SM=ValueWhen(Cross(TEMA(flowerClose,LB2),C),LLV(flowerLow,LB2),-1);
- Plot(SM,"ShortSup",Sup2Color,ParamStyle("ShortSupStyle",styleDashed|styleThick|styleNoTitle|styleStaircase,maskAll));
- _SECTION_END();
- TimeFrameSet(inDaily);
- DayHigh = LastValue(H);
- DayLow = LastValue(L);
- TimeFrameRestore();
- prev=AMA2(C,1,0);
- d=IIf(C>Ref(Max(Max(H,Ref(H,-20)),Max(Ref(H,-10),Ref(H,-15))),-1),Min(Min(L,Ref(L,-20)),Min(Ref(L,-10),Ref(L,-15))),
- IIf(C<Ref(Min(Min(L,Ref(L,-20)),Min(Ref(L,-10),Ref(L,-15))),-1),Max(Max(H,Ref(H,-20)),Max(Ref(H,-10),Ref(H,-15))),PREV));
- a=Cross(Close,d);
- b=Cross(d,Close);
- state=IIf(BarsSince(a)<BarsSince(b),1,0);
- s=state>Ref(state,-1);
- ss=state<Ref(state,-1);
- sss=state==Ref(state,-1);
- col=IIf(state == 1 ,51,IIf(state ==0,4,1));
- Buy = s;
- Sell = ss;
- shape = Buy * shapeUpArrow + Sell * shapeDownArrow;
- PlotShapes( shapeUpArrow * s ,colorBlue,0,L, Offset=s);
- PlotShapes( shapeHollowCircle * s ,colorOrange,0,L, Offset=s-12);
- PlotShapes( shapeHollowCircle *ss ,colorPink,0,H, Offset=s);
- PlotShapes( shapeDownArrow *ss ,colorYellow,0,H, Offset=s+12);
- PlotShapes(shape, IIf(Buy,colorGreen,colorRed), 0, IIf(Buy,Low,High));
- PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorGreen, 0, L, Offset=-10);
- PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorLime, 0,L, Offset=-20);
- PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorWhite, 0,L, Offset=-15);
- PlotShapes(IIf(Sell, shapeSquare, shapeNone),colorRed, 0, H, Offset=20);
- PlotShapes(IIf(Sell, shapeSquare, shapeNone),colorOrange, 0,H, Offset=30);
- PlotShapes(IIf(Sell, shapeDownArrow, shapeNone),colorWhite, 0,H, Offset=-25);
- //WriteIf(s,"EXIT all Short positions\nif trading long positions, enter long Now-\nOR at the market price on tomorrow's Open with stop="+EncodeColor(4)+WriteVal(L+.75*ATR(5),1.4)+" ,","");
- //WriteIf(ss,"exit all long positions today with a Market On Close (MOC) order\nOR at the market price on tomorrow's Open with stop="+EncodeColor(4)+WriteVal(Ref(H+.75*ATR(5), -1),1.4)+",","");
- //WriteIf( sss ,"No trading signals today.","") ;
- dist = 0.8*ATR(10);
- dist1 = 2*ATR(10);
- for( i = 0; i < BarCount; i++ )
- {
- if( Buy[i] )
- {
- }
- if( Sell[i] )
- {
- }
- }
- Filter = s OR sss OR sss ;
- AddColumn(C,"close",1.2);
- AddColumn( IIf( s, 66,1 ), "buy", formatChar, 1, bkcolor =IIf (s,colorYellow, colorPink ));
- AddColumn( IIf( Ss, 83,1 ), "sell", formatChar, 1, bkcolor =IIf (Ss,colorPink, colorWhite ));
- AddColumn( IIf( sss, 87,1 ), "wait", formatChar, 1, bkcolor =IIf (sss,colorYellow, colorRed ));
- //---------------Color------------------------
- per1=6;
- per2=2;
- Om=MA(O,per1);
- hm=MA(H,per1);
- lm=MA(L,per1);
- Cm=MA(C,per1);
- HACLOSE=(Om+Hm+Lm+Cm)/4;
- HaOpen = AMA( Ref( HaClose, -1 ), 0.5 );
- HaHigh = Max( Hm, Max( HaClose, HaOpen ) );
- HaLow = Min( Lm, Min( HaClose, HaOpen ) );
- Of=MA(Haopen,per2);
- Cf=MA(Haclose,per2);
- Lf=IIf(haOpen<haClose,MA(Halow,per2),MA(Hahigh,per2));
- Hf=IIf(haOpen<haClose,MA(Hahigh,per2),MA(Halow,per2));
- //Color = IIf( Cf > Of, colorGreen, colorRed );
- //----------------------------------------------------
- TrailStop = HHV( C - 2 * ATR(10), 15 );
- ProfitTaker = EMA( H, 13 ) + 2 * ATR(10);
- /* **********************************
- Code to automatically identify pivots
- ********************************** */
- // -- what will be our lookback range for the hh and ll?
- farback=140; //How Far back to go
- nBars = 12; //Number of bars
- // -- Create 0-initialized arrays the size of barcount
- aHPivs = H - H;
- aLPivs = L - L;
- // -- More for future use, not necessary for basic plotting
- aHPivHighs = H - H;
- aLPivLows = L - L;
- aHPivIdxs = H - H;
- aLPivIdxs = L - L;
- nHPivs = 0;
- nLPivs = 0;
- lastHPIdx = 0;
- lastLPIdx = 0;
- lastHPH = 0;
- lastLPL = 0;
- curPivBarIdx = 0;
- // -- looking back from the current bar, how many bars
- // back were the hhv and llv values of the previous
- // n bars, etc.?
- aHHVBars = HHVBars(H, nBars);
- aLLVBars = LLVBars(L, nBars);
- aHHV = HHV(H, nBars);
- aLLV = LLV(L, nBars);
- // -- Would like to set this up so pivots are calculated back from
- // last visible bar to make it easy to "go back" and see the pivots
- // this code would find. However, the first instance of
- // _Trace output will show a value of 0
- aVisBars = Status("barvisible");
- nLastVisBar = LastValue(Highest(IIf(aVisBars, BarIndex(), 0)));
- _TRACE("Last visible bar: " + nLastVisBar);
- // -- Initialize value of curTrend
- curBar = (BarCount-1);
- curTrend = "";
- if (aLLVBars[curBar] <
- aHHVBars[curBar]) {
- curTrend = "D";
- }
- else {
- curTrend = "U";
- }
- // -- Loop through bars. Search for
- // entirely array-based approach
- // in future version
- for (i=0; i<BarCount; i++) {
- curBar = (BarCount - 1) - i;
- // -- Have we identified a pivot? If trend is down...
- if (aLLVBars[curBar] < aHHVBars[curBar]) {
- // ... and had been up, this is a trend change
- if (curTrend == "U") {
- curTrend = "D";
- // -- Capture pivot information
- curPivBarIdx = curBar - aLLVBars[curBar];
- aLPivs[curPivBarIdx] = 1;
- aLPivLows[nLPivs] = L[curPivBarIdx];
- aLPivIdxs[nLPivs] = curPivBarIdx;
- nLPivs++;
- }
- // -- or current trend is up
- } else {
- if (curTrend == "D") {
- curTrend = "U";
- curPivBarIdx = curBar - aHHVBars[curBar];
- aHPivs[curPivBarIdx] = 1;
- aHPivHighs[nHPivs] = H[curPivBarIdx];
- aHPivIdxs[nHPivs] = curPivBarIdx;
- nHPivs++;
- }
- // -- If curTrend is up...else...
- }
- // -- loop through bars
- }
- // -- Basic attempt to add a pivot this logic may have missed
- // -- OK, now I want to look at last two pivots. If the most
- // recent low pivot is after the last high, I could
- // still have a high pivot that I didn't catch
- // -- Start at last bar
- curBar = (BarCount-1);
- candIdx = 0;
- candPrc = 0;
- lastLPIdx = aLPivIdxs[0];
- lastLPL = aLPivLows[0];
- lastHPIdx = aHPivIdxs[0];
- lastHPH = aHPivHighs[0];
- if (lastLPIdx > lastHPIdx) {
- // -- Bar and price info for candidate pivot
- candIdx = curBar - aHHVBars[curBar];
- candPrc = aHHV[curBar];
- if (
- lastHPH < candPrc AND
- candIdx > lastLPIdx AND
- candIdx < curBar) {
- // -- OK, we'll add this as a pivot...
- aHPivs[candIdx] = 1;
- // ...and then rearrange elements in the
- // pivot information arrays
- for (j=0; j<nHPivs; j++) {
- aHPivHighs[nHPivs-j] = aHPivHighs[nHPivs-
- (j+1)];
- aHPivIdxs[nHPivs-j] = aHPivIdxs[nHPivs-(j+1)];
- }
- aHPivHighs[0] = candPrc ;
- aHPivIdxs[0] = candIdx;
- nHPivs++;
- }
- } else {
- // -- Bar and price info for candidate pivot
- candIdx = curBar - aLLVBars[curBar];
- candPrc = aLLV[curBar];
- if (
- lastLPL > candPrc AND
- candIdx > lastHPIdx AND
- candIdx < curBar) {
- // -- OK, we'll add this as a pivot...
- aLPivs[candIdx] = 1;
- // ...and then rearrange elements in the
- // pivot information arrays
- for (j=0; j<nLPivs; j++) {
- aLPivLows[nLPivs-j] = aLPivLows[nLPivs-(j+1)];
- aLPivIdxs[nLPivs-j] = aLPivIdxs[nLPivs-(j+1)];
- }
- aLPivLows[0] = candPrc;
- aLPivIdxs[0] = candIdx;
- nLPivs++;
- }
- }
- //============== EXPLORATION ==============
- Buy=Cover=aLPivs==1;
- Sell=Short=aHPivs==1;
- SellPrice=ValueWhen(Sell,C,1);
- BuyPrice=ValueWhen(Buy,C,1);
- Long=Flip(Buy,Sell);
- Shrt=Flip(Sell,Buy );
- //============== Plot price ==============
- n = 15;
- a = C > (MA(H,n)+MA(L,n))/2;// then Buy next bar at market;
- b = C < (MA(H,n)+MA(L,n))/2;// then Sell Short next bar at market;
- state=IIf(BarsSince(a)<BarsSince(b),1,0);
- Longs=state==1;
- shorts=state==0;
- //Chart
- Colorbar = IIf(Longs, colorGreen, IIf(Shorts, colorRed, colorGrey40));
- Plot( C, "Close", colorbar, styleCandle = 64 | styleNoTitle );
- //============== Plot Shape ==============
- PlotShapes(
- High, Offset=-12);
- PlotShapes(
- Low, Offset=-12);
- //============== EMA(13) ==============
- Plot(EMA(C, 13), "", colorWhite,
- styleLine+styleNoRescale);
- //============== TRENDING ==============
- DTL=150; // DTL = Define Trend Long
- DTM=70; // DTM = Define Trend Medium
- DTS=14; // DTS = Define Trend Short
- TL=LinRegSlope(MA(C, DTL),2); // TL = Trend Long
- TM=LinRegSlope(MA(C, DTM),2); // TM = Trend Medium
- TS=LinRegSlope(MA(C, DTS),2); // TS = Trend Short
- TLL=IIf(LinRegSlope(MA(C, DTL),2) > 0,True, False);
- TMM=IIf(LinRegSlope(MA(C, DTM),2) > 0,True, False);
- TSS=IIf(LinRegSlope(MA(C, DTS),2) > 0,True, False);
- //============== VOLUME ==============
- Vlp=30; //Volume lookback period
- Vrg=MA(V,Vlp);
- St = StDev(Vrg,Vlp);
- Vp3 = Vrg + 3*st;
- Vp2 = Vrg + 2*st;;
- Vp1 = Vrg + 1*st;;
- Vn1 = Vrg -1*st;
- Vn2 = Vrg -2*st;
- //============== WILLIAM'S %R ==============
- WR = ((HHV(H,14) - C) /(HHV (H,14) -LLV (L,14))) *-100;
- //============== A/D ==============
- TRH = IIf(Ref(C, -1) > H, Ref(C, -1), H);
- TRL = IIf(Ref(C, -1) < L, Ref(C, -1), L);
- ad = IIf(C > Ref(C, -1), C - TRL, IIf(C < Ref(C, -1), C - TRH, 0));
- WAD = Cum(ad);
- wu = wad > Ref(wad,-1);
- wd = wad < Ref(wad,-1);
- //============== MACD ==============
- MB= Cross (MACD(), Signal());
- MS = Cross( Signal(), MACD());
- MB = ExRem(MB, MS);
- MS = ExRem(MS, MB);
- MB1= MACD() > Signal();
- MS1= MACD() < Signal();
- //============== STOCH ==============
- StochKval = StochK(10,5);
- StochDval = StochD(10,5,5);
- StochBuy = Cross(StochK(10,5), StochD(10,5,5));
- StochSell = Cross (StochD(10,5,5), StochK(10,5));
- StBuy=StochK(10,5)>StochD(10,5,5);
- StSell=StochK(10,5)<StochD(10,5,5);
- //============== ADX ==============
- adxBuy = Cross(PDI(14), MDI(14));
- adxSell = Cross(MDI(14), PDI(14));
- adxBuy = ExRem(adxBuy, adxSell);
- adxSell = ExRem(adxSell, adxBuy);
- adxbuy1 = PDI(14) > MDI(14);
- adxsell1 = MDI(14)> PDI(14);
- //============== TMA ==============
- function ZeroLagTEMA( array, period )
- {
- TMA1 = TEMA( array, period );
- TMA2 = TEMA( TMA1, period );
- Diff = TMA1 - TMA2;
- return TMA1 + Diff ;
- }
- haClose = ( haClose + haOpen + haHigh + haLow )/4;
- periodtm = 55;
- ZLHa = ZeroLagTEMA( haClose, periodtm );
- ZLTyp = ZeroLagTEMA( Avg, periodtm );
- TMBuy = Cross( ZLTyp, ZLHa );
- TMSell = Cross( ZLHa, ZLTyp );
- TMBuy1= ZLTyp> ZLHa ;
- TMSell1=ZLHa> ZLTyp ;
- //============== ZLW ==============
- R = ((HHV(H,14) - C) /(HHV (H,14) -LLV (L,14))) *-100;
- MaxGraph=10;
- PeriodZ= 10;
- EMA1= EMA(R,PeriodZ);
- EMA2= EMA(EMA1,5);
- Difference= EMA1 - EMA2;
- ZeroLagEMA= EMA1 + Difference;
- PR=100-abs(ZeroLagEMA);
- MoveAvg=MA(PR,5);
- ZBuy = Cross(PR,moveAvg) AND PR<30;
- ZSell = Cross(moveAvg,PR) AND PR>70;
- ZBuy1= PR>= MoveAvg AND PR>= Ref(PR,-1) ;
- ZSell1=(PR < MoveAvg) OR PR>= MoveAvg AND PR< Ref(PR,-1) ;
- //============== RS ==============
- p = (H+L+C)/3;
- r1 = (2*p)-L;
- s1 = (2*p)-H;
- r2 = p +(r1 - s1);
- s2 = p -(r2 - s1);
- R3 = P + (R2 - S2);
- S3 = P - (R3 - S2);
- //============== IBUY ==============
- Ibuy = Cross(RSI(14), EMA(RSI(14),9));
- Isell = Cross(EMA(RSI(14),9), RSI(14));
- Ibuy = ExRem(Ibuy, ISell);
- Isell = ExRem(ISell, Ibuy);
- BlRSI = RSI(14) > EMA(RSI(14),9);
- BrRSI = RSI(14) < EMA(RSI(14),9);
- //============== TITLE ==============
- _SECTION_BEGIN("Title");
- DODay = TimeFrameGetPrice("O", inDaily);
- DHiDay = TimeFrameGetPrice("H", inDaily);
- DLoDay = TimeFrameGetPrice("L", inDaily);
- Title = EncodeColor(colorBlue)+"* SAISRI2320 * "+EncodeColor(colorBrightGreen)+ Name() + ", " + Interval(2) + ", " + Date() + " - "+strWeekday + " - " +
- EncodeColor(colorWhite) + "\nO " + EncodeColor(colorWhite) + O +
- ", H : " + H +
- ", L : " + L +
- ", C : " + C +
- "\n"+EncodeColor(colorAqua)+ " Day-Open : " +DODay + " Day-High : " +DHiDay + " Day-Low : " + DLoDay
- +"\n"+EncodeColor(colorGrey50)+"--------------------------------------"
- +
- WriteIf(TS>0 AND TS<0.3,EncodeColor(colorLime)+"Weak Up Trend",
- WriteIf(TS>=0.3 AND TS<0.6 ,EncodeColor(colorBrightGreen)+"Medium Up Trend",
- WriteIf(TS>=0.6,EncodeColor(colorGreen)+"Strong Up Trend",
- WriteIf(TS<0 AND TS>-0.3,EncodeColor(colorPink)+"Weak Down Trend",
- WriteIf(TS<=-0.3 AND TS>-0.6 ,EncodeColor(ColorRGB(255,0,128))+"Medium Down Trend",
- WriteIf(TS<=-0.6,EncodeColor(colorRed)+"Strong Down Trend",EncodeColor(colorGrey50)+"Sideways"))))))
- +"\n"+EncodeColor(colorGold)+"•
- Mid Term: "+
- WriteIf(TM>0 AND TM<0.3,EncodeColor(colorLime)+"Weak Up Trend",
- WriteIf(TM>=0.3 AND TM<0.6 ,EncodeColor(colorBrightGreen)+"Medium Up Trend",
- WriteIf(TM>=0.6,EncodeColor(colorGreen)+"Strong Up Trend",
- WriteIf(TM<0 AND TM>-0.3,EncodeColor(colorPink)+"Weak Down Trend",
- WriteIf(TM<=-0.3 AND TM>-0.6 ,EncodeColor(ColorRGB(255,0,128))+"Medium Down Trend",
- WriteIf(TM<=-0.6,EncodeColor(colorRed)+"Strong Down Trend",EncodeColor(colorGrey50)+"Sideways"))))))
- +"\n"+EncodeColor(colorGold)+"• Long Term: "+
- WriteIf(TL>0 AND TL<0.3,EncodeColor(colorLime)+"Weak Up Trend",
- WriteIf(TL>=0.3 AND TL<0.6 ,EncodeColor(colorBrightGreen)+"Medium Up Trend",
- WriteIf(TL>=0.6,EncodeColor(colorGreen)+"Strong Up Trend",
- WriteIf(TL<0 AND TL>-0.3,EncodeColor(colorPink)+"Weak Down Trend",
- WriteIf(TL<=-0.3 AND TL>-0.6 ,EncodeColor(ColorRGB(255,0,128))+"Medium Down Trend",
- WriteIf(TL<=-0.6,EncodeColor(colorRed)+"Strong Down Trend",EncodeColor(colorGrey50)+"Sideways"))))))
- +"\n"+EncodeColor(colorGrey50)+"--------------------------------------"
- +"\n"+EncodeColor(47)+"• AccDist(): " + WriteIf(wu,EncodeColor(colorBrightGreen)+"Accumula tion",WriteIf(wd,EncodeColor(colorRed)+"Distributi on","Neutral"))
- +"\n"+ EncodeColor(47) +"• RSI(14): " +WriteIf(RSI(14)>30 AND RSI(14)<70,EncodeColor(colorBrightGreen),WriteIf(RSI(14)<30 ,EncodeColor(07),EncodeColor(colorRed))) + WriteVal(RSI(14),format=1.1)
- +WriteIf(RSI(14)>30 AND RSI(14)<70," Range"+EncodeColor(colorBrightGreen),WriteIf(RSI(14)<30 ," OverSold"+EncodeColor(07)," OverBought"+EncodeColor(colorRed)))
- +"\n"+ EncodeColor(47) +"• CCI(14): " +WriteIf(CCI(14)>-100 AND CCI(14)<100,EncodeColor(colorBrightGreen),WriteIf( CCI(14)<-100 ,EncodeColor(07),EncodeColor(colorRed))) + WriteVal(CCI(14),format=1.1)
- +WriteIf(CCI(14)>-100 AND CCI(14)<100," Range"+EncodeColor(colorBrightGreen),WriteIf(CCI(14)<-100 ," OverSold"+EncodeColor(07)," OverBought"+EncodeColor(colorRed)))
- +"\n"+ EncodeColor(47) +"• ROC(C,14): " +WriteIf(ROC(C,14)>-10 AND ROC(C,14)<10,EncodeColor(colorBrightGreen),WriteIf (ROC(C,14)<-10 ,EncodeColor(07),EncodeColor(colorRed))) + WriteVal(ROC(C,14),format=1.1)
- +WriteIf(ROC(C,14)>-10 AND ROC(C,14)<10," Range"+EncodeColor(colorBrightGreen),WriteIf(ROC(C ,14)<-10 ," OverSold"+EncodeColor(07)," OverBought"+EncodeColor(colorRed)))
- +"\n"+ EncodeColor(47) +"• Wm%R(14): " +WriteIf(WR>-80 AND WR<-20,EncodeColor(colorBrightGreen),WriteIf(WR<-80 ,EncodeColor(07),EncodeColor(colorRed))) + WriteVal(WR,format=1.1)
- +WriteIf(WR>-80 AND WR<-20," Range"+EncodeColor(colorBrightGreen),WriteIf(WR<-80 ," OverSold"+EncodeColor(07)," OverBought"+EncodeColor(colorRed)))
- +"\n"+EncodeColor(colorGrey50)+"--------------------------------------"
- +"\n"+EncodeColor(colorGold)+"• Signal(IBuy): " + WriteIf(Ibuy,EncodeColor(colorBrightGreen)+"BuyWar ning",WriteIf(Isell,EncodeColor(colorRed)+"SellWar ning",WriteIf(BlRSI,EncodeColor(colorBrightGreen)+ "BullishZone",WriteIf(BrRSI,EncodeColor(colorRed)+ "BearishZone","Neutral"))))
- +"\n"+EncodeColor(colorGold)+"• Signal(TMA): " + WriteIf(TMBuy,EncodeColor(colorBrightGreen)+"Buy", WriteIf(TMSell,EncodeColor(colorRed)+"Sell",WriteIf(TMBuy1,EncodeColor(colorBrightGreen)+"Bullish",WriteIf(TMSell1,EncodeColor(colorRed)+"Bearish","Ne utral"))))
- +"\n"+EncodeColor(colorGold)+"• Signal(MACD): " + WriteIf(MB,EncodeColor(colorBrightGreen)+"Buy",WriteIf(MS,EncodeColor(colorRed)+"Sell",WriteIf(MB1,EncodeColor(colorBrightGreen)+"Bullish",WriteIf(MS1 ,EncodeColor(colorRed)+"Bearish","Neutral"))))
- +"\n"+EncodeColor(colorGold)+"• Signal(Stoch): " + WriteIf(StochBuy,EncodeColor(colorBrightGreen)+"Bu y",WriteIf(StochSell,EncodeColor(colorRed)+"Sel l", WriteIf(StBuy,EncodeColor(colorBrightGreen)+"Bulli sh",WriteIf(StSell,EncodeColor(colorRed)+"Bearis h" ,"Neutral"))))
- +"\n"+EncodeColor(colorGold)+"• Signal(ADX): " + WriteIf(adxBuy,EncodeColor(colorBrightGreen)+"Buy" ,WriteIf(adxSell,EncodeColor(colorRed)+"Sell",WriteIf(adxBuy1,EncodeColor(colorBrightGreen)+"Bullish ",WriteIf(adxSell1,EncodeColor(colorRed)+"Bear ish" ,"Neutral"))))
- +"\n"+EncodeColor(colorGrey50)+"--------------------------------------"
- +"\n"+ EncodeColor(47) +"• TrStop: " +EncodeColor(colorLime)+ WriteVal(TrailStop,format=1.0)
- + EncodeColor(47) +" TrgPrice: " + EncodeColor(colorLime)+WriteVal(Profittaker,format =1.0)
- +"\n"+ EncodeColor(47) +"• R1: " +EncodeColor(colorOrange)+ WriteVal(r1,format=1.0)
- + EncodeColor(47) +" R2: " + EncodeColor(colorOrange)+WriteVal(r2,format=1.0)
- + EncodeColor(47) +" R3: " + EncodeColor(colorOrange)+WriteVal(r3,format=1.0)
- +"\n"+ EncodeColor(47) +"• S1: " +EncodeColor(colorOrange)+ WriteVal(s1,format=1.0)
- + EncodeColor(47) +" S2: " + EncodeColor(colorOrange)+WriteVal(s2,format=1.0)
- + EncodeColor(47) +" S3: " + EncodeColor(colorOrange)+WriteVal(s3,format=1.0)
- +"\n"+EncodeColor(colorGrey50)+"--------------------------------------"
- ;
- _SECTION_END();
- _SECTION_BEGIN("Isfandi Technical Viewer");
- DayH = TimeFrameGetPrice("H", inDaily, -1);// yesterdays high
- DayL = TimeFrameGetPrice("L", inDaily, -1);//low
- DayC = TimeFrameGetPrice("C", inDaily, -1);//close
- DayO = TimeFrameGetPrice("O", inDaily);// current day open
- HiDay = TimeFrameGetPrice("H", inDaily);
- LoDay = TimeFrameGetPrice("L", inDaily);
- PP = (DayH + DayL + DayO + DayO) / 4 ;
- R1 = (2 * PP) - DayL;
- S1 = (2 * PP) - DayH;
- R2 = PP + R1 - S1;
- S2 = PP + S1 - R1;
- R3 = R2 + (R1 - PP);
- S3 = S2 - (PP - S1);
- //-Paint Background
- GfxSelectSolidBrush( colorBlack);
- GfxSelectPen( colorRed);
- GfxRoundRect( 2, 0, 930, 51, 30, 32);
- GfxSetBkMode( 1 );
- GfxSelectFont("Arial", 8, 900);
- // OTHER INDICATOR
- MOMETUM =RSI(14);
- radius = 0.1 * Status("pxheight"); // get pixel height of the chart and use 45% for pie chart radius
- textoffset = 0.1 * radius;
- GfxSelectFont("Arial", 9, 500, True );
- GfxSelectFont("Arial", 9 );
- GfxSetTextColor( colorLime);
- GfxTextOut( "R1 =" + R1, textoffset + 740, 32 );
- GfxSetTextColor( colorLime );
- GfxTextOut( "R2 = " +R2, textoffset + 820, 32);
- GfxSetTextColor( colorPink );
- GfxTextOut( "PP = " +PP, textoffset + 660, 32);
- GfxSetTextColor( colorOrange );
- GfxTextOut( "S1 = " +S1, textoffset + 500, 32);
- GfxSetTextColor( colorRed );
- GfxTextOut( "S2 = " +S2, textoffset + 580, 32);
- GfxSelectFont("Arial", 9 );
- _SECTION_END();
- //-Paint Background
- GfxSelectSolidBrush( colorBlack);
- GfxSelectPen( colorPink);
- GfxRoundRect( 500, 1, 930, 27, 32, 32 );
- GfxSetBkMode( 1 );
- GfxSelectFont("Arial", 8, 900);
- _SECTION_BEGIN("Magnified Market Price");
- FS=Param("Font Size",12,30,100,1);
- GfxSelectFont("Arial", FS, 700, italic = False, underline = False, True );
- GfxSetBkMode( colorRose );
- GfxSetTextColor( ParamColor("Color",colorRose) );
- Hor=Param("Horizontal Position",650,800,800,800);
- Ver=Param("Vertical Position",5,27,27,27);
- GfxTextOut("CMP: "+C,Hor , Ver );
- YC=TimeFrameGetPrice("C",inDaily,-1);
- DD=Prec(C-YC,2);
- xx=Prec((DD/YC)*100,2);
- GfxSelectFont("Arial", 12, 700, italic = False, underline = False, True );
- GfxSetBkMode( colorGreen );
- GfxSetTextColor(ParamColor("Color",colorGreen) );
- GfxTextOut("change ("+DD+") ("+xx+"%)", Hor+130, Ver+0 );
- _SECTION_END();
- _SECTION_BEGIN("system Ticker");
- function GetSecondNum()
- {
- Time = Now( 4 );
- Seconds = int( Time % 100 );
- Minutes = int( Time / 100 % 100 );
- Hours = int( Time / 10000 % 100 );
- SecondNum = int( Hours * 60 * 60 + Minutes * 60 + Seconds );
- return SecondNum;
- }
- RequestTimedRefresh( 1 );
- //----------------------------------------------------------------------------
- //----------------------------------------------------------------------------
- TimeFrame = Interval();
- SecNumber = GetSecondNum();
- Newperiod = SecNumber % TimeFrame == 0;
- SecsLeft = SecNumber - int( SecNumber / TimeFrame ) * TimeFrame;
- SecsToGo = TimeFrame - SecsLeft;
- x=Param(" xposn",540,100,1000,1000);
- y=Param(" yposn",7,40,1000,1);
- GfxSelectSolidBrush( colorBlack );
- GfxSelectPen( colorBlack, 2 );
- if ( NewPeriod )
- {
- GfxSelectSolidBrush( colorBlack );
- GfxSelectPen( colorBlack, 2 );
- }
- GfxRoundRect( x+55, y+17, x-4, y-2, 0, 0 );
- GfxSetBkMode(1);
- GfxSelectFont( "Arial", 9, 700, False );
- GfxSetTextColor( colorBlue );
- GfxTextOut( "" +SecsToGo+" / "+NumToStr( TimeFrame, 1.0 ), x, y );
- _SECTION_END();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement