- Joined
- 13 June 2007
- Posts
- 838
- Reactions
- 136
IMO, the reason for performing optimisation is to get some sort of feel as to what has performed best in the past. That is not to say that one can expect the same level of performance going forward using the optimised parameter values, but it is nonetheless a start. There is absolutely nothing available in any past data that would indicate what the future performance is likely to be. So for me, the only kind of "edge" (if you can even call it that) is to trade a system that I know has performed well in the past, rather than one with random parameter settings. In my view, extracting what has worked in the past is pretty much all that is up for grabs when looking at past data and there are no better alternatives than that.
The key really is to extract these optimised parameter value from an in-sample set of data and then to verify it using out of sample data. By out of sample data verification, I mean performing any MonteCarlo analysis you deem necessary etc etc using the optimised parameter settings on out of sample data. If the out of sample testing shows good robustness in the figures and are relatively close to the optimised figures, then you may well have a very decent system. On the other hand, if the out of sample testing shows results that are very poor, then there is a real problem with the system and its back the drawing board.
That, in a nutshell, is my perception of the role that optimisation plays, it is merely a starting step which would hopefully lead to the formulation of a robust system that is better than random.
I have been using Excel spreadsheet for some Monte Carlo analysis. I anticipate less need for that when AmiBroker 5 is released.
Thanks,
Howard
Hi rnr --
I believe that I said the out-of-sample data should be used very INfrequently.
Nick, Howard, Tech et al;
Apologies if any of this has been covered earlier in the thread,
I think the distinction between curve fitting and optimization is worth noting,
though accurately distinguishing one from the other is certainly beyond me.
Finding the best parameters over an arbitrary length of time and then expecting them to hold true for a multitude of conditions that may be encountered in the future is IMO a fools game, but optimizing chosen variables over a specified time period with the expectation that the performance of these variables should decay into the future is perhaps a more feasible approach.
I am aware there has been a fair amount research into this area by various academics in this field, but it would be fair to say the people who are profitably using this method prefer not to disclose. Bastards
From what I have read, machine learning applications (genetic algorithms, etc) are used to dynamicaly evaluate and update variables (or perhaps even overhaul the whole model) to optimize the next periods performance, based on a previous number of periods. Considering the calibre of individuals who subscribe to 'market cycles' and similar, I don't find it that hard to swallow.
Interested to hear others thoughts on this area.
I completely agree, though could this apply more to swing trading systems than trend following? What effect would the frequency of trades have on the effective life of a system?
Also, to Nick & Howard, what has your experience been with short term trading systems? Most of the discussion in this area seems to be on medium to longer time frame systems, have you seen short term systems employed profitably?
1. Optimization simple means an organized search through a large number of alternatives, assigning each alternative a score so that the alternatives can be ranked. In my opinion, the reason we are optimizing is not specifically to find something that worked in the past (although we do find that in the process), but to find some general characteristics that precede profitable trading opportunities that will hopefully continue to work in the future.
2. Your comments imply that the Monte Carlo analysis is applied to the out-of-sample results. Am I misunderstanding? Monte Carlo analysis is usually applied to in-sample data to determine the robustness of the parameters -- the sensitivity to small changes in parameter values. The results from Monte Carlo runs are incorporated into the objective function used to assign the score to each alternative. Applying Monte Carlo analysis to the previously out-of-sample results is the start of another stage of model building using that previously out-of-sample data now as an in-sample data set. A new out-of-sample data set will be required to test for model validity.
IMO, the main objective of the optimization phase is to select what appears to be the most robust set of parameter settings, which may not necessarily be the most profitable setting. This relates specifically to the sensitivity of these parameter values which as ASXG mentioned in a previous post means a lookout for a relative stable plateau or platform as opposed to a sharp point with steep fallouts in all directions. The most robust settings would be right bang in the middle of the plateau.The less sensitive the parameter values the greater the scope of these parameter values to change without significantly impacting performance. Therefore, outside of giving us valuable information regarding the “pockets” of outperformance within the in-sample data, I am not sure whether there are any information that can be gleened from the optimization exercise. If there are more “general characteristics that precede profitable trading opportunities” that can be extracted, I would certainly like to hear about them.
OK, some clarification here. The Monte Carlo analysis that I suggested being performed on the out of sample data is purely for verification purposes only, by using optimized parameter values created from running the optimization and parameter value sensitivity testing on the in-sample data. At no stage am I advocating that we convert what was previously out of sample data into in-sample data by re-optimising the previously out of sample data and extracting new optimized parameter values. Without the re-optimisation process, one really does not convert out of sample data to in-sample data.
As part of the walk forward process, we would use optimized parameter values to test against out of sample data. The point is that while we are performing this walk forward process, there is really nothing stopping us performing Monte Carlo testing at the same time. If the system gives more signals than the trader has to trade then Monte Carlo just give the testing procedure more “credibility” by subjecting the out of sample data to a more comprehensive level of testing than a single walk-through could ever provide. This then provides more level of “confidence” should the results come out as expected …..
Bingk6
Similar to my thinking.
but is it really better than random.
Logic says it should be.
But no real reason why it will be.
I dont have amibroker so dont have the facilities to find optimum variables over a portfolio.
Id be interested in what they are for T/Trader and then test the results over data and with tradesim.All I need is the optimum values.
My suspicion is that the edge if any wouldnt equate to much.
anyone help out?
Interested in Nicks take.
Hi Julius --
The counterparty to my trade is probably not one of you -- it is probably an automated trading system designed by one of the large, well-funded trading organizations, equipped with the fastest computers, cleanest data feeds, and smartest system developers money can buy.
www.quantitativetradingsystems.com
Is this a variant of tech trader?Here's what I get with some of the params with optimization. I'm still learning amibroker, and my data isn't the best. I've done it only on the current ASX 300 over 10 years.
Buggalug
Is this a variant of tech trader?
I dropped it into Excel for some 3D optimisation charts. It would be interesting to try;
LongEMA = Optimize("LongEMA", 100, 65, 125, 20); // or maybe increment by 10
or something similar since RAR (or CAR for that matter) was highest at the lowest value of of LongEMA looking at the 3D chart. You could fix the short EMA to 20 since it doesn't appear to vary that much.
It appears that the best returns also give the highest drawdown - not an unusual occurence. So you can make more money (maybe) if you are prepared to accept more drawdown risk. It's all about tradeoffs and compromise.
By the way I haven't studied the code at all, only the results.
regards
stevo
Tech/a download and save it locally, rename it to a .zip file, unzip it and you'll find a .csv file which contains the optimisation output.
Good work buggalug.
ASX.G
I wanted to get the "Optimum" variables and code them into M/S then through Tradesim for some checking/testing/stuffing around myself.
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?
We use cookies and similar technologies for the following purposes:
Do you accept cookies and these technologies?