Optimizing CSSA?
Warning: We are strongly biased!
Our way to deal with the No Free Lunch theorem: “matching algorithms to problems gives higher average performance than does applying a fixed algorithm to all”.
No free lunch in search and optimization - Wikipedia, the free encyclopedia
> currently I add parameter linkage in order we get the same value for Long/Short signals.
What’s your rationale here? To us, if thresholds are involved in generating signals they might be different for long entries as opposed to short entries.
> Less explanation how to use noxa to create trading strategy/prediction. The sample shown on help only the final result without explaining how it achieved (manually or by neuroshel optimization).
Don’t expect quick recipes from us. There is no such thing that can be taught. There is however tons of value in the examples we provide if you have the time to really understand them.
To answer your question, we don’t use the Genetic Algorithm (GA) as most traders do. We don’t let the GA set the parameters of the final system (your impression that parameters were manually set). Instead we use the GA to optimize our process of developing trading strategies so that the final result reflects the appropriateness of the entire decision making process.
A few quick notes:
- Optimizing final parameters is rather superficial as it does not examine the processing that led to it; it does not validate our understanding of the markets.
- Markets cannot be expressed with simple genomes; direct encodings do not cope well with complexity. As in nature, genes should not encode trading strategies but the developmental processes that led to them.
- CSSA cycles are more like features and patterns than the constant waves of Fourier or other cycle detection methods. As you’ll notice, there are usually just a few genuine cycles that are relevant to the instrument. Letting the GA finding them does not specify the form of the market features (here the cycles), but sets constraints on the parameters that might account for the market instead. But without well-chosen parameter ranges, all the number crunching will just memorize the training data.
Our recommendation is that you first use CSSA cycles without any NeuroShell auto-optimizations. It is already incredibly useful just to look at them. In fact, if you are an experienced trader, you can just couple them with resistance and support lines and you're ready for manual trading.
As you become more familiar with the cycles, identify a few of them that worked well in the past. These cycles will constitute the market features you are interested in; you can picture them as stationary market regimes you can choose from when appropriate. Merge them in a trading system which parameters can be tuned by looking at incremental improvements of the equity line. This way you are more likely to get a smooth searching landscape with gradients you can rely on to assess the robustness of your system.
> Is there any advice how to put parameter indicator in optimization?
Well, we still use the GA to search for cycles but as a tool to assess the instrument potential. A high occurrence of up trending equity lines for example is a good indication that we should keep investigating this instrument.
I hope he won't mind (or charge us) if we quote him at length; a fellow CSSA user gave his two pips on optimizing CSSA cycles:
“ A technique which I have touched on elsewhere is to keep GroupStart and GroupDepth constant, and to adjust m-Histories as relevant to time. For example, I treat 1 week as a 5-day x 5-day matrix, and these time-relevant settings seem to work well in currencies. I also find pulling in the ranges from multiple time-frames extremely useful (perhaps in your case, weekly and monthly).”
We personally keep m-Histories fixed and adjust GroupStart and GroupDepth to reflect the level of detail we are more comfortable with.
Here are a few additional tips:
- Set ranges as small as possible. The lead parameter for example could be limited to 0~1 as the cycles do not lag,
- Set ranges incrementally and sequentially to get a feel of the learning dynamics,
- As you set ranges, you should see results changing smoothly as you get away from the best setting,
- Pause the optimization each time you see an improvement in the return to avoid overfitting.
Hope this helps
Noxa
Hi Noxa,
Welcome to this thread:clap:
I am very glad, finally noxa owner come to this thread. Hope your input how to use noxa correctly can prove how good noxa and nobody do mistake using noxa.
I bought noxa since march 08 and getting difficulties at the beginning due to the following:
- Less explanation how to use noxa to create trading strategy/prediction. The sample shown on help only the final result without explaining how it achieved (manually or by neuroshel optimization).
- I experienced it is not easy when we put into optimization in neuroshell especially for different data (forex in different time frames).
- Is there any advice how to put parameter indicator in optimization? currently I add parameter linkage in order we get the same value for Long/Short signals.
Thank you for your prompt explanation
.
Arry