МЕТОДИКА · ДАННЫЕ
Девять расчётных рядов: модели фондов, денежного рынка и валют
Расчётные ряды продлевают историю там, где реальных фондов ещё не было. Они помечены отдельно и никогда не выдаются за котировки фондов.
Номера выпусков и даты в тексте относятся к редакции методики. Действующие данные — выпуск 0.5.2.20261026, рыночный срез 26.10.2026; правила расчёта описаны ниже.
Девять новых расчётных рядов
К базовому слою 0.4.3 добавлены девять рядов с классом synthetic_model и исследовательским допуском synthetic. Их коды отличаются от биржевых тикеров реальных фондов. MM_CBR сохраняется отдельной прежней моделью; CASH_RUB остаётся денежным остатком.
MM_RUONIA использует опубликованный Банком России накопленный индекс RUONIA. MM_RUSFAR использует опубликованный Московской биржей RUSFARIND. IMOEX_FUND_PROXY использует имеющийся MCFTR. OFZ_FUND_PROXY использует RGBITR, CORP_FUND_PROXY — RUCBTRNS. Это индексы совокупного дохода; дивиденды и купоны внутри них повторно не прибавляются. Для IMOEX_FUND_PROXY сохранены точные даты поддержки исходного MCFTR, включая четыре внутренних пропуска; отсутствующие наблюдения не заполняются.
Базовые дополнительные расходы всех девяти моделей равны нулю, налог равен нулю. Параметры закреплены в конфигурации расчётных рядов. Расходы модели не калибруются к историческому результату реального БПИФ. Изменение параметров создаёт новую версию данных. Комиссии портфельных операций задаются отдельно в конструкторе.
Валютная корзина
FX_BASKET_RUB распределяет капитал по одной трети в USD_RUB, EUR_RUB и CNY_RUB. При первоначальном входе приобретаются дробные условные позиции. В начале нового месяца сначала переоцениваются прежние позиции, затем восстанавливаются равные веса. Процентный доход на валюты отсутствует. Комиссии внутренней ребалансировки корзины равны нулю; отдельная комиссия портфеля применяется к покупке или продаже самой модели.
История начинается только на пересечении допущенных валютных рядов с 11.05.2006. Старые архивные CNY с неоднозначными номиналами не расширяют это окно. Простое усреднение исходных рублёвых цен разных валют не используется.
Американские ETF и рублёвая оценка
Для QQQ и SPY сохранены полные ответы Yahoo Finance с дневными ценами, выплатами и событиями дроблений. CLOSE и историческая выплата источника относятся к единице, уже скорректированной на дробления. Событие дробления QQQ 2 к 1 сохраняется как свидетельство и повторно к этим CLOSE не применяется.
USD доходность строится через независимую цепочку реинвестирования на ex-date:
wealth_usd(t) = wealth_usd(t−1) × (close(t) + dividend(t)) / close(t−1)
Выплата реинвестируется по закрытию ex-date, с дробными долями, без налогов. Дата поступления на конкретный брокерский счёт не моделируется. Внутренние расходы ETF уже отражены в цене. Vendor Adjusted Close сохранён только для диагностики: его соглашение о дивидендной корректировке отличается от явного денежного реестра и не подменяет формулу.
Для российской даты d выбирается последняя американская дата t строго меньше d. Затем применяется официальный USD/RUB с действующей датой не позднее d и в пределах сохранённого valid_until. Рублёвый уровень пропорционален wealth_usd(t) × USD_RUB(d) и нормируется к 100 на первой полной модельной оценке. Поэтому закрытие США 16.10.2026 не используется в российской оценке 16.10.2026.
Источники SPY сохранены с 29.01.1993; первая полная рублёвая модельная оценка — 01.02.1993. В конструкторе используется общий календарь с 22.09.1997. Ранние даты full history относятся к модельному календарю рабочих дней и не объявляются торговыми сессиями Мосбиржи. Для QQQ первая рублёвая модельная оценка — 11.03.1999.
Первичная идентичность ETF сверена по страницам эмитентов. Исторические дневные цены и выплаты являются данными поставщика Yahoo Finance; все выплаты за весь период не объявляются независимо сертифицированными по документам эмитентов. Эти ограничения входят в допуск и паспорт результата.
Долларовый денежный рынок
USD_MM_RUB использует накопленный индекс SOFR и ту же консервативную схему предыдущей американской даты и действующего USD/RUB. С 02.04.2018 по 28.02.2020 сохранены официальные indicative значения из Excel архива ФРБ Нью-Йорка; с 02.03.2020 используются регулярные данные API. Ранний участок имеет явный статус official_indicative_prelaunch. Первая рублёвая модельная оценка — 03.04.2018.
Доступность SOFR как официального ориентира не означает возможность разместить деньги инвестора непосредственно по этой ставке. Налоги, доступ к счёту, расходы конвертации и брокерская исполнимость этой теоретической моделью не задаются.
Слои и происхождение
synthetic_artifacts хранит ссылки, время получения, SHA-256 исходных байтов и gzip, тип свидетельства и путь к сохранённому артефакту. synthetic_inputs хранит нормализованные индексы, цены, выплаты и дробления с источником каждой записи. synthetic_models хранит определения, расходы, даты и версию. synthetic_points хранит полный модельный календарь, уровень, дату американского или индексного входа, дату и значение FX и пояснение расчёта.
В prices добавлено 41 265 условных модельных оценок с basis SYNTHETIC_RESEARCH_INDEX. Их CLOSE равен уровню модели; это не рыночная цена пая или ETF в рублях. OPEN, HIGH, LOW, volume и turnover для них не создаются. Исходные фактические цены остаются неизменными. Поле raw_first_date старого общего представления coverage для synthetic_model относится к этим отдельно помеченным оценкам; фактическая глубина первичного источника раскрывается в synthetic_inputs и протоколе ETF.
У model points поле conditional_rebalance и соответствующий series.tradable сохраняют признак обновления исходного наблюдения. Действующий движок для is_reference=1 допускает условную аналитическую ребалансировку и на перенесённой оценке в разрешённом возрасте. Этот режим не подтверждает возможность реальной биржевой сделки. Для американских входов перенос ограничен семью днями; для официальных индексных оценок — 35 днями внутри наблюдаемого периода; FX дополнительно ограничен valid_until и возрастом 14 дней.
Все 111 первичных артефактов сохранены. Выдача GET /api/synthetic-models читает определения из SQL; GET /api/synthetic-history/
Независимая проверка
Для SPY и QQQ отдельный денежный реестр получает дивиденды в деньги и увеличивает число дробных паёв по цене закрытия, затем пересчитывает результат в рубли. Проверены все 16 080 полных модельных оценок этих двух рядов. Максимальная разница с основной цепочкой — менее 0.000000005 индексного пункта.
Валютная корзина независимо выполнена исходным портфельным Python движком на базовой базе 0.4.3; проверены 5 128 дат. База с девятью добавлениями повторно построена офлайн и совпала побайтово. Все прежние строки предметных таблиц базового выпуска сохранены; новые данные не объявляются исправлением первичных выплат российских акций.
Первичные ссылки: https://www.cbr.ru/hd_base/ruonia/sv_ruonia/ ; https://www.moex.com/a8906 ; https://www.moex.com/a5865 ; https://www.moex.com/a7477 ; https://www.newyorkfed.org/markets/reference-rates/sofr-averages-and-index ; https://www.newyorkfed.org/markets/opolicy/operating_policy_200306 ; https://finance.yahoo.com/quote/QQQ/history/ ; https://finance.yahoo.com/quote/SPY/history/ . Точные запросы, пагинация и хеши сохранены в synthetic-source-manifest.json.