![MQL5 - Language of trade strategies built-in the MetaTrader 5 client terminal](https://c.mql5.com/i/registerlandings/logo-2.png)
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
А если не 13:47, а 13:01 ?
If it's a hole in the story ?
What if it's not 13:47 but 13:01 ?
Or even 13:47, there is no guarantee that a bar with a time of 13:48 is not missed.
If it is a hole in the story?
What guarantee?! If the nearest bar to 13:48 is at 13:01, then its Close is also valid at 13:48 in case there is no bar at 13:48.
When you investigate something on the story, you make sure that the story is normal. If the hole is technical - that's your problem (look for a normal history), if it is market (there were no ticks, that's it) - I wrote the solution.
Do not reduce the thread to a discussion of details of the code. Everything is correct there, full stop.
Let's discuss multicurrency analysis!
EURUSD has a bar at 13:48 - take it Open.
GBPUSD has a bar at 13:48 - take it Open.
AUDUSD has no bar at 13:48 (there is no quotation update at that time) - then take the last quotation that was before 13:48. For example, if the bar before 13:48 has a time of 13:47, we take its Close. Obviously, this price will also be relevant at the time of 13:48.
That's right there and that's it.
Let's discuss!
PapaYozh:
What can be done when there is a hole? It's as if the connection is missing, the most logical to base it on the last received quote, imho.
When I was experimenting with multicurrency analysis, if there was no bar with the required time, I considered that the data was incomplete. The previous quotes were not taken, in the extreme case I used the first available quote for the analyzed period. In general, in my opinion, in the multicurrency analysis it makes sense to analyze some frame, setting its accuracy (i.e. filling ratio) and if there are actually less bars than the required minimum, then do nothing, and wait.
One more thought on multi-currency analysis. Since we are discussing analysis of related pairs, it makes sense to normalise the rates before analysis.
Why Open why not Close all the time?
The main thing is synchronisation. You can also synchronise on Close. This is as bad as with Open. But if you have only one-minute history, the Open/Close synchronization is the best option.
I cannot say anything against your idea, I have to test it on mt5, of course. I do not think anyone on this forum has tried it, mt5 is not that popular yet.
The MT5 is just a multi-instrumental tester for multi-instrumental EAs. For multicurrency analysis on history, MT4 is enough. I have laid out the code, it's easy to do.
The MT5 is only needed for profound testing of an EA which is written on the basis of already performed analysis. So MT5 is not necessary.
PapaYozh:
it makes sense to ration the courses before the analysis.
Normalisation is an interesting question. So we are talking about some kind of alignment of quotes to the same scale?
So far I have solved the question simply: To "match" the quotes we need two parameters: the offset (i.e. the zero position) and the scale. I take zero on slow wave, scale - on volatility (for simplicity - the same wave on High-Low). The result seems to be quite nice. At the same time we have additional information about the quote position in relation to our nets :)
The MT5 is just a multi-instrumental tester for multi-instrumental EAs. For multicurrency analysis on history, MT4 is sufficient. I have laid out the code, it's easy to do.
The MT5 is only needed to thoroughly test an EA which is written based on the analysis you have already done. So MT5 is not necessary.
Normalisation is an interesting question. So we are talking about some kind of alignment of quotes to the same scale?
My solution for now is simple: to "match" the quotes, we need two parameters: offset (i.e. zero position) and scale. I take zero on slow wave, scale - on volatility (for simplicity - the same wave on High-Low). The result seems to be quite nice. At the same time I have additional information about position of quotes relatively to my bags :)
It seems to me that we should consider the latest quote as a normalization point. After all, we want to know how rates moved to their last value. So I rationed simply:
1) I reversed pairs, so that the common currency was either in numerator in all, or in denominator in all;
2) divide all prices of each currency pair by the last price of the pair in the analyzed frame.
I.e. get 1.0 on all pairs to the right and see how pairs came to this unit.
To display all this mess on the current chart, you just need to multiply the normalized rates by the rate of the pair of the current chart at the normalization point.