Клиринг в тестере

 
В эту тему были перенесены комментарии, не относящиеся к "Новая версия платформы MetaTrader 5 build 3091: Улучшения в работе".
 

Коллеги, размышлял в какую тему писать - решил сюда - прошу помочь сообщить данные и как с этим работать, а именно учитывать расходы на клиринг в тестере - вот например данные где синхронизация не считается  при тесте:


т.е. также наборе селл позиции по рынку

а вот с реала - отчет - вариационная маржа закрыта (т.е. сверена - причем не было, убыточных закрытий, чисто по открытым позициям сняли промежуточную вариационную   маржу на момент клиринга, также при наборе роботом (и руками) селл позиции:


вопрос - как это учитывать в тестере, т.к. при тесте как это учитывать (может где - то выставить, чтобы считал, т.к. идет расхождение между этими вычитами - в  тестере их нет - на реале - есть...

Как это все свести, чтобы было все единообразно (или максимально единообразно...)


Т.е. в тестере понятно текущий убыток:


но он не снимается по клирингу... когда цена итоговая находится выше цены открытия итоговой позиции...

и уже понятно потом при выходе в профит и перевода в бу + уже все закрывается в плюса:



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

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

Как рассчитать размер закрытия вариационной маржи в тестере при клиринге? (хотя бы примерно и грубо оценить)

Другими словами, как учесть в тестере,  закрытие в минуса вариационной маржи при клиринге (как на реале)? Чтобы объективно считать перевод в безубыток совокупной позиции?

В общем нужны пути решения, соответствия расчетов всех КОМИССИЙ и прочих в реале и в тестере...  если не абсолютных, то как их программно оптимально считать - тоже снятие с баланса по закрытию вариационной маржи при клиринге? Хотя бы примерно, с какими - то приемлемыми допусками... чтобы понимание было - например в моем случае - грамотный расчет итоговой набранной позиции при переводе ее в безубыток, чтобы это был БЕЗУБЫТОК + (как тестере), но не минус (как в реале сейчас) из-за снятий промежуточных закрытием вариационной маржи при клиринге.


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


 
Roman Shiredchenko #:

Не очень понятно написано.

Могу предположить, проблема в том, что после клиринга учитывается не оригинальная цена открытия(набора) позы, а цена клиринга?

И вопрос, как это сымитировать в тестере?

 
Большая просьба, если это возможно сделайте чтобы на форвард-тесте задания агентам давались хотя бы более мелкими партиями( я уж не говорю про равномерное распределение между агентами), а то агенты могут отваливаться или не сразу соединяться с основным компьютером(с задержкой) и каким то агентам дается по 2000 заданий а каким то не достается вообще(либо в процессе они отключаются, отваливаются по неизвестной мне причине) большинство агентов просто простаивает и происходит длительное ожидание  пока агенты которым достались задания закончат пакет, это может длится более суток так как история длинная, и одна оптимизация вместо 50 часов идет 250 и более, думаю это актуально так же для использования облачных агентов, я как то пробовал они постоянно тоже отваливаются и присоединяются, в бэк-тесте таких проблем нет.  Большое спасибо заранее, это очень поможет так как оптимизировать много нужно с форвардом 1\2 1\3. 
 
Roman Shiredchenko #:

Всё равно не очень понял.

Если грубо-приближённо, суть клиринга сводится к тому, что часть прибыли/убытка начисляется/списывается до реального закрытия позы, и для позы выставляется новая "цена открытия", с учётом этого начисления/списания. Всё равно, сумма прибыли/убытка клирингов и закрытия позы будет той же (примерно).

Клиринги как таковые не мешают, а вот сделки типа "Balance" сбивают с толку сильно.

 
Roman Shiredchenko #:

Прибыль на клирингах + прибыль на закрытии позы на реале = прибыль в тестере. "Прибыль" везде со  знаком.

Хотя, имитация клиринга может быть нужна для правильного расчёта свободной маржи. Но тогда надо имитировать и "Correction", и "Balance", что, IMHO, малореально.

 
JRandomTrader #:

Всё равно не очень понял.

Если грубо-приближённо, суть клиринга сводится к тому, что часть прибыли/убытка начисляется/списывается до реального закрытия позы, и для позы выставляется новая "цена открытия", с учётом этого начисления/списания. Всё равно, сумма прибыли/убытка клирингов и закрытия позы будет той же (примерно).

Клиринги как таковые не мешают, а вот сделки типа "Balance" сбивают с толку сильно.

JRandomTrader #:

Прибыль на клирингах + прибыль на закрытии позы на реале = прибыль в тестере. "Прибыль" везде со  знаком.

Хотя, имитация клиринга может быть нужна для правильного расчёта свободной маржи. Но тогда надо имитировать и "Correction", и "Balance", что, IMHO, малореально.


Да как вы понять не можете, или до меня еще не доходит - я вот о чем что из за вот такой лабуты:



и через две строчки ниже где -303 происходит  отличие данных в тестере и в реале!!!!!!!

Изменение цены открытия я что - то не замечал после этих списаний с баланса.

--------------

П.С. Если никак  нельзя будет в тестере подобное отобразить или учесть, то буду тогда в реале со сделок считывать данные по этим убыткам (посоветуйте вариант) и при переносе СЛ в профит небольшой буду учитывать эти списания....

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

Что я переношу стоп лосс например на 30 пп в профит и если у меня он закрывается по то чтобы ИТОГОВАЯ сумма баланса становилась БОЛЬШЕ размера списаний вот таких промежуточных: variation margin close, как сейчас, например.

Если я выставлю СЛ + 30 пп от цены открытия - то будет профит 30 * 1 рубль с контракта * 12 контрактов = 360 руб - закрытие в профит, НО  У МЕНЯ ВЧЕРА СПИСАЛИ С БАЛАНСА -700.00 руб и выше!!!! Поэтому итоговое закрытие будет в минус!!!!!!!!!!!!!!!

Вопрос то в другом, что в тестере - все в плюса!!!! как это в тестере учесть? Чтобы если и были то отличия - минимальны!!!!!!


Что я хочу донести?

Что в итоге тестер работает вот так:


реал с теми же значениями параметров работает во так:

за счет списание вариационной маржи в течение дня - выход в минус от точки входа набора ЭТИХ 12 контрактов:


Вот и сейчас данные абсолютно верны 6983 - 6949 = 34 пп. Если их умножить на кол-во контрактов в рынке 12 контрактов * 34 = 408 руб, что и показывает во вкладке ИНСТРУМЕНТЫ - текущий прибыль убыток!


Так во если бы я где - нибудь здесь - на красной стреле - перевел СЛ в профит - на зеленой стреле - ТО ЗАКРЫЛО БЫ В ОБЩИЙ МИНУС: -700 + 400 = -300 РУБ. Где то -300,00 руб примерно: 


А в тестере была бы просадка по эквити, которую по сути отбили  и все!!!!!!!!!!!!! и Итоговое закрытие было бы в ПЛЮСА И ВСЕ!!!!!!!!!!!

В реале минуса например за счет списаний: variation margin close за день 700 руб. Как это лучше учитывать (на реале понятно возможно - считаю данные с истории сделок - буду сравнивать - работает - нет, НО в тестере - КАК????????????????????????

Как привести в соответствие реала и тестера????????????

Как в тестере внести учет и этих расходов???????????????

В этой вкладке тестера  НЕТ ( или я сейчас не нашел таких настроек, чтобы учитывать!!!!!)


В общем нужна помощь как правильно учитывать списания в течение дня с баланса, например, при клирине????  Чтобы их закладывать  и учитывать перед закрытием позиции!!!!!!!!

 
Roman Shiredchenko #:


Вот и сейчас данные абсолютно верны 6983 - 6949 = 34 пп. Если их умножить на кол-во контрактов в рынке 12 контрактов * 34 = 408 руб, что и показывает во вкладке ИНСТРУМЕНТЫ - текущий прибыль убыток!


Так во если бы я где - нибудь здесь - на красной стреле - перевел СЛ в профит - на зеленой стреле - ТО ЗАКРЫЛО БЫ В ОБЩИЙ МИНУС: -700 + 400 = -300 РУБ. Где то -300,00 руб примерно: 


Таки предлагаю поразмыслить, откуда взялась цена открытия позы 6983, если набор позы шёл, судя по скрину:

sell 2 6861

sell 2 6876

sell 2 6896

sell 2 6922

sell 2 6986

sell 2 6976


2 модеры: отрежьте, плз, со 148 поста в отдельную тему, не место этому тут.

 
JRandomTrader #:

Таки предлагаю поразмыслить, откуда взялась цена открытия позы 6983, если набор позы шёл, судя по скрину:

sell 2 6861

sell 2 6876

sell 2 6896

sell 2 6922

sell 2 6986

sell 2 6976


2 модеры: отрежьте, плз, со 148 поста в отдельную тему, не место этому тут.

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

Как это тогда правильно считать и более - менее с тестером свести?

П.С. О клиринге - еще почитаю...

 
Roman Shiredchenko #:

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

Как это тогда правильно считать и более - менее с тестером свести?

П.С. О клиринге - еще почитаю...

Мне лень, предлагаю посчитать самостоятельно:

набор позы как я указал, закрытие позы - по какой она была закрыта реально.

открытие позы - по цене последнего клиринга, закрытие позы - по какой она была закрыта реально, плюс результаты всех клирингов по этой позе

и сравнить.

 
Roman Shiredchenko #:

В общем нужна помощь как правильно учитывать списания в течение дня с баланса, например, при клирине????  Чтобы их закладывать  и учитывать перед закрытием позиции!!!!!!!!

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

Вам можно попробовать в советнике поменять принцип работы вашего трала/стопа, как я понял он у вас работает по общему профиту.

Я точно не помню, но сделки закрытые на клиринге чем то отличаются от сделок закрытых советником, в OnTradeTransaction()  посмотрите что пишет .

И тогда можно будет ваш общий трал/стоп скорректировать на сумму закрытия закрытия сделок при клиринге.

Блин, не понятно написал, вроде понимаю, что хочу донести, а сформулировать не получается.

Причина обращения: