Ошибки, баги, вопросы - страница 2413

 
Yousufkhodja Sultonov:

Спасибо, отправил в rar

Может быть zip?


 
Vladimir Karputov:

Может быть zip?


Нет, удалось провести именно в rar

 
Как избавиться от засилья рекламы в личке?
 
Yousufkhodja Sultonov:
Как избавиться от засилья рекламы в личке?

Написать сюда

Спамеры, спам в личных сообщения, спам в обсуждениях, спам в отзывах
Спамеры, спам в личных сообщения, спам в обсуждениях, спам в отзывах
  • 2014.09.13
  • www.mql5.com
Общее обсуждение: Спамеры, спам в личных сообщения, спам в обсуждениях, спам в отзывах
 
Vladimir Karputov:

Кто-то вообще понял о чём речь?

В библиотеке MQ есть класс CSymbolInfo. Он инициализируется методом Name.
Вот во время инициализации такая *** происходит на данных вызовах. Думаю, что просто сами по себе вызовы могут приводить к таким ошибкам.

 
Andrey Pogoreltsev:

В библиотеке MQ есть класс CSymbolInfo. Он инициализируется методом Name.
Вот во время инициализации такая *** происходит на данных вызовах. Думаю, что просто сами по себе вызовы могут приводить к таким ошибкам.

Где происходит? Конкретно в каком методе класса? Минимально воспроизводимый код?

 
Andrey Pogoreltsev:

Если в мультивалютнике использовать CSymbolInfo, который в момент инициализации методом Name вызывает:

То во время тестирования для символа USDCAD будут выдаваться ошибки:

Какая валюта депозита при тестировании?

 
Slava:

Какая валюта депозита при тестировании?

USD. Пара тестирования EURUSD M1. Я попробую воспроизвести в голом советнике. Пока не получилось. Но именно данные методы приводили к ошибкам в логах и именно по одной паре.

 
Slava:

Какая валюта депозита при тестировании?

Вообщем воспроизвел и нашел особенность. Прикрепил настройки тестирования.

Сам код голого советника:

#include <Trade\SymbolInfo.mqh>

int OnInit()
  {
//---
   CSymbolInfo info;
   info.Name("EURCHF.m");
   info.Refresh();
   info.Name("EURJPY.m");
   info.Refresh();
   info.Name("EURUSD.m");
   info.Refresh();
   info.Name("EURGBP.m");
   info.Refresh();
   info.Name("USDCAD.m");
   info.Refresh();
//---
   return(INIT_SUCCEEDED);
  }


Теперь "особенность", как и обещал) Если в Name() использовать так:

   if(!SymbolInfoDouble(m_name,SYMBOL_TRADE_TICK_VALUE,m_tick_value))
      return(false);
   if(!SymbolInfoDouble(m_name,SYMBOL_TRADE_TICK_VALUE_PROFIT,m_tick_value_profit))
      return(false);
   if(!SymbolInfoDouble(m_name,SYMBOL_TRADE_TICK_VALUE_LOSS,m_tick_value_loss))
      return(false);
   if(!SymbolInfoDouble(m_name,SYMBOL_TRADE_TICK_SIZE,m_tick_size))
      return(false);

то ошибка будет. А вот так ошибка пропадает:

   if(!SymbolInfoDouble(m_name,SYMBOL_TRADE_TICK_SIZE,m_tick_size))
      return(false);
   if(!SymbolInfoDouble(m_name,SYMBOL_TRADE_TICK_VALUE,m_tick_value))
      return(false);
   if(!SymbolInfoDouble(m_name,SYMBOL_TRADE_TICK_VALUE_PROFIT,m_tick_value_profit))
      return(false);
   if(!SymbolInfoDouble(m_name,SYMBOL_TRADE_TICK_VALUE_LOSS,m_tick_value_loss))
      return(false);


PS. У меня на центовом пары называются с приставкой ".m". Пример работает и на обычных парах.

Файлы:
test.png  11 kb
 
Andrey Pogoreltsev:

Вообщем воспроизвел и нашел особенность. Прикрепил настройки тестирования.


Спасибо. Разберёмся