Подробный разбор. "Неверный счет".

 

1) Явление

Сообщение "Неверный счет" и полная остановка торговли

После действия "файл-выход", "логин" (идентификационные параметры по умолчанию, без изменений, опция "хранить личную информацию" вкл)

все ок (счет прежний,в поле "пароль" ничего не менял).

2) Регулярность

Минимум 1 раз в 36 часов

3) Повторяемость

Явление возникало на каждом из открытых счетов (11).

После 3-х явлений на счете счет я закрывал, удалял, регистрировал новый

3) Параметры счета

Демо, работает торгующий советник

4) Проверка на устойчивость соединения с Интернет

Сбоев соединения не было (мониторю спец. утилитой)

5) Проверка на нарушение советником условий торговли

Проведена. Явление возникает без связи с проведением торговой операции советником. (Если "нарушением" не считать серию TP более 6 подряд ;))

Т.е., в большинстве случаев советник не обращался к серверу с торговым запросом

(т.е не вызывал функцию вида OrderSend(), OrderClose, OrderCloseBy, OrderDelete или OrderModify)

В нескольких случаях (2-х из 33) был вызов торговой функции (считаю, что чистое совпадение, но на всякий случай -проверьте см. п 5.1, 5.2)

Вроде со стороны советника все корректно

5.1) Пример (лог терминала)

04:20:17 'xxxxxxx': instant order buy 1.00 GBPUSD at xxxxx sl: xxxxx tp: xxxxx
04:20:17 'xxxxxxx': request was accepted by server
04:20:17 'xxxxxxx': request in process
04:20:17 'xxxxxxx': order was opened : #xxxxxxxx buy 1.00 GBPUSD at xxxxx sl: xxxxx tp: xxxxx
04:20:17 Expert stdlib GBPUSD,M1: loaded successfully
04:24:17 Old tick GBPUSD1 1.62760/1.62810
04:24:31 Old tick GBPUSD1 1.62740/1.62790
04:24:49 Old tick GBPUSD1 1.62750/1.62800
04:36:01 'xxxxxxxx': connect failed [Неверный счет]

5.2) Пример (лог советника)

04:20:16 test GBPUSD,M1: open #xxxxxxxx buy 1.00 GBPUSD at xxxxx sl: xxxxx tp: xxxxx ok
04:20:16 stdlib GBPUSD,M1: loaded successfully
04:20:16 test_10_1_2 GBPUSD,M1: error(0): no error // здесь результат вызова функции GetLastError() (примечание мое)
04:20:18 test_10_1_2 GBPUSD,M1: 67: 0_2 order in market, ticket =xxxxxxxx
04:24:00 test_10_1_2 GBPUSD,M1: 67: 0_2 order in market, ticket =xxxxxxxx
04:28:44 test_10_1_2 GBPUSD,M1: 67: 0_2 order in market, ticket =xxxxxxxx
04:34:19 test_10_1_2 GBPUSD,M1: 67: 0_2 order in market, ticket =xxxxxxxx

//дальше время 08:30 -стал перелогиниваться


Знаю, что многие с таким сталкиваются.

Чаще всего списывают на ошибку ввода пароля.

Я уверен, что пароль тут не причем.

Вопрос: что тогда "Причем" и как с этим бороться?

 
alexnv писал(а) >>

1) Явление

Сообщение "Неверный счет" и полная остановка торговли

Вопрос: что тогда "Причем" и как с этим бороться?

Вернее всего это демо-счет и возможно в данном ДЦ его предоставляют на месяц.

 
Vinin >>:

Вернее всего это демо-счет и возможно в данном ДЦ его предоставляют на месяц.

Читайте, пожалуйста, внимательно:

п.2-3: Ни один счет без отключения не проработал более 36 ЧАСОВ (это 1,5 суток, а не месяц)

В том же ДЦ счета без советника и торговли активны более 2-х недель


Если предположить, что демо счета в ДЦ закрывают раз в сутки, что почему

(п.1)

После действия "файл-выход", "логин" (идентификационные параметры по умолчанию, без изменений, опция "хранить личную информацию" вкл)

все ок (счет прежний,в поле "пароль" ничего не менял).

Т.е счет ДЦ не закрывает.

Просто на определенный терминал перестают поступать данные и возникает сообщение "Неверный счет"


 
Смените ДЦ
 
alexnv >>:



Проверялось ли это "явление"  у другого брокера?

если ситуация аналогична, то провертесь на вирусы.

 
RomanS >>:
Смените ДЦ

Если дело в ДЦ, то сменить ДЦ - это не решение.

Вернее такое "Решение страуса" не подходит, т.к поощряет беспредел.


Важно Однозначно определить, что такое возможно только по инициативе ДЦ,

и, если это именно так, то установить Почему, Зачем, При каких условиях ДЦ так поступает


Про вирусы:

На компе, кроме WinXP, терминала и пары служебных прог вообще ничего нет (выделенный компьютер).

Антивирус NOD32 (с действ. лицензией) выполняет полную проверку каждый час


Если это результат управляющего воздействия с ДЦ,

я смогу засечь его с помощью WireShark.

Вопрос, когда врубать мониторинг (24/7- не подходит - нереальные для обработки объемы пишет)

 
какой ДЦ??? скинь в личку...
 
alexnv >>:

Если дело в ДЦ, то сменить ДЦ - это не решение.

Вернее такое "Решение страуса" не подходит, т.к поощряет беспредел.


Важно Однозначно определить, что такое возможно только по инициативе ДЦ,

и, если это именно так, то установить Почему, Зачем, При каких условиях ДЦ так поступает


Про вирусы:

На компе, кроме WinXP, терминала и пары служебных прог вообще ничего нет (выделенный компьютер).

Антивирус NOD32 (с действ. лицензией) выполняет полную проверку каждый час


Если это результат управляющего воздействия с ДЦ,

я смогу засечь его с помощью WireShark.

Вопрос, когда врубать мониторинг (24/7- не подходит - нереальные для обработки объемы пишет)


Повторюсь: Проверьте происходит ли такое на другом ДЦ, если да то проверьте на вирус систему, то что у вас стоит nod32 ни о чем не говорит!!!

и пусть он хоть кахдую секунду сканирует, это ничего не даст.

ставте файрвол!! (межсетевой экран), проверяйтесь регулярно лечащими утилитами разных антивирусов и даже в этом случае 100% гарантии нет.

На практике были схожие случаи - лечилось чисткой системы антивирусами. 

 

Вирусы оказались точно не причем.


Форматнул веник, поставил систему с "0" - только wxp+terminal+nod - все что есть на компе (комп - выделенный спец под FX)


Завел демки на 5 разных ДЦ - на каждом платформа MT4, дистрибутив терминала -с ДЦ 1, настроечные файлы с соотв. ДЦ.


Тестил 1 неделю


1 день - работает советник в +,

2 день- не работает (не совершает сделок)

3 день - работает советник в -

4 день - вообще без советника

5 день - работает советник в +- (1/1, не более 2-х подряд в +)


1 день

На этом же - проблемном (ДЦ1) -все стандартно -

04:36:01 'xxxxxxxx': connect failed [Неверный счет]

ДЦ 2 - ок

ДЦ3 - ок

ДЦ4 -Old tick GBPUSD1 1.55630/1.55680,

но в остальном вроде тоже ок


ДЦ 5 - что-то оригинальное

11:09:07 'xxxxxxx': connect failed [— ]


т.е там, где у ДЦ 1 [Неверный счет] - у ДЦ 5 - [— ]


2- 5 дни - все ДЦ - ок


Заметил, что вероятность отключения почти 100%,

если в течение 2-х часов есть последовательность более 5-ти TP, со средним

consecutive wins не менее 133.0

(на всякий случай повторю, что GetLastError() у меня выдает 0, т.е все в рамках правил)


Вывод: необходим скрипт, который бы с заданным промежутком проверял,

есть ли connect и, при необходимости, - перелогинивался.


Можете посоветовать как это запрограммировать?

 
alexnv писал(а) >>

Вывод: необходим скрипт, который бы с заданным промежутком проверял,

есть ли connect и, при необходимости, - перелогинивался.

Можете посоветовать как это запрограммировать?

см. тут https://www.mql5.com/ru/forum/122666 перескан и перелогин от Talex

 

Никто прова и не упомянул.