About strategies and optimization - page 2

 
Fabio Cavalloni:

..

Universal strategies, intended to be used 24/24hrs on a lot of pairs, do not exists... or better... I never found one.

...

All martingale / averaging strategies work on practically anything even with random entries because the nature of the martingale / averaging component. Obviously this component hides the performance of the real strategy -in almost all cases without it, it would not work profitably.

 
Enrique Dangeroux:

Try for yourself. Take your strategy and run it on the same symbol same parameters but 2 different brokers. One with low spread, one with high spread. Your results will be different.

It will,not because of different patterns - but because less profits/more losses on same tp/sl settings. But, that can be taken into account as well beforehand. You can calculate beforehand what spread changes are neglectable for your strategy expectations and trade accordingle - right? So, that is not a real factor preventing multi-asset strategy.
 

Well maybe it is a language barier thing.

There is nothing that prevents a multi-asset strategy. All i wrote is with regards to optimisation.

 
Fabio Cavalloni:

Let's correct myself to clarify my point of view.

There are a lot of strategies that can perform on multi assets, but the most important thing is analyze markets and understand when a specific asset is in the right market cycle to use that strategy.

For example. I can create a trend following strategy and say that it works only on EURUSD because, THEORICALLY, it's a strong trending pair, but if I used that strategy in last 2 years, probably I lost a lot of money.

A strategy can be "universal", intended to work on a lot of assets, but behind of using that there is a need of market analysis to understand if it's a good moment to use that or not.

Universal strategies, intended to be used 24/24hrs on a lot of pairs, do not exists... or better... I never found one.

But probably, I gone a bit off topic with this post.

I don't think it's off topic. So, what you say is probably true we all experience it, and this is a factor to take in. A strategy does not necessarily not fit all symbols, it is more correct to say that it does not fit all market types - and a market type can be analyzed to tell if it might fit the strategy. All other differences between assets, like spread and alike, can be put under the title of "analyzing the market type" in relation to the strategy. 

Which raises some thoughts. For instance, is it not better to back test in phases. For instance, phase 1 will be testing on certain market types (identified by chart analyzing - simply by viewing it), on different symbols. Suppose we have a trend following - then test on a large trend only in different symbols.
Phase 2 will be to see how it performs on other type of markets - by testing on specific dates and symbols - and not randomly (only by dates). Then look for ways (not parameters) to decrease activity on 2nd phase without affecting activity on 1st phase. 

*-one benefit that I see for testing specific market types, is omitting the need to optimize. Because if we test on a trending period alone, and the strategy is profitable on that market type, that will be clear on the spot, and there's no need to optimize parameters.

 

A few thoughts. Some are tested; some are theoretical. Feel free to bullet-hole any or all.

1. Normalize parameters like SL & TP using such concepts as percent or ATR. So you wouldn't have a SL or TP in fixed pips, but normalized to a % or ATR.


2. Don't use ridiculous values. Having a SL that is 0.5 to 2.0 ATR from the close is more meaningful than 10.0 ATR away from the close. I use 3.0*ATR to mean "far away from the price."


3. Keep strategies based upon concepts, and keep the rules simple and few.

Consider a strategy that places a pair of pending STOP orders around a Doji bar.

Theoretically, a Doji can occur on any asset. OK, so then theoretically we can have a strategy that "works" on any asset. But what defines a Doji? A body size less than 3% the bar size? What about the body's position? Do I care about a dragonfly, gravestone, long-legged, and/or neutral? Already I have multiple degrees of complexity to my supposedly simple strategy.


4. Technical analysis seems to work better on higher time frames. This is because of noise. So in this thread's discussion, I don't know if it's meaningful to even try writing a strategy that works on all symbols on a time-frame less than H4.


5. Maybe you succumb to the dark side and find that optimizing the SL at 1.25 * ATR below the LOW and above the HIGH gives the best results. And you accept that this value won't be the same across all symbols. If the strategy is indeed valid, this 1.25 probably won't last long. Maybe 1 to 3 months before you would have to re-optimize.

Anyway, I have seen where a strategy can fit multiple symbols, but not all symbols.

 
Hi any one help me to convert this mq4 file to mq5
Files:
 
sivahemantha:
Hi any one help me to convert this mq4 file to mq5

Why have you posted in this topic? Your request is not related to this topic is it?

The indicator uses an iCustom call to an indicator called "QUANTUM".

If you don't have the source code or an MT5 version of this indicator, the indicator cannot be converted.

Please do not double post.

I have deleted your duplicate post (and that was off topic as well)

 
Amir Yacoby:
What are the factors that make a strategy a one that does not fit all symbols but needs optimizations?

And the idealistic question, what can be the factors and principles for a strategy that has a chance to fit all symbols without adjusting?

If someone thought about it and wants to share and open discussion.

The fact is that an effective trading system does not require optimization, i.e. it should not have external parameters that need to be adjusted using an external tester. But instead of optimization, which in fact is a simple fitting of parameters to historical data, an ideal trading system requires data analysis, based on which automatic correction of already internal (hidden from the user) parameters takes place. The main difference between analysis and optimization is that analysis is an internal block of the trading system and the internal parameter becomes a variable depending on the analyzer's decision. These parameter changes can occur even every tick or with the arrival of a new minute bar.

For example, consider a primitive trading system based on a simple moving average in which a signal is generated, for example, at the inflection points of MA. In such a system, there is one parameter - the MA period. If such a parameter will be external and it is determined by the user by running through the tester, sorting through all the possible options and choosing the best, then I think there is no need to explain what the level of efficiency and universality for the different symbols of such a system will be. But if this parameter becomes internal and private, then at the time of loading the expert, the whole story is downloaded and the analysis is performed according to a given algorithm, during which not only all options are selected and the best one is selected, but the analysis system tries to understand the rhythms and behavior of a dynamic MA at which the system maximizes effective and in fact it is trying to predict the desired MA at a given time. And then this analysis does not end and continues with the arrival of each new tick. This is of course a much more complex system, but it is an effective self-regulatory system that becomes a universal system for any character. The analysis algorithms can be any and this is a highly intelligent product in comparison with primitive systems with many external parameters that require what is called the pretty word “optimization”.

 
Nikolai Semko:

The fact is that an effective trading system does not require optimization, i.e. it should not have external parameters that need to be adjusted using an external tester. But instead of optimization, which in fact is a simple fitting of parameters to historical data, an ideal trading system requires data analysis, based on which automatic correction of already internal (hidden from the user) parameters takes place. The main difference between analysis and optimization is that analysis is an internal block of the trading system and the internal parameter becomes a variable depending on the analyzer's decision. These parameter changes can occur even every tick or with the arrival of a new minute bar.

For example, consider a primitive trading system based on a simple moving average in which a signal is generated, for example, at the inflection points of MA. In such a system, there is one parameter - the MA period. If such a parameter will be external and it is determined by the user by running through the tester, sorting through all the possible options and choosing the best, then I think there is no need to explain what the level of efficiency and universality for the different symbols of such a system will be. But if this parameter becomes internal and private, then at the time of loading the expert, the whole story is downloaded and the analysis is performed according to a given algorithm, during which not only all options are selected and the best one is selected, but the analysis system tries to understand the rhythms and behavior of a dynamic MA at which the system maximizes effective and in fact it is trying to predict the desired MA at a given time. And then this analysis does not end and continues with the arrival of each new tick. This is of course a much more complex system, but it is an effective self-regulatory system that becomes a universal system for any character. The analysis algorithms can be any and this is a highly intelligent product in comparison with primitive systems with many external parameters that require what is called the pretty word “optimization”.

Good point. It basically means (If I understand correctly) to optimize internally based on current price action, as opposed to backtest optimization based on previous price action. For instance, the SL/TP which was discussed earlier, can be optimized internally based on current ATR values or whatever algorithm and price action. This makes me think of black boxes - ready made objects which perform a specific analysis task like optimizing a parameter (SL? TP?) by different algorithms, on a given symbol/period. When you have such components, ready made, it must be easier to build robust strategies.

Reason: