PureBytes Links
Trading Reference Links
|
Neil,
You are correct, I originally posted the code to assist someone that was trying to capture the market high and low. I should have checked it more closely. I prefer trading the ES mini but use the same code for trading any market that is moving with good volume.
mkss = market slow time start (not plotted)
mkse = market slow time end (not plotted)
va30 = 30 minutes pre close for Value High and Low of final 30 minutes
va2h = final 2 hours for getting the High and Low of final 2 hours
These will typically come into play the following day, they often come into play in the first 15 minutes of trading and will act as support or resistance points.
You did not question the preOpen High and Low but they are for the same purpose as the Va30 and Va2h.
David K.
--- In amibroker@xxxxxxxxxxxxxxx, "Neil Wrightson" <neilw@xxx> wrote:
>
> Hi,
>
> I haven't look to closely at the code yet but I surmise that the following
> two lines should have the 160000 replaced with cltn.
>
> mkCl = ValueWhen(Cross(TimeNum(),160000),C);
> xmCL = bc-BarsSince(Cross(TimeNum(),160000)>0);
>
> i.e.
>
> mkCl = ValueWhen(Cross(TimeNum(),cltn),C);
> xmCL = bc-BarsSince(Cross(TimeNum(),cltn)>0);
>
>
> I also wonder about other lines i.e.
> mkss = 110000;
> mkse = 133000; tfrslo = tn>=mkss AND tn<= mkse;
> va30 = 154500; tfva30 = tn>=va30 AND tn<= cltn;
> va2h = cltn-020000; tf2hrs = tn>=va2h AND tn<= cltn;
>
>
> Just out of interest, what market was this originally created for?
>
>
> Regards,
> Neil Wrightson.
> Skype : Neil_Wrightson
>
>
> -----Original Message-----
> From: amibroker@xxxxxxxxxxxxxxx [mailto:amibroker@xxxxxxxxxxxxxxx] On Behalf
> Of Vinay Gakkhar.
> Sent: Saturday, 5 December 2009 11:16 PM
> To: amibroker@xxxxxxxxxxxxxxx
> Subject: [amibroker] SUPER PIVOT POINTS
>
> Dear David K & Wooziwog,
>
> Sorry, it is not 'gtet', it is 'gtext', at the following place:
>
> _SECTION_BEGIN("GFX Text+Label, GFX Y, Std X"); //======================
> dec=0; ha=0; procedure gtx(val,color,string,xpos) { GfxSetTextColor(color);
> gtext=GfxDrawText(NumToStr(val,dec)+"-"+
>
> Best regards,
>
> Vinay
>
>
> On Sat, 05 Dec 2009 10:21:42 +0530, wooziwog <xcitemint@xxx> wrote:
>
> > vinay,
> >
> > I copy and pasted the formula below into AB 5.2.9.2 and searched for the
> 'gtet' that you describe, it does not exist in the formula. I am guessing
> you may have a problem with line wrapping. GfxSetText(color) is part of a
> procedure or function and I did not find any problems with them. I am going
> to post the formula in the library. Go there and "download" the file to
> avoid line wrapping. Hopefully it will be successful.
> >
> > David K.
> > --- In amibroker@xxxxxxxxxxxxxxx, "Vinay Gakkhar." <vgakkhar@> wrote:
> >>
> >> Dear David K.
> >>
> >> When I tried your exploration on my system, I could not get the graph are
> rather got error messages as follows:
> >>
> >> 1) A few syntax error messages (Ln: 42, Col: 16 ; Error 30, Syntax
> error), the first one at the line:
> >> GfxSetTextColor(color);
> >>
> >> 2) A message saying "variable 'gtet' used without having been initiated"
> >>
> >> Please rectify the exploration and repost it.
> >>
> >> vinay
> >>
> >>
> >> On Fri, 04 Dec 2009 23:20:23 +0530, wooziwog <xcitemint@> wrote:
> >>
> >> > Reinsley,
> >> >
> >> > Thanks for the feedback. Replace your copy with the code below and
> >> > you will not receive the message. The "Plot Shapes" is for
> >> > plotting starts at the Highs and Lows of the various pivots - I
> >> > have never used it so I can't be sure that all is right. The error
> >> > message you received was due to the fact that the arrays were not
> >> > turned on when the plot shapes was turned on. To minimize
> >> > execution time on my intraday charts I avoid executing the arrays
> >> > when the lines or text are not being used. Now the arrays will
> >> > also be processed when plot shapes are turned on. I have not tested
> >> > the shapes plot yet - it is supposed to plot stars at the highs and
> >> > lows of the various time frames. Let me know how it works :-)
> >> >
> >> >
> >> > David K.
> >> >
> >> >
> >> > //======================
> >> > _SECTION_BEGIN("Chart Settings");
> >> > //======================
> >> > SetChartOptions(0, chartShowDates);
> >> > SetChartBkColor(1);
> >> > GraphXSpace=Param("GraphXSpace",15,0,300,1);
> >> > dec= IIf(StrRight(Name(),3) == "", 3.2, 3.2);
> >> > bc = BarCount-1;
> >> > bi = BarIndex();
> >> > Lbi = LastValue(bi);
> >> > sbi = SelectedValue(BarIndex());
> >> > tn = TimeNum();
> >> > Plot(C,"",IIf(C>O,34,IIf(C<O,32,55)),128,4);
> >> > //======================
> >> > pxchartright = Status("pxChartRight");//returns y-coordinate of
> >> > top-left corner //====================== _SECTION_BEGIN("GFX X
> >> > Conversion");
> >> > function tpX(bar) {
> >> > lvb = Status("LastVisibleBar");
> >> > fvb = Status("FirstVisibleBar");
> >> > pxchartleft = Status("pxChartLeft");
> >> > pxchartright = Status("pxChartRight");
> >> > pxheight = Status("pxheight");
> >> > pxchartwidth = Status("pxChartWidth");
> >> > return pxchartleft+(bar-fvb)*pxchartwidth/(Lvb-fvb+1); }
> >> > _SECTION_END(); //====================== _SECTION_BEGIN("GFX Y
> >> > Conversion");
> >> > function tPY(Value) {
> >> > local Miny, Maxy, pxchartbottom, pxchartheight;
> >> > Miny = Status("AxisMiny");
> >> > Maxy = Status("AxisMaxy");
> >> > pxchartbottom = Status("pxChartBottom");
> >> > pxchartheight = Status("pxChartHeight");
> >> > return pxchartbottom - floor(0.5
> >> > +(Value-Miny)*pxchartheight/(Maxy-Miny)); } _SECTION_END();
> >> > //====================== _SECTION_BEGIN("GFX Text+Label, GFX Y, Std
> >> > X"); //======================
> >> > dec=0; ha=0;
> >> > procedure gtx(val,color,string,xpos) {
> >> > GfxSetTextColor(color);
> >> > gtext=GfxDrawText(NumToStr(val,dec)+"-"+
> >> > StrExtract(string,0)+"
> ",xpos,tpY(SelectedValue(val))+ha,0,0,256);
> >> > return gtext; }
> >> > _SECTION_END();
> >> > //======================
> >> > _SECTION_BEGIN("Plot Shapes");
> >> > //======================
> >> > procedure plshp(x,y,shape,color,shift)
> >> > { PlotShapes(IIf(BarIndex()==x,shape,0),color,0,y,shift); }
> >> > //===========================
> >> > lls=0; sln=0;
> >> > procedure hrplt(tf,value,color,sty,shf) {
> >> > Lin=LineArray(Lbi-lls-shf,LastValue(value),
> >> > Lbi+shf,LastValue(value),1);
> >> > Plot(IIf(tf AND sln==0,value,Null),"",color,sty,0,0,shf);
> >> > Plot(IIf(sln==1,Lin,Null),"",color,sty,0,0,shf); }
> >> > //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx //Time and Dates
> >> > begD = DateNum() != Ref(DateNum(),-1);//Begin New Day
> >> > fboD = LastValue(ValueWhen(begD,bi,1));//First Bar of Day
> >> > endD = DateNum() != Ref(DateNum(), 1);//End of Day
> >> > lboD = LastValue(ValueWhen(endD,bi,1));//Last Bar of Day
> >> > lbpd = LastValue(ValueWhen(begD,bi,2)-1);//Last Bar of Previous Day
> >> > tday = DateNum()==LastValue(DateNum(),1);//Includes current fbod to
> future lbod
> >> > pdaz= ValueWhen(begD,Ref(DateNum(),-1),1);//All bars prior to
> existing lbod
> >> > prdaz=pdaz AND NOT tday;
> >> > notda= NOT tday;
> >> > //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> >> > _SECTION_BEGIN("Intraday Time Pivots");
> >> > //===============================
> >> > ipv = ParamList("Sup Res
> Pivots","Off|All|Calculate|OHLC|Lines|Labels",3);
> >> > psh= ParamToggle("Plot Shapes", "Off|On",0);
> >> > htx = Param("Text Shift",18,-200,150,1);
> >> > sln= ParamToggle("Short Lines", "Off|On",1);
> >> > lls = Param("Short Line Length",3,0,500,1)*10;
> >> > shf = Param("Shift Line Right",2,0,50,1);
> >> > rsc = ParamToggle("No Rescale","Off|On",1);
> >> > sty = ParamStyle("Style",4096);
> >> > optn= Param("Market Open",93000,00000,235959,000500);
> >> > cltn= Param("Market Close",161500,00000,235959,000500);
> >> > plsi= Param("Start Plotting",083000,00000,240000,000500);
> >> > plei= Param("End Plotting",161500,00000,240000,000500);
> >> > //===================
> >> > function tvy(tstart,tframe,array) {
> >> > if(array==1)y =
> ValueWhen(tframe,HighestSince(Cross(tn,tstart),H),1);
> >> > if(array==2)y =
> ValueWhen(tframe,LowestSince(Cross(tn,tstart),L),1);
> >> > y0=IIf(y>0,y,Null);
> >> > return y0; }
> >> > //======================
> >> > function xbar(tstart,tframe,array) {
> >> > if(array==1) {
> >> >
> y=ValueWhen(tframe,HighestSince(Cross(tn,tstart),H),1);
> >> > x=BarIndex()==ValueWhen(tframe AND H==y,bi);
> >> > x0=bc-LastValue(BarsSince(x>0),1); }
> >> > if(array==2) {
> >> >
> y=ValueWhen(tframe,LowestSince(Cross(tn,tstart),L),1);
> >> > x=bi==ValueWhen(tframe AND L==y,bi);
> >> > x0=bc-BarsSince(x>0); }
> >> > return x0; }
> >> > //==============
> >> > if(ipv=="All" OR ipv=="Calculate" OR ipv=="Lines" OR ipv=="Labels"
> OR ipv=="OHLC" OR psh==1) {
> >> > pmtn = optn-010000; premkt = tn >= pmtn AND tn <= optn;
> >> > mk05 = optn+000500; tfrm05 = tn>=optn AND tn<= mk05;
> >> > mk15 = optn+001500; tfrm15 = tn>=optn AND tn<= mk15;
> >> > mk30 = optn+003000; tfrm30 = tn>=optn AND tn<= mk30;
> >> > mk45 = optn+004500; tfrm45 = tn>=optn AND tn<= mk45;
> >> > mk60 = optn+010000; tfrm60 = tn>=optn AND tn<= mk60;
> >> > mkss = 110000;
> >> > mkse = 133000; tfrslo = tn>=mkss AND tn<= mkse;
> >> > va30 = 154500; tfva30 = tn>=va30 AND tn<= cltn;
> >> > va2h = cltn-020000; tf2hrs = tn>=va2h AND tn<= cltn;
> >> > mktHrs = tn>=optn AND tn<= cltn;
> >> > pltval = tn>=plsi AND tn<= va2h;
> >> > //======================
> >> >
> >> > cyHi = HighestSince(bi==fbod,H);
> >> > cxHi = ValueWhen(tday AND H==cyHi,bi);
> >> > cyLo = LowestSince(bi==fbod,L);
> >> > cxLo = ValueWhen(tday AND L==cyLo,bi);
> >> > pyHi = ValueWhen(prdaz,HighestSince(bi==lbpd,H),1);
> >> > pxHi = ValueWhen(H==pyHi AND NOT tday ,bi);
> >> > pyLo = ValueWhen(prdaz,LowestSince(bi==lbpd,L),1);
> >> > pxLo = ValueWhen(L==pyLo AND NOT tday,bi);
> >> > mkOp = ValueWhen(Cross(tn,cltn),O,1);
> >> > xmOp = bc-BarsSince(Cross(tn,optn)>0);
> >> > mkCl = ValueWhen(Cross(TimeNum(),160000),C);
> >> > xmCL = bc-BarsSince(Cross(TimeNum(),160000)>0);
> >> > xpmk = bc-BarsSince(Cross(tn,optn)>0);
> //======================
> >> > poHi=tvy(pmtn,premkt,1); poLo=tvy(pmtn,premkt,2);
> >> > mkHi=tvy(optn,mktHrs,1); mkLo=tvy(optn,mktHrs,2);
> >> > Hi05=tvy(optn,tfrm05,1); Lo05=tvy(optn,tfrm05,2);
> >> > Hi15=tvy(optn,tfrm15,1); Lo15=tvy(optn,tfrm15,2);
> >> > Hi30=tvy(optn,tfrm30,1); Lo30=tvy(optn,tfrm30,2);
> >> > Hi60=tvy(optn,tfrm60,1); Lo60=tvy(optn,tfrm60,2);
> >> > vH2h=tvy(va2h,tf2hrs,1); vL2h=tvy(va2h,tf2hrs,2);
> >> > vH30=tvy(va30,tfva30,1); vL30=tvy(va30,tfva30,2);
> >> > ACDos = (Hi15- Lo15) * 0.50;
> >> > ACDHi=Hi15+ACDos; ACDLo=Lo15-ACDos;
> >> > dRange = cyHi - cyLo;
> >> > mRange = mkHi - mkLo;
> >> > }
> >> > //===================
> >> > sty1=8|sty|rsc*2048; sty2=32|sty|rsc*2048;
> >> > tfplt = TimeNum()>=plsi AND TimeNum()<=plei;
> >> > if(ipv=="All" OR ipv=="Lines" OR ipv=="OHLC") {
> >> > hrplt(tfplt,mkOp,29,sty1,shf);
> hrplt(tfplt,mkCl,55,sty1,shf);
> >> > hrplt(tfplt,poHi,10,sty1,shf);
> hrplt(tfplt,poLo,10,sty1,shf);
> >> > hrplt(tfplt,mkHi,32,sty1,shf);
> hrplt(tfplt,mkLo,34,sty1,shf);
> >> > hrplt(tfplt,pyHi,25,sty1,shf);
> hrplt(tfplt,pyLo,51,sty1,shf);
> >> > }
> >> > if(ipv=="All" OR ipv=="Lines") {
> >> > hrplt(tfplt,Hi05,27,sty2,shf);
> hrplt(tfplt,Lo05,27,sty2,shf);
> >> > hrplt(tfplt,Hi15,42,sty2,shf);
> hrplt(tfplt,Lo15,42,sty2,shf);
> >> > hrplt(tfplt,Hi30,11,sty2,shf);
> hrplt(tfplt,Lo05,11,sty2,shf);
> >> > hrplt(tfplt,Hi60,36,sty2,shf);
> hrplt(tfplt,Lo60,36,sty2,shf);
> >> > hrplt(tfplt,vH2h,33,sty2,shf);
> hrplt(tfplt,vL2h,34,sty2,shf);
> >> > hrplt(tfplt,vH30,25,sty2,shf);
> hrplt(tfplt,vL30,51,sty2,shf);
> >> > hrplt(tfplt,ACDHi,42,sty1,shf);
> hrplt(tfplt,ACDLo,42,sty1,shf);
> >> > }
> >> > //===================
> >> > GfxSelectFont("Tahoma",10,400); GfxSetBkColor(16);
> GfxSetOverlayMode(1); GfxSetBkMode(2);
> >> > xp=Min(tpX(htx+sbi),pxchartright-80); ha=-5;
> >> > if(ipv=="All" OR ipv=="Labels" OR ipv=="OHLC") {
> >> > gtx(vH2h,33,"vH2h",xp); gtx(vL2h,34,"vL2h",xp);
> gtx(vH30,25,"vH30",xp); gtx(vL30,51,"vL30",xp);
> >> > gtx(mkOp,10,"mkOp",xp); gtx(mkCl,55,"mkCl",xp);
> gtx(pyHi,25,"prHi",xp); gtx(pyLo,51,"prLo",xp);
> >> > }
> >> > if(ipv=="All" OR ipv=="Labels") {
> >> > gtx(poHi,10,"preH",xp); gtx(poLo,10,"PreL",xp);
> gtx(mkHi,32,"mkHi",xp); gtx(mkLo,34,"mkLo",xp);
> >> > gtx(Hi05,27,"Hi05",xp); gtx(Lo05,27,"Lo05",xp);
> gtx(Hi15,42,"Hi15",xp); gtx(Hi30,11,"Hi30",xp);
> >> > gtx(Lo30,11,"Lo30",xp); gtx(Hi60,36,"Hi60",xp);
> gtx(Lo60,36,"Lo60",xp);
> >> > }
> >> > //===========================
> >> > up=shapeStar; dn=shapeStar; shp=shapeNone;
> >> > os=30;
> >> > //======================
> >> > if(psh==1) {
> >> > xoHi=xbar(pmtn,premkt,1); plshp(xoHi,poHi,dn,10, os);
> >> > xoLo=xbar(pmtn,premkt,2); plshp(xoLo,poLo,up,10,-os);
> >> > xmHi=xbar(optn,mktHrs,1); plshp(xmHi,mkHi,dn,32, os+10);
> >> > xmLo=xbar(optn,mktHrs,2); plshp(xmLo,mkLo,up,34,-os+10);
> >> > xH05=xbar(optn,tfrm05,1); plshp(xH05,Hi05,dn,51, os);
> >> > xL05=xbar(optn,tfrm05,2); plshp(xL05,Lo05,dn,34,-os);
> >> > xH15=xbar(optn,tfrm15,1); plshp(xH15,Hi15,up,42, os+15);
> >> > xL15=xbar(optn,tfrm15,2); plshp(xL15,Lo15,up,42,-os+15);
> >> > xH30=xbar(optn,tfrm30,1); plshp(xH30,Hi30,dn,11, os+10);
> >> > xL30=xbar(optn,tfrm30,2); plshp(xL30,Lo30,up,11,-os+10);
> >> > xH60=xbar(optn,tfrm60,1); plshp(xH60,Hi60,dn,36, os);
> >> > xL60=xbar(optn,tfrm60,2); plshp(xL60,Lo60,up,36,-os+15);
> >> > xvH2=xbar(va2h,tf2hrs,1); plshp(xvH2,vH2h,dn,34, os);
> >> > xvL2=xbar(va2h,tf2hrs,2); plshp(xvL2,vL2h,up,33,-os);
> >> > xvH3=xbar(va30,tfva30,1); plshp(xvH3,vH30,dn,43, os);
> >> > xvL3=xbar(va30,tfva30,2); plshp(xvL3,vL30,up,25,-os);
> >> > }
> >> > //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> >> > _SECTION_BEGIN("Market Markers");
> >> > //===============================
> >> > mkrs= ParamToggle("Plot Markers", "Off|On",0);
> >> > if(mkrs==1) {
> >> > VbarO = Cross(TimeNum(),optn);
> >> > VbarC = Cross(TimeNum(),cltn);
> >> > Plot(VbarO,"",10,2|32|styleOwnScale|4096|4);
> >> > Plot(VbarC,"",55,2|32|styleOwnScale|4096|4);
> >> > }
> >> > _SECTION_END();
> >> > //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> >> > Title = EncodeColor(55)+ Title = Name() + " " + EncodeColor(32) +
> Date() + " " + EncodeColor(5) + "{{INTERVAL}} " +
> >> > //Title = EncodeColor(55)+ Date() + " Tick = " + EncodeColor(5) +
> Interval()+
> >> > EncodeColor(55)+ " Open = "+ EncodeColor(52)+ WriteVal(O,dec) +
> >> > EncodeColor(55)+ " High = "+ EncodeColor(5) + WriteVal(H,dec) +
> >> > EncodeColor(55)+ " Low = "+ EncodeColor(32)+ WriteVal(L,dec) +
> >> > EncodeColor(55)+ " Close = "+ EncodeColor(52)+ WriteVal(C,dec) +
> >> > EncodeColor(55)+ " Volume = "+EncodeColor(52)+ WriteVal(V,1.0) +
> >> > EncodeColor(55)+ " bi= "+EncodeColor(42)+ WriteVal(sbi,1) +
> >> > EncodeColor(55)+ " Bar to End = "+ EncodeColor(10)+
> WriteVal(Lbi-sbi,1.0);
> >> >
> >> >
> >> >
> >> >
> >> >
> >> >
> >> > --- In amibroker@xxxxxxxxxxxxxxx, reinsley <reinsley@> wrote:
> >> >>
> >> >>
> >> >> Woozi,
> >> >>
> >> >> The initial plot is ok. As soon as I modify param "Plot Shapes" to ON,
> I
> >> >> get errors.
> >> >>
> >> >> I hope my screen captures are published...
> >> >>
> >> >> Best regards
> >> >>
> >> >> wooziwog a écrit :
> >> >> >
> >> >> >
> >> >> > Hi Reinsley,
> >> >> >
> >> >> > I see your post "Many variables not initialized" but don't
> understand
> >> >> > what arrays / values your are referring to.
> >> >> > I would appreciate additional details.
> >> >> >
> >> >> > Thanks,
> >> >> >
> >> >> > David K.
> >> >> >
> >> >> > --- In amibroker@xxxxxxxxxxxxxxx
> <mailto:amibroker%40yahoogroups.com>,
> >> >> > reinsley <reinsley@> wrote:
> >> >> > >
> >> >> > >
> >> >> > > Woozi, Thanks for sharing
> >> >> > >
> >> >> > > Many variables not initialized...
> >> >> > >
> >> >> > > Best regards
> >> >> > >
> >> >> > >
> >> >> > > wooziwog a écrit :
> >> >> > > >
> >> >> > > >
> >> >> > > > Tim,
> >> >> > > >
> >> >> > > > The following uses AB functions for plotting intraday pivots.
> >> >> > > > You can modify it to suit your needs.
> >> >> > > > I am using version 5.2.9.2. If you have any problems with it
> check for
> >> >> > > > line wrapping, I copied it from my intraday chart and tested
> it.
> >> >> > > >
> >> >> > > > David K.
> >> >> > > >
> >> >> > > > //======================
> >> >> > > > _SECTION_BEGIN("Chart Settings");
> >> >> > > > //======================
> >> >> > > > SetChartOptions(0, chartShowDates);
> >> >> > > > SetChartBkColor(1);
> >> >> > > > GraphXSpace=Param("GraphXSpace",15,0,300,1);
> >> >> > > > dec= IIf(StrRight(Name(),3) == "", 3.2, 3.2);
> >> >> > > > bc = BarCount-1;
> >> >> > > > bi = BarIndex();
> >> >> > > > Lbi = LastValue(bi);
> >> >> > > > sbi = SelectedValue(BarIndex());
> >> >> > > > tn = TimeNum();
> >> >> > > > Plot(C,"",IIf(C>O,34,IIf(C<O,32,55)),128,4);
> >> >> > > > //======================
> >> >> > > > pxchartright = Status("pxChartRight");//returns y-coordinate of
> >> >> > top-left
> >> >> > > > corner
> >> >> > > > //======================
> >> >> > > > _SECTION_BEGIN("GFX X Conversion");
> >> >> > > > function tpX(bar) {
> >> >> > > > lvb = Status("LastVisibleBar");
> >> >> > > > fvb = Status("FirstVisibleBar");
> >> >> > > > pxchartleft = Status("pxChartLeft");
> >> >> > > > pxchartright = Status("pxChartRight");
> >> >> > > > pxheight = Status("pxheight");
> >> >> > > > pxchartwidth = Status("pxChartWidth");
> >> >> > > > return pxchartleft+(bar-fvb)*pxchartwidth/(Lvb-fvb+1); }
> >> >> > > > _SECTION_END();
> >> >> > > > //======================
> >> >> > > > _SECTION_BEGIN("GFX Y Conversion");
> >> >> > > > function tPY(Value) {
> >> >> > > > local Miny, Maxy, pxchartbottom, pxchartheight;
> >> >> > > > Miny = Status("AxisMiny");
> >> >> > > > Maxy = Status("AxisMaxy");
> >> >> > > > pxchartbottom = Status("pxChartBottom");
> >> >> > > > pxchartheight = Status("pxChartHeight");
> >> >> > > > return pxchartbottom - floor(0.5
> >> >> > +(Value-Miny)*pxchartheight/(Maxy-Miny)); }
> >> >> > > > _SECTION_END();
> >> >> > > > //======================
> >> >> > > > _SECTION_BEGIN("GFX Text+Label, GFX Y, Std X");
> >> >> > > > //======================
> >> >> > > > dec=0; ha=0;
> >> >> > > > procedure gtx(val,color,string,xpos) {
> >> >> > > > GfxSetTextColor(color);
> >> >> > > > gtext=GfxDrawText(NumToStr(val,dec)+"-"+
> >> >> > > > StrExtract(string,0)+"
> ",xpos,tpY(SelectedValue(val))+ha,0,0,256);
> >> >> > > > return gtext; }
> >> >> > > > _SECTION_END();
> >> >> > > > //======================
> >> >> > > > _SECTION_BEGIN("Plot Shapes");
> >> >> > > > //======================
> >> >> > > > procedure plshp(x,y,shape,color,shift)
> >> >> > > > { PlotShapes(IIf(BarIndex()==x,shape,0),color,0,y,shift); }
> >> >> > > > //======================
> >> >> > > > lls=0; sln=0;
> >> >> > > > procedure hrplt(tf,value,color,sty,shf) {
> >> >> > > > Lin=LineArray(Lbi-lls-shf,LastValue(value),
> >> >> > > > Lbi+shf,LastValue(value),1);
> >> >> > > > Plot(IIf(tf AND sln==0,value,Null),"",color,sty,0,0,shf);
> >> >> > > > Plot(IIf(sln==1,Lin,Null),"",color,sty,0,0,shf); }
> >> >> > > > //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> >> >> > > > _SECTION_BEGIN("Intraday Time Pivots");
> >> >> > > > //===============================
> >> >> > > > ipv = ParamList("Sup Res
> >> >> > Pivots","Off|All|Calculate||OHLC|Lines|Labels",3);
> >> >> > > > psh= ParamToggle("Plot Shapes", "Off|On",0);
> >> >> > > > htx = Param("Text Shift",18,-200,150,1);
> >> >> > > > sln= ParamToggle("Short Lines", "Off|On",1);
> >> >> > > > lls = Param("Short Line Length",3,0,500,1)*10;
> >> >> > > > shf = Param("Shift Line Right",2,0,50,1);
> >> >> > > > rsc = ParamToggle("No Rescale","Off|On",1);
> >> >> > > > sty = ParamStyle("Style",4096);
> >> >> > > > optn= Param("Market Open",93000,00000,235959,000500);
> >> >> > > > cltn= Param("Market Close",161500,00000,235959,000500);
> >> >> > > > plsi= Param("Start Plotting",083000,00000,240000,000500);
> >> >> > > > plei= Param("End Plotting",161500,00000,240000,000500);
> >> >> > > > //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> >> >> > > > //Time and Dates
> >> >> > > > begD = DateNum() != Ref(DateNum(),-1);//Begin New Day
> >> >> > > > fboD = LastValue(ValueWhen(begD,bi,1));//First Bar of Day
> >> >> > > > endD = DateNum() != Ref(DateNum(), 1);//End of Day
> >> >> > > > lboD = LastValue(ValueWhen(endD,bi,1));//Last Bar of Day
> >> >> > > > lbpd = LastValue(ValueWhen(begD,bi,2)-1);//Last Bar of Previous
> Day
> >> >> > > > tday = DateNum()==LastValue(DateNum(),1);//Includes current
> fbod to
> >> >> > > > future lbod
> >> >> > > > pdaz= ValueWhen(begD,Ref(DateNum(),-1),1);//All bars prior to
> >> >> > existing lbod
> >> >> > > > prdaz=pdaz AND NOT tday;
> >> >> > > > notda= NOT tday;
> >> >> > > > //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> >> >> > > > function tvy(tstart,tframe,array) {
> >> >> > > > if(array==1)y =
> ValueWhen(tframe,HighestSince(Cross(tn,tstart),H),1);
> >> >> > > > if(array==2)y =
> ValueWhen(tframe,LowestSince(Cross(tn,tstart),L),1);
> >> >> > > > y0=IIf(y>0,y,Null);
> >> >> > > > return y0; }
> >> >> > > > //======================
> >> >> > > > function xbar(tstart,tframe,array) {
> >> >> > > > if(array==1) {
> >> >> > > > y=ValueWhen(tframe,HighestSince(Cross(tn,tstart),H),1);
> >> >> > > > x=BarIndex()==ValueWhen(tframe AND H==y,bi);
> >> >> > > > x0=bc-LastValue(BarsSince(x>0),1); }
> >> >> > > > if(array==2) {
> >> >> > > > y=ValueWhen(tframe,LowestSince(Cross(tn,tstart),L),1);
> >> >> > > > x=bi==ValueWhen(tframe AND L==y,bi);
> >> >> > > > x0=bc-BarsSince(x>0); }
> >> >> > > > return x0; }
> >> >> > > > //==============
> >> >> > > > if(ipv=="All" OR ipv=="Calculate" OR ipv=="Lines" OR
> ipv=="Labels" OR
> >> >> > > > ipv=="OHLC") {
> >> >> > > > pmtn = optn-010000; premkt = tn >= pmtn AND tn <= optn;
> >> >> > > > mk05 = optn+000500; tfrm05 = tn>=optn AND tn<= mk05;
> >> >> > > > mk15 = optn+001500; tfrm15 = tn>=optn AND tn<= mk15;
> >> >> > > > mk30 = optn+003000; tfrm30 = tn>=optn AND tn<= mk30;
> >> >> > > > mk45 = optn+004500; tfrm45 = tn>=optn AND tn<= mk45;
> >> >> > > > mk60 = optn+010000; tfrm60 = tn>=optn AND tn<= mk60;
> >> >> > > > mkss = 110000;
> >> >> > > > mkse = 133000; tfrslo = tn>=mkss AND tn<= mkse;
> >> >> > > > va30 = 154500; tfva30 = tn>=va30 AND tn<= cltn;
> >> >> > > > va2h = cltn-020000; tf2hrs = tn>=va2h AND tn<= cltn;
> >> >> > > > mktHrs = tn>=optn AND tn<= cltn;
> >> >> > > > pltval = tn>=plsi AND tn<= va2h;
> >> >> > > > //======================
> >> >> > > >
> >> >> > > > cyHi = HighestSince(bi==fbod,H);
> >> >> > > > cxHi = ValueWhen(tday AND H==cyHi,bi);
> >> >> > > > cyLo = LowestSince(bi==fbod,L);
> >> >> > > > cxLo = ValueWhen(tday AND L==cyLo,bi);
> >> >> > > > pyHi = ValueWhen(prdaz,HighestSince(bi==lbpd,H),1);
> >> >> > > > pxHi = ValueWhen(H==pyHi AND NOT tday ,bi);
> >> >> > > > pyLo = ValueWhen(prdaz,LowestSince(bi==lbpd,L),1);
> >> >> > > > pxLo = ValueWhen(L==pyLo AND NOT tday,bi);
> >> >> > > > mkOp = ValueWhen(Cross(tn,cltn),O,1);
> >> >> > > > xmOp = bc-BarsSince(Cross(tn,optn)>0);
> >> >> > > > mkCl = ValueWhen(Cross(TimeNum(),160000),C);
> >> >> > > > xmCL = bc-BarsSince(Cross(TimeNum(),160000)>0);
> >> >> > > > xpmk = bc-BarsSince(Cross(tn,optn)>0);
> >> >> > > > //======================
> >> >> > > > poHi=tvy(pmtn,premkt,1); poLo=tvy(pmtn,premkt,2);
> >> >> > > > mkHi=tvy(optn,mktHrs,1); mkLo=tvy(optn,mktHrs,2);
> >> >> > > > Hi05=tvy(optn,tfrm05,1); Lo05=tvy(optn,tfrm05,2);
> >> >> > > > Hi15=tvy(optn,tfrm15,1); Lo15=tvy(optn,tfrm15,2);
> >> >> > > > Hi30=tvy(optn,tfrm30,1); Lo30=tvy(optn,tfrm30,2);
> >> >> > > > Hi60=tvy(optn,tfrm60,1); Lo60=tvy(optn,tfrm60,2);
> >> >> > > > vH2h=tvy(va2h,tf2hrs,1); vL2h=tvy(va2h,tf2hrs,2);
> >> >> > > > vH30=tvy(va30,tfva30,1); vL30=tvy(va30,tfva30,2);
> >> >> > > > ACDos = (Hi15- Lo15) * 0.50;
> >> >> > > > ACDHi=Hi15+ACDos; ACDLo=Lo15-ACDos;
> >> >> > > > dRange = cyHi - cyLo;
> >> >> > > > mRange = mkHi - mkLo;
> >> >> > > > }
> >> >> > > > //===================
> >> >> > > > sty1=8|sty|rsc*2048; sty2=32|sty|rsc*2048;
> >> >> > > > tfplt = TimeNum()>=plsi AND TimeNum()<=plei;
> >> >> > > > if(ipv=="All" OR ipv=="Lines" OR ipv=="OHLC") {
> >> >> > > > hrplt(tfplt,mkOp,29,sty1,shf); hrplt(tfplt,mkCl,55,sty1,shf);
> >> >> > > > hrplt(tfplt,poHi,10,sty1,shf); hrplt(tfplt,poLo,10,sty1,shf);
> >> >> > > > hrplt(tfplt,mkHi,32,sty1,shf); hrplt(tfplt,mkLo,34,sty1,shf);
> >> >> > > > hrplt(tfplt,pyHi,25,sty1,shf); hrplt(tfplt,pyLo,51,sty1,shf);
> >> >> > > > }
> >> >> > > > if(ipv=="All" OR ipv=="Lines") {
> >> >> > > > hrplt(tfplt,Hi05,27,sty2,shf); hrplt(tfplt,Lo05,27,sty2,shf);
> >> >> > > > hrplt(tfplt,Hi15,42,sty2,shf); hrplt(tfplt,Lo15,42,sty2,shf);
> >> >> > > > hrplt(tfplt,Hi30,11,sty2,shf); hrplt(tfplt,Lo05,11,sty2,shf);
> >> >> > > > hrplt(tfplt,Hi60,36,sty2,shf); hrplt(tfplt,Lo60,36,sty2,shf);
> >> >> > > > hrplt(tfplt,vH2h,33,sty2,shf); hrplt(tfplt,vL2h,34,sty2,shf);
> >> >> > > > hrplt(tfplt,vH30,25,sty2,shf); hrplt(tfplt,vL30,51,sty2,shf);
> >> >> > > > hrplt(tfplt,ACDHi,42,sty1,shf); hrplt(tfplt,ACDLo,42,sty1,shf);
> >> >> > > > }
> >> >> > > > //===================
> >> >> > > > GfxSelectFont("Tahoma",10,400); GfxSetBkColor(16);
> >> >> > GfxSetOverlayMode(1);
> >> >> > > > GfxSetBkMode(2);
> >> >> > > > xp=Min(tpX(htx+sbi),pxchartright-80); ha=-5;
> >> >> > > > if(ipv=="All" OR ipv=="Labels" OR ipv=="OHLC") {
> >> >> > > > gtx(vH2h,33,"vH2h",xp); gtx(vL2h,34,"vL2h",xp);
> >> >> > gtx(vH30,25,"vH30",xp);
> >> >> > > > gtx(vL30,51,"vL30",xp);
> >> >> > > > gtx(mkOp,10,"mkOp",xp); gtx(mkCl,55,"mkCl",xp);
> >> >> > gtx(pyHi,25,"prHi",xp);
> >> >> > > > gtx(pyLo,51,"prLo",xp);
> >> >> > > > }
> >> >> > > > if(ipv=="All" OR ipv=="Labels") {
> >> >> > > > gtx(poHi,10,"preH",xp); gtx(poLo,10,"PreL",xp);
> >> >> > gtx(mkHi,32,"mkHi",xp);
> >> >> > > > gtx(mkLo,34,"mkLo",xp);
> >> >> > > > gtx(Hi05,27,"Hi05",xp); gtx(Lo05,27,"Lo05",xp);
> >> >> > gtx(Hi15,42,"Hi15",xp);
> >> >> > > > gtx(Hi30,11,"Hi30",xp);
> >> >> > > > gtx(Lo30,11,"Lo30",xp); gtx(Hi60,36,"Hi60",xp);
> gtx(Lo60,36,"Lo60",xp);
> >> >> > > > }
> >> >> > > > //===========================
> >> >> > > > up=shapeStar; dn=shapeStar; shp=shapeNone;
> >> >> > > > os=30;
> >> >> > > > //======================
> >> >> > > > if(psh==1) {
> >> >> > > > xoHi=xbar(pmtn,premkt,1); plshp(xoHi,preH,dn,10, os);
> >> >> > > > xoLo=xbar(pmtn,premkt,2); plshp(xoLo,preL,up,10,-os);
> >> >> > > > xmHi=xbar(optn,mktHrs,1); plshp(xmHi,mkHi,dn,32, os+10);
> >> >> > > > xmLo=xbar(optn,mktHrs,2); plshp(xmLo,mkLo,up,34,-os+10);
> >> >> > > > xH05=xbar(optn,tfrm05,1); plshp(xH05,Hi05,dn,51, os);
> >> >> > > > xL05=xbar(optn,tfrm05,2); plshp(xL05,Lo05,dn,34,-os);
> >> >> > > > xH15=xbar(optn,tfrm15,1); plshp(xH15,Hi15,up,42, os+15);
> >> >> > > > xL15=xbar(optn,tfrm15,2); plshp(xL15,Lo15,up,42,-os+15);
> >> >> > > > xH30=xbar(optn,tfrm30,1); plshp(xH30,Hi30,dn,11, os+10);
> >> >> > > > xL30=xbar(optn,tfrm30,2); plshp(xL30,Lo30,up,11,-os+10);
> >> >> > > > xH60=xbar(optn,tfrm60,1); plshp(xH60,Hi60,dn,36, os);
> >> >> > > > xL60=xbar(optn,tfrm60,2); plshp(xL60,Lo60,up,36,-os);
> >> >> > > > xvH2=xbar(va2h,tf2hrs,1); plshp(xvH2,vH2h,dn,34, os);
> >> >> > > > xvL2=xbar(va2h,tf2hrs,2); plshp(xvL2,vL2h,up,33,-os);
> >> >> > > > xvH3=xbar(va30,tfva30,1); plshp(xvH3,vH30,dn,43, os);
> >> >> > > > xvL3=xbar(va30,tfva30,2); plshp(xvL3,vL30,up,25,-os);
> >> >> > > > }
> >> >> > > > //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> >> >> > > > _SECTION_BEGIN("Market Markers");
> >> >> > > > //===============================
> >> >> > > > mkrs= ParamToggle("Plot Markers", "Off|On",0);
> >> >> > > > if(mkrs==1) {
> >> >> > > > VbarO = Cross(TimeNum(),optn);
> >> >> > > > VbarC = Cross(TimeNum(),cltn);
> >> >> > > > Plot(VbarO,"",10,2|32|styleOwnScale|4096|4);
> >> >> > > > Plot(VbarC,"",55,2|32|styleOwnScale|4096|4);
> >> >> > > > }
> >> >> > > > _SECTION_END();
> >> >> > > > //xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> >> >> > > > Title = EncodeColor(55)+ Title = Name() + " " + EncodeColor(32)
> +
> >> >> > Date()
> >> >> > > > + " " + EncodeColor(5) + "{{INTERVAL}} " +
> >> >> > > > //Title = EncodeColor(55)+ Date() + " Tick = " + EncodeColor(5)
> +
> >> >> > > > Interval()+
> >> >> > > > EncodeColor(55)+ " Open = "+ EncodeColor(52)+ WriteVal(O,dec) +
> >> >> > > > EncodeColor(55)+ " High = "+ EncodeColor(5) + WriteVal(H,dec) +
> >> >> > > > EncodeColor(55)+ " Low = "+ EncodeColor(32)+ WriteVal(L,dec) +
> >> >> > > > EncodeColor(55)+ " Close = "+ EncodeColor(52)+ WriteVal(C,dec)
> +
> >> >> > > > EncodeColor(55)+ " Volume = "+EncodeColor(52)+ WriteVal(V,1.0)
> +
> >> >> > > > EncodeColor(55)+ " bi= "+EncodeColor(42)+ WriteVal(sbi,1) +
> >> >> > > > EncodeColor(55)+ " Bar to End = "+ EncodeColor(10)+
> >> >> > WriteVal(Lbi-sbi,1.0);
> >> >> > > >
> >> >> > > > --- In amibroker@xxxxxxxxxxxxxxx
> >> >> > <mailto:amibroker%40yahoogroups.com>
> <mailto:amibroker%40yahoogroups.com>,
> >> >> > > > "Tim" <timkthung@> wrote:
> >> >> > > > >
> >> >> > > > > Thanks de again. Let me try to figure out something.
> >> >> > > > >
> >> >> > > > >
> >> >> > > > > From: de_techneut
> >> >> > > > > Sent: Friday, December 04, 2009 6:50 AM
> >> >> > > > > To: amibroker@xxxxxxxxxxxxxxx
> >> >> > <mailto:amibroker%40yahoogroups.com>
> <mailto:amibroker%40yahoogroups.com>
> >> >> > > > > Subject: [amibroker] Re: SUPER PIVOT POINTS
> >> >> > > > >
> >> >> > > > >
> >> >> > > > >
> >> >> > > > > Hi Tim, I am also just getting to know Amibroker and AFL, the
> .dll
> >> >> > > > was not written by me. I would like to ask more experienced
> users to
> >> >> > > > help a hand here. I can tell you the logic in the code but
> >> >> > implementing
> >> >> > > > it and getting nothing but green (no errors ) is a bridge to
> far
> >> >> > for me
> >> >> > > > now. the logic to be used could be : determine the highest high
> of a
> >> >> > > > period the lowest low and the close. calculate your pivots
> >> >> > > > >
> >> >> > > > >
> >> >> > > > >
> >> >> > > > > use deFlagTimeRange( starttime, endtime) to mark your market
> open
> >> >> > and
> >> >> > > > you market close
> >> >> > > > >
> >> >> > > > >
> >> >> > > > > then something like
> >> >> > > > >
> >> >> > > > >
> >> >> > > > > openmarket=deFlagTimeRange( starttime, endtime);
> >> >> > > > >
> >> >> > > > >
> >> >> > > > > highofmarket=null;//initialisation
> >> >> > > > > lowofmarket=null;//initialisation
> >> >> > > > > if (openmarket)
> >> >> > > > > {
> >> >> > > > > highofmarket=iif(h>highofmarket,h,highofmarket);
> >> >> > > > > lowofmarket=iif(l<lowofmarket,l,lowofmarket);
> >> >> > > > > marketpivot= (highofmarket+ lowofmarket+c)/3;
> >> >> > > > > suport1=(marketpivot*2)-highofmarket;
> >> >> > > > > resistance1=(marketpivot*2)-lowofmarket;
> >> >> > > > > /* and so on */
> >> >> > > > > }
> >> >> > > > > this is just of the top of my head, i haven't tested this
> code ( i
> >> >> > > > doubt it works but maybe you get the idea and can take it
> further.
> >> >> > > > >
> >> >> > > > >
> >> >> > > > > Kind regards
> >> >> > > > > Marc
> >> >> > > > >
> >> >> > > > >
> >> >> > > > >
> >> >> > > > >
> >> >> > > > >
> >> >> > > > >
> >> >> > > > > --- In amibroker@xxxxxxxxxxxxxxx
> >> >> > <mailto:amibroker%40yahoogroups.com>
> >> >> > > > <mailto:amibroker%40yahoogroups.com>, "Tim" <timkthung@> wrote:
> >> >> > > > >
> >> >> > > > >
> >> >> > > > > >
> >> >> > > > > > Thanks de. I had downloaded it. Would you please show me
> how to
> >> >> > use
> >> >> > > > it.
> >> >> > > > > >
> >> >> > > > > >
> >> >> > > > > > From: de_techneut
> >> >> > > > > > Sent: Thursday, December 03, 2009 11:29 PM
> >> >> > > > > > To: amibroker@xxxxxxxxxxxxxxx
> >> >> > <mailto:amibroker%40yahoogroups.com>
> <mailto:amibroker%40yahoogroups.com>
> >> >> > > > > > Subject: [amibroker] Re: SUPER PIVOT POINTS
> >> >> > > > > >
> >> >> > > > > >
> >> >> > > > > >
> >> >> > > > > > Hi Tim, it is possible to do that with the use of a plugin
> called
> >> >> > > > deDATETIME. it has functions which enables you to define your
> own time
> >> >> > > > interval hope this helps. Marc
> >> >> > > > > > --- In amibroker@xxxxxxxxxxxxxxx
> >> >> > <mailto:amibroker%40yahoogroups.com>
> >> >> > > > <mailto:amibroker%40yahoogroups.com>, "Tim" timkthung@ wrote:
> >> >> > > > > > >
> >> >> > > > > > > Hello everybody,
> >> >> > > > > > > Would anyone please tell me whether we could define the
> cutting
> >> >> > > > time in calculating the daily pivots for the next day.
> >> >> > > > > > > I raise this issue because of my time-zone difference
> from
> >> >> > the NY
> >> >> > > > stock exchange.
> >> >> > > > > > > Much appreciate if anyone could help.
> >> >> > > > > > >
> >> >> > > > > > > Tim
> >> >> > > > > > >
> >> >> > > > > >
> >> >> > > > >
> >> >> > > >
> >> >> > > >
> >> >> > >
> >> >> >
> >> >> >
> >> >>
> >> >
> >> >
> >> >
> >>
> >>
> >> --
> >>
> >
> >
> >
>
>
> --
>
>
> ------------------------------------
>
> **** IMPORTANT PLEASE READ ****
> This group is for the discussion between users only.
> This is *NOT* technical support channel.
>
> TO GET TECHNICAL SUPPORT send an e-mail directly to
> SUPPORT {at} amibroker.com
>
> TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
> http://www.amibroker.com/feedback/
> (submissions sent via other channels won't be considered)
>
> For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
> http://www.amibroker.com/devlog/
>
> Yahoo! Groups Links
>
------------------------------------
**** IMPORTANT PLEASE READ ****
This group is for the discussion between users only.
This is *NOT* technical support channel.
TO GET TECHNICAL SUPPORT send an e-mail directly to
SUPPORT {at} amibroker.com
TO SUBMIT SUGGESTIONS please use FEEDBACK CENTER at
http://www.amibroker.com/feedback/
(submissions sent via other channels won't be considered)
For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/amibroker/
<*> Your email settings:
Individual Email | Traditional
<*> To change settings online go to:
http://groups.yahoo.com/group/amibroker/join
(Yahoo! ID required)
<*> To change settings via email:
amibroker-digest@xxxxxxxxxxxxxxx
amibroker-fullfeatured@xxxxxxxxxxxxxxx
<*> To unsubscribe from this group, send an email to:
amibroker-unsubscribe@xxxxxxxxxxxxxxx
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|