Hello,

With all variants the shift could be an array.

The difference is that with identifer( shift ) syntax, the identifier must be
the variable identifier, not anything else, because of ambuiguity when used with
expressions.

However @ and # operators would be able to operate on expressions from
both left and right side. As for parentheses, they won't be required as long
as you don't want to change the precedence. The idea was that @/# operator
would have precedence equal to ^ (raising to a power), so would be executed
before addition/subtraction and multiplication and division.

With regards to () syntax, Marcin has pointed out some possible
confusion created by coding like this:


Plot( RSI( 14 ), "RSI14", colorRed);
myRSI = RSI( 20 );
Plot( myRSI( 5 ), "myRSI", colorBlue);

All in all, although () syntax looks best when applied to close/open/high/low,
it does create confusion when (ab)used :-) as above. 

Best regards,
Tomasz Janeczko
amibroker.com
----- Original Message ----- 
From: "markhoff" <[email protected]>
To: <[email protected]>
Sent: Thursday, February 19, 2009 7:37 PM
Subject: [amibroker] Re: A shorter syntax to reference past elements of array


> 
> Tomasz, just one question: is the bar shift limited to fixed numbers
> or will it also be possible to use variables or expressions, e.g.:
> 
> a) c...@i
> b) c...@i+k
> c) c@(i+k)
> 
> Will the parenthesis be required for expressions?
> 
> Regards,
> Markus
> 
> --- In [email protected], "markhoff" <markh...@...> wrote:
>>
>> 
>> Even it seems that the proposal C() is in favor by most people, I'm
>> not convienced that using parenthesis is a good idea, since it might
>> cause confusion with function calls. Ref() is an internal function,
>> but I don't like to see reserved keywords like C or Close used like a
>> function as it would be for C() or Close(). My choice therefore is c...@5
>> (easy reading "Close AT 5 bars back").
>> 
>> Regards,
>> Markus
>> 
>> --- In [email protected], "Tomasz Janeczko" <groups@> wrote:
>> >
>> > Hello,
>> > 
>> > As a convenience feature I was contemplating for some time to allow
>> > shorter syntax to very common operation of referring to past
>> elements of the array.
>> > As you now current syntax to refer to past is:
>> > 
>> > Ref( array, -bars )
>> > 
>> > So close five bars back is Ref( C, -5 )
>> > 
>> > I don't have any technical problem with adding new operator that
>> will make it shorter,
>> > but I am wondering about the most preferrable "form",
>> > that is easy to use and does not create confusion. 
>> > 
>> > So I would like to ask you which 
>> > "short form" would you prefer.
>> > - c...@5 
>> > - C#5 
>> > - C(5) 
>> > - I don't like the idea at all
>> > 
>> > Please use this poll to vote:
>> > http://finance.groups.yahoo.com/group/amibroker/surveys?id=2828485
>> > 
>> > Thank you.
>> > 
>> > Best regards,
>> > Tomasz Janeczko
>> > amibroker.com
>> >
>>
> 
> 
> 
> 
> ------------------------------------
> 
> **** 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
> 
> 
> 

Reply via email to