*** Вопрос мэтчинга котировок и эмулирования торгов
Вот написал я эмуляцию мэтчинга (формирование сделок по стакану заявок) в своей студии с целью эмулирования торгов и пришел к интересному вопросу. А если подрят (друг за другом) на биржу приходит две встречные заявки
1. продажа по рынку
2. покупка по рынку
по какой цене они будут исполнены?
По идее заявки должны исполнятся по лучшим значениям, но по логике так как в обоих заявках не указывается цена (по рынку всегда имеют значение 0 в поле цена) то ориентирами остаются значения бида и аска. Но когда обе заявки могли бы закрыться «друг о друга» где-нибудь в центре спреда они исполнятся по биду-аску, то есть по худшей цене… То есть биржа действительно делая мэтчинг анализирует лишь пару «заявка-стакан» или еще анализирует «заявка-следующая заявка» в очереди заявок :(
Просто я знаю что скажем на америкосовской бирже если у одного брокера пришли ордера от двух его клиентов 1. по рынку и 2. лимитник в противоположную сторону (равный биду-аску или лучше), то брокер кроет рыночную заявку о лимитник и предает центральному ядру уже не заявки а состоявшиеся сделки, которые «смэтчил» на своем сервере.
tvitals, но! я смотрел презентацию Спектры они говорили о конвеере мэтчинга и о том что там все в каком-то модуле вообще перемешено на параллельные процессы :( меня уже тогда удивило как они могут не нарушая последовательности прихода заявок давать «лучшую цену» или они все же дают не всегда ожидаемое? но ради увеличения скорости работы ядра
tvitals, иначе надо говорить от «разрозненых потоках исполнения», да и что считать одновременно? Т.е. пришлось бы вводить «временный буфер», в котором накапливаются заявки до попытки исполнения по стакану?
tvitals, то есть любая заявка приходя в ядро, которое внутри распараллелено (от роутера с пометкой времени прихода пакета валит на какой-то из ЭН железок-серваков, работающих как единый кластер) имеет метку прихода в ядро системы и уже по этому признако формируется «аукцион» (они использовали в презентахи этот термин, хотя я не до конца понимаю его суть с проекцией на параллельность обработки)
ну в любом случае у меня получается засада в эмулировании торгов по тиковому хистори :( я не могу эмулировать «заявку по рынку» если на некотором интервале не было заявок в обратную сторону, потому как я не знаю чему был равен бид-аск в это время. То есть если 100 сделок были «на покупку» то я не знаю какой ценой сформировать «продажа по рынку» ибо аск равен цене сделок хистори, а вот чему равен бид ))) могу конечно ввести допущение что спред при таком бурном росте будет скажем в 2-3 раза больше спреда в «спокойной проторговке» :) но ведь это не всегда так…
а у меня алгоритм требует «рыночных» телодвижений чтобы развернуться на мощном выносе надо сначала закрыться а лимитником рисково — может не исполнится.
Дмитрий Интрадей, это да, проблема, что-бы ее небыло, надо иметь доступ ко всему потоку заявок отправляемых на биржу, есть знакомый ИТшник кто-бы сливал такую? ;))) В любом случае при эмуляции по истории будет только эмуляция, ведь любое вмешательство привело бы к изменению потока сделок. Достаточно неплохой вариант писать историю и сам стакан, или придумать иной способ, например, ввести задержку на эмуляцию исполнения и после нею считать своими соответсвующий объем сделок своего направления покупка/продажа.
tvitals, но! если сделать допущение что «хороший алгоритм был бы так же хорош и на видоизмененном хистори», тогда нет проблем, но! рынок — это среда с очень сильной обратной связью (опять же в силу множества ХФТ, которые отслеживают минимальное изменение цены). И тут уже интересен вопрос, а как сильно чувствительна хфт среда биржи на мое вмешательство в торговлю скажем 1 контрактом о_О и с какого объема моих заявок я буду очень сильно менять ход торгов, а известно что среда рынка старается изменится так чтобы это было не выгодно мне после того как я вошел в сделку и в момент когда я хочу из нее выйти.
tvitals, )))) да я могу тупо запустить свою студию чтобы она «грабила» dde поток со стаканом и тиковыми сделками и сохраняла в файл, который будет входным для тестов робо-стратегий. Собственно я к этому чувствую и приду, потому как биржа работает не все 24 часа (и не в выходные) а я кодингом занимаюсь гораздо больше чем она доступна ) ну и чтобы сравнить результат его надо гонять на одних и тех же данных, то бишь боевое тестирование нельзя улучшить, потому как торги идут один раз с теми же параметрами :))) так что подобную фишку сделаю я сам ))) айтишник )гы
Дмитрий Интрадей, да, я примерно туда-же смотрю. Вопервых это даст возможность более качественного анализа истории, во вторых нормальное тестирование роботов, а в третьих можно и самому «руку набивать» на ручной эмуляции — например отбираешь интересные дни и раз 20-30 их проторговываешь — больше опыта можно получть без потери капитала )
Дмитрий Интрадей, Но имя поток заявок (не сделок, а именно заявок, даже не состоявшихся), моделирование было-бы совсем другое, а если оный иметь реалтайм, то и дало-бы хорошее преимущество ))))
tvitals, ))) ну тогда по приколу можно конечно написать свой модуль «биржа-хоум эдишн» ))) затащить туда скажем с 1000 участников раздав им собой написанные терминалы ))) блин а это конечно идея, вопрос законно ли это? )) и если там нет реальных денег, то можно ли это приподнести как «обучающую игру»? ) Туда же можно подключить для теста своих стратегий роботов ) эта бы среда могла работать вообще все время, скажем в нее бы впихнули все алго трейдеры и в реальном времени без выходны пилили-пилили… а новички если бы захотели то могли торговать в специально написанном простейшем терминале )
Дмитрий Интрадей, Должно быть законно, если не торговать на там на реальные деньги, а иначе это будет как игровые автоматы ))) Идея очень интересная, и главное полезной. Интересно получить срез с людей, кто-бы стал бы пользоваться?
tvitals, просто даже Junior модуль биржи работает по синтетическому (не настоящему алгоритму спроса-предложения, он гоняет хистори с некими мелкими вариациями «искажения») в определенное время (то есть не 24 часа в сутки, что мне уже не удобно)
Дмитрий Интрадей, RuTicker.com слушай глянь тему! :) у тебя твой проект работает на выделенном сервере? давай может такую тему замутим? :) сделаем площадку для 24 часа х 7 дней в неделю для роботов-новичков. Придумаем простейший протокол, реализуем шлюз доступа-терминал(беру на себя) и ты получишь мощный приток пользователей :) потому как качественной среды тестирования роботов ни у кого нет :) Биржа предоставляет очень ограниченный ресурс тестирования
Дмитрий Интрадей, я думаю те кто пишет роботов осилят подключение к этой площадке своими силами (то есть подключится смогут само собой «самописные системы» а не вроде велза и иже с ним), но таких уверен найдется достаточное число. Можно сделать на смарте опрос и узнать кому это интересно
Дмитрий Интрадей, главный косяк предоставляемой биржой площадки является то что ты в этой системе «призрак» это значит что твое влияние на ход торгов не учитывается! тебя просто накладывают «поверх торгов» но не дают права менять их, а ведь именно на переменах-управлении торгами основывается торговля «кукла», он же маркет мейкер. То есть если бы он не мог влиять на ход торгов, то нахуа ему биржа? )А если право влияния дать каждому на нашей площадке-хоумбирже — чтобы он придумал свои стратегии (виртуальные деньги легко появлются и не жалко потерять), это было бы мего круто!!! :)
tvitals, В принцепе туда можно транслировать данные с бирж в реал-тайм, будет небольшая задержка. И можно использовать и как «игорвую-платформу», как базу тиков… а если делать по уму проекто может быть и окупаем даже…
tvitals, нет-нет!!! никаких транслирований :) Зачем эмулировать жизнь, когда можно создать «настоящий живой организм» и участвовать в его развитии… Это аналог телевизор (транслировать котировки и никак не влиять на эфир) и Телеконференция (где каждый участник может в любой момент изменить ход мероприятия)
tvitals, ну если интересная значит надо анонсировать максимальному числу потенцеальных участников, узнать их число, сделать ) и получить афигенный продукт, которого пока нет в природе ) А то, что он будет ВСЕМ без исключения ценен — бесспорный факт!
Дмитрий Интрадей, была такая идея кстати, но не понятно что с протоколом, надо стандартный, ибо мутить свой это изобретать и продвигать API — задача не слабая
RuTicker.com, в том то и дело, что коннектор у разных роботов свой, кто-то пишет на С++, кто-то на С# кто-то на бейсике. Простой тот же JSON протокол был бы идеальным (с трансформацией в бинарный вид). То есть надо просто прикинуть какую нагрузку может тянуть сервер и попробовать провести первые торги хотябы 20 участниками. То есть само собой в такой сессии должно быть 3 типа стратегий: маркет мейкер, тренд образующий алгоритм, остальные участники. Вся сессия является игровой, то есть будет статистика: первые 5 мест, количество профита, показ сделок :) то есть это будет интересно сторонним наблюдателям, просто чтобы оценить качество стратегий. Дальше возникнет любопытство, подключаться новые участники и пойдет процесс! :) А там можно около этого проекта кучу всего прикрутить, да хоть еще один смартлаб сделатЬ! :) и это уже реально будет торкать, потому как все будут увлечены формированием реальных стартегий с 0 риском, риск — лишь потраченное время.
RuTicker.com, а итогом всех этих «хоум-торгов» будут реальные робо-стратегии с учтенными «черными лебедями» которые наверняка чаще обычной биржи будут возникать на хоумбирже. То есть если твой алгоритм побеждает пару недель — ты смело можешь валить на реальные торги и тестировать на реально бабле! Не опасаясь что в первый же час все сольешь!
Дмитрий Интрадей, да смотрел его, когда QUIK изучал, там «такая история», уж незнаяю гне они ее берут — что, то не очень актуальная, а точнее нет эмуляции ликвидности, наверное на жедезе экономят, вот и частота сделок никакая…
tvitals, да-да! и то что мы своими сделками может вообще серьезно изменить ход торгов никто почему-то не рассматривает ) и об этом умалчивают, ладно еще сделки которые на 5-ти минутках тестят в каком велзе по хистори (хотя я считаю такие тесты сранью господней не имеющей ничего общего с реальными торгоами, как в плане исполнения сделок, так и в плане «по какой цене»). А вот если бы я гонял по полному срезу «стакана» и «хистори сделок» это уже было куда ближе но!!! никто не знает фактор «влияния новых сделок вставленных в очередь хистори». Я это называю «биржевой эффект бабочки», когда сдвиг всего на один шаг цены в отличную от хистори сторону мог бы (в слиу преобладания ХФТ роботов) стать сигналом на мего обвал ) а не скажем на продолжение боковика или же заметно меньшую волатильностЬ, что сформировалась по факту в хистори :)
Дмитрий Интрадей, Но имеем, то что-имеем, моделирование поможет дать примерный ответ, на качество стратегии, и общую проверку гипотез. А дальше только в живую, с последующим разбором полетов :)
Бекас, вопрос перечитай свой -ты просил разобраться во фоатерах, к которым привязана структурка.
Если вопрос в том, чтобы разобраться в структурке — берёшь отимистичный, негативный и базовые с...
Лютый Комерсант, думаю, что ближайшие отчёты будут чуть хуже предыдущих. Очень удивлюсь, если будем расти на этом. По-прежнему ожидаю медленное сползание на 220. Приведут туда рано или поздно.
mrpink, это неофициальный канал в Телеге. Там «особо важные люди» слегка е.б.анутые. Админ идёт у них на поводу. Часть дебилов было послано найух из-за тупых высказываний, которые по моей просьбе н...
Я захожу сюда периодически, как будто поглядеть в аквариум как мелкие рыбки мечутся, обсуждают чего-то в периоде квартала или даже месяца. Для меня это какое-то шоу. Оказывается, «смотреть сверху» выз...
G A, Вы пишите, что «Конкретные условия сотрудничества с адвокатами могут быть обсуждены по результатам окончательного формирования группы лиц.»
То есть, условия сотрудничества с адвокатами ещё н...
Николай Иванов,
Проблема в том, что они на*** не нужны там никакие «корпорации» и прочие жыдоэскроу.
В нулевых мне мои 150квадратов на 10сотках в пригороде (тогдашней целине с болотом) вышл...
Совкомбанк (Андрей Оснос): месяц назад мы считали, что ставка начнёт расти в 2025г. Теперь думаем, что будут расти дефолты, замедляться экономика. Этого хочет ЦБ. Поэтому ставка выйдет на плато Совком...
То есть часто помню давали цену мне, когда пулял по рынку — 31.955 ))) или 31.9515 )) чо-та такое)