PureBytes Links
Trading Reference Links
|
Still working on this...
Unless I can populate an array with a true Empty value, like a virgin
Excel cell, it does not look like I can do this in AB.
For this to work I would need to be able to populate bars on an array
with a *true* empty value, which AB would ignore in its Percentile
calculation.
If we try:
UBHR = IIf( Upbar, HR, Null);
UBHR = IIf( Upbar, HR, -1e10);
UBHR = IIf( Upbar, HR, 0);
UBHR = IIf( Upbar, HR, ASC("B"));
(to try and recreate the Excel if(xx,HR, "") empty value for a cell)
the NOT Upbar is always populated with a zero or false value.
Also looking at the IsNull, IsEmpty, isNan, these also return value of Zero.
So
array1 = 1 12 56 21 12 // which is what I can use in Excel
and
array2 = 1 0 12 56 0 21 0 12 // which is what I get in AB
will always have different percentile values. Pity.
For the moment I have drawn a blank and will ask support for help, and
look for an alternate method.
Regards
ChrisB
ChrisB wrote:
>
>
> Thank you GP.
>
> I've had a look at these.
>
> However, I don't think think the issue is with how AB calculates the
> Percentile.
>
> In the attached Perc_Excel.png the value in cell E3 matches that for the
> Value in AB's exploration seen in the attached Perc_Expl.png. See last
> value in column HR PC.
>
> However, when I try to return the Percentile value for the array of High
> Ranges for UpBar days, (last value in UBHR PC) this does not match the
> value in cell M3 in the Perc_Excel.png. So I am either
>
> a. not able to use this in AB if the Array continues zero or null
> values, although clearly I can in Excel
>
> or
>
> b. not using the Addcolumn(Percentil e(UBHR,20, 80),"UBHR PC", 3.2, 16,
> 55, 60); correctly
>
> So I come back to my first question:
> how shall I get AB to return to correct Percentile value for an array
> that has High Range values only on UpBar days?
>
> I was glad to see the Percentile function in AB because I thought this
> would be a short way around. If I cannot use this I may need help with a
> more long winded way.
>
> Thanks for the link.
>
> ChrisB
>
> gp_sydney wrote:
> >
> >
> > I'm not sure of the answer to your question, but note that there are
> > different ways of calculating percentile. See:
> >
> > http://www.itl. nist.gov/ div898/handbook/ prc/section2/ prc252.htm
> > <http://www.itl. nist.gov/ div898/handbook/ prc/section2/ prc252.htm
> <http://www.itl.nist.gov/div898/handbook/prc/section2/prc252.htm>>
> >
> > That document specifically mentions how Excel does it.
> >
> > Regards,
> > GP
> >
> > --- In amibroker@xxxxxxxxx ps.com <mailto:amibroker% 40yahoogroups.
> com>,
> > ChrisB <kris45mar@x ..> wrote:
> > >
> > > Hi Group
> > >
> > > When I do an exploration for the High Range of Up Bars, I cannot get
> > the
> > > Percentile function in AB to return the same value as in Excel. How can
> > > I achieve this?
> > >
> > >
> > > Here is what I am doing.
> > > // this is exploration for EOD forex data.
> > >
> > > Factor = Iif(StrRight( Name(),3) =="JPY",100, 10000);// converts price
> > to Pips
> > >
> > > upBar = C > O; // bars closing up from the open
> > > HR = factor * (H - O);// fills array with the high range of all bars.
> > >
> > > UBHR = Iif(upBar,HR, 0);// fills array with High Range for Up Days, and
> > > zero for all other days.
> > > UpTh = UP threshold = Param("Up Threshold",10, 10,200,1) ;
> > > n = Param("N bars back", 100, 1, Barcount -1, 1);
> > >
> > > Addcolumn( Percentile ( HR, 20, 80), "80th centile of HR", 3.2, 16,
> > 47,60);
> > > // this matches my Excel value
> > >
> > > Addcolumn( Percentile ( UBHR, 20, 80), "80th centile of UBHR", 3.2, 16,
> > > 47, 60);
> > > // this does not match my Excel value
> > >
> > > How can I get the Percentile array to look only at the Up bars' High
> > ranges?
> > >
> > > I need to know what the High Range value is which contains 80% of High
> > > Ranges on Up Bars only.
> > >
> > > Any ideas?
> > >
> > > ChrisB
> > >
> >
> >
>
>
> ------------------------------------------------------------------------
>
>
> ------------------------------------------------------------------------
>
Please note that this group is for discussion between users only.
To get support from AmiBroker please send an e-mail directly to
SUPPORT {at} amibroker.com
For NEW RELEASE ANNOUNCEMENTS and other news always check DEVLOG:
http://www.amibroker.com/devlog/
For other support material please check also:
http://www.amibroker.com/support.html
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:
mailto:amibroker-digest@xxxxxxxxxxxxxxx
mailto: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/
|