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

[amibroker] Re: What is wrong?



PureBytes Links

Trading Reference Links

You can still use selectedvalue just ref the number of bars back for 
the each point. Use barssince to find the number of bars from the 
last hhv and so on to get the values. Then draw the lines between the 
points.

vHHV = HHV(array, periods);
hhvValue = SelectedValue(Ref(vHHV, BarsSince(vHHV)));
printf("HHV Value " + NumToStr(HHVValue, 1.2));

Barry

--- In amibroker@xxxxxxxxxxxxxxx, "Louis P." <rockprog80@xxx> wrote:
>
> Hi,
> 
> @Tony Grimes: I don't want a straight line between two points; I 
want the LR
> from the HHV to each point.  Let's say that bar 1 is the HHV, then 
I'd like
> LR for bar 3, for bar 4, for bar 5, etc. until there is a new HHV.  
The
> problem with the code I use is that it uses "selectedvalue" which 
mean it
> can only draw the line from where I am on the chart; I'd like that 
for each
> and every bar so it can be backtested!  BTW, how would you use 
that: Deg =
> atan(Slope)*180/PI;?  I am not sure how to set the variables 
straight so it
> can work... Thanks!
> 
> @gp_sydney: I know the 1$/bar idea is a bit stupid, but this is the 
only
> thing I have found for now.  I asked support for help on this, but 
of course
> they don't do coding but they told me I had to be able to set a Y 
and an X
> that is not relative so I could draw an angle from this.  Can you 
think of
> something else to do the trick?
> 
> Thanks,
> 
> Louis
> 
> 2008/9/20 gp_sydney <gp.investment@xxx>
> 
> >   Louis,
> >
> > You need to explain how you define steepness. The regression 
formula
> > gives the slope in dollars per bar. What units do you want it in?
> >
> > When you talk of the slope in degrees, how do you define that? For
> > example, 45 degrees is delta Y (price) and delta X (bars) being 
the
> > same, or $1 / bar. That seems like a pretty useless figure to me
> > though, as it would be shallow on the graph of a $200 stock but 
very
> > steep on the graph of a 20 cent stock (which is why I'd probably 
be
> > using semi-log and trying to do linear regression based on a log 
scale
> > with percentage gain per bar - but even then, what would 45 
degrees
> > be, 1% per bar?).
> >
> >
> > GP
> >
> > --- In amibroker@xxxxxxxxxxxxxxx <amibroker%
40yahoogroups.com>, "Louis P."
> > <rockprog80@> wrote:
> > >
> > > Hi,
> > >
> > > @Tony:Sorry I thought gradient was the good word. Maybe I meant
> > angle, or
> > > degree? I want a LR slope of approx. 30-50 degrees. How can I 
do that?
> > > @gp_sydney: I need to go to work, but will check this tomorrow 
or
> > Monday. I
> > > looked very quickly and was wondering where in that formula can 
I
> > determine
> > > how steep the slope will be. That would help a lot!
> > >
> > > Thank you you two a lot!
> > >
> > > Louis
> > >
> > >
> > >
> > > 2008/9/20 gp_sydney <gp.investment@>
> > >
> > > > Sorry, a couple of typos in the formula. It should be:
> > > >
> > > >
> > > > n = HHVBars(High, periods);
> > > > avX = MA(x, n);
> > > > avY = MA(y, n);
> > > > avXY = MA(x*y, n);
> > > > avXX = MA(x*x, n);
> > > >
> > > > b = (avXY - avX*avY) / (avXX - avX*avX);
> > > > a = avY - b*avX;
> > > >
> > > > GP
> > > >
> > > >
> > > > --- In amibroker@xxxxxxxxxxxxxxx <amibroker%
40yahoogroups.com><amibroker%
> > 40yahoogroups.com>,
> >
> > > > "gp_sydney" <gp.investment@> wrote:
> > > > >
> > > > > Louis,
> > > > >
> > > > > I gather you want to use regression to get a best-fit line 
from the
> > > > > most-recent HHV, not just draw a line between the end 
points.
> > From my
> > > > > understanding of regression though, which isn't a lot, I 
gather that
> > > > > such a line may not actually pass through either end point, 
so
> > may not
> > > > > go "from the HHV" exactly or end at the current bar exactly 
(to get
> > > > > that, just draw a line between those two points as 
previously
> > > > > mentioned). Once you have the line though, you could offset 
it
> > > > > vertically to get it to pass exactly through the HHV or 
current bar
> > > > > (but not both of course).
> > > > >
> > > > > From a response Tomasz gave you in another thread about how 
to
> > > > > calculate Rsquared without a loop:
> > > > >
> > > > > 
http://finance.groups.yahoo.com/group/amibroker/message/129392
> > > > >
> > > > > you can similarly do the regression itself. According to 
Tomasz,
> > > > > LinRegSlope already accepts variable periods (ie. arrays), 
so to get
> > > > > the slope you should be able to just use that function. Or 
to
> > > > > calculate both coefficients yourself, then something like 
this
> > (based
> > > > > on the formula given at 
http://www.educalc.net/2104083.page):
> > > > >
> > > > > n = HHVBars(High, periods);
> > > > > avX = MA(x, n);
> > > > > avY = MA(y, n);
> > > > > avXY = MA(x*y, n);
> > > > > axXX = MA(x*x, n);
> > > > >
> > > > > b = (avXY - avX*avY) / (avXX - avX*avX);
> > > > > a = axY - b*avX;
> > > > >
> > > > > Hopefully I've got that right (I haven't tested it). The 
line
> > formula
> > > > > is then:
> > > > >
> > > > > line = a + b*x;
> > > > >
> > > > > The slope is 'b' and the intercept 'a'. The slope is in 
dollars per
> > > > > bar. I'm not sure what you want by a percentage slope 
though, as the
> > > > > 'x' and 'y' axes are in completely different units.
> > > > >
> > > > > Also note that the calculated lines would only be straight 
on a
> > linear
> > > > > price scale (if they were plotted). If you use semi-log, 
then the
> > > > > formula for a straight line is different - and how to do 
regression
> > > > > for it would take some figuring out.
> > > > >
> > > > > Hope this helps.
> > > > >
> > > > > Regards,
> > > > > GP
> > > > >
> > > > >
> > > > > --- In amibroker@xxxxxxxxxxxxxxx <amibroker%
40yahoogroups.com><amibroker%
> > 40yahoogroups.com>,
> >
> > "Louis
> > > > P." <rockprog80@> wrote:
> > > > > >
> > > > > > Hi,
> > > > > >
> > > > > > I need the gradient of the slope, and for each bar. This 
is where
> > > > it is
> > > > > > difficult...
> > > > > >
> > > > > > Thanks,
> > > > > >
> > > > > > Louis
> > > > > >
> > > > > > 2008/9/19 Tony Grimes <Tonez.Email@>
> > > > > >
> > > > > > > Louis,
> > > > > > >
> > > > > > > If your looking for the slope & difference between HHV 
of 20
> > bars
> > > > > & the
> > > > > > > current close, all you should need is this:
> > > > > > >
> > > > > > > Pds=20;
> > > > > > >
> > > > > > > LastHighBar = HHVBars(High, Pds);
> > > > > > > LastHighVal = HHV(High, Pds);
> > > > > > >
> > > > > > > Slope = IIf(LastHighBar,(Close - LastHighVal) / 
LastHighBar,0);
> > > > > > > CloseDiff = Close - Ref(Close, -LastHighBar);
> > > > > > >
> > > > > > >
> > > > > > > On Fri, Sep 19, 2008 at 4:51 PM, Louis P. <rockprog80@> 
wrote:
> > > > > > >
> > > > > > >> Hi Tony,
> > > > > > >>
> > > > > > >> Thank you a lot for your response. I'm still very weak 
with
> > > > > loops. Last
> > > > > > >> time experimented with one, I had to reboot my 
computer! :) So
> > > > > do you know
> > > > > > >> how such a loop could work? And if I run, let's say 2 
minutes
> > > > > bar for one
> > > > > > >> year, wouldn't that be really really long to deal 
with? I have
> > > > > PIV with 1.5
> > > > > > >> GHz ram.
> > > > > > >>
> > > > > > >> I am looking for a line that ends at each bar and that 
starts
> > > > > from the HHV
> > > > > > >> of 20 bars, and I want to do things with this bar: 
e.g. compare
> > > > > the closes
> > > > > > >> between current bar and the HHV to the bar and 
establish the
> > > > > gradient of
> > > > > > >> that linear regression bar for each bar.
> > > > > > >>
> > > > > > >> Thanks a lot!
> > > > > > >>
> > > > > > >> Louis
> > > > > > >>
> > > > > > >> 2008/9/19 Tony Grimes <Tonez.Email@>
> > > > > > >>
> > > > > > >>> Hi Louis,
> > > > > > >>>
> > > > > > >>> A loop will work, but how slow - it depends (Speed of 
your
> > > > computer,
> > > > > > >>> number of bars loaded, how many loops your using 
etc...).
> > > > > Without seeing
> > > > > > >>> what your actually looking for (The end result), I 
think you
> > > > > could do it
> > > > > > >>> with one loop, with only one pass through the loop. 
The speed
> > > > > should be OK.
> > > > > > >>>
> > > > > > >>> Good Luck.
> > > > > > >>>
> > > > > > >>> Tony
> > > > > > >>>
> > > > > > >>> On Fri, Sep 19, 2008 at 2:47 PM, Louis P. 
<rockprog80@> wrote:
> > > > > > >>>
> > > > > > >>>> Hi Tony,
> > > > > > >>>>
> > > > > > >>>> Thanks for the tips. Basically, I'd need a loop and 
use it on
> > > > > each and
> > > > > > >>>> every bar of the array to determine the LR, right?
> > > > > > >>>>
> > > > > > >>>> That will slow down my computer a lot, don't you 
think?
> > > > > > >>>>
> > > > > > >>>> Thanks,
> > > > > > >>>>
> > > > > > >>>> Louis
> > > > > > >>>>
> > > > > > >>>> 2008/9/16 Tony Grimes <Tonez.Email@>
> > > > > > >>>>
> > > > > > >>>>> SelectedValue takes an array ( of numbers) and 
returns a
> > > > single
> > > > > > >>>>> number based on the bar that is selected in the 
chart.
> > > > > > >>>>>
> > > > > > >>>>> The first formula worked because SelectedValue was
> > giving you a
> > > > > > >>>>> number.
> > > > > > >>>>>
> > > > > > >>>>> Look at it this way: Array --> SelectedValue ---> 
Number.
> > > > > > >>>>>
> > > > > > >>>>> Remove SelectedValue: Array---->Array.
> > > > > > >>>>>
> > > > > > >>>>> You can draw a line with single numbers, but not 
arrays.
> > > > > > >>>>>
> > > > > > >>>>> You can always use a loop.
> > > > > > >>>>>
> > > > > > >>>>> You might want to read: Understanding how AFL 
works, in the
> > > > > Amibroker
> > > > > > >>>>> users guide. Until you really understand AFL & array
> > > > > processing, you are
> > > > > > >>>>> going to keep running into these problems, which 
will just
> > > > > slow you down.
> > > > > > >>>>>
> > > > > > >>>>>
> > > > > > >>>>> On Tue, Sep 16, 2008 at 10:34 PM, Louis P.
> > <rockprog80@>wrote:
> > > > > > >>>>>
> > > > > > >>>>>> Hi Tony,
> > > > > > >>>>>>
> > > > > > >>>>>> Why was the first formula working (the one with
> > > > > selectedvalue) and not
> > > > > > >>>>>> the second one? Why simply deleting 
the "selectedvalue"
> > > > > makes it an array
> > > > > > >>>>>> that will not be accept in "linearray"?
> > > > > > >>>>>>
> > > > > > >>>>>> Is there any way to draw a line without using 
lastvalue or
> > > > > > >>>>>> selectedvalue? Do I need to use a loop?
> > > > > > >>>>>>
> > > > > > >>>>>> Thanks,
> > > > > > >>>>>>
> > > > > > >>>>>> Louis
> > > > > > >>>>>>
> > > > > > >>>>>> 2008/9/16 Tony Grimes <Tonez.Email@>
> > > > > > >>>>>>
> > > > > > >>>>>>> Louis,
> > > > > > >>>>>>>
> > > > > > >>>>>>> All of the variables you are creating for the 
LineArray
> > > > > function are
> > > > > > >>>>>>> arrays themselves. Although LineArray generates an
> > array, it
> > > > > does not accept
> > > > > > >>>>>>> any arrays as inputs. Additionally, your error 
message was
> > > > > probably
> > > > > > >>>>>>> different. It probably went from complaining about
> > argument
> > > > > #4 having the
> > > > > > >>>>>>> incorrect type (which you corrected) to argument 
#3 having
> > > > > the incorrect
> > > > > > >>>>>>> type.
> > > > > > >>>>>>>
> > > > > > >>>>>>> On Tue, Sep 16, 2008 at 9:10 PM, Louis P.
> > <rockprog80@>wrote:
> > > > > > >>>>>>>
> > > > > > >>>>>>>> Hi,
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> Thank you for your help.
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> @Ara:
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> If in
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> barhh1 = HHVBars( High, Periods ) ;
> > > > > > >>>>>>>> bi1 = BarIndex();
> > > > > > >>>>>>>> y11 = LinearReg( C, barhh1 ) ;
> > > > > > >>>>>>>> y01 = LinRegIntercept( C, barhh1 ) ;
> > > > > > >>>>>>>> sl1 = LineArray( bi1-barhh1+0, y01, bi1, y11, 0, 
True );
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> I replace
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> sl1 = LineArray( bi1-barhh1+0, y01, bi1, y11, 0, 
True );
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> by
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> sl1 = LineArray( bi1-barhh1+0, y01, bi1,
> > LastValue(y11), 0,
> > > > > True
> > > > > > >>>>>>>> );
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> I still have the same error message. I don't 
know from
> > > > > where it is
> > > > > > >>>>>>>> coming.. unfortunately!
> > > > > > >>>>>>>>
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> @gp_sydney:
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> That was a typo, you are right; I arranged that 
by
> > adding a
> > > > > 1. But
> > > > > > >>>>>>>> still, the problem remains: the last line does 
not work.
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> One day, I asked support if I needed a loop to 
do such LR
> > > > > and they
> > > > > > >>>>>>>> said I should not need one.
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> Here is the original code:
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> barhh = SelectedValue( HHVBars( High, 
Periods ) );
> > > > > > >>>>>>>> bi = SelectedValue( BarIndex() );
> > > > > > >>>>>>>> y1 = SelectedValue( LinearReg( C, barhh ) );
> > > > > > >>>>>>>> y0 = SelectedValue( LinRegIntercept( C, 
barhh ) );
> > > > > > >>>>>>>> sl = LineArray( bi-barhh+0, y0, bi, y1, 0, 
True );
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> What I want to do is simply eliminate 
the "selectedvalue"
> > > > > part and
> > > > > > >>>>>>>> use the code not only for the selected data but 
for the
> > > > > whole data. I want
> > > > > > >>>>>>>> to be able to draw a line from each HHV to each 
bar and
> > > > > then work with the
> > > > > > >>>>>>>> result.
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> If it can't be done without a loop, I feel like 
I'll be
> > > > > lost in time
> > > > > > >>>>>>>> again; last time I tried to run a loop on my 
computer it
> > > > > freezed and after 2
> > > > > > >>>>>>>> minutes I decided to shut down AB...
> > > > > > >>>>>>>>
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> Thanks for the help,
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> Louis
> > > > > > >>>>>>>>
> > > > > > >>>>>>>>
> > > > > > >>>>>>>>
> > > > > > >>>>>>>>
> > > > > > >>>>>>>>
> > > > > > >>>>>>>>
> > > > > > >>>>>>>>
> > > > > > >>>>>>>> 2008/9/16 gp_sydney <gp.investment@>
> > > > > > >>>>>>>>
> > > > > > >>>>>>>>> As Ara said, in the shown code snippet you 
don't have
> > > > > "barhh"
> > > > > > >>>>>>>>> defined,
> > > > > > >>>>>>>>> only "barhh1".
> > > > > > >>>>>>>>>
> > > > > > >>>>>>>>> Beyond that, you have the same issue I mentioned
> > > > > originally, that
> > > > > > >>>>>>>>> the
> > > > > > >>>>>>>>> linear regression functions and LineArray 
function take
> > > > scalar
> > > > > > >>>>>>>>> values
> > > > > > >>>>>>>>> (ie. single numbers) as parameters, not arrays.
> > > > > > >>>>>>>>>
> > > > > > >>>>>>>>> I gather you're trying to create a line from the
> > > > > most-recent HHV
> > > > > > >>>>>>>>> value
> > > > > > >>>>>>>>> using the subsequent close data for every bar 
on the
> > > > > chart. As I
> > > > > > >>>>>>>>> don't
> > > > > > >>>>>>>>> think the linear regression functions can take 
arrays
> > > > for the
> > > > > > >>>>>>>>> period,
> > > > > > >>>>>>>>> I think you'd need to use a loop and do the 
linear
> > > > regression
> > > > > > >>>>>>>>> yourself
> > > > > > >>>>>>>>> at each bar (you could call the array functions
> > within the
> > > > > loop,
> > > > > > >>>>>>>>> but
> > > > > > >>>>>>>>> since they fill a whole array each time, they 
would do a
> > > > > lot of
> > > > > > >>>>>>>>> unnecessary work). If you do that yourself 
inside the
> > > > > loop, then at
> > > > > > >>>>>>>>> each bar you'd have scalar 'x' and 'y' values to
> > calculate
> > > > > the line
> > > > > > >>>>>>>>> slope and so on.
> > > > > > >>>>>>>>>
> > > > > > >>>>>>>>> For what it's worth, the BarIndex function 
simply gives
> > > > > you the bar
> > > > > > >>>>>>>>> number. It provides a way of using the current 
bar
> > number
> > > > > in array
> > > > > > >>>>>>>>> formula.
> > > > > > >>>>>>>>>
> > > > > > >>>>>>>>> Regards,
> > > > > > >>>>>>>>> GP
> > > > > > >>>>>>>>>
> > > > > > >>>>>>>>>
> > > > > > >>>>>>>>> --- In
> > amibroker@xxxxxxxxxxxxxxx <amibroker%40yahoogroups.com><amibroker%
> > 40yahoogroups.com>
> > > > > <amibroker%40yahoogroups.com>,
> > > > > > >>>>>>>>> "Louis P." <rockprog80@> wrote:
> > > > > > >>>>>>>>> >
> > > > > > >>>>>>>>> > Hi,
> > > > > > >>>>>>>>> >
> > > > > > >>>>>>>>> > Sorry, You can replace "periods" by 50 if you 
wish. I
> > > > > just forgot
> > > > > > >>>>>>>>> to
> > > > > > >>>>>>>>> > include that.
> > > > > > >>>>>>>>> >
> > > > > > >>>>>>>>> > barhh1 = HHVBars( High, *50* ) ;
> > > > > > >>>>>>>>> > bi1 = BarIndex() ;
> > > > > > >>>>>>>>> > y11 = LinearReg( C, barhh ) ;
> > > > > > >>>>>>>>> > y01 = LinRegIntercept( C, barhh ) ;
> > > > > > >>>>>>>>> > sl1 = LineArray( bi1-barhh1+0, y01, bi1, y11, 
0,
> > True );
> > > > > > >>>>>>>>> >
> > > > > > >>>>>>>>> > Still, it is not working, even if barhh1 is 
defined...
> > > > > > >>>>>>>>> >
> > > > > > >>>>>>>>> > Louis
> > > > > > >>>>>>>>> >
> > > > > > >>>>>>>>> > 2008/9/16 Ara Kaloustian <ara1@>
> > > > > > >>>>>>>>> >
> > > > > > >>>>>>>>> > > y11 and y01 use "barhh" which is not 
defined.
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > > You have defined "barhh1"
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > > ----- Original Message -----
> > > > > > >>>>>>>>> > > *From:* Louis P. <rockprog80@>
> > > > > > >>>>>>>>> > > *To:*
> > amibroker@xxxxxxxxxxxxxxx <amibroker%40yahoogroups.com><amibroker%
> > 40yahoogroups.com>
> > > > > <amibroker%40yahoogroups.com>
> > > > > > >>>>>>>>> > > *Sent:* Tuesday, September 16, 2008 2:46 PM
> > > > > > >>>>>>>>> > > *Subject:* [amibroker] What is wrong?
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > > Hi,
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > > What is wrong in the following formula?
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > > barhh1 = HHVBars( High, Periods ) ;
> > > > > > >>>>>>>>> > > bi1 = BarIndex() ;
> > > > > > >>>>>>>>> > > y11 = LinearReg( C, barhh ) ;
> > > > > > >>>>>>>>> > > y01 = LinRegIntercept( C, barhh ) ;
> > > > > > >>>>>>>>> > > sl1 = LineArray( bi1-barhh1+0, y01, bi1, 
y11, 0,
> > True );
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > > Thanks,
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > > Louis
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > > p.s. There was "Selectedvalue" in the first 
four
> > lines
> > > > > but I
> > > > > > >>>>>>>>> don't
> > > > > > >>>>>>>>> want to
> > > > > > >>>>>>>>> > > plot it on the chart based on where I am on 
that
> > > > > chart, but
> > > > > > >>>>>>>>> simply
> > > > > > >>>>>>>>> set the
> > > > > > >>>>>>>>> > > variable so I can use the stuff later.
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> > >
> > > > > > >>>>>>>>> >
> > > > > > >>>>>>>>>
> > > > > > >>>>>>>>>
> > > > > > >>>>>>>>
> > > > > > >>>>>>>
> > > > > > >>>>>>
> > > > > > >>>>>
> > > > > > >>>>
> > > > > > >>>
> > > > > > >>
> > > > > > >
> > > > > > >
> > > > > >
> > > > >
> > > >
> > > >
> > > >
> > >
> >
> >  
> >
>



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

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/