PureBytes Links
Trading Reference Links
|
Thomas,
Does AB in essence have a "super-loop" per se that would apply for
example to individual stocks when using a filter ?
How are things like InitialEquity, Equity() & PositionSize changed
from one stock to another when running filters like this and can we
have access to the rest of the fields that relate to performance
results so that we can write our own things using them ? i.e.
InitialEquity, PositionSize etc. etc.
Thanks in advance, Fred
--- In amibroker@xxxxxxxxxxxxxxx, "Tomasz Janeczko" <amibroker@xxxx>
wrote:
> Jayson,
>
> I am not sure but I think you were using Tradestation before..
> if I am correct let me explain some fundamental difference.
>
> Tradestation is designed so there is a "super-loop" outside
> that iterates your formula for all bars.
>
> The formula in Tradestation is executed (number-of-bars) times.
>
> AmiBroker is different because the formula is executed only once
> (there is no hidden super-loop outside of your formula).
>
> If you write
>
> Typical = ( H + L + C )/3;
>
> AmiBroker takes h, l, c arrays and adds each element to the arrays
> to produce 'typical' array. This statement is parsed only once
> and AmiBroker processes entire array at once.
>
> The same code in Tradestaton would be wrapped in a 'super-loop'
> that iterates the same code n-times.
>
> Now using newly introduced for statement in AFL we can
> 'emulate' what TS does:
>
> for( i = 0; i < BarCount; i++ )
> {
> Typical[ i ] = ( High[ i ] + Low[ i ] + Close[ i ] ) / 3;
> }
>
>
> The difference is that in AB you have full control over this loop
> while in TS the outmost loop is hidden and hard-coded by TS
developers.
>
>
>
> Best regards,
> Tomasz Janeczko
> amibroker.com
> ----- Original Message -----
> From: Jayson
> To: amibroker@xxxxxxxxxxxxxxx
> Sent: Wednesday, April 16, 2003 4:34 PM
> Subject: RE: [amibroker] AmiBroker 4.31.0 BETA Examples
>
>
> "All you really need to know about new features in AFL
> I described in:
>
> http://groups.yahoo.com/group/amibroker/message/37591 "
>
>
> Well, almost all........
>
> Tomasz or any one smarter than me,
>
> Examples certainly help. But I am still a bit lost.... from the
post....
>
>
> This example illustrates the for statement:
>
> myema[ 0 ] = Close[ 0 ];
> for( i = 1; i < BarCount; i++ )
> {
> myema[ i ] = 0.1 * Close[ i ] + 0.9 * myema[ i - 1 ];
>
>
> myema[ 0 ] = close [0];
>
> Do I assume this translates to..... myema today =close
today ?? similar to myema=c;??
>
> for ( init-expression ; cond-expression ; loop-expression )
statement
>
> init-expression= i=1; means we start the loop with i=1?
>
> condition expression= i<barcount; means do the loop as
long as i< the current barcount (like cum(1))??
>
> loop expression= i++ means i+i+i ??????????
>
> Could someone please convert the expression to english?
>
> Tia,
>
> Jayson
> -----Original Message-----
> From: Tomasz Janeczko [mailto:amibroker@x...]
> Sent: Wednesday, April 16, 2003 5:53 AM
> To: amibroker@xxxxxxxxxxxxxxx
> Subject: Re: [amibroker] AmiBroker 4.31.0 BETA Examples
>
>
> Hello,
>
> I fully agree. for/while/if-else + array access is covered
> on 3 or 4 pages of any C/C++ book
>
> So this is actually less than 1% of entire C/C++ book.
>
> So there is absolutely no need to buy/read C++ book
>
> All you really need to know about new features in AFL
> I described in:
>
> http://groups.yahoo.com/group/amibroker/message/37591
>
>
>
> Best regards,
> Tomasz Janeczko
> amibroker.com
> ----- Original Message -----
> From: uenal.mutlu@xxxx
> To: amibroker@xxxxxxxxxxxxxxx
> Sent: Wednesday, April 16, 2003 10:39 AM
> Subject: Re: [amibroker] AmiBroker 4.31.0 BETA Examples
>
>
> Hi Steve,
> C++ is definitely not required to program in AFL;
> it would be an overkill! C++ covers maybe 10 times
> more stuff than AFL.
> The new stuff in AFL is easily learnt within 2 hours.
> Simply ask the people here.
> UM
>
> ----- Original Message -----
> From: Jayson
> To: amibroker@xxxxxxxxxxxxxxx
> Sent: Wednesday, April 16, 2003 6:50 AM
> Subject: RE: [amibroker] AmiBroker 4.31.0 BETA Examples
>
>
> Thank you Steve, I will see if I can locate a copy.
>
> Regards,
>
> Jayson
> -----Original Message-----
> From: Steve Dugas [mailto:sjdugas@x...]
> Sent: Tuesday, April 15, 2003 11:22 PM
> To: amibroker@xxxxxxxxxxxxxxx
> Subject: Re: [amibroker] AmiBroker 4.31.0 BETA Examples
>
>
> Hi Jayson,
>
> Sorry to offer the help and then not be around to follow
through on it. But, Monday seems to roll around almost every week
these days, and then its off to work again. Better for you though -
TJ filled in for me : - )
>
> I'm not sure what kind of book you would like, but since TJ
seems to follow C++ syntax, I can recommend a C++ book that I found
to be very good (pretty big though - over 1000 pages). It is very
thorough and easy to understand - definitely geared for beginners in
my opinion. It is "C++ Primer Plus" by Stephen Prata. I think you
could probably just read up on the items you are interested in if you
aren't interested in learning the whole language. Be careful because
it seems that there are a couple of other C++ books that call
themselves "primers", but are definitely NOT for beginners.
Especially stay away from Stanley Lippman's book, at least until you
have some experience (take it from me....please!).
>
> Steve
>
> ----- Original Message -----
> From: Jayson
> To: amibroker@xxxxxxxxxxxxxxx
> Sent: Monday, April 14, 2003 10:01 AM
> Subject: RE: [amibroker] AmiBroker 4.31.0 BETA Examples
>
>
> Thank you Tomasz. I have obviously gone from being fairly
high on the learning curve to Newbie in just one week end :(
>
> Could you recommend a beginner level book that may help
some of us get up to speed with this new upgrade? I might as well be
reading Japanese , but I don't want to start THAT thread again :))
>
> Jayson
> -----Original Message-----
> From: Tomasz Janeczko [mailto:amibroker@x...]
> Sent: Monday, April 14, 2003 3:54 AM
> To: amibroker@xxxxxxxxxxxxxxx
> Subject: Re: [amibroker] AmiBroker 4.31.0 BETA Examples
>
>
> Hello,
>
> While IIF works on ARRAY,
>
> if/else works on INDIVIDUAL number/boolean (element of the
array).
>
> Therefore you should write either
>
> a1 = IIF( C > Ref( C, -1 ), 1, 0 );
>
> (or even: a1 = C > Ref( C, -1 );
>
> or iterate:
>
> for( i = 1; i < BarCount; i++ )
> {
> if ( Close[ i ] > Close[ i - 1 ] )
> a1[ i ] = 1;
> else
> a1[ i ] = 0;
> }
>
>
> It is important to understand that IIF is a FUNCTION that
works on arrays,
> while if/else is control flow STATEMENT.
> Function just evaluates all arguments and returns value(s)
> Control flow statement changes program flow.
>
> This is fundamental difference.
>
> Best regards,
> Tomasz Janeczko
> amibroker.com
> ----- Original Message -----
> From: Jayson
> To: amibroker@xxxxxxxxxxxxxxx
> Sent: Monday, April 14, 2003 7:55 AM
> Subject: RE: [amibroker] AmiBroker 4.31.0 BETA Examples
>
>
> Steve,
> Your example makes sense yet does not seem to work for
me. Else seems to be ignored . Using the IIF this would simply
be ......
> a1=iif(c>ref(c,-1),1,0); I am certainly missing
something here.... your input appreciated..
> jayson
>
>
>
>
> Jayson
> -----Original Message-----
> From: Steve Dugas [mailto:sjdugas@x...]
> Sent: Sunday, April 13, 2003 11:25 AM
> To: amibroker@xxxxxxxxxxxxxxx
> Subject: Re: [amibroker] AmiBroker 4.31.0 BETA Examples
>
>
> Hi Ken,
>
> I think the concept of loops and if-then-else is the same
in all languages. I imagine you could read up on it at many websites
(e.g. - MSDN scripting site). Once you grasp the concept, it is just
a matter of using AFL syntax. You would probably use it mostly for
iterating your arrays if you wanted to do that. Here is a simple
pseudo-code - try coding it in AFL:
>
> For (SecondBar to LastBar)
> If (Today's Close > Yesterday's Close)
> MyArray = 1
> Else
> MyArray = 0
> Plot MyArray
>
> Of course, please feel free to ask for help!
>
> Steve
>
> ----- Original Message -----
> From: Tomasz Janeczko
> To: amibroker@xxxxxxxxxxxxxxx
> Sent: Sunday, April 13, 2003 10:39 AM
> Subject: Re: [amibroker] AmiBroker 4.31.0 BETA Examples
>
>
> Ken,
>
> Very nice story :-)
>
> As per your request, attached is a Parabolic SAR
formula
> that I have rewritten from JScript version
> (http://www.amibroker.com/library/detail.php?id=242)
>
>
> Best regards,
> Tomasz Janeczko
> amibroker.com
> ----- Original Message -----
> From: "Ken Close" <closeks@xxxx>
> To: <amibroker@xxxxxxxxxxxxxxx>
> Sent: Sunday, April 13, 2003 4:05 PM
> Subject: RE: [amibroker] AmiBroker 4.31.0 BETA Examples
>
>
> > Tomasz:
> >
> > As always, you have good sound advice. However......
> >
> > You say, "Here is a fast sports car, very versatile
and powerful. It
> > has 7 forward gears, but if you are a beginner, do
not worry....always
> > stay in maximum of 4th gear. Plenty of nice driving
is possible in 4th
> > gear. Wait until you become more experienced before
you try gears 5,
> > 6, and 7."
> >
> > I say, "Thank you for providing such a nimble sports
car, but I am in a
> > race, and I do not think I can finish even 10th in
this race, until I
> > get out past 4th gear. If you or others would just
provide some more
> > examples of how to use 5th and 6th gear, then I could
more confidently
> > try them. Maybe even copy your use of them. Then,
probably, I will have
> > enough experience to try 7th gear on my own."
> >
> > More examples is all I am asking for....my objective
is not to stay in
> > 4th gear.
> >
> > Thanks,
> >
> > Ken
> >
> > -----Original Message-----
> > From: Tomasz Janeczko [mailto:amibroker@x...]
> > Sent: Sunday, April 13, 2003 9:47 AM
> > To: amibroker@xxxxxxxxxxxxxxx
> > Subject: Re: [amibroker] AmiBroker 4.31.0 BETA
Examples
> >
> > Ken,
> >
> > > First, additional kudos to Tomasz for another step-
jump in capability
> > of
> > > Amibroker.
> > Thank you.
> >
> > > Second, a caution, in marketing terms, of having
capability that is so
> > > hard to apply for "non-programmers", beginners, and
non-technical
> > types
> > > that the extra capability is viewed not as an
advantage or benefit,
> > but
> > > just the opposite.
> >
> > The beginners don't really need to jump into deep
water right from
> > the start as AFL still supports "old-way" of work.
> >
> > When you write
> >
> > TypicalPrice = (H+L+C) /3;
> >
> > it still operates on H, L, C arrays and produces
array so no
> > looping is needed.
> >
> > New features are added as 'extra' stuff and do not
> > change the way old statements work.
> >
> > > I apologize - but may speak for many hidden
lurkers - that I have just
> > > mastered the idea that "every AFL statement only
executes once", but
> > now
> > > I must scramble to reorient my brain for repeated
iterations thru AFL
> > > statements.
> >
> > See above - you don't need really to write loops if
you don't want them.
> > All previously written code will execute the same way
as before.
> >
> > Unless you use a while and/or for loop nothing has
really changed.
> >
> > So, you don't really need to "re-orient your brain" :-
)
> >
> > You can view new features as a replacement of
JScript/VBScript.
> > You may use these new features only when you needed
to use
> > scripting in previous versions.
> >
> > Best regards,
> > Tomasz Janeczko
> > amibroker.com
>
>
>
> 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 the Yahoo! Terms of
Service.
>
>
>
> 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 the Yahoo! Terms of
Service.
>
> Yahoo! Groups Sponsor
> ADVERTISEMENT
>
>
>
>
> 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 the Yahoo! Terms of
Service.
------------------------ Yahoo! Groups Sponsor ---------------------~-->
Get a FREE REFINANCE QUOTE - click here!
http://us.click.yahoo.com/2CXtTB/ca0FAA/i5gGAA/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/
|