Выполнение лимитированных заявок в HistoryTestTrader


Выполнение лимитированных заявок в HistoryTestTrader
Atom
2/17/2011


Попробовал выставлять лимитированные заявки: правильно ли я понял, что они выполнятся при условии, если цена ask из стакана(для заявки на покупку) опускается до цены ордера, и по цене ask (часто отличной от цены в ордере)?

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

Заранее спасибо



Thanks:


<< < 3 4 5 
andy

Avatar
Date: 3/4/2011
Reply


Mikhail Sukhov Go to
pyhta4og Go to
И те и другие опаздывают, но это РЕАЛЬНОСТЬ.


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


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

pyhta4og

Avatar
Date: 3/4/2011
Reply


Ну вот нас уже двое.

Мне кажется это уже повод на то чтобы фиче-реквест с введением Trade.LastChangeTime был рассмотрен ;)

Thanks:

Mikhail Sukhov

Avatar
Date: 3/14/2011
Reply


Mikhail Sukhov Go to

Juri Go to

"Например, это может быть из-за того, что точность сделок секундная,"
Вообще странный аргмент,
а в частноси возмите например все сдели с биржи http://ftp.rtsnet.ru/pub...ory/F/2011/FT110221.zip
там время с точностью до мсек.


Посмотрел файл. Примерно 1 к 10 имеет миллисекундную точность. Остальное все в секундах. Подозреваю, что это какие-то особые сделки.


Вообщем, не так я смотрел. Я смотрел через Excel, а надо было через Notepad. В результате, все увидел. Буду переделывать в 3.1.[blush]
Thanks:

pyhta4og

Avatar
Date: 3/17/2011
Reply


РТС-Стандарт в этой истории (http://ftp.rtsnet.ru/pub...ory/F/2011/FT110221.zip) нет похоже
Thanks:

Mikhail Sukhov

Avatar
Date: 3/19/2011
Reply


pyhta4og Go to
РТС-Стандарт в этой истории (http://ftp.rtsnet.ru/pub...ory/F/2011/FT110221.zip) нет похоже


А что за разбиение такое на FE TE FT?
Thanks:

Иванов Андрей

Avatar
Date: 3/20/2011
Reply


Про время и про стаканы.

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

Время скачет +-4 секунды от указанного в сделке. С отставанием времени сделки понятно -- лаги самой биржи, лаги Quik, лаги сети. Откуда берётся убегание вперёд, даже не представляю =) Писать начал в качестве эксперимента, просто любопытно было. Использовать планирую для разделения сделок по блокам, чтобы они в эмулятор приходили такими же пачками, как и в реальности, потому что с тиками работать грустно.

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

Без рандомов результат будет стабилен, а разнообразие входных данных и так приемлемое за счёт возможности тестировать на разных днях. То есть, прогоняя два раза один и тот же алгоритм на одних и тех же данных результат будет один и тот же. С рандомом, когда вы будете крутить какой-то параметр у себя в стратегии, не будет уверенности, кто виноват в результатах, изменённый параметр или рандом.

Сохранённые стаканы искажают картину мира очень сильно. Потому что это снимки с интервалами, а не то, что происходит на бирже. Я на стаканы не смотрю даже когда руками торгую (возможно, просто не знаю, как их использовать, я просто программист, а не трейдер). Но про это вы вроде уже и сами договорились =)

Пишу не для спора или пожелания всё переделать. Может быть будет любопытно ещё одно мнение.
Thanks:

Juri

Avatar
Date: 3/20/2011
Reply


Здравствуйте!

Иванов Андрей Go to

Время скачет +-4 секунды от указанного в сделке. С отставанием времени сделки понятно -- лаги самой биржи, лаги Quik, лаги сети. Откуда берётся убегание вперёд, даже не представляю =)

Да уж, просто мистика )
Может просто на Вашем компьютере время установлено не несколько секунд (где-то 5-6) вперед от биржи?

Иванов Андрей Go to

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

Просто любопытно, а почему грустно?

Иванов Андрей Go to

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

Здесь немного не понял...
Для моделирования исполнения вашей сделки вы используете только файл всех сделок?
А тогда какие цены ("беру либо из сделки лога, либо из заявки") когда берете?

Иванов Андрей Go to

Без рандомов результат будет стабилен, а разнообразие входных данных и так приемлемое за счёт возможности тестировать на разных днях. То есть, прогоняя два раза один и тот же алгоритм на одних и тех же данных результат будет один и тот же. С рандомом, когда вы будете крутить какой-то параметр у себя в стратегии, не будет уверенности, кто виноват в результатах, изменённый параметр или рандом.

С этим вполне согласен...


Thanks:

Иванов Андрей

Avatar
Date: 3/21/2011
Reply


Juri Go to
Здравствуйте!

Иванов Андрей Go to

Время скачет +-4 секунды от указанного в сделке. С отставанием времени сделки понятно -- лаги самой биржи, лаги Quik, лаги сети. Откуда берётся убегание вперёд, даже не представляю =)

Да уж, просто мистика )
Может просто на Вашем компьютере время установлено не несколько секунд (где-то 5-6) вперед от биржи?

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

Quote:
Иванов Андрей Go to

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

Просто любопытно, а почему грустно?

Потому что они искажают реальность =)

Quote:
Иванов Андрей Go to

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

Здесь немного не понял...
Для моделирования исполнения вашей сделки вы используете только файл всех сделок?
А тогда какие цены ("беру либо из сделки лога, либо из заявки") когда берете?

Если моя заявка сразу проходит, значит она удовлетворила чью-то заявку в стакане и цену надо брать из лога. Если нет, значит, моя заявка пролежала какое-то время в стакане и цену надо брать из моей заявки.
Thanks:
<< < 3 4 5 

Attach files by dragging & dropping, , or pasting from the clipboard.

loading
clippy