Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Мониторьте расхождение между TimeLocal и TimeCurrent.
И если TimeLocal() будет в таких ситуациях отставать, причина в операционной системе?
TimeLocal не отстает. Расхождения - брокер.
Может кто-то сталкивался, в чем может быть причина таких зависаний или торможений?
Первое что приходит на ум - баг в коде из-за которого запускается расчет который длится очень долго по времени (например в цикле от 1 до 10 из-за бага перебирается весь int)
TimeLocal не отстает. Расхождения - брокер.
Первое что приходит на ум - баг в коде из-за которого запускается расчет который длится очень долго по времени (например в цикле от 1 до 10 из-за бага перебирается весь int)
Вроде, в справке, написано, что зацикленный эксперт не может нарушить работу других программ. А тут все замирает, потом все снова начинает работать.
Параллельно работает 7 терминалов МТ4 и три терминала МТ5. Может мощностей не хватает ?
Вроде, в справке, написано, что зацикленный эксперт не может нарушить работу других программ. А тут все замирает, потом все снова начинает работать.
Да, странно, я увидел только вкладку экспертов, логи не увидел в первый раз.
Параллельно работает 7 терминалов МТ4 и три терминала МТ5. Может мощностей не хватает ?
Если так, то скорее всего тормозили бы все терминалы. Ну и плюс загрузка проца должна просто шкалить на 100% в этом случае
Множество TerminalA - терминалы, которые имеют данные о пинге (xxx ms) до access points.
Множество TerminalB - терминалы, которые не имеют данных о пинге (n/a) до access points.
Терминалы из обоих множеств могут быть подключены при этом к одной и той же Access Point и одинаково торговать - OrderSend отправляются и принимаются ответы.
TerminalA минимально грузит процессор.
TerminalB:
Если столкнулись с необъяснимо высокой загрузкой CPU, попробуйте сделать перескан. Мне это помогло все TerminalB сделать TerminalA.
Не знаю причин, но, похоже, у моего брокера торговый оборот, количество сделок и количество активных торговых счетов на MT5 больше, чем на MT4.
К сожалению, есть только суммарная информация по платформам.
Но косвенные признаки дают повод говорить об опережении MT5 над MT4. Причины такого положения дел - только гадать.
Что знаю про клиентов:
Мониторьте расхождение между TimeLocal и TimeCurrent.
Спасибо за подсказку. Поймали такую ситуацию. В OnTimer() отслеживал расхождение между TimeLocal() и TimeCurrent()
Со вчерашнего вечера в 21:58 TimeCurrent() стал возвращать одно и то же время. Отпустило сегодня в 00:08. Т.е. чуть более двух часов была такая ситуация со всех символов.
Не удаленной машине (не VPS) с хорошими характеристиками и пингом до торгового сервера <4 мс увидел много случаев регулярных тормозов при просмотре логов Терминалов (b2958).
Взял первый попавшийся для демонстрации здесь.
2022.01.18 23:00:09.375 Trades '': modify order #7133346 sell limit 0.23 USDCHF at 0.91744 sl: 0.00000 tp: 0.91709 -> 0.91741, sl: 0.00000 tp: 0.91709 2022.01.18 23:00:17.752 Trades '': accepted modify order #7133346 sell limit 0.23 USDCHF at 0.91741 sl: 0.00000 tp: 0.91709 -> 0.91741, sl: 0.00000 tp: 0.91709 2022.01.18 23:00:17.769 Trades '': modify #7133346 sell limit 0.23 USDCHF -> price: 0.91741, sl: 0.00000, tp: 0.91709) done in 8393.712 ms
Модификация лимитника длилась восемь секунд. Большинство же модификаций происходит за такое примерно время.
2022.01.18 23:11:00.751 Trades '': modify #7133346 sell 0.23 USDCHF sl: 0.00000, tp: 0.91711 -> sl: 0.00000, tp: 0.91712 2022.01.18 23:11:00.761 Trades '': accepted modify #7133346 sell 0.23 USDCHF sl: 0.00000, tp: 0.91711 -> sl: 0.00000, tp: 0.91712 2022.01.18 23:11:00.763 Trades '': modify #7133346 sell 0.23 USDCHF -> sl: 0.00000, tp: 0.91712 done in 12.422 ms
Даже для пинга 4 мс это многовато, но все же ни в какое сравнение не идет с восемью секундами.
На машине работают только MT5-терминалы и средняя нагрузка на CPU ~1%. Анализ показал, что во время тормозов нагрузка вплесками доходит до 100% при сильной активности рынка и торговых приказов. Как итог, ответ от торгового сервера до терминала длится ОЧЕНЬ долго. По случаям тормозов запрашивал у брокера информацию. На стороне торгового сервера все мгновенно и приказ доходит от терминала до сервера по первой строке modify. Т.е. отправка приказа не тормозит, лаги случаются при получении ответа в терминал.
Сомневаюсь, что разработчики смогут здесь что-то улучшить. Кто ОЧЕНЬ активно торгует, поделитесь наблюдениями этой темы по своим логам.