![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
Here's a good solution:
Let me explain once again: let us consider a range of 15 ticks. We take the first 10 ticks in this range as the average speed and time. For the price change value, we take the difference between each next tick in this part of the range (we suppose that tick0 is the latest tick):
We permanently store the ticks in an array equal in size to the two samples - the early and the fresh sample. The early sample is in an array of 15 ticks:
(тик15-тик14+тик14-тик13+тик13-тик12+тик12-тик11+тик11-тик10+тик10-тик9+тик9-тик8+тик8-тик7+тик7-тик6+тик6-тик5)/период выборки (10)
We also count the most recent five ticks from tick5-tick4 to tick1-tick0
Almost in the same way we count the tick arrival rate in the constantly updated array, only we do not count the change in price between adjacent ticks, but the time between them.
If the tick receipt rate is one second or less, we compare the average price change of 10 previous ticks and five fresh ticks. If the average price change of fresh ticks has exceeded some threshold - consider it an impulse and see the direction of change. If it is positive, we go up; if it is negative, we go down.
Now we are on a "caught" pulse and all new incoming ticks in the arrays will tell us the nature of the pulse, and the old samples will contain data on the beginning of the pulse, and the fresh samples will contain data on its current state. Since the arrays are constantly updated with each new tick, we can analyze the whole course of the impulse from its inception to its end.
I tried to show the code, but it is too much to redo for a simple explanation - it is multi-currency with many functions from libraries. If you really need it, I'll look into it at my leisure.
...
I tried to show the code, but it's too much rework for a simple explanation - from multicurrency with a lot of functions from libraries. If you really need it - I'll dig around at my leisure.
The code, if possible, I would like. And I will translate your theory into pictures, for clarity.
I haven't finished this mess - orders came in (I did it in my spare time). I'll send it to you in person, and then modify it to fit the needs of this topic, so that you can put here what you need, rather than all that is there. Will it do?
And, yes, the code for four...
I haven't finished this mess - orders came in (I did it in my spare time). I'll send it to you in person, and then modify it to fit the needs of this topic, so that you can put here what you need, rather than all that is there. Will it do?
And, yes - the code for four ...
That'll do. I'll cut it out and remake it for MQL5.
...
Constantly store ticks in an array equal in size to two samples - early and fresh. Early sample in an array of 15 ticks:
(тик15-тик14+тик14-тик13+тик13-тик12+тик12-тик11+тик11-тик10+тик10-тик9+тик9-тик8+тик8-тик7+тик7-тик6+тик6-тик5)/период выборки (10)
Also count the most recent five ticks from tick5-tick4 to tick1-tick0
...
Why add and subtract so much?
It could be simpler:
(tick15-tick5)/sample period (10)
Why add and subtract so much?
It could be simpler:
(tick15-tick5)/sample period (10)
Of course, it is not correct. Tick 15 = 1.10000, tick 5 = 1.10000. What is the difference? 0? But tick14 = 1.20000, tick13 = 1.25000, tick12 = 1.30000 ... and then a smooth decline to 1.10000...
And then what? Well, you have missed the pulse that took place 14 ticks ago. It is clear, that such impulse is of no use, but it will do as a visual confirmation of the incorrectness of the statement.
Of course not. Tick 15 = 1.10000, tick5 = 1.10000. What is the difference? 0? But tick14 = 1.20000, tick13 = 1.25000, tick12 = 1.30000 ... and then a smooth decline to 1.10000...
So what then? That the momentum that took place 14 ticks ago has been lost. It is clear that such an impulse is of no use, but it will do as a visual confirmation of the incorrectness of the statement.
Don't you see that your formula and my variant of your formula will give exactly the same result?
Then you need to go to sixth grade, "reductions of like summands".
Don't you see that your formula and my version of your formula will give exactly the same result?
Then you need to go to sixth grade - 'reductions of like summands'.
Don't you see that your formula and my version of your formula will give exactly the same result?
Then you need to go to sixth grade - "reductions of like summands".
Ooh .... Welcome...![](https://c.mql5.com/3/72/vzdoh2.gif)