Solo gli utenti che hanno acquistato o noleggiato il prodotto possono lasciare commenti
Mikhail Filimonov  

Добрый день, Дмитрий!

А как же Вы "обходите" проблему с неполучением баров по второму символу для ФОРТС? 

Dmitriy Skub  
Mikalas:

Добрый день, Дмитрий!

А как же Вы "обходите" проблему с неполучением баров по второму символу для ФОРТС? 

Добрый вечер, Михаил!

В целом, процедура такая:

- в OnInit только проверяется наличие символа в обзоре рынка - если символа нет, то делается попытка добавить его обзор рынка. Если добавить не удалось, то больше сделать ничего нельзя и выдается сообщение.

- в OnTimer и в OnCalculate выполняется однотипная процедура проверки синхронизации данных ( прежде, чем что-то делать дальше ):

// Если данные не сихронизированы, то попытаемся это сделать:
if( SeriesInfoInteger( current_symbol, Period( ), SERIES_SYNCHRONIZED ) != true )
{
  bars_loaded_flag = false;

  if( SynchData( current_symbol, Period( ), current_datetime ) != true )
  {
// Если данные синхронизировать не удалось, то дальше делать нечего:
    if( DebugInfoLevel == ENUM_DEBUG_LEVEL::ENUM_SHOW_DEBUG_DETAILED )
    {
      Print( TimeToString( TimeCurrent( ), TIME_DATE | TIME_MINUTES | TIME_SECONDS ), ": ", current_symbol, " - waiting for data synchronizing..." );
    }
    return( 0 );
  }
}

- в случае, если данные не синхронизированы, вызывается функция SynchData, которая, собственно и пытается исправить ситуацию. Она на 99% взята из справки с некоторыми модификациями.

Как-то так.

Mikhail Filimonov  
Dima_S:

Добрый вечер, Михаил!

В целом, процедура такая:

- в OnInit только проверяется наличие символа в обзоре рынка - если символа нет, то делается попытка добавить его обзор рынка. Если добавить не удалось, то больше сделать ничего нельзя и выдается сообщение.

- в OnTimer и в OnCalculate выполняется однотипная процедура проверки синхронизации данных ( прежде, чем что-то делать дальше ):

- в случае, если данные не синхронизированы, вызывается функция SynchData, которая, собственно и пытается исправить ситуацию. Она на 99% взята из справки с некоторыми модификациями.

Как-то так.

А SynchData() подгружает историю с сервера?
Dmitriy Skub  
Mikalas:
А SynchData() подгружает историю с сервера?
В том числе, если необходимо. В МТ5 данные остальных ТФ формируются из баров М1, - если нет достаточной глубины истории в терминале и она (история) есть на сервере, то запускается подгрузка с сервера.
Solo gli utenti che hanno acquistato o noleggiato il prodotto possono lasciare commenti