QQQ · Deep ITM 0DTE: лимитная заявка по формуле 09:35–10:00, продажа в 16:10 или исполнение в 17:25

Тот же тест, что с покупкой в 09:35, но не по ask: в 09:35 по Нью-Йорку робот выставляет заявку на покупку опциона QQQ в деньгах с экспирацией в этот день по самой формуле — цена QQQ минус страйк (у Put: страйк минус цена QQQ) — и переставляет её при каждом движении QQQ до 10:00. Заявка исполняется, только когда продавец опускается до неё, поэтому опцион покупается примерно по внутренней стоимости, а не по ask, который выше на полспреда. Всё решает скорость робота — через сколько он узнаёт цену QQQ (0,1–1 с): медленную заявку исполняют в основном тогда, когда QQQ только что ушёл против неё. Исполнение проверяется по каждой котировке опциона и QQQ (тики, до миллисекунды). Закрывается позиция в тот же день: продажа по bid в 16:10 или исполнение в 17:25 по внутренней стоимости от цены QQQ в этот момент. Около $10 000 в день. Любая настройка ниже пересчитывается в браузере по сохранённым исполнениям.

QQQ · 2022: данных пока нет

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

Для QQQ уже готовы: 2026.

Как считается
  • Лимитная заявка. В 09:35:00 робот выставляет заявку на покупку опциона, выбранного ниже, по формуле: цена QQQ минус страйк у Call, страйк минус цена QQQ у Put, округлённая вверх до цента, плюс запас 0, 1, 2 или 5 центов на акцию. Цена QQQ — середина её котировки NBBO. При каждом изменении этой середины робот переставляет заявку, но узнаёт о нём с задержкой 0,1, 0,25, 0,5 или 1 секунда. Как считать исполнение — поле формы: когда ask опциона в NBBO не выше заявки (по цене заявки, если ask опустился до стоящей заявки, и по ask, если заявка поднялась до стоящего ask или была выставлена на него); или ещё когда обычная сделка по одному опциону прошла по цене заявки или ниже, пока заявка — лучший bid (по умолчанию: продавцов, которые продают сразу в bid, в котировках не видно, а продали бы они сначала нашей заявке); или строго — только когда ask или такая сделка ушли ниже цены заявки (по той же цене перед ней могут стоять другие). Кроссы, сделки в зале и сделки-связки не считаются; перекрещённая котировка (ask ниже bid) рынком не считается. Заявка ждёт до 10:00:00; неисполненная снимается, и сессия пропускается, или, по выбору, опцион покупается по ask котировки в 10:00. Переплата, плечо и сравнение с акциями считаются от цены QQQ в момент исполнения.
  • Данные. Для каждой сессии с экспирацией в тот же день — все изменения котировки NBBO и все сделки выбранных опционов с 09:34 до 10:00 и все котировки QQQ с 09:34 до 10:01, до наносекунды (Massive, история /v3/quotes; у QQQ сохранены только моменты, когда меняется середина). Выбор страйка — по котировкам NBBO в 09:35:00 всех страйков в деньгах до глубины 5%, которые хранит режим с покупкой в 09:35, и середине котировки QQQ в 09:35:00. Котировки продажи и цены в 16:10 и 17:25 — из того же режима. Пока собран только QQQ за 2026 год.
  • Выбор страйка. В 09:35 для каждой стороны берётся опцион в деньгах, у которого страйк ± середина котировки ближе всего к цене QQQ (при равенстве — ближайший к деньгам); или, по выбору, ближайший к деньгам, самый дешёвый, то есть с наибольшим плечом, из тех, у кого разница не больше 0,01% цены. Котировка шире $0,50 или без bid не используется.
  • Экспирация. В ту же сессию: 0DTE. Сессия без экспирации в тот же день (по списку контрактов поставщика) не торгуется и в таблицу не попадает. У QQQ экспирации каждую сессию с конца 2022 года, до этого — по понедельникам, средам и пятницам.
  • Плечо = цена QQQ в момент исполнения ÷ цена покупки: на сколько долларов акций движется один доллар премии.
  • Продажа в 16:10. По bid котировки NBBO, действующей в эту минуту, если ей не больше 5 минут и bid покрывает комиссию. Акции перестают торговаться в 16:00, а опционы на QQQ — в 16:15, поэтому в 16:10 у опциона ещё есть рынок. Bid глубокого ITM-опциона часто ниже его внутренней стоимости (цена минус страйк у Call, страйк минус цена у Put): поле «Если bid ниже внутренней стоимости» либо всё равно продаёт по bid (по умолчанию), либо исполняет опцион (они американские) по внутренней стоимости от цены QQQ в эту минуту. Контракты, не проданные по bid, исполняются по внутренней стоимости, если она покрывает комиссию; иначе считаются по $0 без комиссии. Если у поставщика нет ни одной котировки опциона с 15:00, сессия не оценивается и не входит в итог.
  • Исполнение в 17:25. До 17:30 по Нью-Йорку владелец истекающего опциона решает, исполнять ли его, независимо от цены в 16:00. Страница исполняет опцион в 17:25, если внутренняя стоимость от цены QQQ в этот момент (последняя сделка до 17:25, на вечерней сессии) покрывает комиссию, и засчитывает эту стоимость: полученные по страйку акции считаются проданными (у Put — откупленными) по этой цене, без спреда и комиссий по акциям. Если в 17:25 опцион вне денег, он истекает по $0, и премия теряется.
  • Бюджет делится поровну между выбранными ногами: при Call + Put — половина дневного бюджета на ногу; нужны обе ноги, сессия без любой из них пропускается. Контрактов на ногу — столько, чтобы стоимость (ask × 100 + комиссия за каждый) была ближе всего к бюджету ноги, больше или меньше его; при учёте объёма — не больше объёма на ask. Сессия, в которую даже один контракт дороже двух бюджетов ноги, пропускается. Страница открывается с бюджетом $10 000 в день и показывает доходность к капиталу: бюджет плюс наибольшая просадка.
  • Комиссия берётся за каждый купленный и проданный (или исполненный) контракт; по умолчанию $0,65.
  • То же в акциях. Для сравнения — столько акций, сколько покрывают опционы (100 на контракт; для Put — продажа в шорт), купленных по цене в 09:35 и проданных по цене минуты выхода, без комиссий и спреда. Разница с опционами — это то, во что обошлись или что принесли переплата, спреды, комиссии и ограниченный премией убыток.
  • Лучший вариант. Страница открывается на лучшем варианте за весь год при $10 000 в день, комиссии $0,65, без учёта объёма, со страйком ближе всего к формуле и без покупки в сессии без подходящего страйка: среди вариантов (сторона × выход × цена в формуле × допуск, а для продажи по bid — продавать или исполнять, если bid ниже внутренней стоимости), которые торгуют хотя бы в половине сессий с экспирацией в тот же день, — тот, у которого больше всего итог без трёх лучших сессий, чтобы вариант не выигрывал на нескольких скачках; при равенстве — больший итог. Кнопка «Лучший вариант» ищет заново среди опционов, выбранных в форме, при текущих настройках. Все они подобраны на тех же сессиях, на которых показан результат, поэтому он завышен.
  • Ограничения. Известны только котировки. Исполнение засчитывается, когда ask доходит до заявки, но очередь перед заявкой по этой цене, объём за ask и влияние самой заявки на рынок (видимая заявка по формуле может изменить котировки маркет-мейкеров) неизвестны; как и время на отправку и изменение заявок сверх задержки робота. Поэтому на деле исполнение может прийти позже или не прийти, а быстрый робот — это сервер рядом с биржей с живыми котировками QQQ или тип заявки, которую двигает сам брокер (у Interactive Brokers — «Pegged to Stock» с дельтой 100%); его скорость надо проверить на одном контракте. Лучший вариант подобран на том же году.
  • Воспроизведение. Тики собирает, после сессий режима с покупкой в 09:35, python -B scripts/collect_deep_itm_0dte.py --limit --symbols QQQ --from 2022-01-01, а снимок страницы проигрывает на них заявку (app/deep_itm_0dte/limit.py) без новых запросов: python -B scripts/build_deep_itm_0dte_page.py --limit --symbols QQQ --years 2022. Каждую настройку браузер считает моделью public/static/deep-itm-0dte-model.js; деньги считаются в сотых долях цента.