Trader's self-deception: distrust of forwards. - page 12

 
Vasiliy Sokolov:

A little more about R^2.

To me this is a very powerful indicator, but not enough. In practice I have encountered that some TCs, can produce very good and smooth equity upwards. R^2 is very high and their set of parameters can crack even the most sophisticated forward. Here is an example of one such TS:


Its equity makes one make a stand on the market, but it is not that simple. Adapted TS have one remarkable feature: their set of parameters is almost always unstable and any slight shift in values of these parameters can drastically change the result. For example, a slight change of closing rules of this TS leads to the following results:

It can be seen that a small change led to disastrous results. That is why after the optimal set of parameters has been determined, it is necessary to shift the parameters by some value and check the results of runs in the vicinity of the optimal point:

The optimization space can be multidimensional, but the number of dimensions does not play a role here. If we are in a stable parameter spot, their shift will not drastically change the behavior of the TS. It is important to understand that in real trading, this very shift will happen. On history, we shift the TS parameters around a static market. On the real market, the market will move its characteristics around the previously found and fixed by us parameters.

You can't examine the system without understanding how it works. The sensitivity of an option is also determined by this understanding. Some options may be sensitive, some may be "thick". For example, you have a pattern that works in a small range of opening times, and the width of that zone is an opt. There's no reason for it to work when that opt varies even slightly.

Yes and the scale of change is conditional.

 
Слава:
you cannot look at a system without understanding how it works. The sensitivity of an optimum is also through this understanding. Some opts may be sensitive, some may be "thick". For example, you have a pattern that works in a small range of opening times, and the width of that zone is an opt. There's no reason for it to work when that opt varies even slightly.
Here it does. No one is saying the ranges can be chosen out of the blue or at least automated. That is the professionalism of the algotrader, to look for meaningful parameters and their ranges.
 
Vasiliy Sokolov:
Here, yes. No one is saying that ranges can be chosen out of the blue or at least automatically. That is the professionalism of the algotrader, to look for meaningful parameters and their ranges.

agree)))

 
Vasiliy Sokolov:

We are trading the consequence of a cause which is almost always behind the scenes.

In April 2013, the DJ index fell by 13% in an instant because of a "news story" about the death of Barack Obama. They say the news-reading robots were triggered. Then, those robots, themselves became the very behind-the-scenes cause.

IMHO The purpose of testing is not to get a set of parameters, but to try to answer 3 questions :

What? - Which financial instrument to choose for the Expert Advisor.

Where? - In what market to trade. (Trending, flat, volatile.....)

When? - At what time, taking into account the characteristics of the market in different intervals and seasons.

 
Avals:

An EA works for a certain period of time - a favourable phase for it, to put it crudely. This is why it does not make sense to take too much history or at all at random. And your method requires many times more statistics and testing period. I.e. the task is to find the working themes as quickly as possible and at the same time eliminate the fitting, and splitting up the history into separate fragments for which decisions are made leads to the fact that the history on which the system has already worked for a very long time (arguments about statistical validity in the previous post).


My approach is different) I don't take any proportions and I don't use the forward test. I analyse the quality of the system by the quality of equity.


And what does "too" much history mean? You don't even know which interval of history is optimal for your system. You will never understand if the equity curve shows a "working theme" or a correction, no matter what period of history you took.
 
Youri Tarshecki:
And what does "too much" history mean? You don't even know what is the optimal period of history for your system.

There is such a thing as statistical validity. When it comes to trading - what is the minimum number of trades needed to trust the results obtained in the backtest. This number depends on many things. For example, from the ratio of an average profit trade to the average loss trade. In simpler terms, it depends on tp/sl ratio. The minimum number of trades is needed when it is equal to 1. The more it differs from 1, the more trades are needed. But even at tp/sl=1 trades need a minimum of 100 (this can be checked with montecarlo). In your approach on each of the 12 backtests statistical validity should be preserved. So we need a minimum of 1200 deals for backtest only + the same amount for forward (its results should also be statistically correct). This results in the fact that even for intraday, with this approach we need to test from the time of king Gorokh))


Youri Tarshecki:

Whatever period of history you took, you will never understand if you found a "working topic" or a correction took place based on the equity curve.

Well, you need to look at more than one equity)) As written above, it is the width of the optimal zones and the uniformity of system improvement for some parameters that is important. For example, the system uses the previous day's range width and the system is breakout. We take it as an optimum. I.e., filter - trade at Range_width<=X. The smaller is the value of X-option, the less trades there are (because there are fewer such days). But if the system quality improves (such parameters as FF and others), this confirms the robustness of both the system and this filter. There are other statistical ways to check robustness, e.g. multi-instrumentality.

 
Avals:

There is such a thing as statistical validity. In terms of trading - what is the minimum number of deals needed to trust the results obtained in the back test. This number depends on many things. For example, from the ratio of an average profit trade to the average loss trade. In simpler terms, it depends on tp/sl ratio. The minimum number of trades is needed when it is equal to 1. The more it differs from 1, the more trades are needed. But even at tp/sl=1 trades need a minimum of 100 (this can be checked with montecarlo). In your approach on each of the 12 backtests statistical validity should be preserved. So we need a minimum of 1200 deals for backtest only + the same amount for forward (its results should also be statistically correct). It results in the fact that even for intraday, with such an approach we have to test since the time of czar Gorokha)).


Well you have to look at more than just equity))) As written above, it is the width of the optimal zones and the uniformity of system improvement for some parameters that is important. For example, the system uses the width of the previous day's range and the system is breakout. We take it as an optimum. I.e., filter - trade at Range_width<=X. The smaller is the value of X-option, the less trades there are (because there are fewer such days). But if the system quality improves (such parameters as FF and others), this confirms the robustness of both the system and this filter. There are other statistical ways to check robustness, e.g. multi-instrumentality.

I should add that a long history is needed not only because of the requirement for statistical significance of the obtained results, but also for testing the TS for different market conditions. For example, EURUSD has been in a large downward trend for more than half a year. Even 10 000 trades will show that short positions are profitable in this area. In order to understand that we did not adjust to a certain rare market condition, we need a long history.

I note that with forwards you just jump from one mode to another, sincerely not understanding why your TS earns on the test and loses on the forward. And the answer is simple, instead of creating TS for one of the market modes, create the TS, the results of which do not depend on the current selected time interval. In other words, do not trade the market, but its inefficiencies.

 
Avals:

There is such a thing as statistical validity.

There is no such thing in statistics.
 
Yury Reshetov:
There is no such concept in statistics.
More commonly translated as "statistical significance"
 
Vasiliy Sokolov:

I will add that the long history is needed not only because of the requirement of statistical significance of the obtained results, but also for testing the TS for different market conditions.

Let's say you've determined the minimum with a "montecarl". HOW LONG does your story have to be? HOW LONG should your story be? Until you show a real way of calculating the optimization cutoff - all said is just a way of SAMOUBMAN and lyricism on common knowledge topics. Equities, I've already said, don't save you from fitting. All your logic leads to only one solution - test on ALL history. Nevertheless, you do limit yourself to this. Why? If you don't need forwards - test on all available history and your "stat validity" will be maximal.

My way is simple, I compare the sum of forwards obtained on the same plot, but with different steps. The best result gives the best testing step. Since I don't want abstract reasoning, but to maximise profits, I compare the profits that the forwards show. And what are you comparing with?

Reason: