An effective trading strategy based on multi-currency analysis of multiple DCs - page 10

 
Yurixx:
Piligrimm

I hope the number of people sceptical about multicurrency analysis has decreased, and that the results will help someone to find his or her own effective trading strategy.

I have to hand it to you, it's a very interesting and meaningful idea.
And the vyvelet transformation looks very constructive. Gotta get the hang of it.
Bravo!
If used instead of indicators, vivelets have a significant advantage - they maintain high dynamics of sweeps and give much less lag relative to input data. The essence of vivelet transform is that it decomposes a signal into spectrum components and then forms a new signal by the remaining harmonics. It only needs three counts to decompose the signal into a spectrum, it cannot be compared, for instance, with the moving averages where 6-10 counts are required to obtain the same smoothness that introduces the respective delay to the real data.
But like indicators, wavelet transforms cannot give a forecast, while the picture they paint reflects the past only, and making any serious conclusions about the future by this picture is meaningless, we should build a forecasting system, the only way to tell about the market trend with more or less confidence.
 
elritmo:
Piligrimm, can you tell me how you can use MT to chart a close of any currency pair on a chart of another currency pair?

With the help of iClose, you will form a file with all the instruments you need, then for each instrument get an averaging ratio, for example, you sum up the last 100 bars for each instrument and divide by 100. After that, all data, for each instrument divide by its coefficient, as a result you will get values of all instruments fluctuating around one (by the way, it is convenient for further processing using neural networks, all data are normalized), after that you multiply values of the instrument, which you want to display on another chart by the coefficient, that was obtained for the instrument on the chart which you are going to display.
 
Now, everything is pixel-perfect, even with different quote rates and number of ticks.
 
Piligrimm:
Briefly, the essence of the wavelet transform, if anyone is not familiar with it, is that it decomposes the signal into spectral components, then cuts off part of the spectrum and uses the remaining harmonics to form a new signal.
In that case, how do wavelet transforms differ from various Fourier transforms, spectral analysis, etc.? ?

The main problem with Fourier transforms is that they are only applicable to periodic functions. If you use them for a non-periodic function, relying on a finite piece of history, the result is a periodic function that infinitely repeats the reference piece.
Judging from your quote, vivelet transformations should suffer from the same flaw. Does it ?
 
xnsnet:

It is not because of server overload or faster arrival of changed quotes but because of the difference in filters settings, everyone sets it the way he/she thinks it should be. Yes, that is why thick-skinned EAs are a necessity, because one brokerage company will do one thing and another one will do another. The filter works in such a way that it selects the most realistic quotes, taking into account timeframes, but it does not emulate quotes, but only rejects some variants, leaving only the most plausible ones. Unfortunately, this is not the truth they want to see for the user or the program, that's why such topics as analysis between brokerage companies begin.

Note that I use two indicators at once, server and client time intervals, so there is almost no difference in the charts, only in these filtered areas on the server side.

The time difference, is calculated in eight-byte time, where the server date is converted to (gcnew DateTime( 1970, 1, 1 ))->AddSeconds( iSrv ), then the sum of the tick time difference, server and client, divided by nine to the eighth power is used, in this graph, to get the difference in seconds, you must divide by ten to the seventh power. This way I can infer with high accuracy excluding problems in data update rate. Except that one pixel per tick is consumed, but I think for some modes, like outputting time within ticks, I'll remove the consumption, then it will be perfectly comparable even in size. What can you do, I'm a digger, even without even wanting to dig to the root:)

Dear Pilgrim, I am interested in what you have to say in response to this statement?

Keep digging!
Well, seriously, first of all, define the ultimate goal, what you want to achieve and how you are going to use the information obtained, this will depend on the form and format in which it is best presented. If you are going to do MTS on the basis of ticks analysis, then you need to synchronize ticks of different instruments in time, and this is the most difficult thing in all this work, otherwise you will not get an objective picture, and as a consequence, the MTS will not work effectively.

Correct initial data preparation is 90% of success in any task and in trading it is even more important, and many people who try to make forecasts fail because they did not manage to form data in accordance with the algorithm of data processing.

 
By the way, if I add interaction to the program I will be able to combine results of several brokerage companies and add missing data in both directions, for example in the screenshots above we can see that both brokerage companies suffer from inherent filtering, actually in the opposite direction, in the EURUSD chart it is easily noticeable in the beginning. And since the whole point is precisely in cutting off tick data by filters, in this way the filtering will disappear to a small extent. It all depends on which brokers to compare. But that's for later:)
 
Yurixx:
Piligrimm:
Briefly, the essence of the wavelet transform, if anyone is not familiar with it, is that it decomposes the signal into spectral components, then cuts off part of the spectrum and uses the remaining harmonics to form a new signal.
In that case, how do wavelet transforms differ from various Fourier transforms, spectral analysis, etc.? ?

The main problem with Fourier transforms is that they are only applicable to periodic functions. If you use them for a non-periodic function, relying on a finite piece of history, the result is a periodic function that infinitely repeats the reference piece.
Judging from your quote, vivelet transformations should suffer from the same flaw. Does it ?

No, wavelet transforms are based on different principles than Fourier transforms and have an advantage over other methods of spectral analysis, although it seems to me that it would be wrong to talk about spectral analysis in general; we should rather talk about a specific filtering method. The transformation results in the so-called coefficient map and it can also be used for visual analysis and pattern search in the process under study. But I'm not an expert in this field and I've not been interested in this topic for last 3-4 years, now there is a lot of new information on vyvelet transforms on the Internet, I think. I'm used to calling them that, though the correct name would be wavelet transforms.

By the way, here's a link to using wavelet transforms in conjunction with neural networks: http://library.mephi.ru/data/scientific-sessions/2001/Neuro_Lect/2343.htm there's an example:
"Financial time series analysis and significance of factors in neural network modelling".

And another link: http://www.tradeways.org/wave_4.php
 
In fact, I already see the solution to need a program server to store ticks, probably the easiest way to fill ticks in a single stream, it is to use SQL then essentially it is possible to use several servers for this case to collect data from different DCs:) Although it would be best to write your own server for this, but my capabilities are limited to a couple of hands, so to implement this action will have to sacrifice small things:) And communication problems disappear, only in case of Internet service provider failure:) Although to tell the truth, better than SQL can only be own server.
 
xnsnet:
By the way, if I add interaction to the program I will be able to combine results of several brokerage companies and add missing data in both directions, for example in the screenshots above we can see that both brokerage companies suffer from inherent filtering, actually in the opposite direction, in the EURUSD chart it is easily noticeable in the beginning. And since the whole point is precisely in cutting off tick data by filters, in this way the filtering will disappear to a small extent. It all depends on which brokers to compare. But it will come later :)
Here it may be not so simple. And if these differences are caused mainly by the fact that brokerage companies get their information from different sources? In that case you will bring only additional distortions. But in any case you can try it, but be careful not to introduce additional disturbances.
 
Piligrimm:
It may not be that simple. What if the differences are mainly due to the fact that the DCs are receiving information from different sources? In that case you will only be introducing additional distortions. But in any case, try it, just being careful not to introduce additional interference.

Of course, that's what visualization of graphs is for, to see these distortions:) In any case, you have to write a server, which will also distinguish the interference, everything in principle is already clear, you just have to do it:) I always said, human brain is a virus:) I had a major problem, how to trace the server shutdown in the Metatrader, because no events are received, now I've found the surest way not to do it :) After all, if one DC goes down, there is another DC. With all that said, there is no smell of cracking here as only drawdowns can be used for pipsing, which is exactly what filters absorb, and when all this is just a picture for analysis, then one can only use this data for analysis and not for pipsing on vulnerabilities. Also, I came to the conclusion that there is no need to overload the terminal tick history, everything will be stored on the server, and charts glued to the terminal, or rather in different modes, reflecting both the server's data and only its client separately, but also from the server:)

P.S.: I hope no one else will convince me that ticks are unnecessary or pointless to work with:))))