Machine learning in trading: theory, models, practice and algo-trading - page 3168

 
Aleksey Nikolayev #:

The idea is to split examples into groups that are different from each other and within which there is homogeneity. It is not at all certain that specific features allow to do this. In fact, it is not certain that any of them do, because of non-stationarity, for example.

I do not plan to study this article in detail, as it only touches the topic I am interested in. CHAID is a bit closer, but not quite the same.

That's just it, I would like to find some regularity in the dynamics of sequence order changes, or at least an estimation of displacement with the identification of a break point. And I am talking about trivial binary predictors. For example, identify 5 sequences that have been encountered in the last five years, look at their stability of predisposition to the target value, and further, if there are significant changes in both sequences and predisposition, then either exclude the predictor from training or from the model. I have read/viewed a lot of methods over the last half a year, but it is just not realistic for me to code it all for testing - there is a lot of work to do. The saddest thing is when you work on something and then realise that the result is not expected.

What do you see as the advantage of CHAID?

 

Such method of training is detection of lines favourable for exclusion from the sample (zeroing) by quantum segment.

Each step is an addition of a rule. The rules look like this if( arr_Q[n0][i]==1 || arr_Q[ n1][i]==1 || arr_Q[nn][i ]==1 ) Propusk=true;

This is a gif - you need to click on it to make it work.

Balance - profit in pips - five digits.

Yes, this is only a piece of sample for training, I haven't done further yet - experimenting.

Added: And here is another criterion for evaluating the choice of quantum segment, by which the signal will be excluded - it seems that here the removal of unprofitable lines was more cheerful.


 
Aleksey Vyazmikin #:

That's just it, I would like to find some regularity in the dynamics of sequence order changes, or at least an estimation of the shift with the identification of the break point. And I'm talking about trivial binary predictors. For example, identify 5 sequences that have been encountered in the last five years, look at their stability of predisposition to the target value, and further, if there are significant changes in both sequences and predisposition, then either exclude the predictor from training or from the model. I have read/viewed a lot of methods over the last half a year, but it is just not realistic for me to code it all for testing - there is a lot of work to do. The saddest thing is when you work on something and then realise that the result is not expected.

IMHO, it's a bad approach in the combinatorial sense. Too rich a set of sequences may well lead to overtraining - there will always be random "good" sequences.

Aleksey Vyazmikin #:

What do you see as the advantage of CHAID?

Thoughtfulness from the matstat point of view, first of all. This is stopping tree building when a given level of significance is reached, instead of some left-hand rule. And the use of the Bonferoni correction, etc. It is just aesthetically pleasing to look at such a well-thought-out model) Although, of course, using only nominal features does not suit me at all, so I am looking for (trying to build) another one.

 
Aleksey Vyazmikin #:

That's just it, I would like to find some regularity in the dynamics of sequence order changes, or at least an estimation of the shift with the identification of the break point. And I'm talking about trivial binary predictors. For example, identify 5 sequences that have been encountered in the last five years, look at their stability of predisposition to the target value, and further, if there are significant changes in both sequences and predisposition, then either exclude the predictor from training or from the model. I have read/viewed a lot of methods over the last half a year, but it is just not realistic for me to code it all for testing - there is a lot of work to do. The saddest thing is when you work on something and then realise that the result is not expected.

What do you see as the advantage of CHAID?

1) If we proceed in the following way - will we get the same result as yours (in terms of meaning)?
We take a sheet (after 5 splits), sort all the examples in it by time, if there is first growth and then a fall above some value - remove the sheet from use.

2) Do you have OOS on your charts?

3) Rules/sheets are sifted based on data from traine or validation/test.

 
Aleksey Nikolayev #:

IMHO, it is a bad approach in the combinatorial sense. Too rich a set of sequences may well lead to overtraining - there will always be randomly occurring "good" sequences.

The question here is to detect stability, if it exists on the history, then there is at least some reason to expect it in the real use of features in the model. And the method for detecting it may be different. But, the distribution estimation is not enough, it does not allow to estimate stability. Either it needs cleaning. And I also encountered the fact that if you take intervals, let's say a month, there are not enough signals for any statistical conclusions. So far, I have put a punctuation mark on it.... In any case, it is important to evaluate the distribution of events over time.

Aleksey Nikolayev #:

Thoughtfulness in terms of matstat, first of all. This is stopping the tree building upon reaching a given level of significance instead of some left-hand rule. And the use of the Bonferoni correction, etc. It is just aesthetically pleasing to look at such a well-thought-out model) Although, of course, using only nominal features does not suit me at all, so I am looking for (trying to build) another one.

I'll have to give it a try. Have you done comparisons with other tree building options, is the result really better?

 
Forester #:

1) If we proceed in the following way - will we get the same result as yours (in terms of meaning)?
We take a sheet (after 5 splits), sort all the examples in it by time, if there is growth at first and then a drop above some value - delete the sheet from use.

2) Do you have OOS on your charts?

3) Rules/sheets are sifted based on data from traine or validation/test.

1) Rejection is normal, the issue here is cyclicality if it's a sheet we're talking about ( I have a quantum segment - literally a sheet of two splits F>=X1 && F<X2 ). I.e. if it's oscillations even near zero, it's not bad, but they should not be very high in one direction (for estimation I take 10 sample intervals). Or literally, as you write, in the beginning there was growth, and then mostly decline - this is immediately in the rubbish. But this is all about leaves, and if quantum section, there selection by probability bias from 5% of the mean for the class as one of the initial selection criteria.

2. No of course not, I wrote that this is a training sample. There is no training of any model itself - I assume there is more to be trained.

3. On the traine in the example. But not screening, but just selecting those that will be as a filter, i.e. to drive to zero the response of the model. Well, and exclude strings/examples from training, apparently.

And in general, if we focus on identifying stable quantum segments (consider - binary predictors), then further such a "model" will work without training by any classifier. And as long as it cannot be done, there is not much sense in using classifiers. Of course, nobody cancels randomness, and one can find some successful models, but it will be difficult to reasonably consider such a method.

Among the disadvantages of the method is the drop of Recall, but it is not stronger than that of the CatBoost model - approximately up to 0.5 in the example.

 
Aleksey Vyazmikin #:

And have you done comparisons with other tree building options, is the result really better?

What I found in the ready-made form is not very suitable for the market, and the homemade one is not ready. But I don't hold out much hope, so I'm in no hurry.

 

This is the kind of thing that happens. On the left OOS passes, on the right - not. And the right side literally dives right away.


It happens most of the time.

I.e. literally immediately significant dive. The nature of the dive is unclear. It seems that there should be something close to SB, but I see such a picture too often.


I feel that if after optimisation I run an inverted TS, I may not even lose.

 
fxsaber #:

This is the kind of thing that happens. On the left OOS passes, on the right - not. And on the right side, it literally "dives" immediately.


It happens most of the time.

That is, literally immediately significant dive. The nature of the dive is unclear. I think it should be something close to SB, but I see such a picture too often.


It seems that if after optimisation you run an inverted TS, you may not even lose.

About two years ago I posted this effect here
 
mytarmailS #:
About two years ago, I posted about this effect here.

Almost every tester user has seen it. I am interested in the explanation.

Forum on trading, automated trading systems and testing trading strategies.

Machine Learning in Trading: Theory, Models, Practice and Algorithm Trading

fxsaber, 2023.08.16 11:38 AM

This is the kind of nonsense that happens. On the left OOS passes, on the right - not. And the right side literally immediately "dives".

In this picture, the statistical significance is quite large: more than 3000 non-overlapping positions.

I assume that this is the effect of market changes within Sample itself. For example, there was a real pattern in Sample at the beginning, and then there was nothing. But the fit happened to the whole Sample.

We have to somehow avoid such breakdowns within Sample.


The opposite effect also happens: on the left OOS is draining, on the right OOS is up. I.e. no pattern was found in the initial piece of Sample, but only fitting.

Reason: