You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
That doesn't seem like a lot. Here's another thing to note. ML and BestInterval are different concepts. ML looks for TC, BestInterval does not look for anything.
I wonder how an example like this would work. Suppose ML has 100 parameters and finds a TC. What will be better in the end, ML100 + BestInterval10 or ML110?
Well, as not a few... you have to take into account the predictors somehow, 1 parameter for each is the minimum.
I think it will be +- the same. I just set trading intervals manually, for example in the night session - still retrains. I.e. if you remove the best interval for something, the overfit will not disappear.
I just put trading intervals manually, for example in the night session - still retrains.
This phrase can't help but raise a smile, because it amounts to "still not a grail".
In my opinion, ML is relevant for BigData. And price series can't be called BigData even with a nyatyatyazhka BigData.
That's why my approach is somewhat different - conservative. I do research (not much) and, of course, I peek (it's stupid not to do it). Then I write and watch the output. BestInterval, of course, has become indispensable.
At the same time I take some cool piece of real cotir (with certain properties) and race ideas on it. The fundamental difference from ML is that I always understand why it trades this way and not the other way round.
This phrase can't help but raise a smile because it amounts to "still not the grail".
In my opinion, ML is relevant for BigData. And price series cannot be called BigData even with a little BigData.
That's why my approach is somewhat different - conservative. I do research (a little) and, of course, I peek (it's stupid not to do it). Then I write and watch the output. BestInterval, of course, has become indispensable.
At the same time I take some cool piece of real cotir (with certain properties) and race ideas on it. The principal difference from ML is that I always understand why it trades this way and not the other way round.
I wanted to upload news, it can turn out really interesting there, but they didn't make an api for the built-in calendar, but I think they wanted to. I'm too lazy to parse.
yes, I realise that one ml is not enough :) bestinterval is a very cool thing in itself, thank you for it.
If anyone gets an OnTester Critical Error, give me the data to reproduce it. I have never had one.
ZY Updated with Virtual.
People ask whether there is a possibility to make BestInterval find the best interval not for profit, but, for example, for recovery factor (RF) or profit factor (PF) (any variant)?
For PF, the answer is obvious, because the maximum PF is achieved when there is only one trade in the history. And for this deal to be positive. Therefore, of course, no.
For PF the situation is approximately the same. The thing is that BestInterval of FB can calculate only by balance. Therefore, the history of one deal (positive) is enough. So the answer is the same.
But when it comes to other optimisation criteria, you need to explain in more detail. And that's why I do it in the branch. The core of BestInterval is not complicated and very efficient (one-pass) algorithm. For example, if 1000 trades are made, BestInterval will calculate the best interval for 1000 simple operations. BestInterval is based on this algorithm (it can be applied to weeks, not just days) and no other. This is where speed makes a huge difference - Optimisation. It is because of this that the calculations are time free - instantaneous.
BestInterval does not work on the principle of "throw away - look at it, throw away - look at it,..., until it's maxed out". Otherwise it would be freakishly slow. That is why it works only to increase the absolute profit from the history of trades. And that is why it makes a lot of sense to use the biblah when optimising for TS in the constant lot mode. And MM should be used after BestInterval is calculated.
However, there is a possibility (not yet implemented) to make finding the best interval for maximum profit not absolute, but relative (i.e. with reinvestment). Such (and other) features are planned...
For now (it was originally in the library, but was left only for myself - without description) there is one possibility. If you write such a line
then when optimising OnTester will return the value highlighted in colour. In this case, it is profit * FV. You can replace this formula with any other formula (any expression, including function calls). In this case, the following participants are available from BestInterval:
It is clear from their names what information they carry. Therefore, it is possible to set a custom OnTester, but using the corresponding BestInterval values.
So if you are looking for a good variant according to another criterion, set the formula you need and the optimiser will find what you need. But understand that BestInterval was built for each pass to maximise profit, and your optimisation criterion just helps you (BestInterval is not affected) to quickly find a good variant from your point of view.
ZY There are different methods in the library for using it when programming. I'm almost sure that nobody will do it, so this part is not described at all. If you really need it, there is a standard way
From the source code the meaning is quickly understood.
I marked the methods that I consider important for further use of the calculation results when creating robots for real.
I thought it would be logical to generalise the BestInterval principle. In fact, BestInterval is a classification of transactions by OrderOpenTime. But no one prevents us from classifying by another criterion.
For example, we know what the МАшка was equal to (we will write it in the OrderComment) at the moment of position opening. Accordingly, all positions in the trading history can be compared to these MA values.
And then we apply BestInterval to these MAs. And at the output we get the ranges of МАшки in which positions should be opened, and in which ones - not.
Of course, you can use any numeric function instead of a MA. As a result, you can find cool filters that outperform time.
Of course, you can take any numeric function instead of the MA. The bottom line is that you can find cool filters that outperform time.
what field of knowledge is this from?
You are doing ML, sir, only in your own, very curious way :)
and if so, you should do it according to ML canons, with division into traine, test and validation, with generalisation of evaluations.
what field of knowledge is this from?
The criterion of superiority is the increase of profit on the training sample with the same number of thrown "intervals" (input variables).
I don't see any reason why a randomly taken time (we are only used to it) should be better than other indicators.
Yes, we can say that time of day/week directly affects human life, and this is where the legs of market patterns grow from. But algo-trading already has a serious part of turnover, and therefore it is quite reasonable to use other functions that may well be superior to time for the same reason.
It should be done according to ML canons, with separation into traine, test and validation, with generalisation of evaluations
Not going to do anything like that, because it's an endless grail quest. There has to be a potentially profitable ML - that's the first prerequisite.
Frankly, it's strange that ML-methods couldn't even come close to the simplest TesterEA. Most likely, ML-adepts dig everything at once.
I'm not going to do anything like that, because it's an endless search for the grail. There must be a potentially profitable TS - this is the first necessary condition.
Frankly speaking, it's strange that ML-methods couldn't even come close to the simplest TesterEA. Most likely, ML adepts dig everything at once.
The problem is that local ML adepts have(s) zero level not only in ML, but also in programming. The amateurs are loners. But everything evolves... very slowly :)
there is a clear Gödel's theorem stating about the necessity of an external evaluation criterion, which can be a criterion on the test interval, but not on the training interval.
The problem is that local ML adepts have(s) zero level not only in ML but also in programming. The amateurs are loners. But things are evolving... very slowly :)
there is a clear Gödel's theorem stating about the necessity of an external evaluation criterion, which can be a criterion on the test interval, but not on the training interval.
95% of ML-makers take EURUSD quotes. They do not even care about the quality of quotes. And they start to suffer.
Why not GBPUSD? Why quotes from MQ and not from another source? Why M1 and not M2, etc. One elementary questions even before applying any ML, which are fundamental. But no, the main thing is to connect TensorFlow or CatBoost.
The toughest trick on the best ML-merchant in the world is to give SB and convince that they are kotirs. That's enough research for the rest of your life.