Если не ошибаюсь, то некорректно указан тип матлабовских матриц в Таблице 1. Пропущена буква u. Т.е., например, тип uint16 отвечает за диапазон от 0 до 65535, а не тип int16. И так далее...
Class | Range of Values | Conversion Function |
---|---|---|
Signed 8-bit integer | -27 to 27-1 | int8 |
Signed 16-bit integer | -215 to 215-1 | int16 |
Signed 32-bit integer | -231 to 231-1 | int32 |
Signed 64-bit integer | -263 to 263-1 | int64 |
Unsigned 8-bit integer | 0 to 28-1 | uint8 |
Unsigned 16-bit integer | 0 to 216-1 | uint16 |
Unsigned 32-bit integer | 0 to 232-1 | uint32 |
Unsigned 64-bit integer | 0 to 264-1 | uint64 |
Добрый день, спасибо за отличную статью, очень помогла!
Однако возникла проблема. Может, кто-нибудь сталкивался.
У меня при закрытии советника наглухо виснет MT5. Использую MS Visual Studio2010 + Matlab r2011a.
Как думаете, в чем может быть причина? Заранее спасибо!
Добрый день.Сделал вроде все как в статье, однако при запуске скрипта TestMlEngine выскакивала ошибка:
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot open 'C:\Users\H_F_M\AppData\Roaming\MetaQuotes\Terminal\DEA4AAFB99C996D79821EC8BDBADDC3C\MQL5\Libraries\LibMlEngine.dll' (126)
и потом сразу:
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxGetSizeOfName' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxGetLogical' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxGetInt' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxGetDouble' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxInputLogical' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxInputInt' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxInputDouble' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxInputChar' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxOpen' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxClose' in 'LibMlEngine.dll'
Где-то на форуме нашел, что это из-за недостачи dll-ок, с помощью depends.exe нашел что ему не доставало, закинул в ту же папку, помогло, но не совсем.Теперь выдает:
2011.12.17 15:57:59 TestMLEngine (EURUSD,H1) Cannot open 'C:\Users\H_F_M\AppData\Roaming\MetaQuotes\Terminal\DEA4AAFB99C996D79821EC8BDBADDC3C\MQL5\Libraries\LibMlEngine.dll' (127)
и дальше посписку все "Cannot find...". Подскажите, в чем проблема? Уже неделю бьюсь...
Да, у меня Win7 + Matlab R2011a + VS201.
Добрый день.Сделал вроде все как в статье, однако при запуске скрипта TestMlEngine выскакивала ошибка:
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot open 'C:\Users\H_F_M\AppData\Roaming\MetaQuotes\Terminal\DEA4AAFB99C996D79821EC8BDBADDC3C\MQL5\Libraries\LibMlEngine.dll' (126)
и потом сразу:
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxGetSizeOfName' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxGetLogical' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxGetInt' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxGetDouble' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxInputLogical' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxInputInt' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxInputDouble' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxInputChar' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxOpen' in 'LibMlEngine.dll'
2011.12.17 15:55:23 TestMLEngine (EURUSD,H1) Cannot find 'mlxClose' in 'LibMlEngine.dll'
Где-то на форуме нашел, что это из-за недостачи dll-ок, с помощью depends.exe нашел что ему не доставало, закинул в ту же папку, помогло, но не совсем.Теперь выдает:
2011.12.17 15:57:59 TestMLEngine (EURUSD,H1) Cannot open 'C:\Users\H_F_M\AppData\Roaming\MetaQuotes\Terminal\DEA4AAFB99C996D79821EC8BDBADDC3C\MQL5\Libraries\LibMlEngine.dll' (127)
и дальше посписку все "Cannot find...". Подскажите, в чем проблема? Уже неделю бьюсь...
Да, у меня Win7 + Matlab R2011a + VS201.
У меня при установке Матлаба в System path прописалось только: "C:\Program Files\MATLAB\R2011b\bin". Я добавил "C:\Program Files\MATLAB\R2011b\bin\win32". Dll из матлабовской директории стали видны и Matlab Engine запустился. До этого писал, что не видит dll.
Доброго дня) У меня возникла еще проблема - в папке<MATLAB>\extern\lib\win32\ почему-то не обнаруживается каталога "Borland", хотя стоит Borland C++ Builder 6. Соответственно файлы libeng.lib и libmx.lib покдлючить к проекту тоже не получается. На команду "implib libeng.lib libeng.dll" Far выдает следующее:
)
А папки Borland как не было, так и нет... Может кто подскжет, как с это бедой бороться? Или хотя бы эти два файлика скинет?:-)
Вобщем прошу помощи, ибо вобще не понимаю чего-то...
Для чистоты эксперимента поставил VMware, куда установил 2 системы - ХР и 7ку.
Далее ставил Matlab R2011b, устанавливал MCR, ставил последний билд МТ5. Из архива, приложенного к статье, все файлы раскидал по папкам, как написано в инструкции, расположенной в архиве. Файлы mq5 компилировал в ex5 (т.е. имеющиеся в архиве ex5 удалял, а на их место ставил вновь скомпилированные). Запускаю MT5, запускаю Matlab (пробовал и не запускать его - результат тот же), в терминале тыкаю на TestMlEngine, и он мне выдает:
TestMLEngine (EURUSD,H1) 13:44:58 Cannot open 'C:\Users\User\AppData\Roaming\MetaQuotes\Terminal\DEA4AAFB99C996D79821EC8BDBADDC3C\MQL5\Libraries\LibMlEngine.dll' (126)
TestMLEngine (EURUSD,H1) 13:44:58 Cannot find 'mlxClose' in 'LibMlEngine.dll'
TestMLEngine (EURUSD,H1) 13:44:58 Cannot find 'mlxOpen' in 'LibMlEngine.dll'
TestMLEngine (EURUSD,H1) 13:44:58 Cannot find 'mlxInputChar' in 'LibMlEngine.dll'
TestMLEngine (EURUSD,H1) 13:44:58 Cannot find 'mlxInputDouble' in 'LibMlEngine.dll'
TestMLEngine (EURUSD,H1) 13:44:58 Cannot find 'mlxInputInt' in 'LibMlEngine.dll'
TestMLEngine (EURUSD,H1) 13:44:58 Cannot find 'mlxInputLogical' in 'LibMlEngine.dll'
TestMLEngine (EURUSD,H1) 13:44:58 Cannot find 'mlxGetDouble' in 'LibMlEngine.dll'
TestMLEngine (EURUSD,H1) 13:44:58 Cannot find 'mlxGetInt' in 'LibMlEngine.dll'
TestMLEngine (EURUSD,H1) 13:44:58 Cannot find 'mlxGetLogical' in 'LibMlEngine.dll'
TestMLEngine (EURUSD,H1) 13:44:58 Cannot find 'mlxGetSizeOfName' in 'LibMlEngine.dll'
Что делатьуже не знаю. Перепробовал все что можно было. Пробовал Dllку из статьи "Как за 10 минут написать DLL библиотеку для MQL5 и обмениваться данными?" (https://www.mql5.com/ru/articles/18) - работает без проблем.
Может кто подскажет как еще к ней подобраться? Что я не так делаю?
Зараннее спасибо.

- 2010.01.27
- MetaQuotes Software Corp.
- www.mql5.com
У меня при установке Матлаба в System path прописалось только: "C:\Program Files\MATLAB\R2011b\bin". Я добавил "C:\Program Files\MATLAB\R2011b\bin\win32". Dll из матлабовской директории стали видны и Matlab Engine запустился. До этого писал, что не видит dll.
Если имеется в виду переменная среды Path, то я добавил туда "C:\Program Files\MATLAB\R2011b\bin\win32", однако ситуация не изменилась :-(
Кроме этого не хватало некоторых dll-библиотек. Проверьте через "depends.exe" чего не хватает для запуска.
Да, уже писал что пробовал, после этого он мне 127ю ошибку выдавал, вместо 126й, но все-равно спасибо)
Сейчас каким-то чудесным образом все заработало. Буду выяснять в чем дело было. А потом уже наконец и нейросетями займусь)

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Опубликована статья Взаимодействие MetaTrader 5 и MATLAB:
Автор: Andrey Emelyanov