Testing 'CopyTicks' - page 16

 
fxsaber:

Do I understand correctly that the tick volume of a bar should be equal to the number of COPY_TICKS_ALL ticks in that bar?

I didn't write it in MQL, I thought it would be quicker to ask. Which instrument on the exchange traditionally has the highest trading volume, and which one has the highest tick volume?

No.

Tick volume reflects the number of ticks that have changed the bar. If a bar is based on flippers, then bids and asks do not form a bar and therefore are not counted in the tick volume

 
fxsaber:
What will happen to internal caches of CopyTicks, memory, productivity, if I download in timer (50ms) fresh ticks for tens of instruments?

Nothing is likely to happen to the caches. Each character has its own tick cache, which contains up to 65,000 last ticks.

If you query every 50 ms for the last ticks, they will definitely be given from the cache without additional queries to the database of ticks on disk.

Monitor your own performance. Keep track of CPU consumption

 
Slawa:

Tick volume reflects the number of ticks that have changed the bar. If a bar is based on flippers, Bids and Asks do not form a bar and, therefore, are not included in the tick volume

COPY_TICKS_TRADE would not all then hit the tick volume either? For example, when the flipper prices do not change

Forum on trading, automated trading systems and testing trading strategies

Ribbon of trades in Metatrader 5

fxsaber, 2016.09.13 09:39

This is a piece of the feed. Tell me if I understand the situation highlighted in the green box in the screenshot correctly?

Someone made a market request for exactly 10 lots. At that moment the corresponding best gang consisted of limit bids placed in chronological order with lots 1, 1, 1, 1, 1, 3, 2, 1. There may have been other bids on this gang (98340) at the time of the market, but they were chronologically placed later than the ones mentioned.

Is this correct?


 
Slawa:

Nothing is likely to happen to the caches. Each character has its own tick cache, which contains up to 65,000 last ticks.

If you query every 50 ms for the latest ticks, they will definitely come out of the cache without additional queries to the database of ticks on disk.

Monitor your own performance. Keep an eye on CPU consumption

If I set From = 0, then it's copying from cache. And if From is fine, how is it implemented?

In the nearest beta builds will the CopyTicks bugs be fixed?

 
Istick barvolume a rudiment? A figure which means basically nothing in an exchange. There is no way to use it deliberately. It is rubbish.
 
fxsaber:

If I set From = 0, then the cache is copied. And if From is fine, how is it implemented there?

In coming beta-builds will CopyTicks bugs be fixed?

If from is in cache, all ticks will be taken from cache

Now we are just dealing with CopyTicks. Reproduced a case, when amount of ticks does not correspond to amount of OnCalculate calls (one tick is "walking" back and forth on bar border).

 
Slawa:

Now we are dealing with CopyTicks. Reproduced a case, when amount of ticks does not correspond to the amount of OnCalculate calls(one tick goes back and forth on bar boundary)

I have a difference of more than one tick. And then there's this.

Forum on trading, automated trading systems and strategy testing

Indicators are missing ticks on the Exchange

fxsaber, 2016.09.16 16:31

It's just the position that indicators should not miss ticks that seems ambiguous to me.

For example, ticks play with huge frequency. Let's say every 10ms. But OnCalculate is executed in 15ms.

If the indicator doesn't skip ticks, the system hangs.


 
fxsaber:
I have a difference of more than one tick. And then there's this.

If there is one tick, there could be two or more. We've found the problem, now we're investigating it.

If the indicator is written sparingly, there will be no performance problems

 
Slawa:

If the indicator is written sparingly, there will be no performance problems

That's how I gave an example of economical - 15ms.
 
fxsaber:
So I gave an example of economical - 15ms.

15 ms - measurement error of GetTickCount

Let's deal with CopyTicks to the end first, so that there are no questions. Without call OnCalculate on each tick we can't do without it.

And then we will think. Perhaps to call OnCalculate only when something has changed in MqlRates - price, spread or volumes. If the tick did not cause changes, then the recalculation should not be called. It is necessary to think.

Reason: