PureBytes Links
Trading Reference Links
|
Note that you could also just choose to pass the values as parameters
rather than using the global keyword.
e.g. DoBacktest(MaxPositions);
Mike
--- In amibroker@xxxxxxxxxxxxxxx, "Mike" <sfclimbers@xxx> wrote:
>
> Hi,
>
> There may be a better way, but the following will achieve what
you're
> trying to do.
>
> In your main.afl, #include an external file which contains your
> custom backtest logic. Initialize all the variables that you need
to
> use before starting the backtest. You'll still start the backtest
> from main.afl, but simply defer all processing to the external file
> via a procedure call. e.g.
>
> main.afl
> --------
>
> #include<backtest.afl>
>
> MaxPositions = 20;
>
> SetCustomBacktestProc("");
> if (Status("action") == actionPortfolio) {
> DoBacktest();
> }
>
> Buy = Cover = IIF(DayOfWeek() == 1, 1, 0);
> Sell = Short = IIF(DayOfWeek() == 4, 1, 0);
>
>
> backtest.afl
> ------------
>
> procedure DoBacktest() {
> global MaxPositions;
>
> bo = GetBacktesterObject();
> bo.backtest();
> bo.addCustomMetric("Max Positions", MaxPositions);
> }
>
>
> Mike
>
> --- In amibroker@xxxxxxxxxxxxxxx, "Graham Johnson" <grahamj@>
> wrote:
> >
> > For the sake of code re-use, I wish to have CBT code in its own
AFL
> and
> > access it using SetCustomBacktestProc("<filename>");
> >
> > That works fine except that in the Main.afl there is a variable
set
> for
> > Max Open Positions and I want to pass that value to CBT.afl for
> > inclusion in the backtest report using AddCustomMetric.
> >
> > Tried using Global but that didn't get a result - CBT.afl didn't
> > recognise the variable name.
> >
> > I presume that from Main.afl I could write the value to a file
and
> then
> > retrieve the file in CBT.afl. Gets a bit messy when wanting to
> pass
> > the values of several variables.
> >
> > Is there a better way, please?
> >
> > Graham
> >
>
------------------------------------
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/
|