Новая версия платформы MetaTrader 5 build 2755: Улучшения в окне котировок и отладчике - страница 49

 
Mikhail Mishanin:

Подскажите, есть ли на этом сервере инструменты МосБиржи? и IP сервера.

Для доступа к рилтаймовым данным Мосбиржи нужно иметь реальный счет у брокера, предоставляющего трейтдинг на MOEX.

 
Renat Fatkhullin:

....

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

Как говориться, да Боже упаси! И в мыслях не было. Я искренне желаю вам удачи во всех ваших разработках.

Но из Вашего ответа я могу сделать заключение, что сервер НЕ предназначен для тестирования и отладки пользовательских разработок? Значит все статьи на форуме, основанные на данных именно вашего сервера, не могут восприниматься как достоверные?

Извините за ... ну в общем, извините. 

 
Renat Fatkhullin:

Для доступа к рилтаймовым данным Мосбиржи нужно иметь реальный счет у брокера, предоставляющего трейтдинг на MOEX.

ежу понятно) порекомендуйте пожалуйста сервер на котором  штатно обрабатываются ордера срочного рынка любой площадки, хотя бы страну сориентируйте, а если есть ещё и опционы будет заМЕЧТАтельно!

 
Ilyas:

Действительно были проблемы с вычислениями значений для массивов указателей

Исправлено


Build 2798.

Код приложен.

1) Проблема с "Expression could not be evaluated" осталась (нет типа - см рис):

Expression could not be evaluated

2) Проблема с "bad pointer" осталась.

Bad pointer

Файлы:
 

Хотелось бы узнать, вследствие чего runtime генерит такие ошибки:

Рождают такие ошибки, например, конструкции типа этой (копирование объекта по значению):
void clCond::Copy( const clCond* &iclCond ) {
        this= iclCond;
}
Не хотелось бы писать операцию копирования для всего объекта по-членно...
  • Error=5035 (Длина строки меньше, чем ожидалось).
Пока нет идей... Хотя сильно и не копал.
На функциональность вроде не влияют и не являются критическими, но... Не люблю ошибки )) Всегда есть ощущение и вероятность, что где-то потом это всё "вылезет боком".
 
string Ret[20];

Код под отладчиком требует 20 нажатий F10.

 
Vladimir Belozercev:

Хотелось бы узнать, вследствие чего runtime генерит такие ошибки:

Рождают такие ошибки, например, конструкции типа этой (копирование объекта по значению):
Не хотелось бы писать операцию копирования для всего объекта по-членно...
  • Error=5035 (Длина строки меньше, чем ожидалось).
Пока нет идей... Хотя сильно и не копал.
На функциональность вроде не влияют и не являются критическими, но... Не люблю ошибки )) Всегда есть ощущение и вероятность, что где-то потом это всё "вылезет боком".
   ResetLastError();
   int size         = StringLen(inputString);
   string substring = StringSubstr(inputString,size,1);         // Error 5035
 

Ошибка сообщается ошибочно?

   ResetLastError();
   int size         = StringLen(inputString);
   int copied       = StringToCharArray(inputString,inputsArr,0,size);

   if(_LastError!=ERR_SUCCESS)
      printf("Error reported %i. ArraySize=%i Copied=%i Size=%i",GetLastError(),ArraySize(inputsArr),copied,size);
     // 2021.02.26 15:16:52.589      ErrorWronglySet (USDJPY,H1)     Error reported 4007. ArraySize=39 Copied=39 Size=39
Файлы:
 
Alain Verleyen:

Ошибка сообщается ошибочно?

Если честно, то понятия не имею. Поэтому и спрашиваю. В первом случае, который я описал, объекты копируются полностью и проблем я не заметил, но ошибка (хотя пожалуй это не ошибка, это скорее warning).

Вторая генериться, когда на вход StringFind приходит пустая в первом параметре (один из случаев, мной замеченных).

Вопрос, собственно,  в том, как правильно на них реагировать, и реагировать ли вообще,  или относиться просто как warning-гам?...

 

Build 2799.

Вернулась старая бага, которая связана с размещением динамических библиотек. Сейчас, если dll лежат в Librares, то отладчик, при вызове функций dll, вылетит по эксепшену.

Если разместить dll в корне МТ - все работает штатно.

Во время обычного исполнения индикатора эксепшена не возникает.