Pull to refresh

Comments 64

Были обещаны "определенные выводы" — где они? Анализ есть, вместо выводов предложения завалить автора идеями.
Я что-то даже анализа не вижу. Графики и все.
Спасибо за коммент. Будет очень дельно, если сформулируете вопросы, которые больше всего вам интересны, и на которых тут нет ответа. В следующей статье будем точнее.
Так как формируется цена доллара? Кто и как торгует валютой?
А я не разделяю недовольство sim-dev и Elmot. Выводов хоть и нет, но для меня подход к торгам открылся с новой стороны.

А вопросы следующие.
Как всем этим могут пользоваться простые смертные с детскими по меркам биржи объёмами? И как для этого предугадывать большие объёмы торгов на основе каких-либо информационных поводов? Очевидно, что 1k-5k-… долларов никакого влияния на рынок не окажут, но всё равно хорошо бы ориентироваться в больших течениях, чтобы ловить волну.

Интересно было бы увидеть анализ интервенции ЦБ — как это сработало, какие суммы и т.п.
1. Чем меньше объемы — тем легче вам входить\выходить… Это фора новичкам такая.
2. Никак… Никто на рынке не знает что будет через 1 секунду… Есть статистика на серию сделок, а не на одну сделку вашей системы — вот на это вы и ставите деньги.
3. Интервенции никак не влияют в долгосрочном периоде — рынок всегда побеждает, любого участника который против него
Да, и вдогонку. Разве большие сделки совершаются за раз? Где-то слышал или читал, что они бьются на много мелких — как раз для минимального продавливания рынка. Ну и это вообще логично выглядит. В отличие от лота в миллион.
Никто не мешает совершать крупные сделки за раз, но это не выгодно инициатору. Как раз задача алготрейдинга и состоит в том, чтобы реализовать крупный объем более мелкими порциями. А как и на сколько делить, зависит от глубины рынка (пункт 6) на момент времени.
А как и на сколько делить, зависит от глубины рынка (пункт 6) на момент времени.
То есть в данном случае это не проблема — выбросить на рынок миллион? Это вот как раз те выводы, которые все ждали :) Было бы интересно увидеть рассмотрение такого случая. Вот лот 1М $, вот цена «до», вот столько сделок купли-продажи было совершено в такие сроки по такой цене, и в результате цена по рынку изменилась на столько-то и.т.п

Просто штука в чём.
Много где написано всякого.
Первое (как ваша статья). Где речь про реальные данные с цифрами — там только «смотрите, какие у нас графики». Нуок, а что с ними делать-то?
Второе (зачастую новостные онолитеги). Там где без графиков, цифр и рссчётов — «смотрите какие супер-глобальные выводы и предсказания». Нуок, только не с потолка ли у вас выводы?

А в итоге меня, который год наблюдающего за этой вакханалией, не покидает ощущение, что 99% из первых и вторых ничерта не понимают, что происходит на самом деле.
Не раскрыта тема, почему не выгодно?
Какая разница, заявку на продажу он всё равно ставит же по одной и той же цене, независимо от объёма? Ну просядет курс чуть ниже после продажи, наоборот же выгодно продавцу, сможет купить ещё дешевле в дальнейшем.
> 45-50% от всего мирового объема торгов по паре USD/RUB
Вроде бы, весьма логично, что это происходит именно в нашей стране, не правда ли? Не вижу особого повода для национальной гордости. Даже наоборот, интересно, где могут торговаться остальные 50-55% и зачем?
> Даже наоборот, интересно, где могут торговаться остальные 50-55% и зачем?

Ответ на этот вопрос на КДПВ
Обменники и банки тоже считаются? Пардон, думал, речь идет именно о биржевых торгах.
>>Не вижу особого повода для национальной гордости.

В этом, казалось бы, ни гордости, ни позора нет. Естественно, если тебе нужны рубли, покупать их в России. Если нужно много рублей — на бирже. Не возьмусь с ответственностью утверждать, но скорее всего плюс-минус половину британских фунтов продают на лондонской бирже, а юаней — на шанхайской.
На лондонской бирже (если про LSE) никакая валюта не продается. Во всем мире валюта на бирже это экзотика.
Да ну ладно. В Лондоне куча Forex Brokers, к которым можно пойти и продать. Все они пользуются одной и той же системой. Ну да, в России рынок полу-монополизирован, и есть один мега-брокер. Ну и что? Всё равно там ставки выравниваются почти мгновенно.
Торги валютой во всем мире(валюты, которые вы знаете) совершаются вне биржи, это внебиржевой рынок. И в большинстве случаев там нет привычного стакана котировок. И тот факт, что в России доллар/рубль торгуется централизованно на бирже с долей в 45% — это крутое достижение. А остальная часть это межбанковские операции, торги между собой.
Вот и сюда добралось. Браво автор! Полезного ничего не подскажу, но очень интересно было прочитать статью. Жду продолжения.
(offtop)Доллар пересек психологическую отметку — всем пох сколько стоит доллар.(offtop)
Безусловно информативный комментарий. По делу, я бы даже сказал.
Вы правы, вы чертовски правы. Но вы слишком категоричны, я вам скажу.
Если бы все участники расположились в зоне колокации (в одном помещении с торговой системой, задержка микроскопическая), то мы бы увидели пики в форме палочек, без расплытия. Ваши мысли?

Биржа проводит сделки дискретно пачками с (фиксированным?) интервалом?
Торги проводятся непрерывно с 10 утра и до полуночи. Никаких интервалов и "дискретных пачек".
Слово "непрерывно" в отношении транзакций в дискретных системах — оно такое… Слишком уж филосовское. По факту поступления запросов? Или синхонизация там не знаю раз в секуду, в микросекунду?
Да, удачное слово подобрали. По факту поступления заявок. Как только цена удовлетворяет, так сразу.
можете прокомментировать?:

… Пики на графике четко следуют с интервалом в 50 миллисекунд…
Предположу, что большинство людей в алгоритмах любят использовать целые числа (50, 100, 200...).
Если бы все участники расположились в зоне колокации, то мы бы увидели пики в форме палочек, без расплытия"

Даже если бы все работали с одинаковыми интервалами и располагались в соседней стойке график все равно должен был бы быть гладким в силу отсутствия синхронизации и последовательности каналов связи.
Пики через 50мс это периодичность запуска либо обработки транзакций, либо обработки статистики на биржевом сервере.
Плюсую, это какое-то очень… "наивное" предположение автора.
Ничего подобного. Потому что на графике изображено

через какое время снимаются большинство заявок?

Это время между отправкой заявки и ее отзывом — одним и тем же алгоритмом. Так что здесь синхронизация никак не влияет, только собственные задержки алгоритма. Более того, если бы это была периодичность запуска либо обработки транзакций, она бы не совпадала с задержками алгоритмов, и пики были бы сдвинуты влево и вправо, т.е. их было бы больше. </капитан>
Да, точнее это время между приходом заявки в торговую систему и снятием ее из торговой системы. Пока заявка долетит в ТС проходит какое-то время, зависит от того на сколько далеко от торгового ядра.

Если я очень близко к ТС, приказ "снять заявку через 50*k миллисекунд" долетит в пределах 50-200 мкс. Тут я попаду на самое острие пики.

Теперь я подальше от ТС, тот же приказ долетает за 1-2 миллисекунды. Тут я попаду немного правее от острия. И как следствие видим более пологую правую сторону пики, чем левую (хорошо видно на 100ой миллисекунде).

Если я торгую через квик по интернету, улечу за километр и попаду рандомно неизвестно куда.
Интересно посмотреть на кореляции событий, типа, как только случилась покупка на сумму N по курсу M, сразу же (или с задержкой? какой?) появилась заявка на продажу на сумму N по курсу M+x.
Первое конструктивное предложение) Намёк понял, попробуем изучить такое поведение. Благодарю
Ну и еще, конечно, вероятно, торговые роботы принимают решения, анализируя текущий стакан, тогда интересно посмотреть, какие ордера выставляются и/или снимаются массово после резких движений курса.
Моё пожелание — добавить опрос "Что осветить в следующих статьях" в конец статьи.
Пользуясь случаем, хочу спросить. А выставленная и попавшая в стакан заявка может быть автоматически разбита на несколько заявок с одинаковой ценой, или она исполняется обязательно вся?
Пример, отправляем заявку купить 5 000$, но на рынке по нашей цене есть всего 3 000$. В итоге получаем сделку в 3 000$ и еще 2 000$ продолжает оставаться в стакане. По умолчанию, заявка может исполняться частично.
подавляющее количество заявок снимаются через 1-2 миллисекунды.
Вылавливание наибольшего спреда?
Заявка подается, не выполняется, отзывается — выполняется актуализация цены (например максимальный BID-n) летит опять.
По всей видимости у только что созданной заявки есть приоритет перед стоящей в очереди.
Этим же, похоже, объясняется большое количество сделок до 1 секунды.
Интересно было бы посмотреть на отношение суммы сделок к времени их жизни, скорее всего это будут небольшие суммы.

оффтоп: Что за дурацкая система редактирования комментариев, ограничение по времени?
Основной приоритет по ценовому уровню. Если цены одинаковы, сперва исполняется тот, кто раньше пришел. Как очередь в поликлинику (только без "я только спросить").
Спасибо за статью, подкину пару мыслей в качестве возможного продолжения темы. Возможно это будет вам интересно.

"Сразу бросается в глаза тот факт, что подавляющее количество заявок снимаются через 1-2 миллисекунды" — было бы замечательно определить соотношение непокрытых заявок к покрытым за период, к примеру, в час. Посмотреть на каждый час внутри дня и недели, час к часу (можно уйти и на 15 минут, не суть). Это очень интересное соотношение в плане общего понимания "рынка" и что такое "ликвидность", кто ее предоставляет, когда наиболее выражено в объемах и зачем. Также стоит упомянуть используется ли информация об объеме непокрытых заявок при анализе общего объема торгов и последующего принятия решений по таким данным в оценке стоимости рисков по каким-либо фьючерсам с рублем в качестве базы. Насколько быстро получится слиться с рынка и в какие периоды, с какой стоимостью закрытия (не смотря на доход/убыток), в какие часы потенциально наиболее высокая стоимость "сидения" в рынке относительно текущей волатильности (кроме граничных 10-15 минут перед концом/после начала торгов).

В идеале также, по всем непокрытым заявкам за день, в течение недели, определить наиболее интенсивных игроков (если есть доступ к реальному пулу ордеров). Есть предположение что совершенно случайно может оказаться, что крупнейших в плане объема игроков постоянно всего два-три, которые практически всегда и задают в долгосрочном плане направление движения (которое, в последствии и продолжают через день-два HFT-шники и все остальные). Интересна "возможная" согласованность таких крупных игроков.
Slava, спасибо за время, что уделил. Можно уточнить, что имеешь в виду под "определить соотношение непокрытых заявок к покрытым за период", что такое покрытые заявки и не покрытые?
Пожалуйста. Непокрытыми я определил ордера, которые 1) отклоняются биржей (реквот, что угодно схожее), либо 2) выставленные и снятые самим клиентом/брокером (не перешедшие в статус типа GTC). То есть тот спрос, который эти сделки должны были сформировать в итоге не был реализован.
Для полноты картины оценки базового торгуемого актива (будь то валюта или что другое) сейчас нужно смотреть на все — торги спот, самые популярные по объему фьючерсы с тем же базовым активом, опционы, CFD на фьючи в том числе. Чем шире смотришь и собираешь данные, тем более точные получаются бенчмарки. Ну и соответственно дороже, за любую информацию всегда приходится платить. Потому для мелкого инвестора заниматься всем этим будет вряд ли выгодно и эффект в деньгах от применения будет мизерный с учетом масштабов инвестирования.

Моя мысль была о том, что если хочется копать до сути — надо понять все свойства рынка, а не только стакан и соотношение объемов разных типов ордеров по разным фин инструментам с нужным вам базовым для инвестирования. В долгосрок сейчас жить можно практически только на инсайде, со всеми вытекающими. Потому так популярен стал HFT — сильно заманчивая иллюзия сделать очередной грааль: все о том же, но на других "рельсах" (меньшем временном интервале). Судя по тому, как часто крупнейшие банки и фонды пересматривают свои прогнозы и глядя на их квартальные результаты — получается у всех стабильно фигово, год за годом, где-то с 2006. Особенно когда QE уже халявного нет и угрожают со всех сторон отрицательными ставками. Сейчас льют все в фонду куда только влезет, потому как больше в данный момент некуда. Рынок облигаций развитых стран почти везде мертвый (доходность ни о чем), эстафету отрицательных ставок уже начала Япония и следом скорее всего будет ЕЦБ. На беспоставочной нефти, судя по всему, до начала апреля взята пауза, как минимум. Так что только в фонду, и так до осенних выборов. А из фонды выход возможен только в облигации, как соразмерный по объему рынок. А там сейчас все плохо и денег извне вообще не ждут, и так выкупают долг на что можно и у кого можно, ибо массовый спрос создаст серьезные проблемы (продавать с баланса федрезерва копеечный долг, в итоге увеличивая стоимость обслуживания долга — это путь самоубийцы) и также будет необходимо параллельно поднимать ставку (будет выход всех в доллар). В облигации можно заинтересовать только резким ростом ставок, а этого не будет в принципе (по той же причине роста стоимости обслуживания долга).
У BOJ из облигаций в итоге с рынка выкупать уже нечего физически, абеномика переросла теперь в тотальную скупку всего корпоративного говна с околодефолтным реальным рейтингом, ну, то есть ровно то же самое, что нынешнее LTRO 2.0 от ЕЦБ — скупают втихую итальянские/немецкие/французские корпоративные долги с непонятно какими рейтингами, секьюритизированное, многократно перепакованное говно под гарантии, которые никто не сможет выполнить из-за общего объема проблемных активов. Скупают потому, что свои же крупные банки в своих странах тарили это в свое время на все, что есть, потому что была хорошая доходность, а теперь ой, все. А если не скупать, то это путь к цепным дефолтам уже у банков, т.к. те свое же скупленное говно продавали другим банкам в перепакованном виде с лучшим рейтингом впаривали также на все деньги. Да, потому что была хорошая доходность, а теперь ой, все.

Лет 10 назад расскажи о том, что центробанки мира будут заниматься таким — смех был бы обеспечен. Сейчас если бабло из фонды не пойдет в облигации (а этот "насос" работает без перебоев последние 150 лет, потому что это два крупнейших по объему мировых рынка активов) — то ему выход будет только в недвижимость и первичный рынок. И тут наступит внезапно то, чего так все сильно боялись: когда спрос на деньги сильно будет падать. Пока все загоняют в фонду — живем. Но это рано или поздно закончится с большими проблемами.
Скорее всего интервалы в 50мс, что на графике распределения — это само свойство поведения биржи по фьючам TOM/TOD (или по всем остальным), что-то вроде гарантированного максимального времени обработки заявки. Не смотрел особо на правила у ММВБ и могу ошибаться.
К примеру, вы крупный игрок и хотите продавить рынок в нужном вам направлении, у вас есть около десятка компаний для торговли через разных брокеров. Допустим, сегодня с большой долей вероятности рынок будет спокоен и часовая реальная волатильность будет ниже средненедельной. Допустим, средний ежечасный объем покрытых сделок по прошлым аналогичным дням и 2-3 часам этого дня оценивается в 10млрд (к примеру). У вас, как крупного игрока, есть возможность привлечь до 500млрд под плечо в 5/10 (день спокойный, вероятность необходимости увеличивать обеспечение низкая). Итак, грубо говоря у вас есть ресурс течение 50 часов бороться с рынком и заливать цену в нужном направлении. К примеру, за этот день у вас есть данные о соотношении сделок непокрытых к покрытым как 100 к 1. Таким образом, необходимость жечь реальные деньги в 100 раз ниже с использованием тех самых непокрытых сделок. То есть вы, как крупный игрок, будете снимать сделки с рынка через те самые 500-1000 мс, просто формируя фиктивный спрос в нужном направлении, в то же самое время заходить в рынок нужным объемом в нужном для вас направлении. Примерно так продолжать до половины дня, т.к. все остальные участники торгов будут видеть большой объем фиктивного спроса в нужном вам направлении, но он будет успевать удовлетворяться лишь частично за счет постоянного закрытия этих сделок. Вам важно будет формировать объем фиктивного спроса в 10-20 раз больше необходимого вам объема реального входа в рынок, далее смотреть как этот спрос продолжает поддерживаться остальными участниками рынка в нужном вам направлении. По достижению нужного вам уровня цены (до каких-либо важных уровней сопротивления, большинства объемов открытых сделок по рынку через те же опционы) — закрываться об всех остальных игроков.

В итоге, если вы крупняк, чтобы двигать цену вам нет необходимости влазить "на все деньги", а за счет фиктивного спроса и кредитных денег продавливать туда, куда нужно (в рамках разумного риска) и на этом зарабатывать. Особенно здорово, когда таких умников среди крупняка много и они действуют скоординированно. Пофиг на SEC, всех не сможет оштрафовать. Зачастую штраф наоборот инициируется банком, чтобы довести дело до суда и через штраф закрыть куда более существенную часть претензий.
Несколько вопросов, если позволите:

1. Что происходит со стаканом, если все заявки на покупку X лотов по цене от 75.5 RUR за 1 USD и ниже(никто не хочет покупать дороже). А заявки на продажу 75.7 RUR за 1 USD и выше(никто не хочет продавать дешевле). Т.е. формально верх стакана не соприкасается с низом стакана? Что есть «биржевая/рыночная» цена в таком случае?

2. Как биржи синхронизуют рыночную стоимость рубля в баксах и наоборот(или любые другие основные валюты)? Эти курсы могут существенно отличаться друг от друга?
(я не автор поста)

  1. То, что вы описали, является естественной картиной рынка — предложения, как правило, не пересекаются в стакане, т.к. если пересечение присутствует, то соответствующие заявки в разных направлениях по одной цене должны быть погашены и снова возникнет дырка между bid и ask. В вашем примере 75.7-75.5=0.2 RURUSD и будет спредом. В любой момент времени есть две рыночных/биржевых цены — это цена наилучшего предложения по продаже (т.е. 75.7) и цена наилучшего предложения по покупке (т.е. 75.5).

  2. Что имеется в виду под "синхронизацией"? Есть ли какое-то подтягивание RURUSD к EURUSD, чтобы доллар был там и там одним и тем же? Если так, то никаких подобных механизмов нет.
По поводу (1) понятно, спасибо

Синхронизация — я имел ввиду, сколько бирж торгует парой USD/RUB? У каждой биржи будет свой личный стакан, свой личный биржевой курс. Они могут сильно друг от друга отличаться?
Скажем, есть ММВБ и есть некоторая CHX(Chicago Stock Exchange) — они никак друг с другом не контактируют? Т.е. теоретически, если у вас паспорт американца вы можете завести деньги на обе биржи и через брокера торговать на обеих?

Могло бы быть реальным примером:
Выходит статистика запасов нефти в США, в России торговая сессия закончилась, торги остановлены… но американская в разгаре… нефть ракетой вверх, рубль укрепляться должен? На ММВБ это только утром, на премаркете отразиться как рыночное явление, сама ММВБ никаких данных с CHX подтягивать не будет?
Биржа не контактирует, все делают сами участники)
Есть класс участников рынка, которые называются "агрегаторами ликвидности". Их работа заключается в том, что они собирают и исполняют заявки из нескольких разных источников, приоретизируя их при необходимости. К агрегаторам могут подключаться владельцы биржи напрямую, либо же агрегаторы могут участвовать в торгах как обычные участники.

Т.е. в принципе, стакан цен у ММВБ и у CHX в теории может частично пересекаться — у ММВБ и у CHX могут быть как полностью локальные заявки, которые исполняются исключительно в пределах соответствующих бирж (т.е. обе стороны контракта должны быть клиентами одной биржи), так и кросс-биржевые заявки, которые анонсируются и исполняются агрегатором (у каждой биржи второй стороной сделки является агрегатор). Кому отдавать приоритет и когда — дело исключительно самой биржи, как и то, к каким агрегаторам подключаться.
Любое отличие цен от равновесных порождает поток сделок (арбитраж), восстанавливающих равновесие и приносящие прибыль тем, кто тщательно мониторит рынок. По сути, любая рыночная спекуляция — это арбитраж, либо пространственный (дисбаланс цен на разных рынках), либо временной (дисбаланс цен в разные моменты времени). И прибыль спекулянта — это плата за его работу по поддержанию рыночного равновесия, т.е. за «синхронизацию».
Господин mwizard, все правильно описал.

  1. В стакане все время есть зазор между ценами покупки и продажи. В этот зазор может прилететь новая заявка, тогда зазор сузится. Или придет встречная(противоположная) заявка, которая приведет к сделке. В данном примере 75.7 на покупку или 75.5 на продажу. Чем уже зазор, тем привлекателен рынок. Представь цены обменников)

Под "биржевой/рыночной" ценой все понимают в основном цену последней сделки. Ибо каждая сделка в стакане является и рыночной и биржевой.

  1. Биржи ничего не синхронизируют (в контексте этого вопроса). Регулируют (синхронизируют) участники. Многие участники имеют одновременный доступ к нескольким биржам. Смотрят на одну, выставляют заявки на другую. Это естественный процесс. На разнице и зарабатывают (арбитражные сделки, когда один товар торгуется в нескольких местах)
Спасибо автору за поднятие на Хабре сей темы.
Сразу спрошу: а чем обусловлен разбор именно на базе инструмента USDRUB_TOM? Просто чтобы понимать, есть ли какие-то фундаментальные различия на рынке TOM и TOD, радикально разнящийся объём торгов, например? Или просто взяли то что торгуется дольше в течение дня, чтобы статистики было побольше?
Объем торгов у USD с расчетом TOM в несколько раз больше TOD. На валютном рынке именно TOM инструмент №1
Маленькая ремарка: у TOD большой спрос в основном формируется в налоговые периоды и при крупных сделках с российскими компаниями, а также при изменениях в условиях свопирования с другими валютами (юань, евро и остальные).
Могли ли применять эти механизм регулировки курса доллара западные крупные компании и страны против рубля в последние полтора года?
Не действуют ли те же алгоритмы на биржах нефти, то есть курс нефти был изменён теми же способами игры на понижение?
Почему интересно слоты в 50к и 100к самые популярные и так сильно выражены, не должно ли быть тут более равномерное распределения?
50 — с заявок меньше 50 биржа взымает комиссию по 25 рублей (вроде) за каждый лот при исполнении
100 — могу предположить что связано с арбитражем (скажем, на другой бирже это минимальный лот)
А мне например интересно, что за железо используется. Потому, что померять время 0.7М заявок — это 0.7М вызовов System.nanotime(). Пускай даже 1 вызов — 100нс (например, по jmh на моем компе 1 вызов — 700..800нс), 0.7М таких вызовов — это десятки и даже ближе к сотни мс. Понятно, что используется кластер, но тогда каким образом в нем синхронизируются заявки во времени?
Only those users with full accounts are able to leave comments. Log in, please.