Выпущена бета-версия MetaTrader 4 Build 582 с обновленным языком MQL4 и Маркетом приложений - страница 39
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
1. Новый режим без переоткрытия соединения работает только с новыми серверами. Попробуйте на MetaQuotes-Demo. Для старых серверов поддерживается старый режим для совместимости.
2. Время в логах точное на момент событий. Отображение логов в окне работает в режиме ленивого обновления.
1 спасибо
2 не понимаю но почему то теряю примерно 500 мс на выполнение чтения из файла в памяти в цикле со слипом 2 мс
через микого к примеру могу показать как это происходит и код эксперта тоже в личном сообщении
в 509 такого эффекта не было
использую MemMapLib.mqh
точнее от команды чтения и до отправки приказа на сервер
в лог журнала вижу что первое сообщение
еще вот давно такого не видел (хотя это при обновлении серверной части надеюсь уйдет)
Пропал запрос на модификацию
По логу эксперта видно что была попытка модифицировать отложку в 23,43,30 а по логу терминала этой записи нет да и время затраченное на модификацию меньше дискретности счетчика GetTickCountЧто нужно сделать:
1) Никогда не вызывать Order функции без сохранения их результатов. Именно тут ваша главная ошибка. То есть result=OrderModify(). Не надейтесь, что можете потом GetLastError вызвать. Да и с GetlastError ошибка - он вызывается сильно после операции с ордером. А именно, после GetTickCount.
2) Выводите в лог все важные параметры перед посылкой запроса. Так сразу будет ясно, где проблема.
К сожалению, без кода не помогу. Пишите в сервисдеск с приложением файлов, пожалуйста.
Все файловые операции проверяйте на наличие FileFlush и если такие находите, удаляйте их от греха подальше. Хуже функции для убийства производительности файловых операций придумать сложно.
К сожалению, без кода не помогу. Пишите в сервисдеск с приложением файлов, пожалуйста.
Все файловые операции проверяйте на наличие FileFlush и если такие находите, удаляйте их от греха подальше. Хуже функции для убийства производительности файловых операций придумать сложно.
В эксперте из файловых есть только вот это
сдвиг и чтение 16 байт сильно грузить проц в цикле 2 мс ?
а что будет если я в эксперте повешу его на внешнее событие ?
типа API SetEvent (hEvent1);
вместо while и соответственно когда нужно обновлюсь RefreshRates();
загрузка процессора в 100% или будет 0 как и другое ПО которое ждет события ?
2) Выводите в лог все важные параметры перед посылкой запроса. Так сразу будет ясно, где проблема.
Просто эксперт взят из 509 там стабильно работало вот и удивился пропажей запроса. Сейчас буду переделывать на новые условия
Все файловые операции проверяйте на наличие FileFlush и если такие находите, удаляйте их от греха подальше. Хуже функции для убийства производительности файловых операций придумать сложно.
Разъясните, пожалуйста. В моем понимании FileFlush должна очистить буфер файла в операционной системе, переписав его содержимое в буфер контроллера жесткого диска. А здесь, что, она еще и из контроллера на магнитные пластины переписывает?
Метаквоты, скажите, какая цель преследовалась при запрете компиляции строковых массивов для передачи в DLL? Что за цель такая? Чтобы побольше проблем было? Чтобы жизнь мёдом не казалась? Особенно в переходный период.
Почему вы напридумывали разных ненужных базовых структур, а о передачи строк в массивах, как раньше было, не подумали? Почему бы не сделать такую базовую структуру? Почему бы, как раньше, не оставить передачу типа string в массиве, как ту самую структуру? Это совсем не сложное изменение компилятора. Не сложнее ООП. Но лучше, пусть это будут указатели.
Когда прочитал анонс, понял, что передачу массива структур типа MqlStr больше не будет. Подумал, что наконец-то будет передача массивов указателей на строки, как в нормальных языках. Как же, размечтался... Запретить запретили и ничего взамен не предоставили. Пипец! Зато о полной совместимости, как заклинание... Мне бы дажу в голову бы не пришла такая подлянка. Ни за что не догадался бы!
Пришлось поизучать MQL5. Приближенный к С++... :(
Вробе бы и С++, но обязательно с какими-то подвывертами и ограничениями. После, которых писать ничего не хочется.
Это больше походит на С== (четыри минус). На больше не тянет.
Логи терминала сильно похудели. Зачем?