12еместо

0

0
0

Чтоб корректно учитывалось время совершения открывающих операций

Чтоб корректно учитывалось время совершения открывающих операций.
Поясним на примере.
Допустим, были открыты 2 ордера (лота): в –время открытия: ц - цена открытия:
л – лот(объём).
Сгенерируем третий ордер, который являлся бы с точки зрения торговли полным
эквивалентом этим двум ордерам. То есть такой ордер, при открытии которого
можно было бы удалить первые два ордера , и торговля при этом не нарушилась
бы и осталась бы той же (замечу, что вся эта генерация делается
чисто теоретически, поскольку нынешние торговые сервера не позволят
это сделать).

Генерация результирующего лота (ордера)
от двух лотов (ордеров)

ц0= (л1*ц1+л2*ц2)/(л1+л2)
в0=(л1*в1+л2*в2)/(л1+л2)
(объём лота)
л0=л1+л2

ц0, в0 – справедливые цена и время открытия результирующего лота.
л0=л1+л2 – его объём. (Напомню, что время в торговых терминалах и
серверах отсчитывается в секундах от Ч:М:С: 00:00:00 1января 1970 года).
Указанная здесь генерация является корректной, чего нельзя с уверенностью
сказать о том, как такая генерация делается в нынешних серверах и терминалах.

ole8, 28.06.2014, 13:00
Официальный ответ
Андрей Грибков, 06.10.2014
Добрый день! Пока мы не планируем добавлять такую функциональность.
Статус идеи: отклонено

Комментарии

ole8, 30.06.2014, 00:52
Принцип FIFO (первым пришел - первым ушел) тоже требует учета времени прихода.
ole8, 13.11.2014, 01:01
12-Nov-14 23:23:44
Мы рассмотрели случай когда трейдер открыл две позиции одной направленности
(одного качества), т. е. оба – типа «купить» или оба – типа «продать». Это пример
усиления как-бы «мощности» (объёма) торговли.
теперь рассмотрим случай, когда трейдер открыл одну позицию (в момент времени т1),
затем «хэджировал» её, то есть открыл равновеликую противоположной направленности
позицию (в момент времени т2). Затем в момент времени т3 – закрыл вторую позицию.
затем в момент времени т4 снова открыл равновеликую противоположной направленности
позицию и т. д. Проанализируем этот случай. Пример 2.
Когда трейдер открыл первую позицию он начал торговлю. Когда трейдер открыл равновеликую и противоположную позицию, он остановил как-бы торговлю, как-бы
«выключил» торговлю. Когда трейдер вторую позицию закрыл, он снова «включил»
торговлю. Все ордера равновеликого объёма.
-----------------------------------------------------------------------------------------------
т1 т2 т3 т4 т5 т6 т7 т8
--------- -------- -------- --------- -есть торговля
------- ------- ------- -нет торговли
------------------------------------------------------------------------------------------------
т8 – текущий момент времени. В текущий момент времени суммарное время
торговли равно т2-т1+т4-т3+т6-т5+т8-т7.
На сервере и на терминале этот факт должен учитываться следующим образом
построения программы: В момент открытия хэджирующей позиции т2 запоминается т2.
В момент т3 вычисляется т3-т2 и на эту величину т3-т2 корректируется массив ордера
относящегося к ордеру, открытому в момент т1. В этом массиве параметр «время начала
торговли» был равен т1, он изменяется и устанавливается таким: т1+т3-т2.
То есть, учитываемое «время начала торговли» пододвигается ближе к современности
на величину первого перерыва торговли. Точно так же в момент т5 ещё раз «время начала
торговли» «пододвигается» на величину т5-т4. И т. д.
Таким образом, в текущий момент времени т8 Сервер/терминал должен иметь позицию,
Ренее открытую в момент т1 и его время открытия должно быть изменено (скорректировано)
В соответствии с имеющимся перерывом: т1+(суммарное время перерывов в торговле)
То есть т1+т3-т2+т5-т4+т7-т6. Оно должно быть изменено в массиве этого ордера.
Оно должно корректироваться каждый раз, как только заканчивается очередной перерыв.
Конец примера 2.

Оставить комментарий