Установлено два Metatrade (4 и 5). С какого то момента в MetaEditor 5 начали подсвечиваться функции iClose, iOpen, iHighest, iLowest, которыя я написал самостоятельно. Попробовал закоментировать свои функции, и компилятор не выдает сообщение об ошибке, будто эти функции уже появились в Metatrade5. Запускаю модуль в отладчик, он код с функциями проглатывает, но не возвращает верные результаты. Где-то прошло пересечение оболочек MetaEditor 4 и 5. Помогает только полное удаление Metatrade 4 и 5.
- MetaEditor - профессиональный редактор торговых приложений
- Помощь Copilot - Разработка программ
- Скачайте MetaTrader 5 build 1730 с новыми возможностями для трейдеров
Подтверждаю: установлены MT5 и MT4. MetaEditor 1835, запущенный из терминала MetaTrader 5 (через F4), спокойно
//+------------------------------------------------------------------+ //| Test_1.mq5 | //| Copyright 2012, CompanyName | //| http://www.companyname.net | //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart() { Print(DoubleToString(iClose(Symbol(),Period(),0))); } //+------------------------------------------------------------------+
запускает этот код.
Даже распечатывается результат:
0.00000000
Файлы:
Test_1.mq5
2 kb
Вот бы правильно работали, было-бы удобно!
Вот бы получилось счётную машинку "Феликс" прикрутить к mql... Вот бы удобно было. ))))))))))
"похоже мы на кануне грандиозного шухера" :-)
Vladimir Karputov:
Подтверждаю: установлены MT5 и MT4. MetaEditor 1835, запущенный из терминала MetaTrader 5 (через F4), спокойно
запускает этот код.
Даже распечатывается результат:
Распечатайте заодно значение GetLastError
Попробуйте iBarShift в MQL5
Если бы все это правильно работало в MQL5, переход на MT5 бы ускорился в разы. Т.е. *.ex4 можно было бы запускать на MT5. Тогда бы стали забывать про MT4, как этого хочет Метаквот
Evgeniy Zhdan:
Если бы все это правильно работало в MQL5, переход на MT5 бы ускорился в разы. Т.е. *.ex4 можно было бы запускать на MT5. Тогда бы стали забывать про MT4, как этого хочет Метаквот
Если бы все это правильно работало в MQL5, переход на MT5 бы ускорился в разы. Т.е. *.ex4 можно было бы запускать на MT5. Тогда бы стали забывать про MT4, как этого хочет Метаквот
Ну, да. Типа define перед телом программы и компилируем на указанном языке.
Slava:
Распечатайте заодно значение GetLastError
Попробуйте iBarShift в MQL5
Код:
//+------------------------------------------------------------------+ //| Test_1.mq5 | //| Copyright 2012, CompanyName | //| http://www.companyname.net | //+------------------------------------------------------------------+ //+------------------------------------------------------------------+ //| Script program start function | //+------------------------------------------------------------------+ void OnStart() { Print(""); ResetLastError(); Print("iClose(Symbol(),Period(),0): ",DoubleToString(iClose(Symbol(),Period(),0))); Print("GetLastError: ",GetLastError()); ResetLastError(); Print("iBarShift(Symbol(),Period(),TimeCurrent(),false): ",iBarShift(Symbol(),Period(),TimeCurrent(),false)); Print("GetLastError: ",GetLastError()); ResetLastError(); Print("iBarShift(Symbol(),Period(),TimeCurrent(),true): ",iBarShift(Symbol(),Period(),TimeCurrent(),true)); Print("GetLastError: ",GetLastError()); } //+------------------------------------------------------------------+
Результат:
iClose(Symbol(),Period(),0): 0.00000000 GetLastError: 4014 iBarShift(Symbol(),Period(),TimeCurrent(),false): 0 GetLastError: 4014 iBarShift(Symbol(),Period(),TimeCurrent(),true): -1 GetLastError: 4014
Ошибка:
ERR_FUNCTION_NOT_ALLOWED | 4014 | Function is not allowed for call |
Файлы:
Test_1.mq5
3 kb
Evgeniy Zhdan:
Если бы все это правильно работало в MQL5, переход на MT5 бы ускорился в разы. Т.е. *.ex4 можно было бы запускать на MT5. Тогда бы стали забывать про MT4, как этого хочет Метаквот
++++
Если бы все это правильно работало в MQL5, переход на MT5 бы ускорился в разы. Т.е. *.ex4 можно было бы запускать на MT5. Тогда бы стали забывать про MT4, как этого хочет Метаквот
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь