Ошибки, баги, вопросы - страница 2766

 
Alexey Viktorov:

Но без выяснения остаётся второй вопрос. Что исполнится первым экспирация или активация ордера...

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

Однажды ночью звоню в банк в дилинг - интересуюсь - почему не исполнили мой ордер? Они говорят: а мы его не видим! Как не видите? Вот он у меня в MetaTrader висит - несколько часов назад поставил, а час назад цена там уже побывала. А мы отвечают вообще в другой программе работаем - утром придет человек - он нам данные из MetaTrader перекачает - и мы тогда все увидим.

Так что Ваши ордера меньше порога никого не интересуют (а больше порога идет торговля в режиме: цена по запросу), поскольку никуда не выводятся, а дилинг получает в лучшем случае совокупную позицию

 

В открытии обновился терминал до билда 2470

И вот не задача, робот начал в тестере показывать результаты хуже чем они были до обновления.

Начал разбираться и вот что увидел.

Прогоняя робота по истории в обычном режиме, в конце открывается график с отображением всех сделок, прокрутил и удивился тому что там происходит

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


Но, я взял и провел тот же тест, но только на визуальном тестировании, проведя визуальное тестирование, там все хорошо


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

Что делать куда копать

 
Konstantin Seredkin:

В открытии обновился терминал до билда 2470

И вот не задача, робот начал в тестере показывать результаты хуже чем они были до обновления.

...

Что делать куда копать

Копать в сторону проверки "А тот ли советник запускается при тесте"

 
Artyom Trishkin:

Копать в сторону проверки "А тот ли советник запускается при тесте"

Он единственный в терминале, больше нет, даже стандартные удалены

 
Konstantin Seredkin:

Он единственный в терминале, больше нет, даже стандартные удалены

Судя по поведению, которое вы описали - это иной советник с совсем другим алгоритмом работы.

 
Artyom Trishkin:

Судя по поведению, которое вы описали - это иной советник с совсем другим алгоритмом работы.

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

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

Но факт остается фактом, после окончания тестирования, на этот график накладываются реальные сделки.

Что бы они не накладывались я сделал следующее

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

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


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

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

 
Konstantin Seredkin:

помимо сделок тестера, на график накладываются реальные трейды которые были проторгованы в прошлом.

Такое поведение незаметно для тех, кто использует кастомные символы. Но для реальных символов выглядит совсем неудобным.

 

В отладчике значение GetLastError(); нельзя получить?

только через переменную или предопределенную _LastError ?

Файлы:
 
awsomdino:

В отладчике значение GetLastError(); нельзя получить?

только через переменную или предопределенную _LastError ?

Да. Этим удобны _Value.

 
fxsaber:

Да. Этим удобны _Value.

может разработчики добавят возможность смотреть в отладчике из функции GetLastError();

иначе эти удобные и простые 2 строки бесполезны

   if(GetLastError()>0)
      DebugBreak();