орять MqlTick

 
такая ситуация
input int      array_history=0;//Массив истории
input datetime time_history=D'2016.05.23 16:10:27';//Начальное время

MqlTick history[];


int OnInit()
  {
//---
   int copied=CopyTicks(Symbol(),history,COPY_TICKS_ALL,time_history,array_history);
   if(copied>0)
    {
      Print("OK "+TimeToString(history[0].time)+"  "+TimeToString(history[array_history-1].time));
      return(INIT_SUCCEEDED);
    }
    else
    {
      Print("Не удалось загрузить тики. GetLastError()=",GetLastError());
      return(INIT_FAILED);
    }
//---

  }

выводит сообщение     OK 2015.12.18 10:00  2015.12.23 13:38 ,хотя дата сегодня

input int      array_history=0;//Массив истории
input datetime time_history=D'2016.05.23 16:10:27';//Начальное время

MqlTick history[];


int OnInit()
  {
//---
   int copied=CopyTicks(Symbol(),history,COPY_TICKS_ALL,0,array_history);
   if(copied>0)
    {
      Print("OK "+TimeToString(history[0].time)+"  "+TimeToString(history[array_history-1].time));
      return(INIT_SUCCEEDED);
    }
    else
    {
      Print("Не удалось загрузить тики. GetLastError()=",GetLastError());
      return(INIT_FAILED);
    }
//---

  }
//выводит сообщение 	OK 2016.05.23 19:00  2016.05.23 19:16


 
то есть тики по времени запросить не удается и еще  time_msc; Время в миллисекундах бесполезно ( градация идет 1сек.) и миллисекунд нет и в помине
 

Время в запросе должно быть представлено так:

(ulong)time_history*1000
 
Karputov Vladimir:

Время в запросе должно быть представлено так:

 Время понятно , спасибо.  А как на счет time_msc; Время в миллисекундах ,это из той же истории отсутствие флагов  TICK_FLAG_BUY и TICK_FLAG_SELL
 
dimka8:
 Время понятно , спасибо.  А как на счет time_msc; Время в миллисекундах ,это из той же истории отсутствие флагов  TICK_FLAG_BUY и TICK_FLAG_SELL
struct MqlTick 
  { 
   datetime     time;          // Время последнего обновления цен 
   double       bid;           // Текущая цена Bid 
   double       ask;           // Текущая цена Ask 
   double       last;          // Текущая цена последней сделки (Last) 
   ulong        volume;        // Объем для текущей цены Last 
   long         time_msc;      // Время последнего обновления цен в миллисекундах 
   uint         flag           // Флаги тиков 
  }; 
 
Karputov Vladimir:
вот значения long   1461061422000 несколько раз ,а потом long   1461061423000  . то есть миллисекунд нет ( идут несколько подряд тиков с одним и тем же временем     1461061422000 )
 
dimka8:
вот значения long   1461061422000 несколько раз ,а потом long   1461061423000  . то есть миллисекунд нет ( идут несколько подряд тиков с одним и тем же временем     1461061422000 )
Писали уже про это на форуме. Чтобы появились миллисекунды, брокер должен обновить серверную часть MT. Как обновит, так появятся.
 
dimka8:
вот значения long   1461061422000 несколько раз ,а потом long   1461061423000  . то есть миллисекунд нет ( идут несколько подряд тиков с одним и тем же временем     1461061422000 )
Посчитайте количество цифр - время в миллисекундах. А то, что нулю - так подключитесь на реальный сервер, ещё лучше на биржевой. После этого посмотрите время на фьючерсах.
 
dimka8:
то есть тики по времени запросить не удается и еще  time_msc; Время в миллисекундах бесполезно ( градация идет 1сек.) и миллисекунд нет и в помине
еще учтите, что в тестере возвращает ноли, если в миллисекундах брать, т.е. тестер не работает с миллисекундами пока что... или одинаковые значения, да, как у вас, уже не помню.. ну т.е. для тестера это не подходит.
Причина обращения: