Тотальный сбой самописного робота. Помогите разобраться! - страница 2

 
sktrading_pro:

Всем привет!

28 декабря (понедельник) в самом начале торговой сессии (с первых минут) произошла странная ситуация, когда советник, до сих пор работавший без сбоев, стал неконтролируемо набирать позиции и, естественно, слил депозит.

Прошу помочь в сложившейся ситуации, поэтому опишу все максимально подробно.

Робот самописный, ему уже 3 года, оттестирован не на одном счете за все это время. Подобных проблем не наблюдалось. Хотя не исключаю, что чисто теоретически они вполне могли быть возможны.

Советник работает по сеточной технологии, открывая позиции на покупку и на продажу через определенный шаг от ближайшей открытой позиции этого же типа (в данном случае 50 пунктов). При этом, после отправки запроса на открытие позиции 5 секунд он ждет исполнения запроса, после чего отправляет повторный запрос. Т.е. существует критерий отправки запроса – расстояние в пунктах от соседней позиции того же типа и временной интервал 5 секунд, рассчитанный на то, что в это время сделка будет открыта брокером.

В итоге, проанализировав историю и логи, получили следующее: на реальном счете одного из брокеров позиции начали открываться по 2-4 в секунду (запросы на открытие ордеров исполнялись без задержек) на одном и тот же уровне котировки (полюс/минус один-два пипса). На демо-счете этого же брокера позиции открывались так же без учета уровней отступа от соседних позиций (по одной и той же цене), однако временной интервал задержки соблюдался и даже был больше. Позиции открывались каждый 20-40 секунд, но опять же на одном и том же уровне постепенно набирая лот.

Помогите разобраться со сложившейся ситуацией. Подскажите вероятную причину такой ситуации и наиболее грамотное решение, чтобы застраховаться от такого на будущее.

Заранее благодарен!

P.S. С удовольствием поделюсь логами и самой разработкой с тем, кто захочет реально помочь разобраться и/или заинтересован в совместной работе и развитии советников.

проверьте следующее (из личного опыта):

- если у Вас пятизнак, то посмотрите не слетели ли цифры, т.е. 500 пунктов не превратились ли в 50, как на четырех - знаке, т.е. тогда канал для усреднения станет 5 настоящих четырехзначных пунктов,

- также возможно в это время было расширение спреда и если в роботе отсутствует проверка на размер спреда - если большой, то не торговать, то возможно и из-за этого открывал и закрывал позиции в минуса и лил по спреду.

 

Друзья, всем спасибо за отклик!

Нахожусь в отъезде, вернусь после 5 марта и будем все вместе думать над тем, что и почему пошло не так.

 
sktrading_pro:

Всем привет!

28 декабря (понедельник) в самом начале торговой сессии (с первых минут) произошла странная ситуация, когда советник, до сих пор работавший без сбоев, стал неконтролируемо набирать позиции и, естественно, слил депозит.

Прошу помочь в сложившейся ситуации, поэтому опишу все максимально подробно.

Робот самописный, ему уже 3 года, оттестирован не на одном счете за все это время. Подобных проблем не наблюдалось. Хотя не исключаю, что чисто теоретически они вполне могли быть возможны.

Советник работает по сеточной технологии, открывая позиции на покупку и на продажу через определенный шаг от ближайшей открытой позиции этого же типа (в данном случае 50 пунктов). При этом, после отправки запроса на открытие позиции 5 секунд он ждет исполнения запроса, после чего отправляет повторный запрос. Т.е. существует критерий отправки запроса – расстояние в пунктах от соседней позиции того же типа и временной интервал 5 секунд, рассчитанный на то, что в это время сделка будет открыта брокером.

В итоге, проанализировав историю и логи, получили следующее: на реальном счете одного из брокеров позиции начали открываться по 2-4 в секунду (запросы на открытие ордеров исполнялись без задержек) на одном и тот же уровне котировки (полюс/минус один-два пипса). На демо-счете этого же брокера позиции открывались так же без учета уровней отступа от соседних позиций (по одной и той же цене), однако временной интервал задержки соблюдался и даже был больше. Позиции открывались каждый 20-40 секунд, но опять же на одном и том же уровне постепенно набирая лот.

Помогите разобраться со сложившейся ситуацией. Подскажите вероятную причину такой ситуации и наиболее грамотное решение, чтобы застраховаться от такого на будущее.

Заранее благодарен!

P.S. С удовольствием поделюсь логами и самой разработкой с тем, кто захочет реально помочь разобраться и/или заинтересован в совместной работе и развитии советников.

Лет 7 назад у меня случался подобный случай. Случай чрезвычайно редкий, уникальный, почти фантастический.
То что случилось вполне объяснимо. Изучение логов мало поможет выяснению причины.
Когда-то работал в организации, занимающейся (как говорят программисты) поиском ошибок. Там использовалась особая методика.
Народу было много. А специалистов, освоивших эту методику, можно было пересчитать по пальцам.
Позже мне удалось расширить методику на многие отрасли.
Методику, кстати, можно выразить тремя волшебными словами. Попробуйте придумать их.
Но в данном случае требуется ответить на вопрос:
что нужно сделать для достижения этого эффекта, если Вам дать возможность
внести минимальные изменения в систему: советник, терминал, компьютер, интернет, сервер.

Какие проверки должен пройти торговый робот перед публикацией в Маркете
Какие проверки должен пройти торговый робот перед публикацией в Маркете
  • www.mql5.com
Все продукты Маркета перед публикацией проходят обязательную предварительную проверку для обеспечения единого стандарта качества. В этой статье мы расскажем о наиболее частых ошибках, которые допускают разработчики в своих технических индикаторах и торговых роботах. А также покажем как самостоятельно проверить свой продукт перед отправкой в Маркет.
 

Вчера обнаружился странный сбой. В подокне индикатора вдруг появилась много стрелок

1

После перезапуска работа восстановилась

2

в чем причина такого сбоя и как же с ней бороться и как избавиться?

 
Konstantin Erin:

Вчера обнаружился странный сбой. В подокне индикатора вдруг появилась много стрелок

После перезапуска работа восстановилась

в чем причина такого сбоя и как же с ней бороться и как избавиться?

Ошибка в коде - не обрабатывается ситуация, когда есть более одного нового бара.

 
sktrading_pro:

Нахожусь в отъезде, вернусь после 5 марта и будем все вместе думать над тем, что и почему пошло не так.

Так и не приехал автор ветки что ли? ))

 
Vladimir Karputov:

Ошибка в коде - не обрабатывается ситуация, когда есть более одного нового бара.

Вычисления производятся каждый тик. Весь день показания индикатора были правильными. По-вашему это ошибка разработчиков терминала? Терминал сформировал лишний бар? Иначе откуда взяться лишнему бару!

 
Konstantin Erin:

Вычисления производятся каждый тик. Весь день показания индикатора были правильными. По-вашему это ошибка разработчиков терминала? Терминал сформировал лишний бар? Иначе откуда взяться лишнему бару!

Это ошибка ПИСАТЕЛЯ, который написал индикатор.

И вообще, возьмите за правило: если есть вопрос, сразу публикуйте полный MQL5 код, чтобы не повторялась ситуация, когда по несколько страниц уходит на вытягивание кода.

Алгоритм простой - нет MQL5 кода и нет подробного описания возникшей проблемы - нет помощи.

 
Vladimir Karputov:

Это ошибка ПИСАТЕЛЯ, который написал индикатор.

И вообще, возьмите за правило: если есть вопрос, сразу публикуйте полный MQL5 код, чтобы не повторялась ситуация, когда по несколько страниц уходит на вытягивание кода.

Алгоритм простой - нет MQL5 кода и нет подробного описания возникшей проблемы - нет помощи.

Индикатор взят здесь https://www.mql5.com/ru/code/8273
Советник Trix
Советник Trix
  • www.mql5.com
Данный эксперт основан на индикаторе Trix, созданном raff1410
 
Konstantin Erin:
Индикатор взят здесь https://www.mql5.com/ru/code/8273

Форум про MQL5. И я просил MQL5 код. 

Если до сих пор сидите на старом терминале - задавайте, пожалуйста, свои вопросы в специально отведенном разделе: MQL4 и MetaTrader 4