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

Re: [amibroker] What's wrong with my formula (trouble with custombacktest)



PureBytes Links

Trading Reference Links

The advanced backtest code is explained in the help files, see Amibroker Formula Language - Advanced Porfolio Backtester Interface.
 
Advanced code is for changing the backtest trades, or producing your own metrics after the main first pass (normal) backtest is completed. (note: custom backtest and advanced backtest refer to the same thing)

You have not shown any of this in the information provided. All you have shown are the front end settings which are used during the standard backtest, and are to be included in the main part of the AFL code, not in the custom backtest part.


--
Cheers
Graham Kav
AFL Writing Service
http://www.aflwriting.com


On 22/03/2008, Ton Sieverding <ton.sieverding@xxxxxxxxxx> wrote:
I don't follow Graham and of course would like to be corrected. Are you telling me
that when starting my AFL with following instruction, the Backtester is not accepting
these settings when running the AFL ?
 
AA.LoadSettings("MySettings.abs");
 
If the Backtester is not following this instruction what than is the purpose of the
SAVE and LOAD feature in AA ? I have the feeling that I can save more setting
details by using the AA Settings screen than by loading the underneath mentioned
Settings.AFL. In other words, I my opinion there are more settings in de AA Settings
than I will find in the Setoption instruction ... And it's a hell of a lot easier to make an
ABS file than and Settings.AFL ...
 
Regards, Ton.

----- Original Message -----

From: Graham
Sent: Friday, March 21, 2008 9:57 PM
Subject: Re: [amibroker] What's wrong with my formula (trouble with custombacktest)

These are not custom (advanced) backtest codes, just the options for backtesting, and do not belong in the advanced file. They will not be read until after the backtest has been completed and is ready for changing in the cbt.
If you want these standard for all backtesting, then just use #Include function, not
#include  "C:\Program Files\Amibroker1\Formulas\Custom\custom_backtest.afl";
--
Cheers
Graham Kav
AFL Writing Service
http://www.aflwriting.com

On 22/03/2008, Ton Sieverding <ton.sieverding@xxxxxxxxxx> wrote:
Louis please go to the 'Automatic Analysis' Tool and open the Settings. Modify all values according to want you want to see. Then SAVE everything in an ABS file that you can open in the beginning of your AFL. That's all ...
 
Regards, Ton.
 
----- Original Message -----
Sent: Friday, March 21, 2008 2:54 PM
Subject: Re: [amibroker] What's wrong with my formula (trouble with custombacktest)

Hi,

Ok let me try to explain again.

I have a file with

run = Optimize ("run", 1,1,1000,1);

SetOption("UseCustomBacktestProc", True );
SetCustomBacktestProc( "C:\\Program Files\\Amibroker1\\Formulas\\Custom\\custom_backtest.afl" );

SetOption("MaxOpenPositions", 5 );
SetOption("InitialEquity", 100000 );
SetOption("AllowPositionShrinking", True );
SetOption ("AllowSameBarExit", False);
SetOption ("ActivateStopsImmediately", False);
SetOption ("MinShares", 100);
SetOption ("MinPosValue", 5000);
SetOption ("PriceBoundChecking", True);
SetOption ("CommissionMode", 2);
SetOption ("CommissionAmount", 25);
SetOption ("AccountMargin", 100);
SetOption ("ReverseSignalForcesExit", True);
SetOption ("UsePrevBarEquityForPosSizing", True);
SetOption ("PortfolioReportMode",0 );
 

ShortTrades = ParamToggle("Short Trades?","Oui|Non",1);
Longtrades = ParamToggle("Long Trades?","Oui|Non",1);

PositionScore = Random();

buy=....;
sell=.....;
short=.... etc.


Then, in c:\\Program Files\\Amibroker1\\Formulas\\Custom\\custom_backtest.afl I have another file with


SetOption("MaxOpenPositions", 5 );
SetOption("InitialEquity", 100000 );
SetOption("AllowPositionShrinking", True );
SetOption ("AllowSameBarExit", False);
SetOption ("ActivateStopsImmediately", False);
SetOption ("MinShares", 100);
SetOption ("MinPosValue", 5000);
SetOption ("PriceBoundChecking", True);
SetOption ("CommissionMode", 2);
SetOption ("CommissionAmount", 25);
SetOption ("AccountMargin", 100);
SetOption ("ReverseSignalForcesExit", True);
SetOption ("UsePrevBarEquityForPosSizing", True);
SetOption ("PortfolioReportMode",0 );


and when I click "backtest" nothing happens if

SetOption("UseCustomBacktestProc", True );

but it works well if

SetOption("UseCustomBacktestProc", False);

but of course I'd prefer to use the custom backtest.

Also,  if I click the "use custom backtest" in the AB interface and choose the first file or the second, still nothing happens if custombacktestproc is true.  It has to be false for results to show.

Can you help?

Thanks,

Louis




2008/3/21, Graham <kavemanperth@xxxxxxxxx>:

I do not understand what you mean by parameters. The custom file is for the advanced backtest coding that is read after the portfolio backtest run is complete to either change the backtest or report special custom metrics.
If all you want is input information for the afl, then use #include


--
Cheers
Graham Kav
AFL Writing Service
http://www.aflwriting.com

On 21/03/2008, Louis Préfontaine <rockprog80@xxxxxxxxx> wrote:
Hi Graham,

Yes I have the file setted as you said, but what exactly should I put in that file?  If I put only the parameters and no rule, is it ok?

Ton: I am not sure what is AA or ABS...

Louis

2008/3/19, Ton Sieverding <ton.sieverding@xxxxxxxxxx>:

Louis, why are you using all these SetOptions when AA has the ABS facility ? Create an ABS, load the ABS in your AFL with LoadSettings method and you've got what you want. What's wrong with that ?
 
Regards, Ton.
 
----- Original Message -----
Sent: Wednesday, March 19, 2008 3:54 AM
Subject: Re: [amibroker] What's wrong with my formula (trouble with custombacktest)

Hi,

I don't have 4.90, so setbacktestmode does not work...

I edited a new file with this inside:

run = Optimize ("run", 1,1,1000,1);

SetOption("UseCustomBacktestProc", True );

SetOption("MaxOpenPositions", 5 );
SetOption("InitialEquity", 100000 );
SetOption("AllowPositionShrinking", True );
SetOption ("AllowSameBarExit", False);
SetOption ("ActivateStopsImmediately", False);
SetOption ("MinShares", 100);
SetOption ("MinPosValue", 5000);
SetOption ("PriceBoundChecking", True);
SetOption ("CommissionMode", 2);
SetOption ("CommissionAmount", 25);
SetOption ("AccountMargin", 100);
SetOption ("ReverseSignalForcesExit", True);
SetOption ("UsePrevBarEquityForPosSizing", True);
SetOption ("PortfolioReportMode",0 );
 

ShortTrades = ParamToggle("Short Trades?","Oui|Non",1);
Longtrades = ParamToggle("Long Trades?","Oui|Non",1);

PositionScore = Random();

and saved it as custom_backtest.afl at the right place.  Then  I added this at the beginning of the file with my formula:

SetOption("UseCustomBacktestProc", True );
SetCustomBacktestProc( "C:\\Program Files\\Amibroker\\Formulas\\Custom\\custom_backtest.afl" );


I don't understand why it is not working...

Louis


2008/3/18, Graham <kavemanperth@xxxxxxxxx>:

If you set custombacktestproc as true , you must have a custom backtest code to read.

you could try the function SetBacktestMode


--
Cheers
Graham Kav
AFL Writing Service
http://www.aflwriting.com 


On 19/03/2008, Louis Préfontaine <rockprog80@xxxxxxxxx> wrote:
Hi,

My formula starts like this:

run = Optimize ("run", 1,1,1000,1);

SetOption("UseCustomBacktestProc", True );

SetOption("MaxOpenPositions", 5 );
SetOption("InitialEquity", 100000 );
SetOption("AllowPositionShrinking", True );
SetOption ("AllowSameBarExit", False);
SetOption ("ActivateStopsImmediately", False);
SetOption ("MinShares", 100);
SetOption ("MinPosValue", 5000);
SetOption ("PriceBoundChecking", True);
SetOption ("CommissionMode", 2);
SetOption ("CommissionAmount", 25);
SetOption ("AccountMargin", 100);
SetOption ("ReverseSignalForcesExit", True);
SetOption ("UsePrevBarEquityForPosSizing", True);
SetOption ("PortfolioReportMode",0 );
 

ShortTrades = ParamToggle("Short Trades?","Oui|Non",1);
Longtrades = ParamToggle("Long Trades?","Oui|Non",1);

PositionScore = Random();

buy=.................................
sell=.....
etc.

Is there something wrong with this, as when I click "backtest" I see no results.  When I change the custombacktestproc for "false" everything works well, but how do I do to get it my own way?  Cause I'd like to be able to be in more than one trade at a time.   And also, I think been in more than one trade at a time could make my Monte Carlo backtesting more reliable (am I right?).

Thanks,

Louis















__._,_.___

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




Your email settings: Individual Email|Traditional
Change settings via the Web (Yahoo! ID required)
Change settings via email: Switch delivery to Daily Digest | Switch to Fully Featured
Visit Your Group | Yahoo! Groups Terms of Use | Unsubscribe

__,_._,___