Tick story - page 11

 
Maxim Dmitrievsky:
Please explain again. What is the depth of tick history available now? The history is downloaded from the server, so it doesn't need to be saved?

I have attached the script. Run it a few times. The story will slowly download from the server. And yes, you don't need to save history now.


Maxim Dmitrievsky:
... How does the tester work? Does it use ticks simulation or tick history?
In 1190, the ticks in the tester are not downloaded yet, but they will be very soon.
Files:
CopyTicks.mq5  2 kb
 
Karputov Vladimir:

I have attached the script. Run it a few times. The story will slowly download from the server. And yes, you don't need to save history now.


In 1190 like the ticks in the tester is not pumped yet, but soon, very soon will.
Thank you. So, the tester will rely on the available tick history and if it is not available, it will model based on the type of the smallest timeframes?
 
Maxim Dmitrievsky:
Thank you. So the tester will rely on the available tick history and if it is not available it will simulate, like the smallest timeframes?
Not yet in the 1190 build. But it's on the way that the tester will soon be testing on real tick history.
 
Maxim Dmitrievsky:
Thank you. So, the tester will use the available tick history and if it is not available, it will simulate it based on the type of the smallest timeframe?

As far as I understood from Renat's words, in the next build tick history will be fully available. Right now tick history is only available in the terminal (which is strange, by the way, because at the beginning they announced tick history for the tester, but for the terminal they said that it would not be available).

As for how much is available. I've uploaded over 20 million ticks. That's not the limit.

 

Upgrade to 1191 build, please.

Here are the results of a simple script in 1191:

MqlTick ExTicks[];
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- запросим тики
   int copied=CopyTicks(_Symbol,ExTicks,COPY_TICKS_ALL,0,200000000);
//--- если тики получены, то выведем на график значения Bid и Ask  
   Print("Получено тиков: ",copied," код ошибки: ",GetLastError());
   if(copied>1)
     {
      Print("Тик: ",ExTicks[0].time," bid: ",ExTicks[0].bid," ask: ",ExTicks[0].ask," last: ",ExTicks[0].last," [0]");
      Print("Тик: ",ExTicks[copied-1].time," bid: ",ExTicks[copied-1].bid," ask: ",ExTicks[copied-1].ask," last: ",ExTicks[copied-1].last," [",copied-1,"]");
     }
   Print("Size ",((long)copied*sizeof(MqlTick))>>20, " Mb");
  }

200,000,000 ticks query:

2015.10.17 16:09:50.982 CheckTicks (EURUSD,H1)  Size 2876 Mb
2015.10.17 16:09:50.982 CheckTicks (EURUSD,H1)  Тик: 2015.10.16 23:59:10 bid: 0.0 ask: 0.0 last: 0.0 [75392920]
2015.10.17 16:09:50.982 CheckTicks (EURUSD,H1)  Тик: 2011.12.19 00:00:08 bid: 1.30328 ask: 1.30342 last: 0.0 [0]
2015.10.17 16:09:50.982 CheckTicks (EURUSD,H1)  Получено тиков: 75392921 код ошибки: 0

The size of the data issued is almost 3 gb for 75 million ticks. And the last quote with bid=0/ask=0/last=0 shows the closing of the trading session.


In the October 22 release, a time field in milliseconds will be added to MqlTick.

ps: stock up on RAM

 
Tapochun:

The tick history is now only available in the terminal (which is odd, by the way, because they first announced the tick history for the tester, but said it would not be available for the terminal).

Nothing strange about that.

First we need to implement all network protocols, delivery and correct synchronization mechanisms for storing tick data in the terminal itself, and only then transfer this data to the Strategy Tester and MQL5 Cloud Network. A tester is a separate program with its own data flows. The MQL5 Cloud Network is an even more complex system.

 
Renat Fatkhullin:

Upgrade to 1191 build, please.

Here are the results of a simple script:

query for 200,000,000 ticks:

The size of the data given out is almost 3gb. And the last quote with bid=0/ask=0/last=0 shows the closing of the trading session of the price stack.


The time field in milliseconds will be added to MqlTick in the release of 22nd of October.

I understand correctly that now and in ALL mode the ticks alternate, i.e. #1 - bid != 0, ask != 0, flipper = 0, #2 - bid = 0, ask = 0 and flipper != 0 etc. And in INFO mode each tick has bid and ask != 0?
 
Renat Fatkhullin:

There's nothing strange about it.

You must first implement all network protocols, delivery and correct synchronization mechanisms and tick data storage in the terminal itself and only then transfer this data to the Strategy Tester and MQL5 Cloud Network. A tester is a separate program with its own data flows. The MQL5 Cloud Network is an even more complex system.

Thanks for the clarification, I just remember a conversation (I was involved in it) in which you said there would only be a tick story in the tester. But, that's undeniably better!

So as not to be unsubstantiated:

Please read the entire branch thoughtfully.

No one has ever mentioned tick data in charts and there are no plans to implement it. Only in the tester there are plans to automatically generate a tick stream if it is present on the server.


 
Tapochun:
I understand correctly that now and in ALL mode the ticks alternate, i.e. #1 - bid != 0, asc != 0, flipper = 0, #2 - bid = 0, asc = 0 and flipper != 0 etc. And in INFO mode each tick has bid and ask != 0?
There are no alternation or filling rules - the ticks come chaotically.
 
Added a script to the first post. Whoever runs out of RAM is not to blame :) .
Reason: