[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [amibroker] Re: SUPER PIVOT POINTS


  • Date: Fri, 4 Dec 2009 20:41:43 +0800
  • From: "Tim" <timkthung@xxxxxxxxxxxx>
  • Subject: Re: [amibroker] Re: SUPER PIVOT POINTS

PureBytes Links

Trading Reference Links

Thanks you all for the efforts on the pivots. As a newbie to Amibroker and 
your board, I really appreciate your generosity and kindness.

Tim


--------------------------------------------------
From: "reinsley" <reinsley@xxxxxxxx>
Sent: Friday, December 04, 2009 8:25 PM
To: <amibroker@xxxxxxxxxxxxxxx>
Subject: Re: [amibroker] Re: SUPER PIVOT POINTS

>
> Hi Ed,
>
> As soon as two automatic pivots are detected, the formula does not look
> into the future.
> I manually draw some additionnal S & R onto RSIc and I can see that the
> future price find invisible S & R perfectly sync with the Tsokakis's RSI.
> I did not test it on historical, just in real time. The results are
> astonishing on FCE and FDAX.
>
> I have manually added the corresponding S & R on the price. I mean the
> pivots found by RSIc are translated onto the price. They are pretty good.
> I post a mod that plots stars onto the RSIc pivots, to check the position.
> The caveat with stars is : if the first candle is pivot, a star is not
> drawn. If you see one star, the first RSIc candle is a pivot.
>
> I will be very pleased to have comments about this indicator applied on
> other futures.
> Is the professionnal market driven by RSI ? It's seem so...
>
> Best regards
>
> // The RSIc trendlines cac
> // courtesy by Dimitri Tsokakis
> // "Stars pivot" // The RSIc trendlines cac
> // courtesy by Dimitri Tsokakis
> // "Stars pivot" mod
>
> procedure RSIc( n )
> {
>     C = RSIa( C, n );
>     O = RSIa( O, n );
>     H = RSIa( H, n );
>     H = IIf( H < Max( C, O ), Max( C, O ), H );
>     L = RSIa( L, n );
>     L = IIf( L > Min( C, O ), Min( C, O ), L );
> }
>
> n = Param( "n", 10, 10, 30, 5 );//RSI sensitivity
> RSIc( n );
> Plot( C, "RSIc", 1, 64 );
> per = Param( "per", 10, 3, 20, 1 );//trendlines sensitivity
> x = Cum( 1 );
> s1 = L;
> s11 = H;
> pS = TroughBars( s1, per, 1 ) == 0;
> endt = LastValue( ValueWhen( pS, x, 1 ) );
> startt = LastValue( ValueWhen( pS, x, 2 ) );
> dtS = endt - startt;
> endS = LastValue( ValueWhen( pS, s1, 1 ) );
> startS = LastValue( ValueWhen( pS, s1, 2  ) );
> aS = ( endS - startS ) / dtS;
> bS = endS;
> trendlineS = aS * ( x  - endt ) + bS;
> Plot( IIf( x > startt - 10, trendlineS, -1e10 ), "", colorYellow, 1 );
> PlotText( " *", endt - 1 , endS - 10, colorGreen );// last point 1 support
> PlotText( " *", startt - 1 , startS - 10, colorGreen );// first point 2
> support
> pR = PeakBars( s11, per, 1 ) == 0;
> endt1 = LastValue( ValueWhen( pR, x, 1 ) );
> startt1 = LastValue( ValueWhen( pR, x, 2 ) );
> firstt1 = LastValue( ValueWhen( pR, x, 3 ) );
> dtR = endt1 - startt1;
> endR = LastValue( ValueWhen( pR, s11, 1 ) );
> startR = LastValue( ValueWhen( pR, s11, 2  ) );
> aR = ( endR - startR ) / dtR;
> bR = endR;
> trendlineR = aR * ( x  - endt1 ) + bR;
> Plot( IIf( x > startT1 - 10, trendlineR, -1e10 ), "", colorYellow, 1 );
> PlotText( " *", endt1 -1 , endR + 5, colorRed );// last point 1 resistance
> PlotText( " *", startt1 -1 , startR + 5, colorRed );// first point 2
> resistance
>
>
> // newday bar
> segments = IIf( Interval() < inDaily, Day(), Month() );
> segments = segments != Ref( segments , -1 );
> Plot( segments, "", colorDarkBlue, styleHistogram | styleOwnScale |
> styleDashed | styleNoLabel );
>
> procedure RSIc( n )
> {
>     C = RSIa( C, n );
>     O = RSIa( O, n );
>     H = RSIa( H, n );
>     H = IIf( H < Max( C, O ), Max( C, O ), H );
>     L = RSIa( L, n );
>     L = IIf( L > Min( C, O ), Min( C, O ), L );
> }
>
> n = Param( "n", 10, 10, 30, 5 );//RSI sensitivity
> RSIc( n );
> Plot( C, "RSIc", 1, 64 );
> per = Param( "per", 10, 3, 20, 1 );//trendlines sensitivity
> x = Cum( 1 );
> s1 = L;
> s11 = H;
> pS = TroughBars( s1, per, 1 ) == 0;
> endt = LastValue( ValueWhen( pS, x, 1 ) );
> startt = LastValue( ValueWhen( pS, x, 2 ) );
> dtS = endt - startt;
> endS = LastValue( ValueWhen( pS, s1, 1 ) );
> startS = LastValue( ValueWhen( pS, s1, 2  ) );
> aS = ( endS - startS ) / dtS;
> bS = endS;
> trendlineS = aS * ( x  - endt ) + bS;
> Plot( IIf( x > startt - 10, trendlineS, -1e10 ), "", colorYellow, 1 );
> PlotText( " *", endt - 1 , endS - 10, colorGreen );// last point 1 support
> PlotText( " *", startt - 1 , startS - 10, colorGreen );// first point 2
> support
> pR = PeakBars( s11, per, 1 ) == 0;
> endt1 = LastValue( ValueWhen( pR, x, 1 ) );
> startt1 = LastValue( ValueWhen( pR, x, 2 ) );
> firstt1 = LastValue( ValueWhen( pR, x, 3 ) );
> dtR = endt1 - startt1;
> endR = LastValue( ValueWhen( pR, s11, 1 ) );
> startR = LastValue( ValueWhen( pR, s11, 2  ) );
> aR = ( endR - startR ) / dtR;
> bR = endR;
> trendlineR = aR * ( x  - endt1 ) + bR;
> Plot( IIf( x > startT1 - 10, trendlineR, -1e10 ), "", colorYellow, 1 );
> PlotText( " *", endt1 -1 , endR + 5, colorRed );// last point 1 resistance
> PlotText( " *", startt1 -1 , startR + 5, colorRed );// first point 2
> resistance
> axismin = Status("axisminy");
> axismax = Status("axismaxy");
>
> // newday bar
> segments = IIf( Interval() < inDaily, Day(), Month() );
> segments = segments != Ref( segments , -1 );
> Plot( segments, "", colorDarkBlue, styleHistogram | styleOwnScale |
> styleDashed | styleNoLabel );
> Edward Pottasch a écrit :
>> hi,
>>
>> I like to note that this code of Tsokakis uses future quotes. I 
>> recognised
>> the code because recently I have seen a post on the Indi boards 
>> apparently
>> using the code of tsokakis,
>>
>> this code is posted here:
>>
>> http://www.traderji.com/advanced-trading-strategies/35128-advanced-support-resistence-trendlines-afl.html
>>
>> want to dig deeper into it myself how one could best use such code for
>> trading but looking at historical charts is deceiving since in real time
>> charts may all of a sudden change the support and resistance levels and 
>> buy
>> and sell signals may suddenly disappear, because the code uses future
>> quotes. To use it safely you need to build in ideas posted by Eric Tangen 
>> in
>> the Ami-library.
>>
>> rgds, Ed
>>
>>
>>
>> ----- Original Message ----- 
>> From: "reinsley" <reinsley@xxxxxxxx>
>> To: <amibroker@xxxxxxxxxxxxxxx>
>> Sent: Friday, December 04, 2009 12:03 PM
>> Subject: Re: [amibroker] Re: SUPER PIVOT POINTS
>>
>>
>>
>>
>> Tim,
>>
>> I have got this formula in my archives, close from the wiki.
>>
>> IMHO, you should have a look to S&R RSIc I posted two days ago.
>>
>> http://finance.groups.yahoo.com/group/amibroker/message/144492
>>
>>
>> Best regards
>>
>> // Robert's Pivot Points
>>
>> SetChartOptions( 0, chartShowArrows | chartShowDates );
>>
>> _SECTION_BEGIN( "Price" );
>> //_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} \nOp %g, \nHi
>> %g, \nLo %g, \nCl %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue(
>> ROC( C, 1 ) ) ));
>> Plot( C, "Close", ParamColor( "Color", colorBlack ), styleNoTitle |
>> styleCandle  | styleThick );
>> _SECTION_END();
>>
>> _SECTION_BEGIN("Pivot Points Robert's");
>>
>> //---------------------------------------------------------------------------
>> //                Pivot Pointer
>> //---------------------------------------------------------------------------
>> //  Now a days each and every trader wants pivot levels for thier day
>> //  trading.But the main feature in this afl is you can get all types of
>> //  pivot point in a single afl, Some of the traders use Woodie pivot,
>> //  caramilla pivot, Fibonacci pivot and most of them used Classical
>> //  pivot, i think this afl will solve all your needs.
>> //---------------------------------------------------------------------------
>>
>> //---------------------------------------------------------------------------
>> //  Please write your comments to arokiaraj_robert@xxxxxxxxx
>> //---------------------------------------------------------------------------
>>
>> //---------------------------------------------------------------------------
>> // This section gets whether they want pivot level for intraday or thier
>> eod
>> //---------------------------------------------------------------------------
>>
>> _N(ioreod =ParamList("Pivot Levels for ",  "Intraday|EOD"));
>>
>> if (ioreod=="Intraday")
>> {
>> yh = TimeFrameGetPrice( "H", inDaily, -1 );
>> yl = TimeFrameGetPrice( "L", inDaily, -1 );
>> yc = TimeFrameGetPrice( "C", inDaily, -1 );
>> }
>> else
>> {
>> yh = TimeFrameGetPrice( "H", inDaily, 0 );
>> yl = TimeFrameGetPrice( "L", inDaily, 0 );
>> yc = TimeFrameGetPrice( "C", inDaily, 0 );
>> }
>>
>> //---------------------------------------------------------------------------
>> // To calculate the Pivot Levels
>> //---------------------------------------------------------------------------
>>
>> to = TimeFrameGetPrice( "O", inDaily, 0 );
>> pivot = (yh + yl + yc) / 3;
>> range = yh - yl;
>> _N(pist =ParamList("Select Pivot Type ", "Classical Pivot|Woodie
>> Pivot|Caramilla Pivot|Fibonacci Pivot"));
>>
>> if (pist =="Classical Pivot" )
>> {
>> r1 = (2 * pivot) - yl ;
>> s1 = (2 * pivot) - yh ;
>> r2 = pivot - s1 + r1;
>> s2 = pivot - (r1 - s1) ;
>> r3 = 2 * (pivot - yl) + yh ;
>> s3 = yl - (2 * (yh - pivot));
>> }
>>
>> else if(pist =="Woodie Pivot" )
>> {
>> pivot = (yh + yl + yc + to) / 4;
>> r1 = (2 * pivot) - yl;
>> r2 = pivot + range;
>> r3 = yh + 2 * (pivot - yl);
>> r4 = r3 + range;
>> s1 = (2 * pivot) - yh;
>> s2 = pivot - range;
>> s3 = yl - 2 * (yh - pivot);
>> s4 = S3 - range;
>> }
>>
>> else if(pist =="Caramilla Pivot" )
>> {
>> r4 = yc + range * 1.1/2;
>> r3 = yc + range * 1.1/4;
>> r2 = yc + range * 1.1/6;
>> r1 = yc + range * 1.1/12;
>> s1 = yc - range * 1.1/12;
>> s2 = yc - range * 1.1/6;
>> s3 = yc - range * 1.1/4;
>> s4 = yc - range * 1.1/2;
>> }
>>
>> else
>> {
>> r3 = pivot + 1.000 * (yh - yl);
>> r2 = pivot + 0.618 * (yh - yl);
>> r1 = pivot + 0.382 * (yh - yl);
>> s1 = pivot - 0.382 * (yh - yl);
>> s2 = pivot - 0.618 * (yh - yl);
>> s3 = pivot - 1.000 * (yh - yl);
>> }
>>
>> //---------------------------------------------------------------------------
>> // To Plot Pivot Levels in the screen
>> //---------------------------------------------------------------------------
>>
>> _N(dsr =ParamList("Draw Intraday Pivot Levels ",
>> "None|Both|Support|Resistance"));
>>
>> if (dsr =="Support" OR  dsr == "Both")
>> {
>> Plot(pivot, "\n Pivot - ",colorGreen,1);
>> Plot(r1, "Resistance 1 - ",colorDarkRed,1);
>> Plot(r2, "Resistance 2 - ",colorDarkRed,1);
>> Plot(r3, "Resistance 3 - ",colorDarkRed,1);
>> Plot((pivot+r1)/2, "Mid Value of R1 & Pivot  ",colorLightBlue,1);
>> Plot((r3+r2)/2, "Mid Value of R2 & R3 -  ",colorLightBlue,1);
>> Plot((r1+r2)/2, "Mid Value of R1 & R2 - ",colorLightBlue,1);
>> }
>>
>> if( dsr == "Resistance" OR  dsr == "Both")
>> {
>> Plot(pivot, "\n Pivot - ",colorGreen,1);
>> Plot(s3, "Support 2 - ",colorDarkGreen,1);
>> Plot(s2, "Support 2 - ",colorDarkGreen,1);
>> Plot(s1, "Support 1 - ",colorDarkGreen,1);
>> Plot((s3+s2)/2, "Mid Value of S2 & S3 ",colorWhite,1);
>> Plot((s1+s2)/2, "Mid Value of S1 & S2 -  ",colorWhite,1);
>> Plot((pivot+s1)/2, "Mid Value of S1 & Pivot  ",colorWhite,1);
>> }
>>
>> //---------------------------------------------------------------------------
>> // Printing the pivot level in interpretation window
>> //---------------------------------------------------------------------------
>>
>>
>> printf(Name()+ "\n\nResistance - 3  |  %g\nResistance - 2  |
>> %g\nResistance - 1  |  %g\n" +
>> "Pivot                |  %g\nSupport - 1      |  %g\nSupport - 2      |
>>   %g\nSupport - 3      |  %g",
>> r3,r2,r1,pivot,s1,s2,s3);
>>
>>
>> //---------------------------------------------------------------------------
>> // This section is for Exploration
>> //---------------------------------------------------------------------------
>>
>> Filter = 1;
>> AddColumn(r3,"Resistance 3");
>> AddColumn(r2,"Resistance 2");
>> AddColumn(r1,"Resistance 1");
>> AddColumn(Pivot,"Pivot");
>> AddColumn(s1,"Support 1");
>> AddColumn(s2,"Support 2");
>> AddColumn(s3,"Support 3");
>>
>> //---------------------------------------------------------------------------
>> // Add Pivot levels along with the title
>> //---------------------------------------------------------------------------
>>
>> _N(Title = EncodeColor(colorBrown)+ StrFormat("{{NAME}} - {{INTERVAL}}
>> {{DATE}} Open %g, Hi %g, Lo %g, Close %g(%.1f%%)\n"+
>> EncodeColor(4)+"Resistance 3 -=- %g ::::: Resistance 2 -=- %g :::::
>> Resistance 1 -=- %g :::::"+
>> EncodeColor(colorGreen)+" Pivot -=- %g"+
>> EncodeColor(29)+"\nSupport 1 -=- %g ::::: Support 2 -=- %g :::::
>> Support 3 -=- %g\n ",
>>   O, H, L, C,SelectedValue( ROC( C, 1 ) ),r3,r2,r1,pivot,s1,s2,s3));
>>
>> //---------------------------------------------------------------------------
>> // End of Pivot Point
>> //---------------------------------------------------------------------------
>>
>> _SECTION_END();
>>
>>
>>
>> reinsley a écrit :
>>> 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>,
>>>> "Tim" <timkthung@xxx> 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>
>>>>  > 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>, "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>
>>>>  > > 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>, "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
>>
>>
>>
>>
>>
>> ------------------------------------
>>
>> **** 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
>
>
>



------------------------------------

**** 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/