Справочник трейдера: ордера, цены, стакан, фонды, валюта

 


Подумал, почему бы не сделать добротную справочную ветку.

В ней хотелось бы осветить наиболее важные вопросы по работе рынков, провайдеров ликвидности, платформы МТ5, которые задают себе не только новички.

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

Прошу соблюсти всего несколько правил по содержанию инфы

1. Быть действительно интересной и важной (редкой, уникальной, эмпирической - в общем не букварь, а широкое раскрытие понятия).
2. Быть полной без отсыла на другие форумы или сайты (а также "поищите я где то уже писал или видел" - такое недопустимо)
3. Содержать указание на первоисточник (или ваш профиль, если она есть ваше авторитетное мнение)

Посты не по теме буду понемногу удалять, чтоб соблюдать красоту и порядок ;)

Нам важно знать, скольким читателям после прочтения этой ветки стал понятен изложенный материал.
Если ветка помогла вам понять, как устроен рынок (вы в состоянии, как и любой понятый материал, пересказать его другому собседенику),
зайдите сюда и поставьте лайк напротив этой ветки.
Отзывы писать не требуется, достаточно только лайка.


Для тех, у кого есть инфа по некоторым понятиям:

- отличие рынков (Акции, Forex, и т.д)
- простейший HFT MM-алгоритм и необходимые условия, когда он прибылен.
- особенности STP и ECN/STP торговых площадок.

просьба высказаться или выложить в ветку



Дата валютирования на Forex
*

Операция swap

Как формируются котировки Forex

Кто такой маркетмейкер * *

Кто такой маркетмейкер [2] *

Кто такой провайдер ликвидности *

Площадко-образующий биржевой алгоритм *

Исполнение лимитных ордеров на бирже *

Исполнение лимитных ордеров на фьючерсах и форексе *

Типы трейдеров  *

Модели работы брокеров *

Классификация брокеров валютного рынка FOREX *

Кванты. Коинтеграция. Арбитраж. Маркап.  *

Простой агрегатор. Создание торговой площадки. *

Пример показателей ММ-алгоритма. *

11. Дата валютирования на Forex - Энциклопедия Forex
  • enc.fxeuroclub.ru
Как уже говорилось, рынок Forex в широком понимании включает не только сделки покупки и продажи одной валюты за другую с расчетами сразу, то есть сегодня, но и в другие временные промежутки. Дата расчетов - то есть дата физического перемещения средств на счета контрагентов - на финансовом языке называется датой валютирования (или Value date...
 

Как читать ликбез.

hrenfx:

Как оказалось, написать справочник мало, нужно еще научить его правильно читать/воспринимать.

Скорости чтения/восприятия.

Классическая скорость чтения (КСЧ) - количество букв (слов) в единицу времени.

Скорость восприятия информации (СВИ) - количество понимания/переваривания содержащейся информации в единицу времени.

В большинстве случаев у каждого человека на величину КСЧ почти не влияет истинное содержание прочитанного. Это страшный бич восприятия информации, от которого нужно избавляться в сторону постоянства не КСЧ, а СВИ.

Возьмем простой пример. Большинство людей читают художественную и научную литературу с одинаковой КСЧ. Т.е. при чтении научного труда мозг практически не работает, машинально пробегая по набору букв. В случае с художественной литературой это иногда оправдано. Но не в иных случаях.

Как читать ликбез.

Необходимо от распространенного постоянства КСЧ перейти к нечастому постоянству СВИ.

Например, вникать в смысл нескольких предложений на порядки дольше (если необходимо), чем если бы вы просто его прочли со своей КСЧ.

Факт в том, что большинство людей данный ликбез прочитывают в течение ~ получаса. И это время зависит, как правило, только от индивидуальной КСЧ. Как результат - "заумно и не нужно". Что, конечно, ни есть правда.

На самом же деле количество содержащейся информации в представленном ликбезе столько, что время ее восприятия должно измеряться сутками.

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

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

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

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

Дата валютирования на Forex *


Как уже говорилось, рынок Forex в широком понимании включает не только сделки покупки и продажи одной валюты за другую с расчетами сразу, то есть сегодня, но и в другие временные промежутки.

Дата расчетов - то есть дата физического перемещения средств на счета контрагентов - на финансовом языке называется датой валютирования (или Value date ).

Обычно на финансовом рынке используются следующие даты валютирования:

  • Today (Tod) - расчеты производятся сегодня, в день заключения сделки
  • Tomorrow (Tom) - расчеты производятся на следующий рабочий день после дня заключения сделки
  • Spot - расчеты производятся на второй рабочий день после дня заключения сделки.

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

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

  • определение действий сторон (покупка-продажа);
  • наименование покупаемой и продаваемой валюты;
  • сумма (объем) операции;
  • валютный курс операции (курсы операции для операций типа SWAP) ;
  • дата валютирования (даты валютирования для операция типа SWAP) ;
  • платежные инструкции контрагентов;

    На рынке Forex используются также сделки с датой валютирования, отстоящей более чем на 2 рабочих дня от даты заключения сделки - они называются форвардными операциями или срочными конверсионными операциями. Даты валютирования согласовываются в момент совершения сделки.

    На рынке Forex торгуются также производные финансовые инструменты, такие как опционы.
    Существует два вида опционов:

  • американский опцион - право (но не обязанность) покупателя купить или продать базовый актив по определенной цене до истечения определенной даты.
  • европейский опцион - право (но не обязанность) покупателя купить или продать базовый актив по определенной цене в определенную дату.

    В зависимости от того, какое право возникает при покупке опциона, купить или продать базовый актив, выделяют соответственно Сall (Кол) и Put (Пут) опционы.

    Наиболее популярным на валютном рынке Forex являются операции, проводимые на условиях Spot. Обычно это связанно с необходимостью времени для оформления и осуществления расчетов с контрагентом, находящимся в другой временной зоне.
    Также на рынке Forex проводятся операции SWAP или СВОП (более подробно о которых в следующем разделе).

  • 11. Дата валютирования на Forex - Энциклопедия Forex
    • enc.fxeuroclub.ru
    Как уже говорилось, рынок Forex в широком понимании включает не только сделки покупки и продажи одной валюты за другую с расчетами сразу, то есть сегодня, но и в другие временные промежутки. Дата расчетов - то есть дата физического перемещения средств на счета контрагентов - на финансовом языке называется датой валютирования (или Value date...
     

    Операция СВОП

    Swap иногда также называется Rolover или Overnight на Forex - представляет собой одновременно заключение двух противоположных сделок с разными датами валютирования, одна из которых закрывает уже открытую позицию, а другая сразу же открывает ее. Курс свопа и стоимость свопа определяются в момент заключения сделки. Целью операции обычно является продление открытой позиции.

    Пример операции Своп (Swap) :
    Допустим, вы купили 500 000 eur/usd по 1,2347 17 августа 2004г. (вторник) на условиях Spot (т.е. с датой расчетов 19 августа - четверг). 19 августа вам на счет придет 500 000 eur и у вас должно будет списано 617 350 (500 000 x 1.2347) usd.


    Однако если вы работаете на условиях маржинальной торговли с плечом, то у вас на счете, скорее всего, нет такого количества долларов, и вы не сможете 19 августа (в день расчетов) выполнить обязательства перед контрагентом. Поэтому вы должны продлить или "отсваповать" свою позицию. Предположим, будучи уверенным в своем движении вы не закрыли позицию 17 августа внутри дня и не собираетесь закрывать ее на следующий день, 18 августа. В таком случае вы делаете операцию Swap - Tom - Spot, т.е. проводите две противоположные сделки различными датами расчетов.
    Допустим, что вы правы в своем решении и цена Eur/Usd действительно выросла за предыдущие сутки, остановившись на 1,24.

    18 августа вы продаете 500 000 eur/usd (по 1,2400) на условиях Tom т.е. с датой расчетов 19 августа и покупаете их (по 1,2400) на условиях Spot c датой расчетов 20 августа.

    Во времени сделки распределяются у вас следующим образом.


    Так как у вас была вначале покупка 17 августа с расчетами 19, а теперь продажа от 18 числа с датой расчетов 19 числа, то ваши требования в 500 000 евро и ваши обязательства по поставке 500 000 евро взаимно уничтожаются (неттингуются) в результате операции Своп (Swap) . Позиции в долларах тоже неттингуются, но частично, поскольку 2 сделки (расчетами 19) осуществлены по разным ценам (1,2347 и 1,2400). И так как вы должны перечислить 500 000x1.2347 = 617 350 долларов, а вам должны перечислить 500 000x1.2400=620 000 долларов, то в результате неттинга вам перечислят чистую разницу в размере 2 650 долларов.

    После проведения операции Своп у вас образуется открытая позиция, расчеты по которой произойдут через 2 рабочих дня, т.е. 20 числа.

    Допустим опять, на следующий день 19 августа (в четверг) вы опять не хотите закрывать позицию (расчеты по которой должны произойти 20 августа), а цена немного снизилась (до 1,2387), тогда вы опять проводите операцию своп. Продаете расчетами tom (20 августа - пятница) 500 000 eur/usd (по 1,2387) и покупаете их (по 1,2387) расчетами Spot (23 августа - понедельник).


    В результате операции своп (swap) у вас образуется открытая позиция с датой расчета отстоящей от текущего дня (дня заключения сделки) на 2 рабочих дня.

    В табличном виде это будет выглядеть следующим образом.


    Есть еще один весьма значительный момент в расчете свопов, не описанный выше (с целью упрощения объяснения). На самом деле одновременные операции Tom и Spot как правило производятся не по одной и той же цене, а по разным, отличающимся друг от друга незначительно.

    Например, вы пытаетесь продлить свою открытую позицию на покупку. Тогда, вы можете продать евро скажем по 1,2378 (расчетами tom) и тут же откупить позицию по 1,237760 (расчетами Spot) или на 0,4 пункта дешевле. Получается, вы (при прочих равных условиях) зарабатываете просто находясь в позиции.

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

    Ответ, почему цена свопа может быть различной (отрицательной и положительной, а также меняться) лежит в том, что в действительности делает дилер, который исполняет ваши заявки.

    Расчет операции Своп (swap)

    Посмотрим, что он делает на примере.
    Допустим вы пытаетесь продлить длинную позицию (позицию на покупку по евро) и перенести дату валютирования например с 19 на 20 августа. Для дилера это означает, что ему нужно будет отдать вам евро (отвалютировать) на день позже, но при этом и доллары он получит от вас на день позже срока. У дилера (19 числа) возникает "лишняя" (на день) сумма в евро, равная вашей позиции, и на тот же день недостаток (на один день) долларов, которые вы не собираетесь ему поставлять.

    Соответственно, дилер берет и размещает (дает межбанковский кредит) сумму в евро на 1 день, и привлекает (берет межбанковский кредит) на 1 день требуемую сумму в долларах.

    Теперь добавим в расчет ставки межбанковского кредитования.
    Допустим, ставки на межбанке по евро и долларам будут следующими:

    Ставка Евро Доллар
    Привлечение Размещение Привлечение Размещение
    1 день 3,5 3 2,5 2,3

    Итак, дилер размещает "лишние" 500 000 евро по ставке 3% годовых, получая за это (500 000x3%)/365=41.095 евро, что равно 41,095x1.2378=50.88 доллара.

    Одновременно дилер привлекает сумму 500 000 x 1.2378 = 618900 долларов США по ставке 2,5% годовых и отдает за это (618900 x 2.5%)/365 = 42,39 доллара.

    Чистый доход за операцию составит 50,88-42,39=8,49 доллара.
    Это и есть Своп в долларах, который он может отдать вам.
    По многим причинам (например, бухгалтерским), дилер не может зачислить вам эти деньги просто так, поэтому он вкладывает их в цену осуществляемых вами операций своп. Так удобнее, и поэтому принято в дилинге.

    Если 1 пункт на лоте 500 000 евро равен 50 доллара, то 8,49 равны примерно 0,2 пункта. Поэтому дилер проводит с вами операцию следующим образом: вы, например, продаете евро расчетами tom (19 числа) по 1,2378 и покупаете ее тут же по 1,237780 (т.е. на 0,2 пункта дешевле), получая там самым эти 0,2 пункта и соответствующую им сумму в долларах.

     

    Смысл положительного свопа в том, что ставка размещения по валюте, которую вы покупаете в позиции, больше, чем ставка привлечения по валюте, которую вы продаете по позиции.

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

    Таким образом, ставки свопов зависят от ставок привлечения и размещения в валютах на межбанковском рынке. Обычно, удерживая позицию на покупку по валюте с б'ольшими ставками, вы будете получать своп, а удерживая позиция на продажу по валюте, с б'ольшими ставками - платить своп.

    Почему большой своп начисляется и списывается именно со среды на четверг?
    Потому, что перенося дату заключения позиции со среды на четверг вы переносите дату расчетов с пятницы на понедельник (через три дня). Вам будут платить свопы за 3 дня, но с вас и будут и списывать своп за 3 дня.

    Факторы, влияющие на EUR/USD - Энциклопедия Forex
    • enc.fxeuroclub.ru
    США К ключевым факторам, оказывающие влияние на курс eur/usd относится монетарная политика США. Инструментами монетарной, с помощью которых центральный банк может увеличивать или сокращать денежное предложение в стране являются: операции на открытом рынке (open market operations); регулирование учетной ставки (the discount rate); и...
     

    Как формируются котировки Forex

    Поскольку рынок forex представляет собой межбанковский рынок, то основным и практически единственным источником котировок являются банки. Остальные лишь ретранслируют банковские котировки.

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

    Куда уходят котировки
    Эти котировки, а также котировки реальных сделок уходят в специализированные информационные системы (Reuters, Bloomberg, Tenfor, DBC и т.д.), а из информационных систем поступают по всему миру - клиентам информационных систем (обратно всем банкам, физическим лицам, юридическим лицам и т.д., всем кто подключен к системам).



    Таким образом, котировки, полученные из информационных систем, являются индикативными и еще не означают, что где-то в мире по ним была совершена сделка.  Более того, не все котировки реальных сделок могут попасть в информационную систему.
    Дилинговые центры тоже являются клиентами информационных систем и предоставляют общий поток котировок своим клиентам, включая и собственные котировки, а также котировки, по которым были произведены сделки с собственными клиентами.
    Ордерa, позиции и сделки в MetaTrader 5
    Ордерa, позиции и сделки в MetaTrader 5
    • 2011.01.05
    • MetaQuotes Software Corp.
    • www.mql5.com
    Надежный торговый робот не может быть создан без понимания механизмов работы торговой системы MetaTrader 5. Клиентский терминал получает от торгового сервера информацию о позициях, ордерах и сделках. Чтобы правильно обработать эти данные средствами MQL5 необходимо хорошо представлять как происходит взаимодействие mql5-программы и среды исполнения терминала.
     

    Маркетмейкер

    (англ. Market maker — создатель рынка) — фирма брокер/дилер, берет на себя риск приобретения и хранения на своих счетах ценных бумаг определенного эмитента с целью организации их продаж. Маркетмейкеры действуют на биржевом и внебиржевом рынке как непосредственные участники сделок. На Нью-Йоркской Фондовой бирже маркет-мейкеров называют "специалистами". Как правило, маркет-мейкеры действуют по обе стороны — как продавцы, так и как покупатели. Типично маркетмейкер имеет обязательство продать как минимум 1000 акций для каждого из своих клиентов (примерно 20-30 для одного маркетмейкера). Сделки осуществляются по телефону или через Интернет и занимают секунды.

    На бирже маркетмейкером может являться, например, брокерская контора, которая по договору с биржей берёт на себя обязательство держать в течение оговоренного времени (скажем, не менее 90% торгового времени) одновременно выставленные заявки с разницей между ценами покупки и продажи (см. Спред (финансы)) не более оговоренной величины, за это биржа предоставляет маркетмейкеру определённые льготы, например, по оплате комиссионного сбора.

    Top 10 по данным Reuters самых крупных маркетмейкеров на валютном рынке :

    1. Deutsche Bank — 19.30 %
    2. UBS — 14.85 %
    3. Citi — 9.00 %
    4. Royal Bank of Scotland — 8.90 %
    5. Barclays Capital — 8.80 %
    6. Bank of America — 5.29 %
    7. HSBC — 4.36 %
    8. Goldman Sachs — 4.14 %
    9. JP Morgan — 3.33 %
    10. Morgan Stanley — 2.86 %

    Функции Маркет-мейкера

    Основной функцией Маркет-мейкеров является поддержание Двусторонних котировок на покупку/продажу ценных бумаг, а в рамках трехстороннего договора – также и оказание услуг эмитенту по включению и поддержанию ценных бумаг в Котировальных списках.

    Что такое Двусторонняя котировка

    Двусторонняя котировка – это объявленные Маркет-мейкером Заявка (или Заявки) на покупку и Заявка (или Заявки) на продажу ценных бумаг по определенной ценной бумаге, соответствующие требованиям по Спрэду и Объему котировок, установленным для ценной бумаги.

    Спрэд Двусторонней котировки – это значение, рассчитываемое в процентах, и определяемое как разница между лучшей ценой в Заявке на продажу и лучшей ценой в Заявке на покупку по отношению к лучшей цене в Заявке на покупку по определенной ценной бумаге.

    Объем Двусторонней котировки – это значение, рассчитываемое, как сумма произведений цен на количество ценных бумаг, указанных в Заявках в каждом из перечисленных случаев:

    • в Заявках на покупку в Двухсторонней котировке;
    • в Заявках на продажу в Двухсторонней котировке,

    цены которых удовлетворяют Спрэду котировки, установленному по определенной ценной бумаге. Объем котировки рассчитывается в валюте, в которой объявляются Заявки.

    Помимо Спрэда и Объема Двусторонней котировки, устанавливаются также следующие параметры их поддержания:

    • Продолжительность поддержания Двусторонних котировок, (70% от продолжительности Торговой сессии);
    • Максимальный объем сделок, заключенных на основании заявок Маркет-мейкера, по достижении которого Маркет-мейкер освобождается от обязательств по поддержанию Двусторонних котировок.

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

     

    Провайдеры ликвидности


    Под термином «ликвидность» понимается такое состояние определенных товаров, ресурсов, ценных бумаг, при котором они могут быть приобретены или реализованы быстро и без существенных потерь в цене. Высшей степенью ликвидности обладают денежные средства.

    Основной показатель ликвидности

    Основным показателем ликвидности является объем торгов. Чем больше сделок заключается с тем или иным активом, тем выше его ликвидность. Ежедневный объем торговли на валютном рынке FOREX составляет триллионы долларов США, что превосходит во много раз объемы мирового фондового рынка. Именно поэтому рынок FOREX обладает максимально высокой ликвидностью.

    Ликвидность на рынке Forex

    В практике торговли FOREX «ликвидность» означает, прежде всего, возможность быстро продать или купить ту или иную валюту в необходимом объеме. Таким образом, инструменты, которые возможно быстро продать или купить называют высоколиквидными, а активы, продажа или покупка которых занимает много времени - низколиквидными.

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

    Провайдеры ликвидности

    Агрегатор (провайдер) ликвидности - это крупный участник рынка, объединяющий в сеть крупнейшие банки мира, финансовые институты и фонды, образующий пул потока цен, котировок и новостей для более мелких участников рынка таких как брокеры, дилинговые центры и т.п.

    Одни из крупных провайдеров ликвидности: Currenex, Integral, LMAX, LCG,

    Документация по MQL5: Получение рыночной информации / SymbolInfoSessionQuote
    Документация по MQL5: Получение рыночной информации / SymbolInfoSessionQuote
    • www.mql5.com
    Получение рыночной информации / SymbolInfoSessionQuote - Документация по MQL5
     

    Маркетмейкеры

    Многие знают, что одно из первых, что говорят в техническом ВУЗе - забыть все, что проходили в школе. Данная рекомендация актуальна и здесь. Полезно иногда с чистого листа начать.

    На данный момент все рынки автоматизированы. По этой причине какие-то экономические объяснения ценообразования являются некими рудиментами. Рулят алгоритмы + некое ручное вмешательство.

    Задача каждого торгового алгоритма всегда одна и та же - принести денег владельцу. Алгоритм тем лучше, чем больше денег он в состоянии принести.

    Среди алгоритмов на рынке есть так называемые маркетмейкерские алгоритмы. Объяснить на пальцах, наверное, можно от простого примера к более сложному (кстати, многое писал на forexsystems, arbitrageurs и mql5):

    Представьте, что у вас задача создать новый символ для торговли. Пусть есть люди, которые по какой-то причине хотят его торговать. Что требуется от вас? Вам нужно в любой момент формировать из своих заявок Level2 вашего символа. Т.е. наполнить символ ценами и ликвидностью. Вначале можно сделать совсем тупой ММ-алгоритм - Level2 не меняется. Т.е.клиент купил или продал, после чего вы добавили ликвидности до исходного Level2. Очевидно, что такой алгоритм будет давать владельцу постоянно деньги. Но проблема в том, что люди не полные идиоты, и на символе-константе торговать не станут - нет даже потенциальной возможности им заработать.

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

    Выходит, что нужно придумать что-то такое, чтобы ММ-алгоритм имел максимальную разницу между сливающими и зарабатывающими. Тут и начинаются разрабатываться различные мат. модели, которые далеко не тривиальны.

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

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

     

    Площадко-образующий биржевой алгоритм

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

    Итак, есть какой-то символ, который будет торговаться только на нашей бирже. И есть много желающих его торговать. А это значит, есть уже готовые ММ-алгоритмы и мясо, без которого все вообще бессмысленно (беспрофитно).

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

    Итак, есть Level2 (терминология FOREX, в биржах его называют еще MarketDepth) - это уровни: цена покупки/продажи и сколько (объем). Каждый такой уровень (цена + объем) называется бандом. Самые лучшие банды для продажи и покупки называются Bid и Ask (некоторые называют Offer, но это лишь терминология).

    Level2 формируется из клиентских заявок (лимитники) - это и ММ-алгоритмы + еще некоторые виды алгоритмов и мясо. Спредом называют разницу между текущими Ask и Bid (в частности, по этой причине есть очень неточная по своей формулировке фраза, что ММ зарабатывают на спреде).

    Любой лимитник биржевой алгоритм почти всегда ставит на соответствующий банд в стакане. Именно по этой причине, поставив лимитник внутрь спреда происходит соответствующее его сужение. Совсем на пальцах это объяснять не буду, алгоритм постановки простой (можно погуглить или спросить).

    Если лимитник ставится хуже, чем текущая соответствующая цена (например, SellLimit <= Bid), то биржевой алгоритм исполнения исполняет не по цене хуже рыночной, а начинает слизывать (по объему) банды с наилучшего в сторону ухудшения, пока весь лимитник не заполнится, либо же пока не иссякнут банды до уровня, на котором выставлен этот лимитник.

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

    На биржах во время торговой сессии заранее выставленный лимитник исполняется в 99% случаев точно по цене - без проскальзываний. Это значит, чтобы цене пересечь ваш лимитник, его нужно обязательно исполнить.

    Лимитники в Level2 кроются маркет-ордерами. Типов ордеров полно, как биржа захочет (пропишет). Это же алгоритм. Например, в MT5 введены свои типы ордеров, которые биржа вполне могла бы легализовать - реализовать в своем биржевом алгоритме исполнения. Маркет-ордер - это производная лимитного ордера: лимитник по цене хуже текущей, при этом эта хужесть почти не измеряется. Вот сколько надо вам исполнить маркетом - столько вы и получите, но только с хорошим отрицательным проскальзыванием. Основные пользователи маркет-ордеров - мясо.

    Очевидно, что цена может двигаться по почти любой траектории без совершения сделок - смотрим ММ-алгоритмы. Если сделка совершается, то ее цена и объем называется Last. И это инфа также транслируется биржей. Поток Last-данных называется T&S (Time & Sales прим. ред).

    Некоторые биржи (далеко не все) к Last-данным добавляют еще условный флажок - направление сделки (Buy или Sell). Этот маркер является неким классификатором: на пассивных и активных участников. Т.е. на тех, чей лимитник исполнился, и тех, кто его залил. Очевидно, что этот классификатор является временным фильтром: чье исполнение из двух сторон сделки было инициировано более поздним/ранним торговым приказом.

    Понятно, что биржевой алгоритм обязан быть последовательным - т.е. формируется очередь из заявок и они последовательно обрабатываются. Но есть варианты так называемых snapshots, когда заявки накапливаются в течение какого-то относительно короткого времени, а потом выдаются на раз в level2 с соответствующим исполнением.

     

    Исполнение лимитных ордеров на бирже

    Корректный биржевой алгоритм не допускает в ценообразовании публичной ситуации Bid >= Ask. В самом алгоритме по мере приема заявок на начальном этапе формируется стакан, в котором частенько бывают ситуации Bid >= Ask. В такой ситуации включается исполнительная часть биржевого алгоритма, задача которой разрулить эту ситуацию до состояния Ask > Bid. И только после разруливания уже сформированный стакан с соответственно сформированными Last-данными становится публичным - доступным всем.

    SellLimit всегда исполняется по цене Bid, BuyLimit - исполняется по Ask.
    Но только эти Bid и Ask являются непубличными ценами сформированного на начальном этапе стакана, как описал выше.

    Если вы выставляете SellLimit - это желание вами продать, что равно предложения для других купить у вас. По этой причине SellLimit попадает в Ask-банды. Например, если вы выставляете внутрь спреда SellLimit, то формируется наилучший Ask-банд с уровнем и объемом вашего лимитника. Т.е. выставив вовнутрь спреда SellLimit, вы меняете Ask-цену. Если кто-то захочет купить по Ask-цене, то он будет заливать ваш лимитник. Говорить в таком случае, что SellLimit исполняется по Ask-цене, либо же исполняется без спреда - очень расплывчатая формулировка. Лучше просто понимать механизм, как и везде.

    Приведу пример исполнения. Вы выставили SellLimit внутрь спреда, значит Ask приравнивается к SellLimit. Теперь вы же выставляете BuyLimit равный Ask. В этой ситуации (см. первый абзац) в биржевом алгоритме получается, что Bid приравнивается к BuyLimit. Т.е. в итоге выходит, что Bid = Ask. Все, пошло разруливание ситуации, пока Ask не станет больше Bid. Пока алгоритм не разрулит, никто корректный стакан не увидит. Для простоты пускай объемы SellLimit и BuyLimit равны Vol. Получается, что оба лимитника схлопываются, Bid и Ask становятся равны следующим лучшим бандам в стакане, т.е. Ask > Bid. Далее Last-данные содержат в себе цену исполнения, которая равна вашим SellLimit (== BuyLimit), объем Vol и направление BUY (потому что BuyLimit был отправлен позже SellLimit).

    Заметьте, что если в той же ситуации сначала послать BuyLimit, а затем SellLimit, то результат будет один и тот же - вы купите/продадите сами себе, потеряв на двойной комиссии. Но только в Last-данных флажок направления будет противоположный - SELL.

     

    Возвращаясь к вопросу цены, по которому исполняются лимитники:

    Если вы будете смотреть на бары мелкого ТФ на каком-нибудь слаболиквидном символе, то увидите, что Bid-бары подрезаются снизу (BuyLimit-ами), а Ask-бары - сверху (SellLimit-ами).


    Рассмотрим опять же ситуацию SellLimit. В побаровом тестере SellLimit исполнится только тогда, когда его HighBid  >= SellLimit. Обратите внимание, что HighBid (как и LowAsk) практически не подрезаются на биржах. И забегая вперед - совсем не подрезаются на ECN/STP. Т.е. если вам нужно протестировать стратегию с лимитниками, то для вас главная информация по исполнению SellLimit является значение Bid-цены, а точнее ее High. Это может быть еще одним аргументом в пользу утверждения, что SellLimit исполняется именно по Bid-ценам.

     

    Отвлекаясь немного, можно сказать, что из этих же соображений строятся ЗигЗаги с вершинками на Bid-данных и низинками на Ask-данных. И именно на основании такого построения оценивается максимальная потенциальная доходность. 


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

    Исполнение лимитных ордеров на фьючерсах и форексе

    Ордер Sell Limit. Форекс.

    Этот ордер на рынке Forex, всегда исполняется по цене Bid и выставляется выше текущей рыночной цены ask (в нашем примере 1,4990) [прим. ред.- Селл Лимит ордер выставляется выше Бид].

    Вы решили продать евро, когда ее цена будет 1,5000. Нажимаете на кнопку Sell Limit, устанавливаете количество лотов, к примеру, 10, и указываете цену по, которой хотели бы продать - 1,5000 и этим самым говорите брокеру - «Уважаемый брокер, когда цена на евро будет 1,5000 я хочу продать 10 лотов евро». ОК, говорит брокер, я понял, я сейчас же пошлю Вашу заявку банкиру и если он решит когда нибудь-купить по этой цене, то я думаю он все сделает как надо.

    Наступил момент, когда банкир объявил о том, что он готов купит евро по цене 1,5000. Наш брокер напоминает банкиру о Вашей заявке, банкир говорит ему - проблем нет, но до тебя, мне присылали заявки о том, что хотят продать евро по цене 1,5000, так что я сейчас готов только купить 20 лотов, а заявок у меня на 25. 20 прислали до тебя, и от тебя пришло 10, так что дорогой, я как порядочный банкир куплю сначала те 20 и твои 5. Так как банкир смог купить только 5 Ваших лотов евро, то соответственно брокеру ничего не оставалось как купить только 5.

    То есть Вы установили свой ордер Sell Limit по цене 1,5000, и когда цена Bid пришла к этой цене, то у Вас смогли купить только 5 лотов по этой цене, но именно по той, которую Вы указали в ордере. Это основа основ этого ордера. Количества может не хватить, но цена - строго указанная в заявке. То есть 1,5000.


    Ордер Sell Limit. Фьючерсы.

    Этот ордер на бирже, всегда исполняется по цене Last и выставляется выше текущей рыночной цены bid (в нашем примере 1,5033). Лучше всего на практике, на фьючерсах ориентироваться на цену Last и практически ордер выставлять выше цены Last.

    Будьте внимательны. В этом как раз и заключается принципиальная разница исполнения ордеров на бирже и рынке форекс. Никогда не забывайте о том, что на рынке форекс Вы видите графики, которые рисуются по цене Bid, на бирже всегда рисуется график по цене Last.

    Вы решили продать фьючерс на евро, когда его цена будет на рынке 1,5039. Нажимаете на кнопку Sell Limit, устанавливаете количество контрактов, к примеру, 10, и указываете цену по, которой хотели бы продать - 1,5039 и этим самым говорите брокеру - «Уважаемый брокер, когда цена на евро будет 1,5039 я хочу продать 10 фьючерсных контрактов евро». ОК, говорит брокер, посылайте заявку и Вы увидите то, что она отобразится в биржевом стакане. Вы нажимаете кнопку Send - послать и увидите то, что Ваша заявка попала на биржу и на цене в 1,5039 должно быть изменено количество заявок с 80, на 90 (в примере).


    Наступил момент, когда цена Last пришла к цене 1,5039. Если мы говорим о том, что пришла цена Last, это означает то, что по этой цене, была заключена хоть одна сделка, хоть на 1 контракт из 90.

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

    Какие тут могут быть варианты.
    Ситуация первая.

    Покупателей было всего на 80 контрактов, значит, выполнят все заявки, кроме Вашей и цена Last вернется на цену 1,5038. То есть Вы будете видеть то, что вроде бы цена была на уровне Вашего ордера, а он не сработал. Такое бывает.

    Ситуация вторая.

    Покупателей было всего на 85 контрактов, значит, выполнят все заявки, и 5 контрактов от Вашей и цена Last вернется на цену 1,5038. То есть Вы будете видеть то, что вроде бы цена была на уровне Вашего ордера, а сработало всего 5 контрактов, но строго по цене 1,5039. И такое бывает.

    Ситуация третья.

    Покупателей было всего на 100 контрактов, значит, выполнят все заявки на 90 контрактов, цена Last поднимется до уровня цены 1,5040, там продавцы продадут еще 10 контрактов и цена вернется на уровень 1,5039.

    Вы всегда должны знать то, что если цена Last хоть на тик перешла цену, которую Вы указали в своем Limit Order, то Ваш ордер должен быть исполнен в полном объеме и по указанной в нём цене.

    Будем считать, что в нашем примере покупателей было больше продавцов То есть Вы установили свой ордер Sell Limit по цене 1,5039, и когда цена Last пришла к этой цене, то Вам исполнили все 10 контрактов именно по цене 1,5039. Других вариантов с ценой не может быть, только варианты с количеством контрактов.
    Причина обращения: