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

Re: [amibroker] Re: Poll results for amibroker & versatility



PureBytes Links

Trading Reference Links

----- Original Message -----
From: "Fred" <fctonetti@xxxxxxxxx>
To: <amibroker@xxxxxxxxxxxxxxx>
Sent: Friday, April 25, 2003 6:13 PM
Subject: [amibroker] Re: Poll results for amibroker & versatility


> Tomasz,
>
> No offense but the #INCLUDE capability as designed and implemented in
> AB/AFL really accomplishes nothing other than to slow things down.
> It does NOT provide modularity of functions that can be used in a
> generic way from one system/indicator to another nor can #INCLUDES be
> nested, nor can arrays & variables be passed and returned etc. etc.
> It's structures like these that provide the basic building blocks
> that allow users to write systems and indicators using functions that
> have either been included with the product or individually developed
> without having to replicate code.
>
> I would like to have portfolio trading capabilities and all the rest
> of the stuff that folks have asked for but IMHO also think it highly
> important that issues like this be addressed.
>
> Fred
>
> --- In amibroker@xxxxxxxxxxxxxxx, "Tomasz Janeczko" <amibroker@xxxx>
> wrote:
> > John,
> >
> > Metastock allows to execute formula by name.
> > Equivalent functionality is provided by AFL #include
> >
> > Fred is writing about real functions with param passing by value.
> > This is different story.
> >
> > As to point 3. from Fred's e-mail - it is already possible
> > to have as many #includes in one AFL as you like.
> >
> > Best regards,
> > Tomasz Janeczko
> > amibroker.com
> > ----- Original Message -----
> > From: "John R" <jr-ta@xxxx>
> > To: <amibroker@xxxxxxxxxxxxxxx>
> > Sent: Friday, April 25, 2003 11:29 PM
> > Subject: Re: [amibroker] Poll results for amibroker & versatility
> >
> >
> > > Fred,
> > >
> > > Your comments about the importance of getting the basic language
> building
> > > blocks right is spot on IMO. Procedure/function calling
> facilities are
> > > pretty essential for any programming language. Even good old
> Metastock
> > > allows you to call external formulas!
> > >
> > > John
> > >
> > > ----- Original message -----
> > > From: "Fred Tonetti" <ftonetti@xxxx>
> > > To: <amibroker@xxxxxxxxxxxxxxx>
> > > Sent: Friday, April 25, 2003 1:59 PM
> > > Subject: RE: [amibroker] Poll results for amibroker & versatility
> > >
> > >
> > > > Herman,
> > > >
> > > > I would agree that it's about tools more than indicators per se.
> > > > However I consider flexibility in tools to be of premier
> importance and
> > > > although I didn't vote in the poll I do consider as part of this
> > > > flexibility having available, variable periodicity
> in "indicators"
> > > > and/or "functions" especially ones that are a pain to code like
> Linear
> > > > Regression and Standard Deviation etc. and especially given that
> > > > #INCLUDE (Reusable generic subroutines and/or functions)
> doesn't have
> > > > the needed functionality, does not always work as expected and
> is piggy.
> > > > I was interested to see that these in particular made the top
> of the
> > > > list but why StochK/D did is beyond me since those are easily
> enough
> > > > written in straight AFL with no for loops, not that
> for/while/if/else
> > > > are difficult to use but they're piggy as is #INCLUDE.
> > > >
> > > > For development of any product like AB IMHO it's the building
> blocks
> > > > that are important and the ones that allow users to make their
> own
> > > > building blocks are that much more important.  A good example
> of this is
> > > > #INCLUDE which to me to be usable needs have the following
> associated
> > > > features.
> > > >
> > > > 1.  Arguments (Arrays or Variables) for calculation should be
> able to be
> > > > passed to an #INCLUDE and results returned much like one can
> with the
> > > > AFL imbedded indicators.
> > > > 2.  One should be able to call the same #INCLUDE from different
> places
> > > > in a piece of AFL passing it different arguments and getting
> different
> > > > results without it getting confused.
> > > > 3.  One should be able to have multiple #INCLUDE's in a piece
> of AFL.
> > > > 4.  One #INCLUDE should be able to have it's own #INCLUDE's
> > > > 5.  It should run just as fast as any other piece of AFL.
> > > >
> > > > So as a simple example if one wanted to have their own FastK
> type
> > > > stochastic with variable periodicity that one could use
> whenever one
> > > > wanted with whatever inputs one wanted then one should be able
> to use it
> > > > and write it in some way like this:
> > > >
> > > > Main AFL ...
> > > >
> > > > #INCLUDE "C:\...\FastK.AFL" Array1 Array2 Array3 Array4 Array5
> > > >
> > > > Include AFL ...
> > > >
> > > > HH = HHV(Array1, Array4);
> > > > LL = LLV(Array2, Array4);
> > > > Array5 = 100 * (Array3 - Array2) / (HH - LL);
> > > >
> > > > Having the capability of simple building blocks like this
> allows for
> > > > rapid development of ones own indicators and systems without
> the need
> > > > for repetitive coding .
> > > >
> > > > For example in TradeStation ALL functions are viewable as
> EasyLanguage (
> > > > The equivalent to AFL ) even the ones that are imbedded with
> the product
> > > > so there is never a need to guess how something is calculated.
> For
> > > > example here's a standard deviation function . which in turn
> calls an
> > > > Average function.  This may not be the most efficient way to
> write these
> > > > but they illustrate the point.
> > > >
> > > >
> {*******************************************************************
> > > > Description: Standard Deviation
> > > >
> ********************************************************************}
> > > >
> > > > Inputs: Price(NumericSeries), Length(NumericSimple);
> > > >
> > > > Vars: SumSqr(0), Avg(0), Counter(0);
> > > >
> > > > If Length <> 0 Then
> > > > Begin
> > > > Avg = Average(Price, Length);
> > > > SumSqr = 0;
> > > > For Counter = 0 To Length - 1
> > > > Begin
> > > > SumSqr = SumSqr + (Price[Counter] - Avg)
> > > > * (Price[Counter] - Avg);
> > > > End;
> > > > _StdDev = SquareRoot(SumSqr / Length);
> > > > End
> > > > Else
> > > > _StdDev = 0;
> > > >
> > > >
> {*******************************************************************
> > > > Description: Simple Moving Average
> > > >
> ********************************************************************}
> > > >
> > > > Inputs: Price(NumericSeries), Length(NumericSimple);
> > > > Variables: Sum(0), Counter(0);
> > > >
> > > > Sum = 0;
> > > >
> > > > For counter = 0 To Length - 1 Begin
> > > > Sum = Sum + Price[counter];
> > > > End;
> > > >
> > > > If Length > 0 Then
> > > > Average = Sum / Length
> > > > Else
> > > > Average = 0;
> > > >
> > > >
> > >
> > >
> > >
> > > Send BUG REPORTS to bugs@xxxx
> > > Send SUGGESTIONS to suggest@xxxx
> > > -----------------------------------------
> > > Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx
> > > (Web page: http://groups.yahoo.com/group/amiquote/messages/)
> > > --------------------------------------------
> > > Check group FAQ at:
> http://groups.yahoo.com/group/amibroker/files/groupfaq.html
> > >
> > > Your use of Yahoo! Groups is subject to
> http://docs.yahoo.com/info/terms/
> > >
> > >
> > >
>
>
>
> Send BUG REPORTS to bugs@xxxxxxxxxxxxx
> Send SUGGESTIONS to suggest@xxxxxxxxxxxxx
> -----------------------------------------
> Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx
> (Web page: http://groups.yahoo.com/group/amiquote/messages/)
> --------------------------------------------
> Check group FAQ at:
http://groups.yahoo.com/group/amibroker/files/groupfaq.html
>
> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
>
>



------------------------ Yahoo! Groups Sponsor ---------------------~-->
Get A Free Psychic Reading! Your Online Answer To Life's Important Questions.
http://us.click.yahoo.com/O10svD/Me7FAA/AG3JAA/GHeqlB/TM
---------------------------------------------------------------------~->

Send BUG REPORTS to bugs@xxxxxxxxxxxxx
Send SUGGESTIONS to suggest@xxxxxxxxxxxxx
-----------------------------------------
Post AmiQuote-related messages ONLY to: amiquote@xxxxxxxxxxxxxxx 
(Web page: http://groups.yahoo.com/group/amiquote/messages/)
--------------------------------------------
Check group FAQ at: http://groups.yahoo.com/group/amibroker/files/groupfaq.html 

Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/