gamabonds
gamabonds личный блог
27 июля 2026, 19:38

Как я делал карту рынка облигаций и что из этого вышло

Карта рынка

Несколько лет, занимаясь инвестициями в облигации, время от времени была потребность посмотреть тепловую карту рынка, но не находил такой сервис. И пришла идея, сделать его самому.

Началось с получения данных с МОЕХ, в целом дело было не сложным, просто использовал API (iss.moex) и все, казалось все готов, просто отобрази их на сайте в виде графика и все довольны, но… Отобразить так много интерактивных объектов, с анимациями, и чтобы все не лагало бесконечно, оказалось не так просто. Пришлось упростить сильно анимации, поиграть с фильтрами и оптимизировать данные и все стало приемлемо. Уже видел, как добавлю тонну фильтров (рейтинги, сектора рынка, сектора бизнеса и т.д.), но мой внутренний «червяк» понес меня не туда.

Калькулятор

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

Основной проблемой были разные виды облигаций, и что для них по разному стоит считать доходности. Точнее сама формула особо не отличается (считаю через «Численный метод Брента»), а вот данные для подсчета нужно было правильно собрать. Для флоатера беру последний известный купон (по данным МОЕХ) и предполагаю, что будущие купоны будут ему равны и на основе этих данных считаю доходность. Но самые неприятные оказались флоатеры с амортизациями (например ГТЛК 2P-10 — RU000A10CR50). Схема в целом та же, но теперь учитываются амортизации и величина купона пересчитывается в зависимости от нового номинала и чтобы стало понятно, на каких данных была получена такая доходность, решил ее выводить.

Как я делал карту рынка облигаций и что из этого вышло

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

Календарь

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

Календарь выплат

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

Портфель

Ну и конечно же работа с портфелем. Решил, что все равно не сделаю его ведение лучше чем специализированные сервисы, но зато, могу его сделать под себя. Основным таким приоритетом сделал «ребаланс». Запускаю его в тот момент когда хочу ребалансировать портфель и по моим параметрам ищутся альтернативы (тут сразу учитывается и мой калькулятор, который считает YTM более подходящим методом). Сейчас еще не хватает каких-то параметров, по которым я обычно подбираю бумаги в портфель, но всему свое время. На выходе я получаю простой отчет, на что стоит обратить внимание, а на что пока не стоит и потенциальную выгоду от изменения портфеля.

Как я делал карту рынка облигаций и что из этого вышло

Итого

Тут не описаны еще многие аспекты, как какие-то функции начинали появляться, но умирали, т.к. понимал, что это огромные затраты по времени. Как это все разворачивалось на сервере. 
Реклама ли это сервиса? Отчасти да (но ссылок я нигде не оставил), это больше просто пост выговориться. 
Если есть какие-то вопросы — пишите, с радостью отвечу.

Данная публикация является личным мнением автора. Мнение владельца сайта может не совпадать с мнением автора.
1 Комментарий
  • Сергей Sergey
    Вчера в 07:04
    Здравствуйте, а каким ИИ пользуетесь для разработки?

Активные форумы
Что сейчас обсуждают

Старый дизайн
Старый
дизайн