Robustness vrs New Markets

Discussions about the testing and simulation of mechanical trading systems using historical data and other methods. Trading Blox Customers should post Trading Blox specific questions in the Customer Support forum.
Post Reply
Chris67
Roundtable Knight
Roundtable Knight
Posts: 1052
Joined: Tue Dec 16, 2003 2:12 pm
Location: London

Robustness vrs New Markets

Post by Chris67 »

I ve been reading this forum thoroughly for many weeks now - I wanted to re-raise a topic that I cannot see has been covered in too many areas before.

There are many discussions about the merits of testing as larger portfolio of markets as possible over as long as possible - This is understandable - But given so many markets have only "come on line" in the last 5-15 years (i.e. Rubber / Palm Oil / Mini's , Milk, Mex Peso etc etc ) is it advisable to test all these markets in a test that goes back 30 years ? Surely in this instance you are not getting a true picture of the 30 year results ?
My conundrum was should I test on a basket of markets that have been in existence for 30 years in order to get a valid pointer as to how the system performance has changed and / or should I then apply new markets as they emerge and only test the whole system from the period these markets are added ?
If you take every market available today and run a 30 year backtest then obvioulsy the system will only be testing on half of these markets in the late 70's - does this then give a true 30 year reflection of the system ?
I personally preferr, to test a constant basket of markets that have been in existence from the start of the test to the end of the test and then look for a good system. Then I will try running it from, say 1998 until now including all the markets that have emerged in more recent years and see how it holds up on that period with those markets ?

Just wondering how other people approach this issue and drum up some thoughts on the whole area if possible.
Chris
sluggo
Roundtable Knight
Roundtable Knight
Posts: 2987
Joined: Fri Jun 11, 2004 2:50 pm

Post by sluggo »

Hypothetically, suppose your job is to figure out how to modify a system (or a suite of systems) to "deal with" a time-varying portfolio. Some markets die (for example, Spanish Bond, Notionnel Bond, MATIF PIBOR, GNMAs, T-Bills, NYFE, MuniBonds) and other markets are born (Volatility Index, Electricity, ICE-WTI). Yet your job is to make a system or suite of systems, adapt to this environment.

Perhaps the beginning of the germ of an idea, might be to trade an infinitely large portfolio with medium largish risk per trade, BUT use heat-limiters to prevent overbetting. Such as in Thermal_BBBO. Perhaps this might decouple portfolio size from trading performance, a little bit or a lot.

Image

Or perhaps not.
Chris67
Roundtable Knight
Roundtable Knight
Posts: 1052
Joined: Tue Dec 16, 2003 2:12 pm
Location: London

Post by Chris67 »

Sluggo - Yeah I like the thermal bbo and I like the idea of limiting heat per sector / group but as per my earlier postings I dont have the skills to program that and I cannot understand why the group risk manager is not working - the one that ships with TB Blox Builder - as I said before Ive got my GROUP 1 set to grains , currencies, meats etc - but it doesnt seem to make any difference if I set no markets per group or 30 markets - I still get the same number of trades - Where as I take your point that employing a programmer or paying TB to do some work for me - I only really want to know the Group / sector bit as I'm fairly up to speed with what else I want to know right now - Any help on how to set up the Futures info file to fit with your thermal bbo system would be appreciated - i.e defining groups/sectors - would be warmly appreciated
Chris
LeapFrog
Roundtable Knight
Roundtable Knight
Posts: 695
Joined: Mon May 17, 2004 4:18 pm
Location: Boston, MA

Post by LeapFrog »

Chris67 wrote:Sluggo - Yeah I like the thermal bbo and I like the idea of limiting heat per sector / group but as per my earlier postings I dont have the skills to program that and I cannot understand why the group risk manager is not working - the one that ships with TB Blox Builder - as I said before Ive got my GROUP 1 set to grains , currencies, meats etc - but it doesnt seem to make any difference if I set no markets per group or 30 markets - I still get the same number of trades - Where as I take your point that employing a programmer or paying TB to do some work for me - I only really want to know the Group / sector bit as I'm fairly up to speed with what else I want to know right now - Any help on how to set up the Futures info file to fit with your thermal bbo system would be appreciated - i.e defining groups/sectors - would be warmly appreciated
Chris
Chris, you have seen Sluggo's free Thermal BBO system in the Marketplace, right, where you can see all his code, etc.? (Damn nice of him I say BTW.)

Maybe you were referring to transcribing the heat limiter to other sorts of systems, but the above chart is pretty much what I get when running Thermal with a large number of markets.
Chris67
Roundtable Knight
Roundtable Knight
Posts: 1052
Joined: Tue Dec 16, 2003 2:12 pm
Location: London

Post by Chris67 »

Leapfrog - thanks for your post - yes I agree a great blox by Sluggo and and kindly shared by him - As i said not having much luck in understanding the code !!! Im not the Worlds best programmer and will seek outside help - I just wondered if I was making a basic error in the set up of the futures info file in listing the categories such as Currencies / grains etc under Group 1 and then applying the bbo system to it ?
C
sluggo
Roundtable Knight
Roundtable Knight
Posts: 2987
Joined: Fri Jun 11, 2004 2:50 pm

Post by sluggo »

...suppose your job is to figure out how to modify a system (or a suite of systems) to "deal with" a time-varying portfolio.

Here's another idea: Start with garden variety fixed-fractional betsizing
  • #Contracts = ((Total Accout Equity) * (A User Supplied Constant)) / ((Distance to Exit) * (BigPointValue))
and modify it, based on the total number of tradeable markets today. Maybe one or more of these Blox properties, in the denominator of the FF betsizing equation, would prove useful. They give you the ability to change the betsize based on the size of the portfolio, today. The portfolio might grow larger tomorrow, and you might want to adapt to this by using a smaller betsize.

It's a thought.
Attachments
some System properties
some System properties
BuildersGuide.png (16.75 KiB) Viewed 7994 times
nickmar
Roundtable Knight
Roundtable Knight
Posts: 192
Joined: Tue Oct 26, 2004 12:38 pm
Contact:

Post by nickmar »

Sluggo's idea is a good one. Dynamically adjusting position size according to the number of markets available for trading can aid in keeping heat within a narrow range over long periods of time.
AFJ Garner
Roundtable Knight
Roundtable Knight
Posts: 2071
Joined: Fri Apr 25, 2003 3:33 pm
Location: London
Contact:

Post by AFJ Garner »

I have found I need to be a little wary of "system.tradingInstruments" in betsizing since this can vary fairly dramatically because of non-trading days for particular instruments. Particularly if you trade a lot of foreign markets.

I tend to use a 10 day high of tradingInstruments, something along the following lines:

Code: Select all

 trInstruments=system.tradingInstruments
IF test.currentDay>10 THEN 
	trh=Highest(trInstruments,10) 
	ELSE
	IF trInstruments>trh THEN trh=trInstruments
ENDIF

IF algorithmMM =  TRADING_INSTRUMENTS THEN
	signals=trh       
……………………….etc
Does not take account of instruments which have ceased to trade over the 10 days but I would rather bet too low than too high.
nickmar
Roundtable Knight
Roundtable Knight
Posts: 192
Joined: Tue Oct 26, 2004 12:38 pm
Contact:

Post by nickmar »

Good point AFJ. A while back, I had written an alternate version of the "instrument.tradingInstruments" property which eliminates the "have price information for the current test date" condition. As a result, markets that are closed due to a Holiday (or weekend) are not excluded from the calculation. The Blox can be found here:

viewtopic.php?t=3828
AFJ Garner
Roundtable Knight
Roundtable Knight
Posts: 2071
Joined: Fri Apr 25, 2003 3:33 pm
Location: London
Contact:

Post by AFJ Garner »

Far slicker! Thanks for that.
Post Reply