2017.06.14 17:38
#1
Это часто бывает из-за антивируса — он долго проверяет exe файл тестера перед запуском и в результате терминал не успевает дождаться запуска тестера.
Попробуйте поставить в режим пропуска metatester[64].exe в антивирусе и попробуйте.
2017.06.16 13:29
#2
У меня антивируса нет. Только родной виндозный дефендер. И оба файла (terminal64.exe и metatester64.exe) давно добавлены в исключения (Settings — Excluded files and locations). К сожалению, это не помогает.
Они же добавлены в Excluded processes.
Эта фигня появляется даже тогда, когда отключено real-time protection у Microsoft Defender.
2017.06.16 13:44
#3
igorbel:
У меня антивируса нет. Только родной виндозный дефендер. И оба файла (terminal64.exe и metatester64.exe) давно добавлены в исключения (Settings — Excluded files and locations). К сожалению, это не помогает.
Они же добавлены в Excluded processes.
Эта фигня появляется даже тогда, когда отключено real-time protection у Microsoft Defender.
У меня Касперский — ранее я добавил в исключение AppData с терминалами, а день назад добавил сами терминалы (из ProgramFiles) — теперь можно запускать тестирование прямо из MetaEditor’a при этом сам терминал запустится и тест запускается с первой попытке. Ранее обязательным условием было предварительная загрузка терминала, а теперь это не обязательно — так как терминал запустится и запустит тест с первого пинка.
2017.06.16 14:34
#4
Vladimir Karputov:
У меня Касперский — ранее я добавил в исключение AppData с терминалами, а день назад добавил сами терминалы (из ProgramFiles) — теперь можно запускать тестирование прямо из MetaEditor’a при этом сам терминал запустится и тест запускается с первой попытке. Ранее обязательным условием было предварительная загрузка терминала, а теперь это не обязательно — так как терминал запустится и запустит тест с первого пинка.
У меня всё в режиме portable запускается, поэтому про AppData и не думаю…
2020.03.21 05:10
#6
та же ошибка на последнем релизе 2363
до кучи … антивирус только виндовый и он отключен …
2021.09.24 11:11
#7
Build 3042. 2021.09.24 14:08:24.856 Core 1 tester agent authorization error
В субботу не работало, спустя 2 часа мучений, поменял сервер — все заработало.
В понедельник проверял все работало.
Сегодня в пятницу, ну ни в какую, как бы не менял, чтобы не делал, не работает.
Содержание
- Не могу авторизовать тестер
- tester agent authorization error
- Discussion of article «Using MetaTrader 5 Indicators with ENCOG Machine Learning Framework for Timeseries Prediction» — page 2
- Expert advisor doesn’t open any trades in strategy testing
- Errors, bugs, questions — page 2087
Не могу авторизовать тестер
Что-то тестер МТ5 после обновлений не включается — требует авторизацию. раньше вроде автоматически все срабатывало.
Что-то тестер МТ5 после обновлений не включается — требует авторизацию. раньше вроде автоматически все срабатывало.
А агенты часом не заняты? (в диспетчера задач Windows 10 убейте процессы-агенты).
А агенты часом не заняты? (в диспетчера задач Windows 10 убейте процессы-агенты).
Не помогает — все убилось вместе с тестером. символ пары проставлен, а в тестере почему-то не выходит. может изз-за этого. как его туда проставить-загнать.
Не помогает — все убилось вместе с тестером. символ пары проставлен, а в тестере почему-то не выходит. может изз-за этого. как его туда проставить-загнать.
В журнале тестера пишет.
что делать, кто подскажет, как найти связь терминала с тестером.
Что-то тестер МТ5 после обновлений не включается — требует авторизацию. раньше вроде автоматически все срабатывало.
Билд терминала и агентов 1816? Windows 10? Разрядность x64?
Билд терминала и агентов 1816? Windows 10? Разрядность x64?
Да, 1816, Windows 10, Разрядность x64 — всё так, но не идет. блин бился бился все выходные все перегружал-переуставлял — ничего не получается — плюнул, решил что косяк не мой — баг какой-то. жду нового обновления.
Источник
Это часто бывает из-за антивируса — он долго проверяет exe файл тестера перед запуском и в результате терминал не успевает дождаться запуска тестера.
Попробуйте поставить в режим пропуска metatester[64].exe в антивирусе и попробуйте.
У меня антивируса нет. Только родной виндозный дефендер. И оба файла (terminal64.exe и metatester64.exe) давно добавлены в исключения (Settings — Excluded files and locations). К сожалению, это не помогает.
Они же добавлены в Excluded processes.
Эта фигня появляется даже тогда, когда отключено real-time protection у Microsoft Defender.
У меня антивируса нет. Только родной виндозный дефендер. И оба файла (terminal64.exe и metatester64.exe) давно добавлены в исключения (Settings — Excluded files and locations). К сожалению, это не помогает.
Они же добавлены в Excluded processes.
Эта фигня появляется даже тогда, когда отключено real-time protection у Microsoft Defender.
У меня Касперский — ранее я добавил в исключение AppData с терминалами, а день назад добавил сами терминалы (из ProgramFiles) — теперь можно запускать тестирование прямо из MetaEditor’a при этом сам терминал запустится и тест запускается с первой попытке. Ранее обязательным условием было предварительная загрузка терминала, а теперь это не обязательно — так как терминал запустится и запустит тест с первого пинка.
Vladimir Karputov :
У меня Касперский — ранее я добавил в исключение AppData с терминалами, а день назад добавил сами терминалы (из ProgramFiles) — теперь можно запускать тестирование прямо из MetaEditor’a при этом сам терминал запустится и тест запускается с первой попытке. Ранее обязательным условием было предварительная загрузка терминала, а теперь это не обязательно — так как терминал запустится и запустит тест с первого пинка.
У меня всё в режиме portable запускается, поэтому про AppData и не думаю.
та же ошибка на последнем релизе 2363
до кучи . антивирус только виндовый и он отключен .
Build 3042. 2021.09.24 14:08:24.856 Core 1 tester agent authorization error
В субботу не работало, спустя 2 часа мучений, поменял сервер — все заработало.
В понедельник проверял все работало.
Сегодня в пятницу, ну ни в какую, как бы не менял, чтобы не делал, не работает.
- Бесплатные приложения для трейдинга
- Форексный VPS бесплатно на 24 часа
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Источник
Discussion of article «Using MetaTrader 5 Indicators with ENCOG Machine Learning Framework for Timeseries Prediction» — page 2
But the indicator is not drawing, though when using the print function, it returns the value. (I am still working on it to figure out why its not drawing !)
Found the solution, it needs some time to calculate and draw, figured it out when I notice the heavy use of my Cpu.
Thanks for this code.
I have a problem a the end of the execution. I otain this error in the log :
2011.05.06 14:49:05 Core 1 2010.11.05 21:56:08 Unhandled exception 0xE0434F4D
2011.05.06 14:49:05 Core 1 2010.11.05 21:56:08 C:Program FilesMetaTrader 5TesterAgent-127.0.0.1-3000MQL5Filesstep5_network.eg
The dll’s are correctly placed and I don’t see what i missed.
Anyone can help me ?
jrbr :
Thanks for this code.
I have a problem a the end of the execution. I otain this error in the log :
2011.05.06 14:49:05 Core 1 2010.11.05 21:56:08 Unhandled exception 0xE0434F4D
2011.05.06 14:49:05 Core 1 2010.11.05 21:56:08 C:Program FilesMetaTrader 5TesterAgent-127.0.0.1-3000MQL5Filesstep5_network.eg
The dll’s are correctly placed and I don’t see what i missed.
Anyone can help me ?
I am too have this problem :
I installed C sharp and my problem solved:)
Try to change Decimal symbol to «.» instead of «,» in Control Panel->Region and Language->Additional settings.
I want change this article indicators(stoch and william R%) to my needed indicators ,
I have 2 question : how training my new file?
I maked mt5export.cvs by new data (from my new indicators and currency and timeframe ) but i dont know how make other files .
my encog workbench not openned step5_network.eg file and report error :
We are very sorry but an unexpected error has occured.
Would you consider sending this information to us?
No personal information will be transmitted, just what you see below.
This information is very useful to us to make Encog a better program.
Encog Version: 2.5.3
Encog Workbench Version: 2.5.3
Java Version: 1.6.0_25
Java Vendor: Sun Microsystems Inc.
OS Name: Windows XP
jrbr :
Thanks for this code.
I have a problem a the end of the execution. I otain this error in the log :
2011.05.06 14:49:05 Core 1 2010.11.05 21:56:08 Unhandled exception 0xE0434F4D
2011.05.06 14:49:05 Core 1 2010.11.05 21:56:08 C:Program FilesMetaTrader 5TesterAgent-127.0.0.1-3000MQL5Filesstep5_network.eg
The dll’s are correctly placed and I don’t see what i missed.
Anyone can help me ?
I am also having this problem . . I do have C# installed and vs2008 . has any one else solved it in a different way?
Thanks for sharing this technique. However, can’t get it going.
Files placed in:
C:Program FilesMetaTrader 5Cloo.dll
C:Program FilesMetaTrader 5encog-core-cs.dll
C:Program FilesMetaTrader 5log4net.dll
Indicators placed in:
C:Program FilesMetaTrader 5MQL5Indicators
Created «Files» folder in tester, ie. C:Program FilesMetaTrader 5TesterAgent-127.0.0.1-3000Files
Placed EncogNNTrainDLL.dll in
C:Program FilesMetaTrader 5TesterAgent-127.0.0.1-3000MQL5Libraries and
C:Program FilesMetaTrader 5MQL5Libraries
2011.10.10 19:45:21 Core 1 connection closed
2011.10.10 19:45:21 Core 1 disconnected
2011.10.10 19:45:21 Core 1 tester agent authorization error
2011.10.10 19:45:09 Core 1 connected
2011.10.10 19:45:09 Core 1 connecting to 127.0.0.1:3000
Don’t know what is going on now. All tester agents had been disabled and only allow Local agent.
Anyone found a solution to this?
Forget the authorization error. Solved it by uninstall and re-install. Also made compatibility to XP SP3, under windows 7. The compatibility was done since clicking MetaTrader from the start menu won’t allow me to see the EA created, but clicking MetaTrader from within MetaEditor allow me to see the EA from within MetaTrader. Wierd.
Источник
Expert advisor doesn’t open any trades in strategy testing
Dear fellow traders,
I am pretty new to MQL5. Therefor I studied this article and expert advisor for beginners: https://www.mql5.com/en/articles/35
It has a really nice expert advisor and I would like to adjust/work with it in the future. Then I installed the expert advisor into my strategy tester to see it perform but nothing happens. I am really confused..
does anybody has a clue why it won’t execute any trades? Thanks in advanced!
Dear fellow traders,
I am pretty new to MQL5. Therefor I studied this article and expert advisor for beginners: https://www.mql5.com/en/articles/35
It has a really nice expert advisor and I would like to adjust/work with it in the future. Then I installed the expert advisor into my strategy tester to see it perform but nothing happens. I am really confused..
does anybody has a clue why it won’t execute any trades? Thanks in advanced!
Did you get any message in the Journal tab ?
Which settings are you using for the Strategy Tester ?
Did you get any message in the Journal tab ?
Which settings are you using for the Strategy Tester ?
When I look at my journal it says: tester agent authorization error
Does that mean that I am not allowed to use this expert advisor.
When I look at my journal it says: tester agent authorization error
Does that mean that I am not allowed to use this expert advisor.
Did you try to download the code below the article and compile it as is?
I see the expert calls for a custom indicator.
Did you also make sure to compile the called hCI indicator ?
Any printscreen and/or code will help us to help you.
The way this is going, it will take too much time to help you.
Dear fellow traders,
I am pretty new to MQL5. Therefor I studied this article and expert advisor for beginners: https://www.mql5.com/en/articles/35
It has a really nice expert advisor and I would like to adjust/work with it in the future. Then I installed the expert advisor into my strategy tester to see it perform but nothing happens. I am really confused..
does anybody has a clue why it won’t execute any trades? Thanks in advanced!
There could be many reason, I guess. However my situation is similar and the problem with my code is «for(i=1;i
Thanks for all your replys!
I made a stupid mistake. I didn’t downloaded the indicator because I thought I only need the expert advisor! Once I downloaded the indicator and compiled the expert advisor works great!
Источник
Errors, bugs, questions — page 2087
It needs to look at the moment when problems occur, because local agent logs are cleaned automatically. And the terminal can clean up dead agents.
But if it didn’t even get through in 18 seconds, then the port didn’t even open.
Yeah, it’s like it didn’t get through at all.
Probably not and it’s active. Add the entire directory with the agent explicitly to «skippable directories» and try again.
Another reason could be lack of rights to open network port.
Is UAC enabled? Try to reproduce after starting the terminal «as Administrator».
Everything is disabled, running under Administrators in portable mode. CTRL+F5 does not work the first startup. If I use «Start» button, it works. And after that CTRL+F5 works fine. I.e. the cause is not external.
Yeah, it’s like it didn’t get through at all.
Everything is off, running under Administrators in portable mode. CTRL+F5 first start does not work. If I use «Start» button, it works. And after that CTRL+F5 works fine. I.e. the cause is not external.
Let’s check Ctrl+F5 start.
Re-run works because most likely agent is active after first call and hangs in the background for a few minutes activated waiting for next task.
Look at the delay — 18 seconds between attempting to connect and dropping out. This indicates a network connection timeout.
This is usually a slow start-up and initialisation of an exe application supervised by an antivirus.
We have encountered this many times and there is nothing we can do about it. The antivirus simply spends a lot of time analyzing the tester agent.
This also means that all of the agent’s file activity will be examined under a magnifying glass and mercilessly slowed down.
A tip is to put the agent and its local directories in the antivirus pass. This will immediately make everything work faster.
Let’s check Ctrl+F5 startup.
In ME, the EA stays in Debugging mode after these errors (and in other cases). The Expert Advisor is not even launched. I have to press SHIFT+F5 one more time.
Bug in the MT5 v .1643 tester.
When using » for (int i=0 ; (i -1 && ! IsStopped ()); i++ )» for the dynamic array with flag «ArraySetAsSeries(_Massiv,true);» in the tester, the drawing on the chart occurs only from the candle with index 1 instead of 0 (the loop works from index 0). We used modes » All ticks», «Every tick based on real ticks» .
When using the indicator in normal mode (not a tester), it is drawn from 0 index.
Can I see a screenshot of the overlaps?
In the signals, the «Balance» chart lags behind the «Funds» chart — is this the intention?
The graphs are not plotted in real time, lags within minutes are acceptable
The graphs are not plotted in real time, lags within minutes are acceptable
I’m just talking about asynchronisation.
optimization is running but not going, hangs.
in the logs at the moment:
2017.12.11 14:16:31.653 Tester EURUSD: ticks data begins from 2015.01.02 00:00
2017.12.11 14:16:31.654 Tester genetic optimization started
2017.12.11 14:16:31.654 Tester size of initial task batch is 64
2017.12.11 14:16:31.729 Core 1 connecting to 127.0.0.1:3000
2017.12.11 14:16:31.737 Core 2 connecting to 127.0.0.1:3001
2017.12.11 14:16:31.737 Core 1 connected
2017.12.11 14:16:31.737 Core 3 connecting to 127.0.0.1:3002
2017.12.11 14:16:31.737 Core 2 connected
2017.12.11 14:16:31.737 Core 3 connected
2017.12.11 14:16:31.738 Core 4 connecting to 127.0.0.1:3003
2017.12.11 14:16:31.739 Core 4 connected
2017.12.11 14:16:31.742 Core 1 authorized (agent build 1702)
2017.12.11 14:16:31.742 Core 3 authorized (agent build 1702)
2017.12.11 14:16:31.742 Core 1 genetic pass (0, 0, 1) started
2017.12.11 14:16:31.742 Core 3 genetic pass (0, 1, 1) started
2017.12.11 14:16:31.744 Core 2 authorized (agent build 1702)
2017.12.11 14:16:31.744 Core 2 genetic pass (0, 2, 1) started
2017.12.11 14:16:31.748 Core 4 authorized (agent build 1702)
2017.12.11 14:16:31.748 Core 4 genetic pass (0, 3, 1) started
2017.12.11 14:16:31.775 Core 1 common synchronization completed
2017.12.11 14:16:31.786 Core 3 common synchronization completed
2017.12.11 14:16:31.787 Core 2 common synchronization completed
2017.12.11 14:16:31.810 Core 4 common synchronization completed
2017.12.11 14:16:32.015 Core 3 EURUSD: ticks synchronized already [43 bytes]
2017.12.11 14:16:32.172 Core 1 EURUSD: ticks synchronized already [43 bytes]
2017.12.11 14:16:32.369 Core 2 EURUSD: ticks synchronized already [43 bytes]
2017.12.11 14:16:32.638 Core 4 EURUSD: ticks synchronized already [43 bytes]
2017.12.11 10:00:22.107 Terminal Windows 10 (Build 15063), x64 based PC, IE 11.00, UAC, Intel Core i5-2500 @ 3.30GHz, RAM: 4258 / 7656 Mb, HDD: 68913 / 249998 Mb, GMT+05:00
Источник
Тестирование и оптимизация советников проводится с помощью так называемых агентов — специальных сервисов, которые устанавливаются на компьютере и осуществляют вычисления. Существуют локальные и внешние (удаленные) агенты.
Локальные агенты создаются автоматически на компьютере, где установлен сама торговая платформа. Количество локальных агентов соответствует количеству логических ядер процессора.
Удаленный агент — это специальный сервис, устанавливаемый на компьютере и используемый для тестирования и оптимизации советников в тестере стратегий. Такие агенты могут быть подключены к платформе в неограниченном количестве. Это значительно ускоряет оптимизацию стратегий, так как каждый прогон выполняется как отдельный процесс на отдельном агенте. Процесс подключения внешних агентов к тестеру стратегий описан в отдельном разделе.
- Удаленные агенты могут быть включены в глобальную сеть облачных вычислений MQL5 Cloud Network.
- Удаленные агенты можно использовать только в 64-битных системах.
Удаленные агенты устанавливаются как отдельные сервисы в операционной системе при помощи специального приложения «metatester.exe», расположенного в папке установки торговой платформы.
Для экономии трафика и дискового пространства, а также из соображений безопасности на удаленных агентах:
- в журнал не выводятся сообщения советников (функция Print()), а также сообщения о торговых операциях;
- запрещен вызов DLL.
Структура каталогов и файлов #
Для хранения служебной информации «MetaTester» создает каталог «Tester» в той директории, где находится само приложение. Он содержит следующие папки и файлы:
Папки и файлы |
Описание |
Подпапки |
Описание |
---|---|---|---|
Agent-IP-address-port |
Данные папки создаются для каждого агента. В названии папки указывается IP-адрес и номер порта, на которых работает агент. |
logs |
В данной папке хранятся записи журнала работы агента. |
bases |
В данной папке хранятся исторические данные, используемые агентом. |
||
Manager |
Данный каталог содержит записи журнала компонента MetaTester. |
Записи журналов агентов автоматически удаляются по прошествии двух дней или при достижении размера в 1 гигабайт.
Работа с MetaTester #
Чтобы предоставить вычислительные мощности компьютера торговой платформе по любой сети — локальной или интернет, установите удаленные агенты. Для установки и управления агентами используется специальная утилита «MetaTester». Она входит в стандартную комплектацию торговой платформы. Запустите файл «metatester.exe» из каталога установки платформы.
- Агенты тестирования могут быть установлены на любом компьютере отдельно от торговой платформы. Для этого скопируйте на него файл «metatester64.exe» и запустите его. Установка служебных файлов и каталогов агентов происходит в папку, где расположено само приложение «MetaTester». Файл «metatester64.exe» одновременно является и установочным, и исполняемым файлом, необходимым для работы агентов и управления ими.
- Агенты можно устанавливать и использовать только в 64-битных системах.
Окно приложения «MetaTester» состоит из нескольких вкладок:
- Обзор
- Службы
- MQL5 Cloud Network
- Расписание
Обзор #
На данной вкладке отображается полезная информация об использовании агентов. Также здесь отображаются статистические данные по количеству тестов, проведенных с помощью агентов, а также времени, затраченному на них. Статистика приводится по двум режимам работы агентов:
- Локальная статистика
В локальном режиме агенты используются как службы, установленные на компьютере, подключение к которым осуществляется по заданному адресу и паролю. - Статистика по MQL5 Cloud Network
В данном режиме работы агенты работают в составе специализированной сети MQL5 Cloud Network.
В случае, если пользователь не подключен к сети MQL5 Cloud Network, на данной вкладке появляется опция «Join MQL5 Cloud Network», с помощью которой можно разрешить использование своих агентов в данной сети. Она аналогична опции «Allow public use of agents» на соответствующей вкладке.
Службы #
Данная вкладка предназначена для управления агентами на компьютере. Чтобы установить агенты тестирования, укажите:
- Agents — количество агентов, которое необходимо установить. Рекомендуется устанавливать столько агентов, сколько логических ядер у процессора компьютера.
- Password — пароль для подключения к агентам. Данный пароль необходимо указывать при добавлении агентов в тестере стратегий.
- TCP Ports — диапазон портов (или один порт при установке одного агента), на которых будут работать агенты. Номер порта также указывается при подключении к агентам из тестера стратегий.
Для установки агентов нажмите Add. Агенты устанавливаются на IP-адресе, указанном в верхней части вкладки. Используйте этот адрес для подключения к ним.
Для установки и управления агентами пользователь должен обладать администраторскими правами в системе.
Ниже отображается список уже установленных агентов:
- Служба — название службы, под которой запущен агент в операционной системе, данное название присваивается автоматически.
- Порт — номер порта, на котором работает агент.
- Проходов — количество проходов тестирования, выполненных агентом.
- Входящий/исходящий трафик — объем входящего и исходящего трафика агента.
- Облако — состояние подключения к сети. Данный параметр позволяет легко удостовериться, что агенты могут получать задания из сети облачных вычислений.
- Состояние — текущее состояние агента: запущен, остановлен.
Контекстное меню
Управлять установленными агентами можно при помощи команд контекстного меню:
При закрытии окна MetaTester запущенные агенты не останавливаются. Для остановки агента выполните соответствующую команду в его контекстном меню.
MQL5 Cloud Network #
MQL5 Cloud Network — специальная система, призванная объединить удаленные агенты в единую сеть облачных вычислений. Ее ключевыми достоинствами являются:
- Возможность предоставления собственных и использования сторонних вычислительных мощностей как на бесплатной, так и на коммерческой основе.
- Отсутствие необходимости сложной сетевой настройки доступа к агентам — MetaTester и сеть MQL5 Cloud Network самостоятельно организуют доступ и распределяют поступающие задачи между агентами.
- Удобное управление агентами через профиль пользователя на MQL5.community.
На вкладке присутствует опция для управления участием в распределенной вычислительной сети MQL5 Cloud Network: Продавать мощности своих агентов через аккаунт MQL5.community.
При включении данной опции пользователь разрешает использовать свои удаленные агенты через MQL5 Cloud Network. Каждая служба агента будет доступна в сети в соответствии с заданным расписанием.
При подключении к сети MQL5 Cloud Network агент остается доступным для обычных удаленных подключений через IP-адрес и пароль.
Чтобы предоставлять вычислительные мощности агентов за деньги, укажите ваш аккаунт MQL5.community в соответствующем поле. Денежные средства за использование агентов другими пользователями будут начисляться на указанный счет через внутреннюю платежную систему MQL5.community.
Если у вас нет аккаунта, можно его создать, нажав кнопку «Register a new MQL5.community account…».
- Необходимо аккуратно указывать действующий аккаунт, иначе службы агентов будут предоставляться другим пользователям бесплатно.
- Просмотреть доступность агентов в сети, а также управлять ими можно на вкладке «Агенты» в профиле пользователя MQL5.community.
Расписание #
При помощи данной вкладки можно установить расписание, в соответствии с которым удаленным агенты будут доступны в сети MQL5 Cloud Network.
Синим цветом помечаются часы, в которые агенты будут доступны, светлым — в которые недоступны. Для переключения между рабочим и нерабочим часом нажмите на соответствующем квадрате. Для переключения всех часов определенного дня нажмите на звездочку в конце строки.
Данное расписание не влияет на доступность агентов для обычного удаленного подключения через IP-адрес и пароль.
Консольные команды #
Для работы с удаленными агентами через командную строку используются консольные команды файла «metatester.exe»:
- /install /address:адрес:порт /password:пароль — установить агента на указанном IP-адресе и порт с указанным паролем. Например, metatester.exe /install /address:192.168.0.1:1950 /password:gj1sfj;
- /uninstall /address:адрес:порт — удалить агента, установленного на указанном IP-адресе и порту;
- /start /address:адрес:порт — запустить службу агента, установленного на указанном IP-адресе и порту;
- /stop /address:адрес:порт — остановить службу агента, установленного на указанном IP-адресе и порту;
- /restart /address:адрес:порт — перезапустить службу агента, установленного на указанном IP-адресе и порту;
- /help — показать помощь по консольным командам.
Также, чтобы удалить агента через командную строку, можно выполнить следующие команды:
- sc stop «имя агента« (данное действие необходимо выполнить, если агент запущен);
- sc delete «имя агента«.
Например, чтобы удалить остановленного агента с именем «MetaTester-1», достаточно выполнить следующую команду:
sc delete «MetaTester-1»
26 комментариев
- 22 октября 2018, 09:41
- Ответить
Смени пароль и сертификат и переустанови платформу )все норм будет
- 22 октября 2018, 09:43
- Ответить
Осипов Александр, Квик наше всё. Стабильно работает годами.
- 22 октября 2018, 12:20
- Ответить
- 22 октября 2018, 09:44
- Ответить
Таже проблема, началось в пятницу ближе к вечеру.
Причем на сервере VDS расположенный в Украине, все ок. Видимо сегодня через него буду.
- 22 октября 2018, 09:53
- Ответить
Помогло удаление файлов новостей.
Находится в BASESOPEN-BROKERNEWS. Вроде ещё файлы почты тоже почистил.
- 22 октября 2018, 09:53
- Ответить
vladimirc1983, Спасибо. помогло
- 22 октября 2018, 09:58
- Ответить
vladimirc1983, Круто, спасибо большое!!! А то начал индикаторы удалять и следующим был бы шаг удаления mt5. Вовремя сюда зашел =)
- 22 октября 2018, 10:10
- Ответить
vladimirc1983, попробую! Если повторится.
- 22 октября 2018, 10:11
- Ответить
vladimirc1983, но терминал просто тупо висит и ни в какие закладки типа журнал, новости, почта и т.д. заходить не дает.
Можно чуть поподробнее для чайников)))
- 22 октября 2018, 10:30
- Ответить
Анатолий Батухин, нужно найти директорию, куда установлен у тебя MT5, и в ней уже зайти в BASESOPEN-BROKERNEWS и почикать там все файлы. Терминал, при этом, должен быть закрыт.
- 22 октября 2018, 10:37
- Ответить
vladimirc1983, ок, спасибо, сейчас попробуем.
- 22 октября 2018, 10:44
- Ответить
vladimirc1983, у меня папки News нет… папку с почтой подчистил но не запускается… News найти бы
- 22 октября 2018, 11:45
- Ответить
МихаилРостовПапа, зайди не в default, а в open-broker
- 22 октября 2018, 12:04
- Ответить
vladimirc1983, да вроде нет такого файла- open-broker
- 22 октября 2018, 12:13
- Ответить
МихаилРостовПапа, C:Usersтвой_логинAppDataRoamingMetaQuotesTerminal вот здесь глянь? Есть что-то?
- 22 октября 2018, 12:56
- Ответить
vladimirc1983, спасибо… . Оживил.
- 22 октября 2018, 14:55
- Ответить
Сделал переустановку с пересозданием сертификата — заработало. Но какого черта происходит?
- 22 октября 2018, 09:58
- Ответить
Friendly Deep Space, добрый день! Действительно, нестабильная работа MT5 наблюдается у некоторых наших клиентов, проблема связана с обновлением ПО разработчиком. Рекомендуется переустановить торговое приложение и осуществить восстановление пароля в ЛК.
- 22 октября 2018, 11:36
- Ответить
Пользуясь случаем спрошу, а в мобильном терминале объёмы по Сберу у всех корректно показывает? У меня постоянно последняя ТЕКУЩАЯ свеча имеет зашкаливающий объём, из-за чего не видно остальные объёмы. После закрытия свечки ей присваивается нормальный объём. Такое только по сберу. Пробовал на разных телефонах — везде хрень такая
- 22 октября 2018, 10:04
- Ответить
И еще, после переустановки, если не менять сертификат, и он сохранен в системе — то терминал пароль к нему уже не спрашивает. Логика?
- 22 октября 2018, 10:11
- Ответить
Мда. Вот за что я люблю старый Квик— пердит, но работает!
- 22 октября 2018, 10:40
- Ответить
alex, тогда смотри вот здесь C:Usersтвой_логинAppDataRoamingMetaQuotesTerminal там в одной из папок твой терминал, и там есть BASES, а далее, как я описал.
- 22 октября 2018, 10:51
- Ответить
В квике сегодня очень очень сильные тормоза у Открытие Брокер
Сервер 3, Сервер 1.
более менее работает только если отключить всё вообще и оставить пару фьючерсов. Совсем не дело.
серверный канал забит чтоли?
- 22 октября 2018, 17:58
- Ответить
Все приказы на совершение торговых операций отправляются в виде структуры торгового запроса MqlTradeRequest с помощью функции OrderSend(). Результат выполнения этой функции помещается в структуру MqlTradeResult, поле retcode которой содержит код возврата торгового сервера.
10004 |
TRADE_RETCODE_REQUOTE |
Реквота |
10006 |
TRADE_RETCODE_REJECT |
Запрос отклонен |
10007 |
TRADE_RETCODE_CANCEL |
Запрос отменен трейдером |
10008 |
TRADE_RETCODE_PLACED |
Ордер размещен |
10009 |
TRADE_RETCODE_DONE |
Заявка выполнена |
10010 |
TRADE_RETCODE_DONE_PARTIAL |
Заявка выполнена частично |
10011 |
TRADE_RETCODE_ERROR |
Ошибка обработки запроса |
10012 |
TRADE_RETCODE_TIMEOUT |
Запрос отменен по истечению времени |
10013 |
TRADE_RETCODE_INVALID |
Неправильный запрос |
10014 |
TRADE_RETCODE_INVALID_VOLUME |
Неправильный объем в запросе |
10015 |
TRADE_RETCODE_INVALID_PRICE |
Неправильная цена в запросе |
10016 |
TRADE_RETCODE_INVALID_STOPS |
Неправильные стопы в запросе |
10017 |
TRADE_RETCODE_TRADE_DISABLED |
Торговля запрещена |
10018 |
TRADE_RETCODE_MARKET_CLOSED |
Рынок закрыт |
10019 |
TRADE_RETCODE_NO_MONEY |
Нет достаточных денежных средств для выполнения запроса |
10020 |
TRADE_RETCODE_PRICE_CHANGED |
Цены изменились |
10021 |
TRADE_RETCODE_PRICE_OFF |
Отсутствуют котировки для обработки запроса |
10022 |
TRADE_RETCODE_INVALID_EXPIRATION |
Неверная дата истечения ордера в запросе |
10023 |
TRADE_RETCODE_ORDER_CHANGED |
Состояние ордера изменилось |
10024 |
TRADE_RETCODE_TOO_MANY_REQUESTS |
Слишком частые запросы |
10025 |
TRADE_RETCODE_NO_CHANGES |
В запросе нет изменений |
10026 |
TRADE_RETCODE_SERVER_DISABLES_AT |
Автотрейдинг запрещен сервером |
10027 |
TRADE_RETCODE_CLIENT_DISABLES_AT |
Автотрейдинг запрещен клиентским терминалом |
10028 |
TRADE_RETCODE_LOCKED |
Запрос заблокирован для обработки |
10029 |
TRADE_RETCODE_FROZEN |
Ордер или позиция заморожены |
10030 |
TRADE_RETCODE_INVALID_FILL |
Указан неподдерживаемый тип исполнения ордера по остатку |
10031 |
TRADE_RETCODE_CONNECTION |
Нет соединения с торговым сервером |
10032 |
TRADE_RETCODE_ONLY_REAL |
Операция разрешена только для реальных счетов |
10033 |
TRADE_RETCODE_LIMIT_ORDERS |
Достигнут лимит на количество отложенных ордеров |
10034 |
TRADE_RETCODE_LIMIT_VOLUME |
Достигнут лимит на объем ордеров и позиций для данного символа |
10035 |
TRADE_RETCODE_INVALID_ORDER |
Неверный или запрещённый тип ордера |
10036 |
TRADE_RETCODE_POSITION_CLOSED |
Позиция с указанным POSITION_IDENTIFIER уже закрыта |
10038 |
TRADE_RETCODE_INVALID_CLOSE_VOLUME |
Закрываемый объем превышает текущий объем позиции |
10039 |
TRADE_RETCODE_CLOSE_ORDER_EXIST |
Для указанной позиции уже есть ордер на закрытие. Может возникнуть при работе в системе хеджинга:
|
10040 |
TRADE_RETCODE_LIMIT_POSITIONS |
Количество открытых позиций, которое можно одновременно иметь на счете, может быть ограничено настройками сервера. При достижении лимита в ответ на выставление ордера сервер вернет ошибку TRADE_RETCODE_LIMIT_POSITIONS. Ограничение работает по-разному в зависимости от типа учета позиций на счете:
|
10041 |
TRADE_RETCODE_REJECT_CANCEL |
Запрос на активацию отложенного ордера отклонен, а сам ордер отменен |
10042 |
TRADE_RETCODE_LONG_ONLY |
Запрос отклонен, так как на символе установлено правило «Разрешены только длинные позиции» (POSITION_TYPE_BUY) |
10043 |
TRADE_RETCODE_SHORT_ONLY |
Запрос отклонен, так как на символе установлено правило «Разрешены только короткие позиции» (POSITION_TYPE_SELL) |
10044 |
TRADE_RETCODE_CLOSE_ONLY |
Запрос отклонен, так как на символе установлено правило «Разрешено только закрывать существующие позиции« |
Предупреждения компилятора носят информационный характер и не являются сообщениями об ошибках.
21 |
Неполная запись даты в строке datetime |
22 |
Ошибочные числа в строке datetime для даты, требования: год 1970<=X<=3000 месяц 0<X<=12 день 0<X<= 31/30/28(29)…. |
23 |
Ошибочные числа в строке datetime для времени, требования: час 0<=X<24 минута 0<=X<60 |
24 |
Некорректный цвет в формате RGB: одна из компонент RGB меньше 0 или больше 255 |
25 |
Неизвестный символ эскейп последовательности. Известные: n r t \ » ’ X x |
26 |
Слишком большой объем локальных переменных (>512кб) функции, уменьшите их количество |
29 |
Перечисление уже определено (дублирование) – члены будут добавлены к первому определению |
30 |
Переопределение макроса |
31 |
Переменная объявлена, но нигде не используется |
32 |
Конструктор должен иметь тип void |
33 |
Деструктор должен иметь тип void |
34 |
Константа не вмещается в диапазон целых (X>_UI64_MAX || X<_I64_MIN) и будет преобразована в тип double |
35 |
Слишком длинный HEX больше 16 значащих символов (обрезаются старшие полубайты) |
36 |
Нет ни одного полубайта в HEX строке «0x» |
37 |
Нет ни одной функции — нечего будет выполнять |
38 |
Используется неинициализированная переменная |
41 |
Функция не имеет тела, но и не вызывается |
43 |
Возможны потери данных при преобразовании типа. Пример: int x=(double)z; |
44 |
Потеря точности(данных) при преобразовании константы. Пример: int x=M_PI |
45 |
Несовпадение знаков операндов в операциях сравнения. Пример: (char)c1>(uchar)c2 |
46 |
Проблемы с импортом функций – требуется объявление #import либо импорт функций уже закрыт |
47 |
Описание слишком большое – лишние символы не будут включены в исполняемый файл |
48 |
Количество индикаторных буферов объявлено меньше, чем требуется |
49 |
Не указан цвет для отрисовки графической серии в индикаторе |
50 |
Нет ни одной графической серии для отображения индикатора |
51 |
Не обнаружена функция-обработчик ‘OnStart» в скрипте |
52 |
Функция-обработчик ‘OnStart» определена с неверными параметрами |
53 |
Функция ‘OnStart’ может быть определена только в скрипте |
54 |
Функция ‘OnInit’ определена с неверными параметрами |
55 |
Функция ‘OnInit’ не используется в скриптах |
56 |
Функция ‘OnDeinit’ определена с неверными параметрами |
57 |
Функция ‘OnDeinit’ не используется в скриптах |
58 |
Определены две функции ‘OnCalculate’. Будет использована OnCalculate() на одном ценовом массиве |
59 |
Обнаружено переполнение при вычислении сложной целочисленной константы |
60 |
Возможно, переменная неинициализирована. |
61 |
Данное объявление делает недоступным обращение к локальной переменной, объявленной на указанной строке |
62 |
Данное объявление делает недоступным обращение к глобальной переменной, объявленной на указанной строке |
63 |
Не может быть использовано для статических массивов |
64 |
Данное объявление делает недоступным обращение к предопределенной переменной |
65 |
Значение выражения всегда true/false |
66 |
Использование переменной или выражения типа bool в математических операциях является небезопасным |
67 |
Результат применения оператора унарного минуса к беззнаковому типу ulong неопределен |
68 |
Версия, указанная в свойстве #property version, недопустима для размещения в разделе Маркет, правильный формат #property version «XXX.YYY» |
69 |
Отсутствует выражение для выполнения по условию |
70 |
Неверный возвращаемый тип функции или некорректные параметры при объявлении функции-обработчика события |
71 |
Требуется явное приведение структур к одному типу |
72 |
Данное объявление делает недоступным прямое обращение к члену класса, объявленному на указанной строке. Доступ будет возможен только с помощью операции разрешения контекста :: |
73 |
Константа в двоичной записи слишком велика, старшие разряды будут отброшены |
74 |
Параметр в методе наследуемого класса отличается модификатором const, дочерняя функция перегрузила функцию родителя |
75 |
Отрицательное или слишком большое значения смещения в битовой операции сдвига, результат выполнения неопределён |
76 |
Функция должна вернуть значение |
77 |
Функция типа void не должна возвращать значение |
78 |
Не все варианты выполнения возвращают значение |
79 |
Выражения на глобальном уровне не разрешены |
80 |
Возможна ошибка в последовательности выполнения операций, используйте скобки для явного указания порядка |
81 |
Найдено два вида вызова OnCalCulate(). Вызываться будет вариант с использованием таймсерий OHLC |
82 |
Структура не содержит членов, размер будет приравнен 1 байту |
83 |
Нет обработки результата выполнения функции |
84 |
Индикатор, включаемый как ресурс, скомпилирован в режиме отладки. Это снижает его производительность. Для повышения скорости работы его нужно перекомпилировать |
85 |
Слишком большой код символа в строке, должен быть в диапазоне от 0 до 65535 |
86 |
Нераспознанный служебный символ в строке |
87 |
Не указано свойство индикатора, задающее вывод в главное окно или в отдельное подокно. Будет применено свойство #property indicator_chart_window |
MetaEdtior 5, редактор mql5-программ, выдает сообщения об ошибках программы, обнаруженных встроенным компилятором на стадии компиляции. Список этих ошибок приведен ниже в таблице. Для компиляции исходного кода в исполняемый нажмите F7. Программы с ошибками не могут быть скомпилированы, пока ошибки, указанные компилятором, не будут устранены.
100 |
Ошибка чтения файла |
101 |
Ошибка открытия *.EX5 файла для записи |
103 |
Недостаточно свободной памяти для завершения компиляции |
104 |
Нераспознанная компилятором пустая синтаксическая единица |
105 |
Некорректное имя файла в #include |
106 |
Ошибка доступа к файлу в #include (возможно файл не существует) |
108 |
Неподходящее имя для #define |
109 |
Неизвестная команда препроцессора (допустимы #include,#define,#property,#import) |
110 |
Неизвестный для компилятора символ |
111 |
Функция не реализована (описание есть, тела нет) |
112 |
Пропущена двойная кавычка («) |
113 |
Пропущена открывающая угловая скобка (<) или двойная кавычка («) |
114 |
Пропущена одинарная кавычка (‘) |
115 |
Пропущена закрывающая угловая скобка «>» |
116 |
Не указан тип в объявлении |
117 |
Нет оператора возврата return или имеется не во всех ветках выполнения |
118 |
Ожидалась открывающая скобка параметров вызова |
119 |
Ошибка записи EX5 |
120 |
Некорректный доступ к элементу массива |
121 |
Функция не имеет тип void и оператор return должен вернуть значение |
122 |
Некорректное объявление деструктора |
123 |
Отсутствует двоеточие «:» |
124 |
Переменная уже объявлена |
125 |
Переменная с таким идентификатором уже объявлена |
126 |
Имя переменной слишком длинное (>250 символов) |
127 |
Структура с таким идентификатором уже определена |
128 |
Структура не определена |
129 |
Член структуры с таким именем уже определен |
130 |
Нет такого члена структуры |
131 |
Нарушена парность квадратных скобок |
132 |
Ожидается открывающая круглая скобка «(« |
133 |
Несбалансированные фигурные скобки ( отсутствует «}» ) |
134 |
Сложно для компиляции (слишком большое ветвление, внутренний стек уровней переполнен) |
135 |
Ошибка открытия файла на чтение |
136 |
Недостаточно памяти для загрузки исходного файла в память |
137 |
Ожидается переменная |
138 |
Ссылка не может быть инициализирована |
140 |
Ожидалось присваивание (возникает при объявлении) |
141 |
Ожидается открывающая фигурная скобка «{« |
142 |
Параметр может быть только динамическим массивом |
143 |
Использование типа «void» недопустимо |
144 |
Нет пары для «)» или «]», т.е. отсутствует «(» или «[« |
145 |
Нет пары для «(» или «[«, т.е. отсутствует «)» или «]» |
146 |
Некорректная размерность массива |
147 |
Слишком много параметров (>64) |
149 |
Этот токен тут не ожидается |
150 |
Недопустимое использование операции (неправильные операнды) |
151 |
Выражение типа void недопустимо |
152 |
Ожидается оператор |
153 |
Неправильное использование break |
154 |
Ожидается точка с запятой «;» |
155 |
Ожидается запятая «,» |
156 |
Тип должен быть определен как класс, а не как структура |
157 |
Ожидалось выражение |
158 |
В HEX встречается «не HEX символ» или слишком длинное число (количество цифр > 511) |
159 |
Строка-константа имеет более 65534 символов |
160 |
Определение функции здесь недопустимо |
161 |
Неожиданный конец программы |
162 |
Форвардная декларация для структур запрещена |
163 |
Функция с таким именем уже определена и имеет иной тип возвращаемого значения |
164 |
Функция с таким именем уже определена и имеет иной набор параметров |
165 |
Функция с таким именем уже определена и реализована |
166 |
Перегрузка функции для данного вызова не найдена |
167 |
Функция с возвращаемым значением типа void не может возвращать значение |
168 |
Функция не определена |
170 |
Ожидается значение |
171 |
В выражении case допустимы только целочисленные константы |
172 |
Значение для case в этом switch уже использовано |
173 |
Ожидается целочисленное значение |
174 |
В выражении #import ожидается имя файла |
175 |
Выражения на глобальном уровне не допустимы |
176 |
Пропущена круглая скобка «)» перед «;» |
177 |
Слева от знака равенства предполагается переменная |
178 |
Результат выражения не используется |
179 |
Объявление переменных в case недопустимо |
180 |
Неявное преобразование из строки в число |
181 |
Неявное преобразование числа в строку |
182 |
Неоднозначный вызов перегруженной функции (подходят несколько перегрузок) |
183 |
Недопустимый else без соответствующего if |
184 |
Недопустимый case или default без соответствующего switch |
185 |
Недопустимое использование эллипсиса |
186 |
Инициализирующая последовательность имеет большее количество элементов чем инициализируемая переменная |
187 |
Ожидается константа для case |
188 |
Требуется константное выражение |
189 |
Константная переменная не может быть изменена |
190 |
Ожидается закрывающая скобка или запятая (объявление члена массива) |
191 |
Идентификатор перечисления уже используется |
192 |
Перечисление не может иметь модификаторов доступа (const, extern, static) |
193 |
Член перечисления уже объявлен с другим значением |
194 |
Существует переменная, определенная с таким же именем |
195 |
Существует структура, определенная с таким же именем |
196 |
Ожидается имя члена перечисления |
197 |
Ожидается целочисленное выражение |
198 |
Деление на ноль в константном выражении |
199 |
Неверное количество параметров в функции |
200 |
Параметром по ссылке должна быть переменная |
201 |
Ожидается переменная такого же типа для передачи по ссылке |
202 |
Константная переменная не может быть передана по неконстантной ссылке |
203 |
Требуется целочисленная положительная константа |
204 |
Ошибка доступа к защищенному члену класса |
205 |
Импорт уже определен по другому пути |
208 |
Исполняемый файл не создан |
209 |
Для индикатора не найдена точка входа ‘OnCalculate’ |
210 |
Оператор continue может быть использован только внутри цикла |
211 |
Ошибка доступа к private(закрытому) члену класса |
213 |
Метод структуры или класса не объявлен |
214 |
Ошибка доступа к private(закрытому) методу класса |
216 |
Копирование структур с объектами недопустимо |
218 |
Выход индекса за границы массива |
219 |
Недопустима инициализация массивов в объявлении структуры или класса |
220 |
Конструктор класса не может иметь параметров |
221 |
Деструктор класса не может иметь параметров |
222 |
Метод класса или структуры с таким именем и параметрами уже объявлен |
223 |
Ожидается операнд |
224 |
Метод класса или структуры с таким именем есть, но с другими параметрами (объявление!=реализация) |
225 |
Импортируемая функция не описана |
226 |
Функция ZeroMemory() не применима для классов с защищенными членами или наследованием |
227 |
Неоднозначный вызов перегруженной функции (точное совпадение параметров для нескольких перегрузок) |
228 |
Ожидается имя переменной |
229 |
Ссылку нельзя объявить в этом месте |
230 |
Уже используется в качестве имени перечисления |
232 |
Ожидается класс или структура |
235 |
Нельзя вызывать delete для удаления массива |
236 |
Ожидается оператор ‘ while ‘ |
237 |
В delete должен быть указатель |
238 |
default для этого switch уже есть |
239 |
Синтаксическая ошибка |
240 |
Escape-последовательность может встретиться только в строках ( начинается с ‘’ ) |
241 |
Требуется массив – квадратная скобка ‘[‘ не относится к массиву либо в качестве параметра-массива подают не массив |
242 |
Не может быть инициализировано посредством инициализирующей последовательности |
243 |
Импорт не определен |
244 |
Ошибка оптимизатора на синтаксическом дереве |
245 |
Объявлено слишком много структур (упростите программу) |
246 |
Преобразование параметра недопустимо |
247 |
Некорректное использование оператора delete |
248 |
Нельзя объявить указатель на ссылку |
249 |
Нельзя объявить ссылку на ссылку |
250 |
Нельзя объявить указатель на указатель |
251 |
Недопустимо объявление структуры в списке параметров |
252 |
Недопустимая операция приведения типов |
253 |
Указатель можно объявить только для класса или структуры |
256 |
Необъявленный идентификатор |
257 |
Ошибка оптимизатора исполняемого кода |
258 |
Ошибка генерации исполняемого кода |
260 |
Недопустимое выражение для оператора switch |
261 |
Переполнение пула строковых констант, упростите программу |
262 |
Невозможно преобразовать к перечислению |
263 |
Нельзя использовать virtual для данных (членов класса или структуры) |
264 |
Нельзя вызвать защищенный метод класса |
265 |
Переопределяемая виртуальная функция возвращает другой тип |
266 |
Класс нельзя наследовать от структуры |
267 |
Структуру нельзя наследовать от класса |
268 |
Конструктор не может быть виртуальным (спецификатор virtual недопустим) |
269 |
Структура не может иметь виртуальных методов |
270 |
Функция должна иметь тело |
271 |
Перегрузка системных функций (функций терминала) запрещена |
272 |
Спецификатор const недопустим для функций, не являющихся членом класса или структуры |
274 |
Нельзя менять члены класса в константном методе |
276 |
Неподходящая инициализирующая последовательность |
277 |
Пропущено значение по умолчанию для параметра (специфика объявления параметров по умолчанию) |
278 |
Переопределение параметра по умолчанию (в объявлении и реализации разные значения) |
279 |
Нельзя вызвать неконстантный метод для константного объекта |
280 |
Для доступа к членам требуется объект (поставлена точка для не класса/структуры) |
281 |
Имя уже объявленной структуры нельзя использовать при объявлении |
284 |
Неразрешенное преобразование (при закрытом наследовании) |
285 |
Структуры и массивы не могут быть использованы в качестве input-переменных |
286 |
Спецификатор const недопустим для конструктора/деструктора |
287 |
Неправильное строковое выражение для типа datetime |
288 |
Неизвестное свойство (#property) |
289 |
Некорректное значение для свойства |
290 |
Некорректный индекс для свойства в #property |
291 |
Пропущен параметр вызова – < func(x,) > |
293 |
Объект должен быть передан по ссылке |
294 |
Массив должен быть передан по ссылке |
295 |
Функция была декларирована как экспортируемая |
296 |
Функция не была декларирована как экспортируемая |
297 |
Экспортировать импортируемую функцию нельзя |
298 |
Импортируемая функция не может иметь такого параметра (нельзя передавать указатель, класс или структуру, содержащую динамический массив, указатель, класс и т.д.) |
299 |
Должен быть класс |
300 |
Секция #import не закрыта |
302 |
Несоответствие типов |
303 |
extern-переменная уже инициализирована |
304 |
Не найдено ни одной экспортируемой функции или стандартной точки входа |
305 |
Явный вызов конструктора запрещен |
306 |
Метод был объявлен константным |
307 |
Метод не был объявлен константным |
308 |
Некорректный размер ресурсного файла |
309 |
Некорректное имя ресурса |
310 |
Ошибка открытия файла ресурса |
311 |
Ошибка чтения файла ресурса |
312 |
Неизвестный тип ресурса |
313 |
Некорректный путь к файлу ресурса |
314 |
Указанное имя ресурса уже используется |
315 |
Ожидались параметры макроса |
316 |
После имени макроса должен быть пробел |
317 |
Ошибка в описании параметров макроса |
318 |
Неверное число параметров при использовании макроса |
319 |
Превышение максимального количества(16) параметров для макроса |
320 |
Макрос слишком сложный, требуется упрощение |
321 |
Параметром EnumToString() может быть только перечисление |
322 |
Имя ресурса слишком длинное |
323 |
Неподдерживаемый формат изображения (допустим только BMP-формат с глубиной цвета 24 или 32 бита) |
324 |
Объявление массива внутри оператора запрещено |
325 |
Функцию можно определить только на глобальном уровне |
326 |
Данное объявление недопустимо для текущей области видимости (области определения) |
327 |
Инициализация статичных переменных значениями локальных недопустима |
328 |
Недопустимое объявление массива объектов, не имеющих конструктора по умолчанию |
329 |
Список инициализации разрешен только для конструкторов |
330 |
Отсутствует определение функции после списка инициализации |
331 |
Список инициализации пуст |
332 |
Инициализация массива в конструкторе запрещена |
333 |
В списке инициализации запрещено инициализировать члены родительского класса |
334 |
Ожидалось выражение целого типа |
335 |
Требуемый объем памяти для массива превышает максимально допустимое значение |
336 |
Требуемый объем памяти для структуры превышает максимально допустимое значение |
337 |
Требуемый объем памяти для переменных, объявленных на глобальном уровне, превышает максимально допустимое значение |
338 |
Требуемый объем памяти для локальных переменных превышает максимально допустимое значение |
339 |
Конструктор не определен |
340 |
Недопустимое имя для файла иконки |
341 |
Не удалось открыть файла иконки по указанному пути |
342 |
Файл иконки некорректен и не соответствует формату ICO |
343 |
Повторная инициализация члена в конструкторе класса/структуры с помощью списка инициализации |
344 |
Инициализация статических членов в списке инициализации конструктора не допускается |
345 |
Инициализация нестатического члена класса/структуры на глобальном уровне запрещена |
346 |
Имя метода класса/структуры совпадает с ранее объявленным именем члена |
347 |
Имя члена класса/структуры совпадает с ранее объявленным именем метода |
348 |
Виртуальная функция не может быть объявлена как static |
349 |
Модификатор const недопустим для статической функции |
350 |
Конструктор или деструктор не могут быть статическими |
351 |
Нельзя обращаться к нестатическому члену/методу класса или структуры из статической функции |
352 |
После ключевого слова operator ожидается перегружаемая операция (+,-,[],++,— и т.д.) |
353 |
Не все операции можно перегружать в MQL5 |
354 |
Определение не соответствует объявлению |
355 |
Указано неверное количество параметров для оператора |
356 |
Не обнаружено ни одной функции-обработчика события |
357 |
Методы не могут быть экспортируемыми |
358 |
Нельзя приводить указатель на константный объект к указателю на неконстантный объект |
359 |
Шаблоны классов пока не поддерживаются |
360 |
Перегрузка шаблонов функций пока не поддерживается |
361 |
Невозможно применить шаблон функции |
362 |
Неоднозначный параметр в шаблоне функции (подходят несколько типов параметра) |
363 |
Невозможно определить к какому типу параметра приводить аргумент шаблона функции |
364 |
Неверное количество параметров в шаблоне функции |
365 |
Шаблон функции не может быть виртуальным |
366 |
Шаблоны функций не могут быть экспортированы |
367 |
Нельзя импортировать шаблоны функций |
368 |
Структуры, содержащие объекты, недопустимы |
369 |
Массивы строк и структуры, содержащие объекты, недопустимы |
370 |
Статический член класса/структуры должен быть явно инициализирован |
371 |
Ограничение компилятора: строка не может содержать более 65 535 символов |
372 |
Несогласованные #ifdef/#endif |
373 |
Результатом выполнения функции не может быть объект класса, так как отсутствует конструктор копирования |
374 |
Нельзя использовать нестатические члены и/или методы при инициализации статической переменной |
375 |
OnTesterInit() нельзя использовать без объявления обработчика OnTesterDeinit() |
376 |
Имя локальной переменной совпадает с именем одного из параметров функции |
377 |
Нельзя использовать макросы __FUNCSIG__ и __FUNCTION__ вне тела функции |
378 |
Недопустимый возвращаемый тип. Например, такая ошибка будет выдана для функций, импортированных из DLL, которые возвращают структуру или указатель в качестве результата |
379 |
Ошибка при использовании шаблона |
380 |
Не используется |
381 |
Недопустимый синтаксис при объявлении чисто виртуальной функции, разрешено «=NULL» или «=0» |
382 |
Только виртуальные функции могут быть объявлены со спецификатором чисто виртуальной функции («=NULL» или «=0») |
383 |
Нельзя создать экземпляр абстрактного класса |
384 |
Для динамического приведения с помощью оператора dynamic_cast типом назначения должен быть указатель на пользовательский тип |
385 |
Ожидается тип «указатель на функцию» |
386 |
Указатели на методы не поддерживаются |
387 |
Ошибка – невозможно определить тип указателя на функцию |
388 |
Приведение типа недоступно из-за закрытого наследования |
389 |
Переменная с модификатором const должна быть проинициализирована при объявлении |
393 |
В интерфейсе могут быть объявлены только методы с публичным доступом |
394 |
Недопустимое вложение интерфейса в другой интерфейс |
395 |
Интерфейс может наследоваться только от другого интерфейса |
396 |
Ожидается интерфейс |
397 |
Интерфейсы поддерживают только публичное наследование |
398 |
Интерфейс не может содержать члены |
399 |
Нельзя создавать объекты интерфейса напрямую, только через наследование |
GetLastError() – функция, возвращающая код последней ошибки, которая хранится в предопределенной переменной _LastError. Значение этой переменной можно сбросить в ноль функцией ResetLastError().
ERR_SUCCESS |
0 |
Операция выполнена успешно |
ERR_INTERNAL_ERROR |
4001 |
Неожиданная внутренняя ошибка |
ERR_WRONG_INTERNAL_PARAMETER |
4002 |
Ошибочный параметр при внутреннем вызове функции клиентского терминала |
ERR_INVALID_PARAMETER |
4003 |
Ошибочный параметр при вызове системной функции |
ERR_NOT_ENOUGH_MEMORY |
4004 |
Недостаточно памяти для выполнения системной функции |
ERR_STRUCT_WITHOBJECTS_ORCLASS |
4005 |
Структура содержит объекты строк и/или динамических массивов и/или структуры с такими объектами и/или классы |
ERR_INVALID_ARRAY |
4006 |
Массив неподходящего типа, неподходящего размера или испорченный объект динамического массива |
ERR_ARRAY_RESIZE_ERROR |
4007 |
Недостаточно памяти для перераспределения массива либо попытка изменения размера статического массива |
ERR_STRING_RESIZE_ERROR |
4008 |
Недостаточно памяти для перераспределения строки |
ERR_NOTINITIALIZED_STRING |
4009 |
Неинициализированная строка |
ERR_INVALID_DATETIME |
4010 |
Неправильное значение даты и/или времени |
ERR_ARRAY_BAD_SIZE |
4011 |
Запрашиваемый размер массива превышает 2 гигабайта |
ERR_INVALID_POINTER |
4012 |
Ошибочный указатель |
ERR_INVALID_POINTER_TYPE |
4013 |
Ошибочный тип указателя |
ERR_FUNCTION_NOT_ALLOWED |
4014 |
Системная функция не разрешена для вызова |
ERR_RESOURCE_NAME_DUPLICATED |
4015 |
Совпадении имени динамического и статического ресурсов |
ERR_RESOURCE_NOT_FOUND |
4016 |
Ресурс с таким именем в EX5 не найден |
ERR_RESOURCE_UNSUPPOTED_TYPE |
4017 |
Неподдерживаемый тип ресурса или размер более 16 MB |
ERR_RESOURCE_NAME_IS_TOO_LONG |
4018 |
Имя ресурса превышает 63 символа |
ERR_MATH_OVERFLOW |
4019 |
При вычислении математической функции произошло переполнение |
Графики |
||
ERR_CHART_WRONG_ID |
4101 |
Ошибочный идентификатор графика |
ERR_CHART_NO_REPLY |
4102 |
График не отвечает |
ERR_CHART_NOT_FOUND |
4103 |
График не найден |
ERR_CHART_NO_EXPERT |
4104 |
У графика нет эксперта, который мог бы обработать событие |
ERR_CHART_CANNOT_OPEN |
4105 |
Ошибка открытия графика |
ERR_CHART_CANNOT_CHANGE |
4106 |
Ошибка при изменении для графика символа и периода |
ERR_CHART_WRONG_PARAMETER |
4107 |
Ошибочное значение параметра для функции по работе с графиком |
ERR_CHART_CANNOT_CREATE_TIMER |
4108 |
Ошибка при создании таймера |
ERR_CHART_WRONG_PROPERTY |
4109 |
Ошибочный идентификатор свойства графика |
ERR_CHART_SCREENSHOT_FAILED |
4110 |
Ошибка при создании скриншота |
ERR_CHART_NAVIGATE_FAILED |
4111 |
Ошибка навигации по графику |
ERR_CHART_TEMPLATE_FAILED |
4112 |
Ошибка при применении шаблона |
ERR_CHART_WINDOW_NOT_FOUND |
4113 |
Подокно, содержащее указанный индикатор, не найдено |
ERR_CHART_INDICATOR_CANNOT_ADD |
4114 |
Ошибка при добавлении индикатора на график |
ERR_CHART_INDICATOR_CANNOT_DEL |
4115 |
Ошибка при удалении индикатора с графика |
ERR_CHART_INDICATOR_NOT_FOUND |
4116 |
Индикатор не найден на указанном графике |
Графические объекты |
||
ERR_OBJECT_ERROR |
4201 |
Ошибка при работе с графическим объектом |
ERR_OBJECT_NOT_FOUND |
4202 |
Графический объект не найден |
ERR_OBJECT_WRONG_PROPERTY |
4203 |
Ошибочный идентификатор свойства графического объекта |
ERR_OBJECT_GETDATE_FAILED |
4204 |
Невозможно получить дату, соответствующую значению |
ERR_OBJECT_GETVALUE_FAILED |
4205 |
Невозможно получить значение, соответствующее дате |
MarketInfo |
||
ERR_MARKET_UNKNOWN_SYMBOL |
4301 |
Неизвестный символ |
ERR_MARKET_NOT_SELECTED |
4302 |
Символ не выбран в MarketWatch |
ERR_MARKET_WRONG_PROPERTY |
4303 |
Ошибочный идентификатор свойства символа |
ERR_MARKET_LASTTIME_UNKNOWN |
4304 |
Время последнего тика неизвестно (тиков не было) |
ERR_MARKET_SELECT_ERROR |
4305 |
Ошибка добавления или удаления символа в MarketWatch |
Доступ к истории |
||
ERR_HISTORY_NOT_FOUND |
4401 |
Запрашиваемая история не найдена |
ERR_HISTORY_WRONG_PROPERTY |
4402 |
Ошибочный идентификатор свойства истории |
ERR_HISTORY_TIMEOUT |
4403 |
Превышен таймаут при запросе истории |
ERR_HISTORY_BARS_LIMIT |
4404 |
Количество запрашиваемых баров ограничено настройками терминала |
ERR_HISTORY_LOAD_ERRORS |
4405 |
Множество ошибок при загрузке истории |
ERR_HISTORY_SMALL_BUFFER |
4407 |
Принимающий массив слишком мал чтобы вместить все запрошенные данные |
Global_Variables |
||
ERR_GLOBALVARIABLE_NOT_FOUND |
4501 |
Глобальная переменная клиентского терминала не найдена |
ERR_GLOBALVARIABLE_EXISTS |
4502 |
Глобальная переменная клиентского терминала с таким именем уже существует |
ERR_GLOBALVARIABLE_NOT_MODIFIED |
4503 |
Не было модификаций глобальных переменных |
ERR_GLOBALVARIABLE_CANNOTREAD |
4504 |
Не удалось открыть и прочитать файл со значениями глобальных переменных |
ERR_GLOBALVARIABLE_CANNOTWRITE |
4505 |
Не удалось записать файл со значениями глобальных переменных |
ERR_MAIL_SEND_FAILED |
4510 |
Не удалось отправить письмо |
ERR_PLAY_SOUND_FAILED |
4511 |
Не удалось воспроизвести звук |
ERR_MQL5_WRONG_PROPERTY |
4512 |
Ошибочный идентификатор свойства программы |
ERR_TERMINAL_WRONG_PROPERTY |
4513 |
Ошибочный идентификатор свойства терминала |
ERR_FTP_SEND_FAILED |
4514 |
Не удалось отправить файл по ftp |
ERR_NOTIFICATION_SEND_FAILED |
4515 |
Не удалось отправить уведомление |
ERR_NOTIFICATION_WRONG_PARAMETER |
4516 |
Неверный параметр для отправки уведомления – в функцию SendNotification() передали пустую строку или NULL |
ERR_NOTIFICATION_WRONG_SETTINGS |
4517 |
Неверные настройки уведомлений в терминале (не указан ID или не выставлено разрешение) |
ERR_NOTIFICATION_TOO_FREQUENT |
4518 |
Слишком частая отправка уведомлений |
ERR_FTP_NOSERVER |
4519 |
Не указан FTP сервер |
ERR_FTP_NOLOGIN |
4520 |
Не указан FTP логин |
ERR_FTP_FILE_ERROR |
4521 |
Не найден файл в директории MQL5Files для отправки на FTP сервер |
ERR_FTP_CONNECT_FAILED |
4522 |
Ошибка при подключении к FTP серверу |
ERR_FTP_CHANGEDIR |
4523 |
На FTP сервере не найдена директория для выгрузки файла |
ERR_FTP_CLOSED |
4524 |
Подключение к FTP серверу закрыто |
Буферы пользовательских индикаторов |
||
ERR_BUFFERS_NO_MEMORY |
4601 |
Недостаточно памяти для распределения индикаторных буферов |
ERR_BUFFERS_WRONG_INDEX |
4602 |
Ошибочный индекс своего индикаторного буфера |
Свойства пользовательских индикаторов |
||
ERR_CUSTOM_WRONG_PROPERTY |
4603 |
Ошибочный идентификатор свойства пользовательского индикатора |
Account |
||
ERR_ACCOUNT_WRONG_PROPERTY |
4701 |
Ошибочный идентификатор свойства счета |
ERR_TRADE_WRONG_PROPERTY |
4751 |
Ошибочный идентификатор свойства торговли |
ERR_TRADE_DISABLED |
4752 |
Торговля для эксперта запрещена |
ERR_TRADE_POSITION_NOT_FOUND |
4753 |
Позиция не найдена |
ERR_TRADE_ORDER_NOT_FOUND |
4754 |
Ордер не найден |
ERR_TRADE_DEAL_NOT_FOUND |
4755 |
Сделка не найдена |
ERR_TRADE_SEND_FAILED |
4756 |
Не удалось отправить торговый запрос |
ERR_TRADE_CALC_FAILED |
4758 |
Не удалось вычислить значение прибыли или маржи |
Индикаторы |
||
ERR_INDICATOR_UNKNOWN_SYMBOL |
4801 |
Неизвестный символ |
ERR_INDICATOR_CANNOT_CREATE |
4802 |
Индикатор не может быть создан |
ERR_INDICATOR_NO_MEMORY |
4803 |
Недостаточно памяти для добавления индикатора |
ERR_INDICATOR_CANNOT_APPLY |
4804 |
Индикатор не может быть применен к другому индикатору |
ERR_INDICATOR_CANNOT_ADD |
4805 |
Ошибка при добавлении индикатора |
ERR_INDICATOR_DATA_NOT_FOUND |
4806 |
Запрошенные данные не найдены |
ERR_INDICATOR_WRONG_HANDLE |
4807 |
Ошибочный хэндл индикатора |
ERR_INDICATOR_WRONG_PARAMETERS |
4808 |
Неправильное количество параметров при создании индикатора |
ERR_INDICATOR_PARAMETERS_MISSING |
4809 |
Отсутствуют параметры при создании индикатора |
ERR_INDICATOR_CUSTOM_NAME |
4810 |
Первым параметром в массиве должно быть имя пользовательского индикатора |
ERR_INDICATOR_PARAMETER_TYPE |
4811 |
Неправильный тип параметра в массиве при создании индикатора |
ERR_INDICATOR_WRONG_INDEX |
4812 |
Ошибочный индекс запрашиваемого индикаторного буфера |
Стакан цен |
||
ERR_BOOKS_CANNOT_ADD |
4901 |
Стакан цен не может быть добавлен |
ERR_BOOKS_CANNOT_DELETE |
4902 |
Стакан цен не может быть удален |
ERR_BOOKS_CANNOT_GET |
4903 |
Данные стакана цен не могут быть получены |
ERR_BOOKS_CANNOT_SUBSCRIBE |
4904 |
Ошибка при подписке на получение новых данных стакана цен |
Файловые операции |
||
ERR_TOO_MANY_FILES |
5001 |
Не может быть открыто одновременно более 64 файлов |
ERR_WRONG_FILENAME |
5002 |
Недопустимое имя файла |
ERR_TOO_LONG_FILENAME |
5003 |
Слишком длинное имя файла |
ERR_CANNOT_OPEN_FILE |
5004 |
Ошибка открытия файла |
ERR_FILE_CACHEBUFFER_ERROR |
5005 |
Недостаточно памяти для кеша чтения |
ERR_CANNOT_DELETE_FILE |
5006 |
Ошибка удаления файла |
ERR_INVALID_FILEHANDLE |
5007 |
Файл с таким хэндлом уже был закрыт, либо не открывался вообще |
ERR_WRONG_FILEHANDLE |
5008 |
Ошибочный хэндл файла |
ERR_FILE_NOTTOWRITE |
5009 |
Файл должен быть открыт для записи |
ERR_FILE_NOTTOREAD |
5010 |
Файл должен быть открыт для чтения |
ERR_FILE_NOTBIN |
5011 |
Файл должен быть открыт как бинарный |
ERR_FILE_NOTTXT |
5012 |
Файл должен быть открыт как текстовый |
ERR_FILE_NOTTXTORCSV |
5013 |
Файл должен быть открыт как текстовый или CSV |
ERR_FILE_NOTCSV |
5014 |
Файл должен быть открыт как CSV |
ERR_FILE_READERROR |
5015 |
Ошибка чтения файла |
ERR_FILE_BINSTRINGSIZE |
5016 |
Должен быть указан размер строки, так как файл открыт как бинарный |
ERR_INCOMPATIBLE_FILE |
5017 |
Для строковых массивов должен быть текстовый файл, для остальных – бинарный |
ERR_FILE_IS_DIRECTORY |
5018 |
Это не файл, а директория |
ERR_FILE_NOT_EXIST |
5019 |
Файл не существует |
ERR_FILE_CANNOT_REWRITE |
5020 |
Файл не может быть переписан |
ERR_WRONG_DIRECTORYNAME |
5021 |
Ошибочное имя директории |
ERR_DIRECTORY_NOT_EXIST |
5022 |
Директория не существует |
ERR_FILE_ISNOT_DIRECTORY |
5023 |
Это файл, а не директория |
ERR_CANNOT_DELETE_DIRECTORY |
5024 |
Директория не может быть удалена |
ERR_CANNOT_CLEAN_DIRECTORY |
5025 |
Не удалось очистить директорию (возможно, один или несколько файлов заблокированы и операция удаления не удалась) |
ERR_FILE_WRITEERROR |
5026 |
Не удалось записать ресурс в файл |
ERR_FILE_ENDOFFILE |
5027 |
Не удалось прочитать следующую порцию данных из CSV-файла (FileReadString, FileReadNumber, FileReadDatetime, FileReadBool), так как достигнут конец файла |
Преобразование строк |
||
ERR_NO_STRING_DATE |
5030 |
В строке нет даты |
ERR_WRONG_STRING_DATE |
5031 |
В строке ошибочная дата |
ERR_WRONG_STRING_TIME |
5032 |
В строке ошибочное время |
ERR_STRING_TIME_ERROR |
5033 |
Ошибка преобразования строки в дату |
ERR_STRING_OUT_OF_MEMORY |
5034 |
Недостаточно памяти для строки |
ERR_STRING_SMALL_LEN |
5035 |
Длина строки меньше, чем ожидалось |
ERR_STRING_TOO_BIGNUMBER |
5036 |
Слишком большое число, больше, чем ULONG_MAX |
ERR_WRONG_FORMATSTRING |
5037 |
Ошибочная форматная строка |
ERR_TOO_MANY_FORMATTERS |
5038 |
Форматных спецификаторов больше, чем параметров |
ERR_TOO_MANY_PARAMETERS |
5039 |
Параметров больше, чем форматных спецификаторов |
ERR_WRONG_STRING_PARAMETER |
5040 |
Испорченный параметр типа string |
ERR_STRINGPOS_OUTOFRANGE |
5041 |
Позиция за пределами строки |
ERR_STRING_ZEROADDED |
5042 |
К концу строки добавлен 0, бесполезная операция |
ERR_STRING_UNKNOWNTYPE |
5043 |
Неизвестный тип данных при конвертации в строку |
ERR_WRONG_STRING_OBJECT |
5044 |
Испорченный объект строки |
Работа с массивами |
||
ERR_INCOMPATIBLE_ARRAYS |
5050 |
Копирование несовместимых массивов. Строковый массив может быть скопирован только в строковый, а числовой массив – в числовой |
ERR_SMALL_ASSERIES_ARRAY |
5051 |
Приемный массив объявлен как AS_SERIES, и он недостаточного размера |
ERR_SMALL_ARRAY |
5052 |
Слишком маленький массив, стартовая позиция за пределами массива |
ERR_ZEROSIZE_ARRAY |
5053 |
Массив нулевой длины |
ERR_NUMBER_ARRAYS_ONLY |
5054 |
Должен быть числовой массив |
ERR_ONEDIM_ARRAYS_ONLY |
5055 |
Должен быть одномерный массив |
ERR_SERIES_ARRAY |
5056 |
Таймсерия не может быть использована |
ERR_DOUBLE_ARRAY_ONLY |
5057 |
Должен быть массив типа double |
ERR_FLOAT_ARRAY_ONLY |
5058 |
Должен быть массив типа float |
ERR_LONG_ARRAY_ONLY |
5059 |
Должен быть массив типа long |
ERR_INT_ARRAY_ONLY |
5060 |
Должен быть массив типа int |
ERR_SHORT_ARRAY_ONLY |
5061 |
Должен быть массив типа short |
ERR_CHAR_ARRAY_ONLY |
5062 |
Должен быть массив типа char |
ERR_STRING_ARRAY_ONLY |
5063 |
Должен быть массив типа string |
Работа с OpenCL |
||
ERR_OPENCL_NOT_SUPPORTED |
5100 |
Функции OpenCL на данном компьютере не поддерживаются |
ERR_OPENCL_INTERNAL |
5101 |
Внутренняя ошибка при выполнении OpenCL |
ERR_OPENCL_INVALID_HANDLE |
5102 |
Неправильный хэндл OpenCL |
ERR_OPENCL_CONTEXT_CREATE |
5103 |
Ошибка при создании контекста OpenCL |
ERR_OPENCL_QUEUE_CREATE |
5104 |
Ошибка создания очереди выполнения в OpenCL |
ERR_OPENCL_PROGRAM_CREATE |
5105 |
Ошибка при компиляции программы OpenCL |
ERR_OPENCL_TOO_LONG_KERNEL_NAME |
5106 |
Слишком длинное имя точки входа (кернел OpenCL) |
ERR_OPENCL_KERNEL_CREATE |
5107 |
Ошибка создания кернел — точки входа OpenCL |
ERR_OPENCL_SET_KERNEL_PARAMETER |
5108 |
Ошибка при установке параметров для кернел OpenCL (точки входа в программу OpenCL) |
ERR_OPENCL_EXECUTE |
5109 |
Ошибка выполнения программы OpenCL |
ERR_OPENCL_WRONG_BUFFER_SIZE |
5110 |
Неверный размер буфера OpenCL |
ERR_OPENCL_WRONG_BUFFER_OFFSET |
5111 |
Неверное смещение в буфере OpenCL |
ERR_OPENCL_BUFFER_CREATE |
5112 |
Ошибка создания буфера OpenCL |
ERR_OPENCL_TOO_MANY_OBJECTS |
5113 |
Превышено максимальное число OpenCL объектов |
ERR_OPENCL_SELECTDEVICE |
5114 |
Ошибка выбора OpenCL устройства |
Работа с WebRequest |
||
ERR_WEBREQUEST_INVALID_ADDRESS |
5200 |
URL не прошел проверку |
ERR_WEBREQUEST_CONNECT_FAILED |
5201 |
Не удалось подключиться к указанному URL |
ERR_WEBREQUEST_TIMEOUT |
5202 |
Превышен таймаут получения данных |
ERR_WEBREQUEST_REQUEST_FAILED |
5203 |
Ошибка в результате выполнения HTTP запроса |
Пользовательские символы |
||
ERR_NOT_CUSTOM_SYMBOL |
5300 |
Должен быть указан пользовательский символ |
ERR_CUSTOM_SYMBOL_WRONG_NAME |
5301 |
Некорректное имя пользовательского символа. В имени символа можно использовать только латинские буквы без знаков препинания, пробелов и спецсимволов (допускаются «.», «_», «&» и «#»). Не рекомендуется использовать символы <, >, :, «, /,, |, ?, *. |
ERR_CUSTOM_SYMBOL_NAME_LONG |
5302 |
Слишком длинное имя для пользовательского символа. Длина имени символа не должна превышать 32 знака с учётом завершающего 0 |
ERR_CUSTOM_SYMBOL_PATH_LONG |
5303 |
Слишком длинный путь для пользовательского символа. Длина пути не более 128 знаков с учётом «Custom\», имени символа, разделителей групп и завершающего 0 |
ERR_CUSTOM_SYMBOL_EXIST |
5304 |
Пользовательский символ с таким именем уже существует |
ERR_CUSTOM_SYMBOL_ERROR |
5305 |
Ошибка при создании, удалении или изменении пользовательского символа |
ERR_CUSTOM_SYMBOL_SELECTED |
5306 |
Попытка удалить пользовательский символ, выбранный в обзоре рынка (Market Watch) |
ERR_CUSTOM_SYMBOL_PROPERTY_WRONG |
5307 |
Неправильное свойство пользовательского символа |
ERR_CUSTOM_SYMBOL_PARAMETER_ERROR |
5308 |
Ошибочный параметр при установке свойства пользовательского символа |
ERR_CUSTOM_SYMBOL_PARAMETER_LONG |
5309 |
Слишком длинный строковый параметр при установке свойства пользовательского символа |
ERR_CUSTOM_TICKS_WRONG_ORDER |
5310 |
Не упорядоченный по времени массив тиков |
Пользовательские ошибки |
||
ERR_USER_ERROR_FIRST |
65536 |
С этого кода начинаются ошибки, задаваемые пользователем |
Перед тем, как отправлять советника на реальный счет, необходимо выяснить: а есть ли в этом смысл? Ведь множество форекс роботов предназначены исключительно для продажи доверчивым лохам. Одним из первых этапов проверки советника на профпригодность является прогон в тестере стратегий.
Во время тестирования, советник прогоняется по историческим данным, обрабатывая каждую котировку и совершая виртуальные транзакции так же, как бы это было на реальном рынке. По сути, тестер показывает то, как робот торговал бы в прошлом. Инструкция по тестированию экспертов в MT4 у нас уже есть, поэтому мы подготовили аналогичную для более нового терминала – Metatrader 5.
Как тестировать форекс советник в тестере MT5
Торговая платформа MT5 представляет собой мощный инструмент для разработки, тестирования и отладки автоматических торговых стратегий. Главная же особенность тестера MT5 в том, что вы можете тестировать стратегии, работающие одновременно на нескольких символах.
MT5 не поддерживает роботов, написанных для МТ4, и наоборот: МТ4 не поддерживает советники для MT5.
Настройка тестера стратегий
Для запуска тестера заходим в меню Вид – Тестер Стратегий, либо вызываем окно тестера сочетанием клавиш Ctrl + R.
Вы также можете выбрать стратегию из окна навигатора и вызвав контекстное меню кликнуть по пункту “Тестировать” – советник будет выбран в тестере стратегий.
- В выпадающем списке выберите тест советника (тестер также поддерживает визуальный тест индикаторов);
- Дальше, выбираем советник или индикатор, который собираемся тестировать. Пользовательские советники хранятся в разделе Advisors, примеры поставляемые с терминалом в Examples, а советники, скачанные из магазина – в Market;
- Здесь выбираем торговый инструмент, на исторических котировках которого будем проводить тестирование. Если в списке нет нужных символов, проверьте окно обзора рынка. Для отображения всех доступных символов вызовите контекстное меню по щелчку правой кнопки мыши и выберите пункт “Показать все”;
Перед началом теста, тестер автоматически загружает всю необходимую историю, так что вам не нужно беспокоится об этом самостоятельно. Загрузка истории может занять некоторое время, но на следующем запуске будут загружаться лишь недостающие данные.
Для тестера стратегий в MT4 необходимо было подгружать историю самостоятельно. В MT5 эта проблема решена. Все закачивается автоматически.
- Далее выбираем таймфрейм для теста. MetaTrader 5 поддерживает 21 таймфрейм: от одной минуты до месяца;
- После выбора таймфрейма нужно определиться с периодом тестирования. Вы можете выбрать один из предустановленных вариантов: вся доступная история, последний месяц, последний год или собственный период;
- Здесь вы можете вручную указать точную начальную и конечную дату теста, вплоть до сегодняшнего дня;
- Для исключения “подгонки” вы можете указать дополнительный форвард-период (для стандартного теста советника, без подбора настроек, вам это не понадобится)
Допустим, вы подобрали оптимальные параметры для советника на тесте за текущий год (вплоть до сегодняшней даты). В этом случае, существует ненулевая вероятность того, что выбранные параметры будут работать только в пределах тестируемого периода, и в будущем результаты могут сильно отличаться.
Для дополнительной проверки вы можете разбить период теста на 2 части: бэк-тест и форвард-тест. Форвард-тест представляет собой период повторного прогона советника, скажем, последнюю четверть от всего теста. В тестере MT5 можно выбрать форвард в половину, треть или четверть от длительности теста, либо выбрать собственную стартовую дату. То есть, на первом временном отрезке вы проводите оптимизацию параметров советника, а на втором проводите повторное тестирование с теми же параметрами. Если во время форвард-тестирования результаты стратегии кардинально отличаются от результатов предыдущего теста, значит выбранные параметры нестабильны и использовать такой советник на реальном счету нельзя;
- На текущий момент доступно два режима торговли: обычный и режим с произвольной задержкой. Обычный режим обеспечивает идеальное исполнение без реквот и проскальзываний.
Режим произвольной задержки позволяет тестировать советника в условиях, приближенных к реальным. Для этого случайным образом задается задержка в исполнении ордеров, в 90% случаев – до 8 секунд, в остальных десяти – до 18 секунд. Небольшая ремарка: подобные задержки на рынке нереальны, но если ваш советник сможет справиться с ними, то он действительно довольно хорош. - Далее вам предстоит выбрать способ генерации тиковых данных.
- В режиме “Все тики” тиковые данные моделируются на основе минутной истории. Достаточно точный метод, особенно когда нет возможности теста на реальных тиковых данных. Если стратегия посылает высокочастотные запросы или использует сверхкороткие цели, результаты тестирования в этом режиме могут несколько отличаться от реальных. В этом режиме моделируется лишь среднее значение спреда в течении бара M1;
- Следующий режим, “Каждый тик на основе реальных тиков“, позволяет тестировать автоматические стратегии на реальных тиковых данных, скачиваемых с сервера брокера. Вам не нужно ничего скачивать самостоятельно, тестер делает это автоматически перед началом теста. Так как в тесте используются реальные цены, пока что это наиболее точный метод для тестирования стратегий. В частности, точность тестирования обеспечивается настоящим плавающим спредом. Тиковые данные могут занимать существенный объем на диске, поэтому перед началом теста дождитесь загрузки истории;
- “OHLC на M1” – тестировании на истории M1, используя только уровень цены открытия, хая, лоу и закрытия. Во время тестирования советника в режиме “Только цены открытия” используются только цены открытия баров;
- Последний режим, “Математические вычисления“, отключает автоматическую подкачку истории и генерацию тиков. Данный метод можно использовать для подбора параметров советника.
- Размер депозита стоит указывать из расчета вашего реального рискового капитала и мани-менеджмента самой стратегии. Т.е выбирать депозит 100 000$, если у вас нет депозита в 100000$ – не стоит;
- Выбираем размер кредитного плеча;
- Режим визуализации позволяет наглядно оценить работу эксперта на исторических данных – все сделки будут отображаться на графике. К этой функции мы вернемся чуть позже. Более подробно про оптимизацию в МТ5 мы поговорим в наших следующих уроках.
- Остается только нажать кнопку СТАРТ и тест начнется.
Визуализация тестирования
Визуализацией стоит пользоваться тогда, когда обычного теста может быть недостаточно и необходима наглядная оценка работы эксперта на графике. При активации данной функции, визуализация будет открывается в отдельном приложении, в новом окне. По функционалу окно визуализации почти полностью отвечает интерфейсу торгового терминала. Перед запуском убедитесь в том, чтобы была отключена оптимизация – визуальный тест работает только для одиночных прогонов.
На верхнем тулбаре вы можете настроить стиль отображения ценовых данных, изменить масштаб и скорость тестирования. Информация о текущих ценах доступна из окна обзора рынка, и там же отображаются все участвующие в расчете инструменты. По значениям в окне данных можно проверить работу индикатора на истории. В окне инструментов вы можете наблюдать за текущими открытыми позициями, а также изучить историю торгов и торговый журнал.
Сам график не поддается настройке, но вы можете использовать собственный шаблон. Для этого достаточно создать шаблон графика с нужной расцветкой, прикрепить нужные индикаторы или объекты, и сохранить шаблон с именем тестируемого советника. Для этого вызовите контекстное меню графика и выберите пункт “Сохранить шаблон”.
Откроется стандартное окно сохранения файла. Укажите имя шаблона и нажмите “Сохранить”.
Тестирование мультивалютных стратегий
C приходом тестера MT5 у трейдеров появилась возможность тестирования стратегий, торгующих на нескольких инструментах. Стоит учитывать, что во время мультивалютного тестирования история по символам берется из торговой платформы, поэтому перед тестированием включите отображение нужных инструментов в обзоре рынка, откройте их графики и установите месячный таймфрейм. Прокручивая график влево терминал будет автоматически закачивать историю с торгового сервера в виде минутных данных, пока не будет достигнут максимум. В отличие от MT4, предшественника MT5, новый терминал не поддерживает ручную загрузку, и берет на себя всю работу по закачке и синхронизации исторических котировок.
Для теста мы скачаем мультивалютный советник из Маркета MQL5. Скачать демо советника из магазина можно не выходя из терминала. Для этого пройдите в “Инструменты” – “Маркет”, и выберите понравившийся продукт.
На странице описания советника нажмите “Скачать демо”.
После закачки советника появится кнопка “Протестировать”.
В тестере, в разделе “Параметры” выбираем лот 0.1, чтобы число долларов/евро было примерно равно количеству заработанных пунктов.
Как настроить тестер стратегий для тестирования на нескольких валютных парах?
Никак! Все настройки для тестирования на нескольких валютных парах находятся внутри советника. Именно там их можно включать и выключать, если это было доступно изначально в этих настройках. Главное, чтобы мы отметили эти валютные пары в “Обзоре рынка” и подгрузили по ним историю, как было сказано ранее. Все остальное советник выполнит сам.
Устанавливаем интервал тестирования (в данном случае, последний год), таймфрейм, параметры депозита, выбираем визуализацию (если она вам нужна) и жмем “Старт”.
В обзоре рынка будут показаны все инструменты, к которым обращается советник. На графиках отображаются используемые индикаторы и торговые входы.
По завершению теста во вкладке “График” будет показан график баланса/средств за тестируемый интервал. В большинстве случаев, работу стратегии можно оценить по графику ее доходности. Чем стабильнее и “ровнее” график, тем лучше. Не стоит гнаться за максимальной прибыльностью, лот можно увеличить всегда. Хорошая же стратегия должна, в первую очередь, иметь высокое отношение прибыли к риску (просадке) и плавную кривую доходности.
Судя по графику доходности – перед нами не советник, а мусор. К слову, как и большинство роботов в маркете.
За более детальным отчетом перейдите на вкладку “Бэктест”.
Через контекстное меню вы можете сохранить отчет в формате разметки xml, если вы собираетесь изучать отчет через пакет офисных программ, либо в html, для просмотра отчета через браузер.
В отчете отображены подробные графики распределения сделок по времени. Основываясь на данных детального отчета, можно подобрать более подходящие входные параметры для советника. Например, на графиках видно, что наибольшие убытки стратегия получает в понедельник вечером, значит, можно ограничить время работы эксперта таким образом, чтобы тот не торговал в периоды низкой прибыльности.
Вывод
Несмотря на то, что тестер MT5 прошел громадный путь развития и, на данный момент, является по истине одним из самых мощных инструментов подобного плана на рынке, все же он не учитывает многие факторы, проявляющиеся только при тестировании на реальном счету. Результаты теста стоит воспринимать как некий ориентир, и точно не как истину в последней инстанции.
Главные же преимущества тестера MT5 – это мультивалютная торговля, тестирование на реальных тиковых данных и облачная оптимизация (об этом в другой раз). Все это позволяет быстро проверить торговую систему, перед тем как ставить советник на реальный счет.
С уважением, Алексей Вергунов
TradeLikeaPro.ru
Знакома ли вам ситуация, когда вы собирайтесь «покорить рынок Форекс» или «заключить сделку года», открываете для этого терминал — и видите значок с надписью в нижнем правом углу программы — Нет связи
. И ни через 10, ни через 30 секунд, ни через минуту она не исчезает. А вы настроены торговать! Что делать в таких случаях — мы и разберём ниже.
Терминал MetaTrader 4/5 — наиболее распространённая программа для обмена торговыми приказами между частными трейдерами и ядром, расположенным на удалённых серверах ДЦ. Если связь с серверами отсутствует, то и процесс торговли не возможен в принципе – не будете же вы использовать телефонные приказы брокеру, верно?
Для бесперебойной торговли брокеры предлагают трейдерам возможность подключения к нескольким серверам, а сама платформа может работать и при низкой скорости интернета. И если происходит потеря связи терминала MT4 с брокером, то скорее всего это произошло по следующим причинам:
- — используемая версия терминала устарела и не поддерживается более компанией, а автоматическое обновление до актуального билда не произошло по каким-либо причинам;
- — на компьютере трейдера установлена ОС Windows XP, которая более не поддерживается компанией MetaQuotes;
- — произошёл сбой настроек терминала MetaTrader;
- — проблемы со стороны провайдера интернета;
- — подключение к интернету осуществляется через прокси-сервер или VPN.
Рис. 1. Вид значка, информирующего об отсутствии связи терминала с сервером брокера.
Восстановление связи MetaTrader 4/5 с сервером брокера.
Для каждого из этих случаев потери связи терминала с серверами брокера возможен свой вариант исправления проблемы.
При появлении надписи Нет связи
в терминале и попыток перезапуска программы, проверьте наличие подключения самого компьютера к интернету. Как правило, значок подключения к сети находится на панели задач в области уведомлений, в правой части информационной панели. Также попробуйте открыть любой сайт в браузере и проверить, происходит ли загрузка страниц.
Как вариант, можно использовать специальные программы, отображающие входящий и исходящий трафик в специальном окошке. Пример такой программы – BWMeter
, в его прозрачном для мыши окошке потеря соединения компьютером видна очень хорошо. Если входящий трафик отображается красным цветом, а исходящий – синим, то при отсутствии соединения в окошках «будет валить» только синий, исходящий траф.
Рис. 2. Два примера полупрозрачных окошек BWMeter с входящим трафиком.
Если выяснится, что всё-таки проблема в отсутствии подключения компьютера к интернету, то убедитесь, что ваш счёт за интернет на текущий момент оплачен. Если это так — в этом случае следует обратиться за помощью к своему провайдеру для устранения неполадок. При появлении интернета перезагрузите терминал — и можно будет работать.
Проблемы совместимости ОС и MetaTrader 4/5.
При возникновении проблемы с потерей связи терминала по причине несовместимости платформы и операционной системы придётся устанавливать новую. Дело в том, что ОС Windows XP более не поддерживается компанией-разработчиком торговой платформы MetaTrader, поэтому при попытке переустановки программы пользователь столкнётся с проблемой отсутствия связи с сервером брокера. Компания MetaQuotes Software Corp.
осуществляет поддержку системы от Windows 7 и выше, о чём указывается на сайтах брокерских компаний. Попытки отыскать в сети версии MT4/5, с которыми можно работать на Windows XP, также не увенчаются успехом.
Альтернативный вариант торговли в случае с установленной Windows XP на компьютере — это трейдинг через веб-терминал на сайте брокера. Примером могут послужить веб-терминал WebTrader от брокера RoboForex, онлайн MetaTrader 4 от компаний Альпари и Forex4you, довольно интересное решение от брокера Forex Club — торгово-инвестиционный веб-терминал Libertex.
Сбой на стороне серверов брокера.
Надпись Нет связи
в терминале может появиться по причине проведения технических работ на серверах брокером либо компанией-владельцем дата-центра. В этом случае необходимо произвести следующие операции по пересканированию серверов:
- — левой кнопкой мыши кликнуть по значку в правом нижнем углу терминала, который отвечает за отображение состояния связи;
- — выбрать операцию
Пересканировать серверы
; - — выбрать сервер с лучшей скоростью соединения (серверы без связи будут отмечены буквами n/a).
Рис. 3. Запуск пересканирования серверов для восстановления связи с брокером.
Также можете попробовать реанимировать серверы путём создания нового счёта в платформе через меню Файл
— Открыть счёт
. Нажатием кнопки Сканировать
запускается проверка работоспособности серверов. Выбирайте Демо-счёт, а уже после этого перезапустите платформу и зайдите в свой реальный аккаунт. Данный метод в 99% случае позволяет восстановить связь с брокером (кликните для увеличения):
Проблемы соединения из-за отсутствия прав администратора или работы антивирусов.
Потеря связи терминала может возникнуть и при наличии интернет-соединения в случае, если для запуска программы нет необходимых прав, а именно — прав администратора. Решается проблема запуском MT4 от имени администратора: правой кнопкой мыши кликаем по значку платформы на рабочем столе и выбираем соответствующий пункт из выпадающего меню:
Рис. 5. Запуск терминала от имени администратора.
Если данная процедура не помогла, тогда перезагрузите компьютер, откройте окно настроек брандмауэра и выберите пункт, который разрешает взаимодействовать с приложением (изображение кликабельно):
Необходимо сделать клик по опции 1 и найти путь к файлу terminal.exe
для платформы MetaTrader 4/5. Затем клик по опции Обзор
(2). Переходим в раздел Program Files
на диске C (3), и выбираем terminal.exe
(4). Этот файл необходимо добавить в список исключений нажатием соответствующей кнопки (кликните для увеличения):
Также потеря связи терминала с серверами брокера может стать следствием переустановки или обновления антивируса. Некоторые программы воспринимают потоковую передачу котировок как вредоносный процесс и блокируют его. В этом случае необходимо добавить терминал в исключения вашего антивируса.
Проблемы с Proxy.
Если нет связи MetaTrader с сервером брокера, и ни один из предыдущих методов её восстановления не справился с проблемой, то возможно её причина скрыта в использовании провайдером прокси-сервера. Поставщики интернета используют прокси-сервера в качестве посредников, они выполняют защитную функцию от внешних атак для компьютеров пользователей. И при попытке установки связи с сервером брокера, запрос трейдера попадает именно на прокси-сервер провайдера.
Теоретически трейдеры могут быть лишены доступа к торговле на платформе MetaTrader 4, если контролирующие органы решат заблокировать IP-адреса определённых брокерских компаний. В этом случае можно настроить терминал таким образом, чтобы он подавал не прямой запрос IP -адреса брокера, а обращение к адресу частного прокси-сервера, не имеющегося в списках на запрет. Обычно частные трейдеры сталкиваются с такой ситуацией, когда пытаются вести торговлю будучи офисными сотрудниками, во время своих перерывов на работе, в то время как администраторы локальной корпоративной сети блокируют доступ к портам 80 и 443, чтобы ограничить выход работников в сеть интернет в рабочее время. Что нужно делать? Первым делом необходимо получить пароль и адрес сервера у администратора или провайдера. Далее:
- 1. Запускается MetaTrader 4/5, затем необходимо в меню
Сервис
выбрать пунктНастройки
; - 2. На вкладке
Сервер
отметить использовать прокси-сервер (1), нажать кнопкуПрокси
. В новом окне ввести полученные ранее от провайдера логин и пароль.
В конце адреса сервера через двоеточие необходимо указать адрес порта, а также заранее узнать тип прокси.
Провайдер или администратор могут отказать в предоставлении адреса по тем или иным причинам, тогда трейдер должен будет сам отыскать прокси-сервер, который обеспечивает анонимный доступ к необходимым интернет-ресурсам. Пользователь приобретает адрес либо может использовать бесплатный, и если в первом случае будет выдаваться логин, пароль, порт и адрес, то во втором случае логина и пароля может и не быть. Адрес следует выбирать с высоким пингом, и вписывать его через двоеточие, указав номер порта и вид сервера HTTP.
Поля для логина и пароля остаются пустыми. Для проверки работоспособности адреса необходимо выбрать опцию Тест
, после чего должна появиться надпись Тест пройден
. Далее клик по кнопке ОК
, закрываем все окна и можно приступать к торговле:
Рис. 9. Использование альтернативного прокси сервера для восстановления связи терминала с брокером.
Установка терминала на сервер VPS — ещё одна причина, по которой возникают проблемы со связью. Ну и убедитесь, что ваш счёт не заблокирован брокером, в частности по причине долгой неактивности. Если после продолжительного перерыва вы решите возобновить торговлю, а терминал показывает, что связи нет, то обратиться надо в Службу поддержки
ДЦ.
Заключение.
Чаще всего терминал не может связаться с сервером брокера по причине его установки на компьютер впервые. Реже причину потери связи терминала стоит искать в плохом или отсутствующем интернете, в необходимости переустановки операционной системы или работе антивируса. Надеемся, вам не придётся сталкиваться с такими проблемами, но если когда-то и вы увидите значок, информирующий об отсутствии связи — то вышеописанные способы должны помочь вам в решении этого вопроса.