PureBytes Links
Trading Reference Links
|
Greetings --
I'd like to add a comment on multivalued objective functions, particularly as they relate to Monte Carlo analysis and walk-forward testing.
As your trading system development moves to the stage of having a walk-forward process performed automatically, it needs to be guided by an objective function that incorporates all of the features that are important to you and can be expressed as a single scalar value.
As you know, the walk-forward process divides the entire time series being used into a sequence of in-sample periods, each followed by an out-of-sample period. A search procedure picks the single Best set of values for the trading system's optimizable variables for a given in-sample period, then records the results of using those values to simulate trading over the out-of-sample period. Then it slides the starting dates for both the in-sample period and out-of-sample period forward, usually by the length of the out-of-sample period, and does the search over again. This process continues until all of the data has been processed. The results from the out-of-sample periods are concatenated together and are used to decide whether the trading system is a good one or not.
The key point here is this: the search procedure must make its decision on which set of variables is Best based on a single value -- the value of the objective function. By the time the development reaches this stage, we, as system developers or programmers, will not have an opportunity to look down the list of alternative trading systems to see if we would have picked one other than the one at the top of the list. So, as we are working with multivalued objective functions, we must incorporate them into a single-valued objective function that fits our trading requirements or personality and that we trust to sort the alternatives into the order we prefer.
AmiBroker has the capability to creating custom objective functions. There is an extensive discussion in my book about objective functions. The discussion includes an example of using AmiBroker's custom backtester to create a single-valued objective function by starting with a central objective function, then applying penalties (which can be positive or negative) to it to take secondary goals into account.
In fact, I think that objective functions are so important that selection of the objective function should be the First step in trading system design. If the objective function fits the trader, most of the problems related to the difficulty of following a trading system and of the psychology of trading disappear.
Thanks for listening, Howard www.quantitativetradingsystems.com
On 17 Mar 2007 03:06:02 -0700,
thomasdrewyallop <drewyallop@xxxxxxx> wrote:
Hello all,
I have been working on the MCP technique described in Aronson's book
for some time now. I have just completed conversion of the C++ code on
the web site to C# plus some associated utlities to massage AB data
into the required format yet. No test yet; I will update under this
thread.
A few words on the theoretical underpinnings. There has been new
information since the book was published and the code written. I
believe an update is in the works. Also you need to be cautious when
running MCP on IS data. This is only valid under certain conditions.
Otherwise you must run OOS. I had an email from Aronson explaining all
this but can't find it. You might want to contact David directly - a
good guy and willing to talk with readers.
Finally, I would not reject walk forward. A very useful technique
despite Aronson's reservations. Well integrated with AB too via Fred
Tonetti's IO add-in.
Best regards,
Drew Yallop
p.s. just remebered that there is discussion on MCP as a possible
future addition to AB. Look in the AB suggestions section of the web site.
__._,_.___
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
SPONSORED LINKS
__,_._,___
|