PureBytes Links
Trading Reference Links
|
Got it!
thanks
--- In amibroker@xxxxxxxxxxxxxxx, "Markus Witzler" <funnybiz@xxx> wrote:
>
> Hello Steve,
>
> let add what Mike answered to my question on static variables a short while ago (see below).
>
> Cheers
>
> Markus
>
> - - - - - - - - - -
>
> The difference is the lifespan of the value. Formalizing your sample, we have the following code:
>
> ...
> b = 5;
> ...
> b = 6;
>
> When running over a watchlist, the script is restarted for each symbol. Using your example, once the script begins over again for the next symbol, the value of b just before the line b = 5 will be the same as it was for the first symbol. Specifically, b will be undefined, not 6 as was the case at the end of the previous symbol's execution.
>
> In other words, variables do not retain their value between executions of the script.
>
> The behavior of VarSet is identical to simply saying b = 5. The only difference is that you can dynamically construct the name of the variable as opposed to hard coding it. This is useful when setting variables in a loop (e.g. b1 = ..., b2 = ..., b3 = ...).
>
> Static variables are primarily used for two reasons:
>
> 1. To preserve values from execution to execution.
> For example, changing your original code to use statics (StaticVarSet) would mean that for all subsequent symbols, the value of b would be 6 just before the line StaticVarSet(b, 5) instead of undefined. For the first symbol, b would still initially have been undefined until set to 5.
>
> For a more practical example; automation traders will re-run the same scan/exploration over and over throughout the day as new bars come in. Using static variables they are able to preserve state information between executions (e.g. whether or not a position has been taken), even if running on just a single symbol rather than a watchlist.
>
> 2. To access information across panes.
> StaticVarGet can be used from other panes to access a static value set from a different pane. Rather than having everything displayed in a single pane in a single script, it is sometimes more practical to do the calculations once in a "master" pane, and have one or more additional "detail" panes/scripts that chart a variety of related information.
>
> Additional usage might include access within the latter pass of the backtester to values set during the initial signal generating pass.
>
> Mike
>
> --- In amibroker@xxxxxxxxxxxxxxx, "Markus Witzler" <funnybiz@> wrote:
> >
> > Hello,
> >
> > could someone enlighten me as to when I "should" use static variables (Varset)?
> >
> > I understand that they serve as "temporary storage space".
> >
> > But couldn´t I just use any letter, such as b=5 and later assign b = 6 etc. and retrieve/change its value whenever needed
> >
> > Where is the difference to a static variable?
> >
> > Sorry - again - for my ignorance!
> >
> > Thanks
> >
> > Markus
> >
>
> ----- Original Message -----
> From: Steve Dugas
> To: amibroker@xxxxxxxxxxxxxxx
> Sent: Saturday, January 30, 2010 4:00 PM
> Subject: Re: [amibroker] What are static variables used for?
>
>
>
> Hi -I think the big thing with static vars is that they can be shared, i.e.
> you can create a var in one chart and save it with StaticVarSet(), then you
> can access it from other charts or from AA with a call to StaticVarGet().
>
> Steve
>
> ----- Original Message -----
> From: "Pmxgs" <pmxgs@xxx>
> To: <amibroker@xxxxxxxxxxxxxxx>
> Sent: Saturday, January 30, 2010 9:45 AM
> Subject: [amibroker] What are static variables used for?
>
> > Hello,
> >
> > can someone please explain me what ate static variables used for?
> >
> > In the help section it says that a static varable keeps its value in
> > memory until the end of the program.
> > What's the difference between this and assigning a value to a normal
> > variable (which also doesn't change unless we assign another value to it).
> > For example: var=3; keeps this variable equal to 3 until we assign another
> > value to it.
> >
> > I know I'm missing something obvious, but I'm learning how to program and
> > I can't understand this concept.
> >
> > thanks
> >
> >
> >
> >
> >
> > ------------------------------------
> >
> > **** 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
> >
> >
> >
> >
>
>
>
>
>
> __________ Information from ESET Smart Security, version of virus signature database 4668 (20091207) __________
>
> The message was checked by ESET Smart Security.
>
> http://www.eset.com
>
>
>
>
> __________ Information from ESET Smart Security, version of virus signature database 4668 (20091207) __________
>
> The message was checked by ESET Smart Security.
>
> http://www.eset.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
<*> 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:
amibroker-digest@xxxxxxxxxxxxxxx
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/
|