Зачем ребалансировать портфель?
Рынок меняет доли активов. Без ребалансировки вы уходите от стратегии, берёте лишний риск. Например, рост акций увеличивает их долю — вы неосознанно увеличиваете риск.
Ребалансировка — это приведение долей активов к целевым весам. Мы реализовали скрипт на Python, который сравнивает выгоду от сделки с комиссией брокера и налогом на купоны. Алгоритм подходит для любого брокера с REST API.
Рынок меняет доли активов. Без ребалансировки вы уходите от стратегии, берёте лишний риск. Например, рост акций увеличивает их долю — вы неосознанно увеличиваете риск.
Перед каждой сделкой скрипт считает стоимость покупки/продажи с комиссией брокера (обычно 0,3% на сделку). Если комиссия съедает больше половины отклонения — сделка отменяется. Это защищает от лишних потерь.
Купоны ОФЗ и корпоративных облигаций облагаются НДФЛ 13% (ставка резидента). Алгоритм не считает налог на сделки, так как прибыль считается по итогу года — ребалансировка лишь перекладывает активы, фиксация прибыли не происходит.
В конфигурации словарь: {'SBER': 0.3, 'LKOH': 0.2, 'FXRL': 0.25, 'ОФЗ 26233': 0.25}. Веса в сумме 1,0. Можно также указать ограничения на минимальную сделку, чтобы избежать дробных лотов.
requests (API), pandas (обработка), numpy (расчёты). Для работы с API конкретного брокера — его SDK (например, tinkoff-invest-api или alor-api). Код универсален, достаточно подставить эндпоинты.
Рекомендуем раз в месяц или при отклонении более 5% от цели. Чаще — растут комиссии. Реже — портфель уходит от стратегии. Алгоритм сам решает, делать ли сделки, исходя из порога.
Обычно 0,3% за сделку, а также депозитарные комиссии (100–200 ₽/мес). Алгоритм использует только торговые комиссии. Депозитарные — константа, их не отменить.
| Актив | Целевой вес, % | Текущий вес, % |
|---|---|---|
| ОФЗ 26233 | 40 | 37,2 |
| LKOH (Лукойл) | 20 | 22,8 |
| SBER (Сбер) | 25 | 24,5 |
| FXRL (РФ-акции) | 15 | 15,5 |
| Критерий | Календарная (раз в месяц) | По порогу отклонения |
|---|---|---|
| Частота сделок | Фиксированная | Только при отклонении >5% |
| Комиссионные расходы | Выше из‑за лишних сделок | Ниже, сделок меньше |
| Отклонение от целей | Может нарастать между датами | Контролируется жёстко |
| Автоматизация | Простая | Требует расчёта порогов |
| Налоговая сложность | Больше отчётов | Меньше сделок — проще учёт |
Установите Python 3.10+, pandas, numpy, requests. Для API брокера — официальный пакет (например, pip install tinkoff-investments).
Создайте JSON/словарь: цель весов, комиссия (0,003), мин. сделка (1000 ₽), порог отклонения (0,05). Вставьте токен API брокера.
Запросите через API портфель: тикер, количество, цена. Сохраните в DataFrame. Если дробных лотов нет — скрипт пересчитает в штуки.
Скрипт вычисляет необходимые объёмы: разницу между текущей и целевой стоимостью, вычитает комиссию. Если разница меньше комиссии — сделка пропускается.
Скрипт выводит список ордеров. Проверьте ликвидность (стакан) и вручную подтвердите. Для полностью автономного режима — добавьте отправку заявок через API.
Обычно 0,3% за сделку, а также депозитарные комиссии (100–200 ₽/мес). Алгоритм использует только торговые комиссии. Депозитарные — константа, их не отменить.
Раз месяц или при отклонении >5%. Оптимально — раз в квартал для низковолатильных активов (облигации). Акции — чаще.
Нет, это не фиксация прибыли. Налог на купоны (13%) платится отдельно. При продаже акций с прибылью — да, но ребалансировка обычно не предполагает существенной реализации прибыли.
Тинькофф Инвестиции (API open source), Альфа-Инвестиции, БКС. У Сбера и ВТБ API закрытый, но можно через OpenAPI (для Сбера) или парсинг личного кабинета (не рекомендуется).
Да: ошибки в коде, сбой API, резкое падение ликвидности. Всегда проверяйте расчёты перед исполнением. Не ставьте автоматическое исполнение без лимитов.
Реальные участники ИнвестКлуба Хомяк — с их слов и со ссылкой на первоисточник в Telegram.
Точка входазашла пробно на 1 месяц после рекламы
Что изменилосьосталась на 1,5 года — структурированные знания, прямые эфиры с экспертами, освоила ИИ-инструменты
«Когда-то я зашла пробно, на 1 месяц. Прошло 1,5 года, а я по-прежнему там. Один только искусственный интеллект чего стоит.»история в Telegram →
Точка входавозрастной скепсис, долго не решался зайти в закрытый клуб
Что изменилосьгора структурированных материалов, отзывчивое сообщество, которое помогает и подсказывает
«Возрастной скепсис мешал зайти — думал, всё как обычно. Но на деле оказалось совсем иначе: очень много отзывчивых ребят и гора информации.»история в Telegram →
«В Хомяке уже полтора года… кайфовое, живое сообщество. Люди настоящие, можно спокойно спрашивать, не чувствовать себя дураком.»
«Зашла пробно на 1 месяц. Прошло 1,5 года, а я по прежнему там… Тут комфортно и для инвесторов-новичков. Вся информация отлично структурирована.»
Ещё реальные отзывы участников — t.me/traderreviews