Что считается данными
Обычно под данными понимают котировки. На практике роботу нужны четыре разные вещи, и путать их дорого.
Свечи (бары). Цена открытия, максимум, минимум, закрытие и объём за интервал. Это то, на чём считается почти любая стратегия частного трейдера.
Сделки (лента, тики). Каждая состоявшаяся сделка: время, цена, объём. Из ленты можно собрать свечи любого таймфрейма, обратно — нельзя.
Стакан заявок. Кто и по какой цене готов купить и продать прямо сейчас. Нужен для оценки издержек и для всего, что связано с исполнением.
Справочник инструмента. Размер лота, шаг цены, стоимость шага, дата экспирации, режим торгов. Самая недооценённая часть: без справочника цена не превращается в рубли.
Последний пункт стоит пояснить сразу, потому что он ломает бэктесты чаще, чем кажется. Возьмём фьючерс на индекс РТС — вот его параметры на сегодня, прямо из справочника биржи:
шаг цены (MINSTEP) 10 пунктов
стоимость шага (STEPPRICE) 17,2946 ₽
дата последних торгов 17.09.2026Цена этого фьючерса выражена в пунктах, а не в рублях, и стоимость пункта пересчитывается биржей каждый день — она зависит от валютного курса. Значит, привычное «цена выросла на 1%» и «мой счёт вырос на 1%» здесь не одно и то же, а бэктест, считающий доходность как процент от цены, считает не то, что вы получите на счёт.
Практический вывод для новичка: данных нужно ровно столько, сколько требует ваше правило, плюс справочник. Если правило работает на часовых свечах, тиковая история вам не нужна — она стоит дороже, весит в сотни раз больше и добавляет ошибок. Но справочник нужен всегда.
Три источника и чем они отличаются
Источников для российского рынка ровно три класса.
Биржа напрямую. У Московской биржи есть открытый программный интерфейс — ISS. Он работает без регистрации и без ключа: обычный запрос по ссылке возвращает JSON. Бесплатный доступ отдаёт данные с задержкой (по торгам срочного рынка биржа прямо публикует их «с задержкой на 15 минут»), реальное время продаётся по подписке.
API вашего брокера. Те же котировки, но в формате, в котором их будет получать боевой робот. Требуется счёт у брокера и токен.
Готовые наборы файлов. Скачанные CSV, датасеты, архивы с форумов (некоторые брокеры также публикуют такие архивы на своих сайтах для скачивания). Если скачивать с форумов, надёжность данных может быть под вопросом.
| биржа (ISS) | API брокера | готовые файлы | |
|---|---|---|---|
| доступ | без регистрации | счёт и токен | скачал и всё |
| свежесть | с задержкой, реальное время по подписке | реальное время | как повезёт |
| глубина | годы, зависит от инструмента | ограничена лимитами запроса | как повезёт |
| совпадает с боем | нет | да | нет |
| главный риск | другой формат, чем в бою | лимиты и квоты | тихие ошибки в данных |
Отсюда правило, которое мы сформулировали ещё в первой статье и повторим здесь как главное в разделе: проверяйте стратегию на том источнике, из которого бот будет получать данные в бою. Тогда свечи в тесте и в торговле собраны по одним правилам — одинаково округлены, одинаково нарезаны по времени, одинаково пропускают минуты без сделок.
Отдельно про криптовалюты: там ситуация мягче. Публичный интерфейс Binance отдаёт свечи без ключа и без регистрации, а дневная история пары BTCUSDT начинается с 17 августа 2017 года — проверяется одним запросом. (Binance также публикует готовые наборы файлов по годам на своём сайте для скачивания).
Сколько истории вы реально получите
Первый вопрос к любому источнику: с какой даты у него вообще есть данные по нужному инструменту. У Мосбиржи на этот вопрос отвечает отдельный запрос — границы доступных свечей:
https://iss.moex.com/iss/engines/stock/markets/shares/
securities/SBER/candleborders.jsonОтвет для обыкновенных акций Сбербанка на момент написания статьи:
| таймфрейм | история начинается |
|---|---|
| минутные свечи | 15.12.2011 |
| десятиминутные | 08.12.2011 |
| часовые | 17.11.2011 |
| дневные | 20.07.2007 |
Обратите внимание на разрыв: дневных свечей почти на пять лет больше, чем минутных. Это типично, и это первое, обо что спотыкается идея «проверим стратегию на двадцати годах» — на минутках двадцати лет просто нет.
Второй вопрос: сколько данных отдадут за один запрос. Здесь у каждого источника свои лимиты, и они жёсткие. У торгового API Т-Инвестиций ограничения заданы на интервал свечи: минутные — не больше суток за запрос, часовые — не больше трёх месяцев, дневные — не больше шести лет, и не более 2400 свечей в ответе. У Финама то же самое сформулировано как глубина: минутные — 7 дней, от пятиминутных до восьмичасовых — 30 дней, дневные — 365 дней.
Значит, качать историю придётся кусками в цикле, а результат — складывать локально в файл. Это не оптимизация, это необходимость: повторно выкачивать пять лет минуток при каждом прогоне бэктеста вы не будете.
Четыре способа получить не те данные и ничего не заметить
Дальше начинается самое неприятное, и это прямое продолжение темы третьей статьи про молчаливые отказы. Каждый случай ниже выглядит как успешный ответ.
Постраничная выдача. ISS отдаёт данные страницами по 500 строк. Запросите минутные свечи Сбербанка за 8 сентября 2026 года — получите ровно 500 баров, с 06:59 до 15:18. Выглядит как полный день. На самом деле в этом дне 1008 баров, остальные лежат на следующей странице, за параметром start. Код, который не листает страницы, тихо получает две трети дня и считает по ним индикаторы.
Слишком большой запрос. Попросите у брокерского API минутные свечи за месяц там, где лимит — семь дней. Ответ придёт со статусом «200 ОК» и пустым списком свечей. Не ошибка, не отказ — просто пусто.
Скрытые ограничения бесплатного доступа. Задержка в 15 минут — не единственное, чем платят за бесплатность. Мы запросили у ISS исторические данные по открытым позициям на срочном рынке за последние две недели и получили в ответ строку: Free users can't receive data for the last 14 days. То есть у отдельных наборов данных своё эмбарго, и узнаёте вы о нём только из ответа.
Параметр, который сервер не понял. Готовя статью, мы запросили историю торгов, передав дату параметром, которого у этого метода нет. Сервер не сказал ни слова: он просто проигнорировал непонятный параметр и вернул первую страницу истории — данные за 2013 год вместо запрошенного 2026-го. Ответ выглядел абсолютно нормально. Три запроса за три разные даты вернули три одинаковых ответа, и заметить это можно было только потому, что мы сравнили их между собой.
И ещё одно продолжение: тот же запрос по открытым позициям за более старые даты вернул ноль строк без всякого сообщения об ошибке. И это правильный момент, чтобы сформулировать главное правило работы с чужими данными:
Пустой ответ не означает «данных нет». Он означает «ваш запрос не сработал, и сервер не стал объяснять почему».
Отличить одно от другого можно единственным способом: проверять запрос там, где вы знаете ответ заранее. Возьмите день и инструмент, по которым точно были торги, — и убедитесь, что ваш загрузчик приносит непустой и осмысленный результат. Только после этого запускайте его на данных, которых не видели.
Метка времени: самая тихая ошибка
У каждой свечи есть время. Вопрос, на который надо ответить до того, как вы напишете первую строку стратегии: это время начала бара или его окончания, и в каком часовом поясе?
Ошибка здесь не ломает программу. Она сдвигает всю историю на один бар — и превращает бэктест в заглядывание в будущее, про которое подробно шла речь во второй статье. Если время в файле означает конец бара, а ваш код считает его началом, робот в тесте принимает решения, зная то, чего в тот момент ещё не знал.
Хорошая новость: у Мосбиржи гадать не нужно, свеча приходит с двумя метками сразу:
open close high low begin end
276,00 274,75 276,29 274,00 2026-09-01 07:00:00 2026-09-01 07:59:59Плохая новость — в этой же строке спрятана вторая ловушка. Посмотрите на порядок колонок: open, close, high, low. Не привычный OHLC. Код, который читает четыре числа по порядку и называет их «открытие, максимум, минимум, закрытие», молча поменяет местами закрытие и максимум. Тест при этом посчитается, кривая нарисуется, а стратегия будет торговать по ценам, которых не существовало.
Про часовой пояс: Мосбиржа отдаёт время московское, и торговый день по её данным тянется примерно с 06:59 до 23:49 — это утренняя, основная и вечерняя сессии вместе. Для сравнения: тот же Binance отдаёт время в UTC и не строкой, а одним числом — это Unix-время, миллисекунды, прошедшие с 1 января 1970 года. 1970-й здесь только нулевая точка шкалы, а не начало истории: первая дневная свеча BTCUSDT помечена как 1502928000000, и это 17 августа 2017 года. Смешать в одном бэктесте два инструмента из этих двух источников, не приведя время к одной шкале, — верный способ получить стратегию, которая «предсказывает» один рынок по другому: ряды просто сдвинуты друг относительно друга на три часа.
Практика простая: на входе всё приводится к одному поясу и к одному соглашению о метке, а в коде рядом с загрузчиком лежит комментарий, какое соглашение выбрано. Это тридцать секунд работы и один из самых частых источников несуществующей прибыли.
Дыры и свечи, за которыми ничего нет
Ещё одно молчаливое предположение новичка: раз рынок работал, то в каждой минуте есть свеча. Проверим. Вот сколько минутных свечей вернул ISS по четырём российским акциям за один и тот же торговый день, 8 сентября 2026 года:
| бумага | минутных свечей за день |
|---|---|
| Газпром | 1009 |
| Сбербанк | 1008 |
| Ростелеком-преф | 575 |
| Россети Юг | 157 |
Торговый день длится около 1010 минут. У ликвидных бумаг свеча есть почти в каждой, у Ростелекома-префа отсутствует 43% минут, у Россетей Юга — 84%.
Важно понять, как именно устроено это отсутствие. Биржа не возвращает пустую свечу с нулевым объёмом — она не возвращает строку вообще. Для вашего кода это значит вот что:
- если вы считаете индикатор «по последним 20 барам», то на неликвидной бумаге эти 20 баров могут растянуться на полдня, и индикатор мерит совсем не то, что вы задумали;
- если вы достраиваете пропуски копированием последней цены, вы создаёте цены, по которым никто не торговал, — и стратегия начинает «зарабатывать» на них;
- если вы просто игнорируете дыры, разные инструменты в вашей корзине окажутся на разных временных сетках.
Отдельный случай той же болезни — свеча, которая есть, но за ней почти ничего не стоит. Мосбиржа проводит дополнительные сессии выходного дня на фондовом рынке с 1 марта 2025 года, и в данных они выглядят обычными днями. Вот обычные выходные по Сбербанку — 25 и 26 апреля 2026 года:
пятница 24.04 open 327,69 high 328,17 low 324,23 close 325,19 объём 29 137 930
суббота 25.04 open 325,23 high 325,73 low 325,23 close 325,68 объём 1 021 141
воскресенье 26.04 open 325,71 high 325,95 low 324,81 close 324,98 объём 1 288 257Объём выходных дней — 3,5% и 4,4% от пятничного, а дневной размах вместо привычного процента с лишним составил 0,15% и 0,35%. Формально это полноценные свечи, и любая программа примет их всерьёз. Доходит и до предела: в воскресенье 19 июля у Сбербанка все четыре цены оказались одинаковыми — 249,34, а объём составил 0,6% от пятничного.
Мы на этом обожглись в собственном роботе. Показатель, который сравнивал текущий объём со средним за прошлые дни, начал считать обычные будни аномально активными — просто потому, что в среднее попали выходные сессии со своей тонкой ликвидностью. Фильтр, стоявший на этом показателе, тихо перестал делать то, ради чего его ставили. Ошибка была не в формуле, а в том, что в данные попали выходные дни. Как правило, вашей стратегии не нужно и даже вредно торговать в выходные дни, следовательно, нужно сделать так, чтобы в выходные бот не торговал.
Сделать это надо в двух местах, и второе обычно забывают.
Первое — запретить вход. Перед тем как открыть позицию, бот проверяет, какой сегодня день, и в выходную сессию просто ничего не делает:
def is_weekend_session(bar_time_msk) -> bool:
# день недели считаем по БИРЖЕВОМУ времени, а не по времени сервера:
# сервер обычно живёт по UTC, и его «сегодня» не совпадает с московским
return bar_time_msk.weekday() >= 5 # 5 — суббота, 6 — воскресенье
if is_weekend_session(bar.time):
return None # сигналов не ищем, заявок не шлёмВторое — выкинуть выходные из истории, по которой считаются индикаторы. Именно здесь и была наша ошибка: одно только вето на вход её бы не вылечило. Бот в субботу не торговал бы, но среднее значение объёма всё равно осталось бы посчитанным вместе с субботами — то есть заниженным, и уже в понедельник фильтр по-прежнему видел бы «аномальную активность». Строки выходных дней надо отбрасывать на этапе загрузки, до всякого расчёта.
И обе правки должны стоять и в бэктесте, и в боевом роботе. Если фильтр появился только в боте, вы получаете ровно то расхождение теста и боя, о котором шла речь в третьей статье: тестировали одну систему, а торгуете другую.
Одно уточнение для аккуратности. Проверка «суббота или воскресенье» — быстрый вариант на первое время. Строго правильный — сверяться с торговым календарём биржи: дополнительные сессии выходного дня проводятся не каждые выходные — за десять месяцев с ноября 2025 года торгов не было примерно на четверти выходных дней, — а в России случаются и рабочие субботы, когда рынок работает в обычном режиме, как 1 ноября 2025 года. Календарь публикуется на сайте биржи, и обновлять его достаточно раз в год.
Правило: прежде чем считать что-либо «в среднем за N дней», посмотрите, из каких дней состоит это среднее.
Фьючерсы: экспирация и склейка
Фьючерс живёт ограниченное время. Контракт на индекс РТС с кодом RIU6 торгуется до 17 сентября 2026 года, после чего перестаёт существовать, а ликвидность переходит в следующий — RIZ6. Значит, непрерывного графика «фьючерс на РТС» в природе нет: есть цепочка контрактов, которую кто-то склеил.
И вот здесь возникает самая известная ловушка фьючерсных данных. Соседние контракты стоят по-разному: в цене дальнего уже учтены ожидаемые дивиденды, ставки и время до исполнения. Посмотрим на реальный переход от июньского контракта к сентябрьскому — цены закрытия из архива биржи:
17.06 18.06 19.06
RIM6 (истекает 18.06) 107 570 105 250 —
RIU6 (следующий) 104 330 102 420 101 060Если склеить наивно — вести ряд по ближнему контракту, а после экспирации просто продолжить его следующим, — то на стыке ряд прыгнет со 105 250 до 101 060, то есть на −4,0% за одну ночь. Реальное движение рынка за эту ночь было −1,3% (это видно по самому RIU6: 102 420 → 101 060). Остальные 2,7% — скачок, которого не было ни на одном счёте. Это чистый артефакт склейки, и стратегия, пробующая ловить резкие движения, честно найдёт его четыре раза в год.
Способов склейки три, и выбирать надо осознанно:
- Без коррекции. Ряд как есть, со скачками на стыках. Годится, только если вы вырезаете дни перехода из расчёта.
- Со сдвигом. Всю прошлую историю двигают на величину разницы между контрактами, чтобы стык стал гладким. Цены перестают быть настоящими (в глубоком прошлом могут стать отрицательными), но приращения верны — а стратегии обычно и работают с приращениями.
- С коэффициентом. То же, но история умножается, а не сдвигается. Сохраняет процентные изменения.
Есть и способ обойти вопрос: вечные фьючерсы. На Мосбирже их сейчас около двух десятков — на валютные пары, золото, индексы и отдельные акции. Формально это однодневные контракты, которые каждый день автоматически продлеваются, поэтому склеивать нечего.
Но бесплатных решений не бывает, и цена спрятана ровно там, где её не видно в свечах. За удержание вечного фьючерса стороны ежедневно платят друг другу фандинг — он начисляется в вечерний клиринг и входит в вариационную маржу. В графике цены его нет вообще. Значит, бэктест по свечам вечного фьючерса не учитывает фандинг ни в какую сторону: для одной стороны сделки это недоучтённый расход, для другой — недоучтённый доход. Относиться к нему нужно как к комиссии — считать отдельно и вычитать руками, иначе результат теста и результат счёта разойдутся тем сильнее, чем дольше вы держите позицию.
И напоследок мелочь, которая ломает код на ровном месте. У вечных контрактов в справочнике биржи стоит дата последних торгов 01.01.2100. Это заглушка, а не дата. Робот, который считает «сколько дней до экспирации» и на этом основании решает, пора ли переходить в следующий контракт, получит двадцать семь тысяч дней и будет очень спокоен.
Акции: дивиденды, лоты и тикеры
У акций свой набор особенностей, и первая из них — самая заметная.
Исторические цены на бирже не скорректированы на дивиденды. Что это значит на практике, лучше всего показать числами. Дневные свечи Сбербанка, июль 2026 года:
пятница 17.07 close 279,92 последний день с дивидендом
суббота 18.07 open 247,30 первая сессия без дивиденда −32,62 ₽ (−11,7%)
понедельник 20.07 open 251,05 первая обычная сессия −28,87 ₽ (−10,3%)Больше десяти процентов вниз между сессиями. Никакого обвала не было: 20 июля — дата закрытия реестра, а дивиденд Сбербанка, выплаченный летом 2026 года, составил 37,64 ₽ на акцию. Держатель бумаги не потерял ничего — он получил эти деньги отдельным платежом, которого в ряду цен нет.
Третья строка в таблице стоит там не для красоты. Отсечка пришлась на выходные, поэтому формально гэп открылся на субботней сессии выходного дня — той самой тонкой свече, которой мы двумя разделами выше не советовали верить. Мерить разрыв правильно по первой обычной сессии, то есть по понедельнику: 28,87 ₽ против дивиденда 37,64 ₽. Гэп обычно закрывает не весь дивиденд, и «вычесть выплату из цены» — не точная операция, а приближение. Заодно это наглядный пример того, что выбор дня для замера меняет результат почти на четыре рубля на ровном месте.
Для робота это означает три вещи. Стратегия, ищущая резкие падения, найдёт десятки таких «обвалов» в год и будет считать их сигналами. Стоп-лосс, стоящий в трёх процентах, будет вынесен разрывом. А расчёт доходности «купил и держал» по сырому ряду занизит результат примерно на сумму всех дивидендов за период.
Что с этим делать: либо считать по ряду, скорректированному на дивиденды (тогда сравнение периодов честное), либо оставить сырой ряд, но знать даты отсечек и исключать их из работы робота — в живой торговле обычно выбирают второе, потому что бот всё равно торгует по реальным ценам. Календарь ближайших отсечек мы ведём на странице дивидендов.
Размер лота — не константа. В лоте обыкновенных акций Сбербанка сегодня одна бумага, у других эмитентов — десять или сто, и биржа эти значения со временем пересматривает. Если ваш код держит лот числом в исходнике, он однажды посчитает объём позиции в десять раз мимо. Лот надо запрашивать у биржи вместе с котировками, а не помнить.
Одна бумага живёт на нескольких режимах торгов. У того же Сбербанка в справочнике биржи несколько режимов с разными периодами: основной торгуется с 2013 года, старый закрылся в 2013-м, режим неполных лотов работал до 2025-го. Запросив историю не по тому режиму, вы получите другой, обычно гораздо более тонкий ряд — и не заметите этого, потому что данные придут.
Тикеры меняются, компании исчезают. Бумага может сменить код, уйти с биржи, быть переведённой в другой список. Отсюда следствие, которое сводит на нет целые исследования: если вы берёте список инструментов сегодняшним днём и тестируете его на десяти годах истории, вы тестируете список выживших. Это та самая ошибка выжившего, о которой шла речь во второй статье, только заходит она через список, а не через данные. Правильно — брать состав рынка на ту дату, о которой идёт речь.
Данные, которых потом не будет
Отдельная категория, о которой почти не пишут, потому что понимаешь её только на собственном опыте: есть данные, которые публикуются в моменте и не публикуются в истории.
Стакан заявок — самый очевидный пример. Биржа отдаёт его текущее состояние; архива стакана в открытом доступе нет. Если ваша идея опирается на то, что происходило в стакане в прошлом вторнике, никакой источник вам этого уже не продаст.
Похожая история с рядом биржевых показателей: ставки гарантийного обеспечения, отдельные аналитические продукты вроде открытых позиций, параметры инструментов, которые пересчитываются каждый день и нигде не архивируются. Формально они опубликованы. Фактически, если вы не сохранили их в тот день, их у вас нет.
Отсюда практика, к которой мы пришли не сразу: если идея опирается на такие данные, самописный сборщик, который просто раз в N минут складывает их в файл, ставится в первый же день — до всякой стратегии. Он ничего не стоит, работает годами и однажды окажется единственным источником, у которого нужная история вообще есть. Обратный порядок — сначала придумать идею, потом искать данные — заканчивается тем, что проверить идею нельзя ещё год.
Как проверить свои данные
Данные, скачанные и ни разу не проверенные, — это не фундамент, а лотерея. Проверка занимает вечер и делается один раз на источник.
Базовые проверки — прогоняются автоматически при каждой загрузке:
- время строго возрастает, дубликатов по времени нет;
- в каждой свече минимум не выше открытия и закрытия, а максимум не ниже их — нарушение означает перепутанные колонки;
- нет нулевых и отрицательных цен;
- нет цен, отличающихся от соседних в разы (кроме известных вам отсечек и экспираций);
- количество баров в дне сопоставимо с длиной торговой сессии, а дни без данных совпадают с неторговыми днями из календаря биржи, а не со случайными датами;
- объём не равен нулю там, где вы собираетесь торговать.
Проверки, которые делаются глазами один раз:
- откройте первый и последний день ряда — они часто обрезаны наполовину;
- посмотрите на самые крупные однодневные движения за всю историю и объясните каждое: обычно там находятся ровно дивидендные отсечки и стыки контрактов;
- сверьте объём одного обычного дня с тем, что показывает сайт биржи, — расхождение в разы означает, что вы качаете не тот режим торгов.
И главное — перепроверка на втором источнике. Скачайте тот же инструмент за тот же месяц у брокера и на бирже и сравните: количество баров, цены закрытия дней, суммарный объём. Полного совпадения не будет, и это нормально: источники по-разному учитывают сессии и режимы. Ненормально другое — расхождение в отдельные дни в разы, разное число торговых дней в месяце или систематический сдвиг цен на один бар. Первое означает разные режимы торгов, второе — разный торговый календарь, третье — разное соглашение о метке времени, то самое, с которого начинается несуществующая прибыль.
Стратегия, которая на двух источниках даёт заметно разный результат, не проверена ни на одном.
Что дальше
Четыре статьи серии собрали полный контур: устройство робота, код и бэктест, выход в бой и данные, на которых всё это стоит. И ровно здесь у большинства возникает совершенно естественная мысль: работы много — может, проще купить готовое? Сразу оговоримся: торговых роботов мы не продаём — мы на них зарабатываем, торгуя на бирже сами.
Пятая статья серии об алготрейдинге — про готовых роботов и конструкторы стратегий: почему их продают, а не торгуют ими. Разберём, чем коробочный бот отличается от конструктора и что каждый из них действительно снимает с ваших плеч, а что просто убирает с глаз. И главное — как смотреть на чужую кривую доходности, зная то, что вы теперь знаете про данные: бэктест из презентации посчитан на чужой истории, по чужому соглашению о метке времени, на неизвестно каком режиме торгов и без ваших комиссий. Всё, о чём эта статья, у продавца остаётся за кадром — а спросить не у кого.
Если после этой статьи вы уходите с одной мыслью, пусть это будет вот эта: бэктест не проверяет данные — он им верит. Всё, что вы не заметили в котировках, аккуратно превратится в прибыль или убыток, которых не было, и никакой тест об этом не сообщит.
Материал носит информационный характер и не является индивидуальной инвестиционной рекомендацией. Торговля на финансовых рынках связана с риском потери капитала.
Статью подготовила редакция Tradeonia — команда практикующих трейдеров, которая сама пишет и запускает торговых роботов. Мы рассказываем только о том, что делаем и проверяем сами.
© 2026 Tradeonia. Полное или частичное копирование материала, его переработка и публикация на других ресурсах без письменного разрешения правообладателя запрещены. Цитирование допускается в объёме, оправданном целью цитирования, с указанием автора и активной гиперссылкой на эту страницу.
Источники цифр, приведённых в статье
- Границы доступной истории по свечам, состав и порядок колонок, постраничная выдача по 500 строк, количество минутных свечей по акциям за 08.09.2026, дневные свечи Сбербанка за апрель и июль 2026 года, цены закрытия контрактов RIM6 и RIU6 за июнь 2026 года, справочные параметры инструментов (размер лота, шаг цены, стоимость шага, дата последних торгов), перечень вечных фьючерсов и сообщение об ограничении бесплатного доступа к данным по открытым позициям — получены прямыми запросами к информационно-статистическому серверу Московской биржи 9 сентября 2026 года.
- Условия доступа к ISS (бесплатный доступ с задержкой, реальное время по подписке, ограничение на использование информации) — раздел «Программный интерфейс к ИСС» на сайте Московской биржи; публикация данных срочного рынка с задержкой на 15 минут — соответствующий раздел сайта биржи.
- Проведение дополнительных торговых сессий выходного дня на фондовом рынке с 1 марта 2025 года — пресс-релиз Московской биржи; доля выходных дней без торгов и объём рабочей субботы 01.11.2025 — дневные свечи Сбербанка за ноябрь 2025 — сентябрь 2026 годов из ИСС.
- Механика вечных фьючерсов (однодневные контракты с автоматическим продлением, ежедневный фандинг в составе вариационной маржи, начисление в вечерний клиринг) — материалы Московской биржи о вечных фьючерсах.
- Ограничения на глубину одного запроса исторических свечей — документация T-Invest API (метод получения свечей) и документация Finam Trade API (метод получения баров).
- Размер дивиденда Сбербанка за 2025 год (37,64 ₽ на акцию) и дата закрытия реестра 20 июля 2026 года — решение годового общего собрания акционеров, подтверждено сообщениями компании.
- Дата начала дневной истории пары BTCUSDT и формат меток времени — публичный интерфейс биржи Binance.
