Ошибки, баги, вопросы - страница 1905
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Разряжал батарею на ноуте.
Работал в MetaEditor 1601.
Заряд батареи был на 0% и во время компиляции МТ4 программы ноут вырубился из-за нехватки питания.
Какое мое удивление, когда в следующий раз открыв рабочий файл вместо кода оказалось 311 KB NUL значений.
По возможности, рассмотрите пожалуйста вариант более безопасной реализации процедуры сохранения во время компиляции.
лучше поставить охранника к ноуту, который будет следить за зарядом батареи и при необходимости вставлять штепсель в розетку ))
Гибернация для этих целей есть... и розетки с таймером...
Вы уверены что число именно 860000000000000000 ?
Если перевести такое количество бит в гигабайты то получим - 1075000000 Гб.
Сам нули считал....
Сейчас поставил 6.18e+18, если будет больше OnTesterPass вызывается только на новом поколении. При прямом переборе вообще не вызывается... И об этом ни слова в справке. Люди должны сами выискивать такие "особенности" тестера, тратив на это уйму времени.
чего то запутался в спецификации контрактов:
2. цена тика == стоимость 1 пункта == SYMBOL_POINT
правильно я понимаю?
Данная путаница возникла из-за акции TGKA у брокера Открытие, там в спецификации указано не верно:
1. размер тика == 0.000005
2. цена тика == 0.00001 (должно быть 0.000001)
Здравствуйте! В МТ4, при удалении лимитного ордера расположенного внутри спреда часто возникает ситуация ошибки – зависает удаляемый ордер, которая лечится только перезагрузкой терминала. Насколько я смог разобраться механизм ее возникновения такой:
1) Выставляем лимитку внутри спреда, близко к цене Ask (для ордеров Buy Limit) или Bid (для ордеров Sell Limit) и через некоторое время пробуем её удалить.
2) Посылаем команду OrderDelete(), пока эта команда идет на сервер - ордер может уже исполниться на сервере (он же внутри спреда очень близко к цене активации). Получается, что когда команда дойдет до сервера, она будет применена уже к рыночному ордеру – получаем ошибку в терминале и зависший ордер. Ордер в терминале, при этом, остается лимитным (через функцию OrderType() - также определяется как лимитный), рыночным он отобразится только после перезагрузки терминала. Если продолжать удалять его как лимитный будем видеть ошибку в логе экспертов под кодом: 3, а в логе журнала терминала: [Invalid parameters]. Вообще никакие действия с подвешенным таким образом ордером невозможны – в терминале он лимитный, а на сервере рыночный. Вручную ордер так же не удаляется.
Прилагаю упрощенный советник (только для Buy Limit), для воспроизведения ошибки, и профиль с установленными параллельно 8-ю советниками (так ошибка проявится быстрее, чем, если ее ловить одним советником – хотя она возникает и при одном установленном советнике). Ордер Buy Limit в советнике устанавливается на 1 пятизначный пункт ниже цены Ask и удаляется через 1 секунду после установки. Если установить ордер даже в 5 пунктах ниже Ask и удалять через любое количество секунд/минут/часов ошибка все равно периодически возникает, просто реже, потому что механизм ее возникновения не меняется.
Необходимо запустить терминал и дождаться появления зависшего ордера. Обычно ждать не более часа, в зависимости от активности рынка.
На всякий случай, система:
Microsoft Windows XP (X86 based PC), IE 08.00, 2 x Intel Core i3-2120 @ 3.30GHz, RAM: 2421 / 3981 Mb, HDD: 195187 / 666422 Mb, GMT+03:00
МТ4: Version 4.00 Build 1090 (19 May 2017)
MetaEditor: Version 5.00 build 1601 (19 May 2017)
Последний билд терминала не может подключится к ICMarkets реал. Заменил на более старый 1596 - чудесно подключился.
И вот спрашивается, а нужно ли обновляться терминалу на самые последние билды, если сервера брокеров ещё не обновились?
Здравствуйте! В МТ4, при удалении лимитного ордера расположенного внутри спреда часто возникает ситуация ошибки – зависает удаляемый ордер, которая лечится только перезагрузкой терминала. Насколько я смог разобраться механизм ее возникновения такой:
1) Выставляем лимитку внутри спреда, близко к цене Ask (для ордеров Buy Limit) или Bid (для ордеров Sell Limit) и через некоторое время пробуем её удалить.
2) Посылаем команду OrderDelete(), пока эта команда идет на сервер - ордер может уже исполниться на сервере (он же внутри спреда очень близко к цене активации). Получается, что когда команда дойдет до сервера, она будет применена уже к рыночному ордеру – получаем ошибку в терминале и зависший ордер. Ордер в терминале, при этом, остается лимитным (через функцию OrderType() - также определяется как лимитный), рыночным он отобразится только после перезагрузки терминала. Если продолжать удалять его как лимитный будем видеть ошибку в логе экспертов под кодом: 3, а в логе журнала терминала: [Invalid parameters]. Вообще никакие действия с подвешенным таким образом ордером невозможны – в терминале он лимитный, а на сервере рыночный. Вручную ордер так же не удаляется.
Прилагаю упрощенный советник (только для Buy Limit), для воспроизведения ошибки, и профиль с установленными параллельно 8-ю советниками (так ошибка проявится быстрее, чем, если ее ловить одним советником – хотя она возникает и при одном установленном советнике). Ордер Buy Limit в советнике устанавливается на 1 пятизначный пункт ниже цены Ask и удаляется через 1 секунду после установки. Если установить ордер даже в 5 пунктах ниже Ask и удалять через любое количество секунд/минут/часов ошибка все равно периодически возникает, просто реже, потому что механизм ее возникновения не меняется.
Необходимо запустить терминал и дождаться появления зависшего ордера. Обычно ждать не более часа, в зависимости от активности рынка.
На всякий случай, система:
Microsoft Windows XP (X86 based PC), IE 08.00, 2 x Intel Core i3-2120 @ 3.30GHz, RAM: 2421 / 3981 Mb, HDD: 195187 / 666422 Mb, GMT+03:00
МТ4: Version 4.00 Build 1090 (19 May 2017)
MetaEditor: Version 5.00 build 1601 (19 May 2017)
Обновляйте Windows и пользуйтесь лицензией
Обновляйте Windows и пользуйтесь лицензией
Бред.
Для разработчиков - информация о системе взята из лога терминала. Не знаю, почему там не отображается что система с пакетом обновлений SP3.
Бред.
Для разработчиков - информация о системе взята из лога терминала. Не знаю, почему там не отображается что система с пакетом обновлений SP3.
Ренат писал, что с 10 июня XP и Vista не будeт поддерживаться