|
Dave W.
2014-03-06 18:03:32
|
|
I have a fairly powerful computer, and love the idea of using composites in my trading systems. As you've mentioned in your articles, though, using them can be extremely slow.
I'd like to get a few ideas on how to make using them faster. Let's take a specific case. Let's say I'm optimizing a trading system that creates a composite based on the members of the Russell 3000 index that trade an average of 3M shares a day. I want to run roughly 250 optimization iterations, but doing that takes 6 - 8 hours. (Side question: Is it the case that the composite is re-calculated each time on optimization iteration is run?) This makes it very challenging to evaluate various system options for using comp().
Here's some sample code to give you a better idea about how I'm using the comp() function in the system:
NatrShortRankLength = 5;
RankThreshold = 140;
Optimize("NatrShortRankLength", 2, 8, 2);
Optimize("RankThreshold", 5, 175, 5);
ShortRankFunction = natr(NatrShortRankLength );
Rule1 = connorsrsi(CRSI_RSI_Lookback, CRSI_DaysUp, CRSI_PctRank_Length ) > CRSI_Threshold;
Rule4 = SMA(volume, 22) > MinimumVolume;
Rule5 = comp(ShortRankFunction, 'rank' ,1 , SMA(volume, 22) > MinimumVolume) >= RankThreshold ;
Short = Rule1 && Rule4 && Rule5;
I've seen some related posts, but I'm not sure if there are there options to store the composite data in a custom database and request the data versus re-calculating the composites when optimizing. Or are there other options to make them faster that I'm missing?
Thanks in advance for your suggestions.
|
|