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

 
fxsaber:

Эту особенность учел сразу. Сейчас еще раз себя перепроверил.

Release-вариант:

Да, действительно, есть разница в подведении 32 битного и 64 битного кода, приведём к одному поведению.
 
fxsaber:
В самом деле, удобно было бы хотя бы такое

Может быть лучше не из MarketWatch а из списка открытых графиков. Ведь есть этот список, он открывается в тестере.

Хотя если советником открывать график, то нужен список MarketWatch

В любом случае поддерживаю...

 
fxsaber:
В самом деле, удобно было бы хотя бы такое

По работе с символами предложение:

Пока алгоритм работы со типом string затратный - реализовать хотя бы возможность работать с цифровым индексом символа брокера.

int OrderSymbolIndex()//приходит напрямую с сервера

int SymbolIndex((string)symbol_name)//т.к. синхронизировано с индексами брокера в терминале - исполняется локально


выгоды очевидны на уровне хранения (можно в простых структурах, массивах), обработки (процессор и память) и передачи информации

 
Kirill Belousov:

По работе с символами предложение:

Пока алгоритм работы со типом string затратный - реализовать хотя бы возможность работать с цифровым индексом символа брокера.

int OrderSymbolIndex()//приходит напрямую с сервера

int SymbolIndex((string)symbol_name)//т.к. синхронизировано с индексами брокера в терминале - исполняется локально


выгоды очевидны на уровне хранения (можно в простых структурах, массивах), обработки (процессор и память) и передачи информации

Предлагать можно многое, но, наверное, стоит немного представлять себя на месте разработчиков. Работу со строками, скорее всего, ускорят.

 

Как к чужому Маркет-советнику прикрутить фреймовый функционал, чтобы иметь возможность получить ту же историю торгов бэктеста?

Сейчас для этого нужно использовать WinAPI. Костыльно получается.

 
prostotrader:

Почему так?

Код

Наверно, имелось в виду DoubleToString(xxx, 2). Когда второй параметр опущен, он по-умолчанию равен 8.

 
Stanislav Korotky:

Наверно, имелось в виду DoubleToString(xxx, 2). Когда второй параметр опущен, он по-умолчанию равен 8.


Я понял, поэтому убрал сообщение

 

МТ4 build 1090

при компиляции .mqh компилятор неправильно интерпретирует области видимости переменных, ограниченные фигурными скобками

for,while,if и т.д.

если локально объявлена переменная, то потом ругается на повторное объявление

void test1()
  {
   int total=1;
   for(int i=0;i<total;i++)
     {
      int a=0;
     }
   for(int i=0;i<total;i++)//в mqh 'i' - variable already defined
     {
      int a=0;//в mqh 'a' - variable already defined
     }
   Print(a);//в mqh компилятор здесь молчит
  }

если заинклудить тот же код, то правильно


это известный баг или создать заявку в СД?

 
Kirill Belousov:

МТ4 build 1090

при компиляции .mqh компилятор неправильно интерпретирует области видимости переменных, ограниченные фигурными скобками

for,while,if и т.д.

если локально объявлена переменная, то потом ругается на повторное объявление

если заинклудить тот же код, то правильно

это известный баг или создать заявку в СД?


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

 
Kirill Belousov:

МТ4 build 1090

при компиляции .mqh компилятор неправильно интерпретирует области видимости переменных, ограниченные фигурными скобками

#property strict