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

 
Yuriy Asaulenko:

And in the very R graphics are nothing. And through the graph packages, too, not God knows what.

Today I devoted a day to studying DSP.

Something like NS.

Filtering coefficients and stuff, almost like predictors.

)

 
Renat Akhtyamov:

Today I devoted a day to studying DSP.

Something like NS.

Filtering coefficients and stuff, almost like predictors.

)

I don't think a day is going to be enough.) It's actually a specialty). Years of study, even a lifetime of active life.

NS, not reminiscent, but widely used in DSP. The question of the application of NS in DSP is the correct formulation of the problem for NS. Say, one of the applications of NS is filtering, including adaptive filtering.

By the way, NS will work well when you give it a quite specific task, not bring this, I don't know what.

 
Yuriy Asaulenko:

I don't think a day would be enough.) It's actually a specialty). They have been studying it for years, even all their active lives.

NS, not reminiscent, but widely used in DSP. The question of the application of NS in DSP is the correct formulation of the problem for NS. Say, one of the applications of NS is filtering, including adaptive filtering.

By the way, NS will work well when you give it a very specific task, rather than bring this, I do not know what.

The specialty corresponds

The day is not enough, I agree.

 
Dr. Trader:

Filter_02 2016 arr_Buy

There class "1" even exceeds "0" in number, so there are less false inputs compared to before. Try this tree in your EA please? I wonder what will be on the profit chart myself.


y_pred
y_true01
0
1

Class "1" is just a buy filter, and class "-1" is a sell filter, so ideally it would be better to program both a sell and a buy filter. I only have values all int, I understand that if the branching value in the tree is 2.5, then I put 3, right? And in ovals it means more or equal to 0.50, then it is 1, otherwise it is zero? It's just that there are only 4 outputs to zero, then I'll just check on them, if it's not 0, then it's 1.

 
Aleksey Vyazmikin:

Class "1", there is just a filter to buy, and the class "-1" filter to sell

I don't understand. arr_Buy==1 means "do not buy"?

Aleksey Vyazmikin:

Ideally, it would be better to program a filter for both selling and buying.

And how to calculate one target value from two arr_Buy and arr_Sell?
It would be good if in one target column there were only two classes -1 and 1 (buy and sell), and about the same number of both. In that case, you can get more stable results from the model.

Aleksey Vyazmikin:

I only have values all int, I understand if the branching value in the tree is 2.5, I put 3, right? And in ovals it means more or equal to 0.50, then it is 1, otherwise it is zero? It's just that there are only 4 outputs to zero, then I'll just check on those, if not 0, then it's 1.

Yes, that's right.

 
Aleksey Vyazmikin:

Class "1" is just a buy filter, and class "-1" is a sell filter, so ideally it would be better to program both a sell and a buy filter. I only have values all int, I understand that if the branching value in the tree is 2.5, then I put 3, right? And in ovals it means more or equal to 0.50, then it is 1, otherwise it is zero? Just outputs to zero it turns out only 4, then I will just check on them, if not 0, then 1.

Do you make up your own tree?

It's enough to teach the forest, and further optimization is pointless - it's easier to make a new forest.

For full compatibility with MQL5 I've created https://github.com/Roffild/RoffildLibrary/blob/master/Experts/Roffild/Alglib_RandomForest.mq5 To be run on local agents only. The code can generate several files with different number of predictors and run them in optimizer. When you run out of RAM, you'd better switch to Spark...

 
Dr. Trader:

I don't understand. arr_Buy==1 means "do not buy"?

Yes - do not buy, it is a filter, i.e. bad entry points for buying and for selling are looked for. The idea is to find market entries and combine them with the filter.

Dr.Trader:

And how do I calculate one target value from two arr_Buy and arr_Sell?

It would be good if in one target column there were only two classes -1 and 1 (buy and sell), with approximately equal number of both. In that case you can get more stable results from the model.

In this case the entry should be on every bar - to buy or to sell, but the market does not provide so many trend movements, and the target for buying and selling is trending, so the signals cannot be combined. The filter monitors all losses, so there is more information - more flats, so it should catch them.

 
SanSanych Fomenko:

It has been written many times: noise predictors are much more model-friendly - there are always values in the noise that improve the training result. So the process is reversed - the noise predictors get more weight, not as you suggest. This is especially noticeable on small samples, which is less than 1000 observations. Samples over 5000 observations are not so affected, but you still have to pre-screen out the noise predictors

How do I identify "noise predictors"? I tried selecting by significance and removing them this way, the result is worse.

 

I prefer to overlay the results of the random forest on the graph itself.

For example, a comparison of two random forest models:

 
Roffild:

I prefer to overlay the results of the random forest on the graph itself.

For example, a comparison of two random forest models:

It is not clear how to read your indicator.

Reason: