Перейти к содержимому
IMOEX 2216.92 1.2%
·Инвестиции·28 июля 2026 г.

Дивиденды в алготрейдинге №2: DividendCaptureScreener — захват дивидендов

Дивиденды в алготрейдинге №2: DividendCaptureScreener — захват дивидендов

Продолжаем цикл статей «Дивиденды в алготрейдинге».

Сегодня первая практическая статья — разбираем робота DividendCaptureScreener. Это классическая стратегия захвата дивидендов: покупаем акцию перед отсечкой реестра, получаем выплату и выходим.

1) Торговая идея

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

*Важно. Дивиденды у робота зачисляются роботу в ночь закрытия реестра, но зачисление дивидендов в общий портфель эмулятора – через 7 дней. Чтобы нельзя было использовать прибыль раньше, чем она будет зачислена в реальности.

2) Источники робота

BotTabScreener — скринер по множеству бумаг: робот одновременно следит за всем сетом акций и открывает ограниченное число позиций.

WikiMaster — источник данных о дивидендах: даты отсечек, размеры и доходность выплат. Работает и в тестере, и в бою.

3) Индикаторы

SMA — простая скользящая средняя. Фильтр тренда: покупаем только выше неё. Отключается в настройках.

4) Логика робота

Вход в позицию (всё должно совпасть):

1) По бумаге есть дивиденд с отсечкой в ближайшие N дней (по умолчанию 5).

2) Цена закрытия выше SMA (если фильтр включён).

3) Общее число открытых позиций робота меньше лимита MaxPositions.

4) Сейчас не входит в запрещённые периоды торговли.

Выход из позиции:

1) Наступил день, следующий за датой отсечки реестра.

2) Время сессии достигло заданного (по умолчанию 10:05).

Здесь есть важная деталь кода, на которую стоит обратить внимание. Дата реестра запоминается роботом в момент входа в сделку. Зачем? После отсечки метод GetDividendsFuture начинает смотреть уже на следующий дивиденд — и если бы робот проверял дату «на лету», условие выхода никогда бы не сработало. Запоминание этой даты решает эту проблему честно и просто.

5) Исходный код в проекте

Робот лежит в открытом доступе на ГитХабе:

https://github.com/AlexWan/OsEngine/blob/master/project/OsEngine/Robots/Dividends/DividendCaptureScreener.cs

6) Настройки робота

Разбираем параметры по порядку.

1) Regime — режим работы: On / Off / OnlyClosePosition (только закрытие имеющихся позиций).

2) Daysbeforeregistry — за сколько дней до отсечки искать вход. По умолчанию 5.

3) SMAperiod — период скользящей средней. По умолчанию 50.

4) UseSMAfilter — включить или выключить фильтр по SMA.

5) Maxpositions — максимум одновременно открытых позиций. По умолчанию 5.

6) Icebergorderscount — на сколько частей дробить заявку (айсберг-ордера). Полезно на неликвидных бумагах.

7) Exittime — время выхода на следующий день после отсечки. По умолчанию 10:05.

8) Nontradeperiods — запрещённые периоды торговли (утро, обед, вечер) с возможностью включать и настраивать каждый.

9) Volumetype — тип объёма: фиксированный объём или процент от депозита (по умолчанию 20%).

10) Volume — размер объёма.

11) Assetinportfolio — валюта портфеля для расчёта процентного объёма (рубли).

7) Запуск робота в тестере

1) Создайте сет из ликвидных акций MOEX — Сбербанк, Газпром, Лукойл и другие дивидендные бумаги.

2)Таймфрейм — 30 минут. Меньше не надо.

3)Включите выплату дивидендов в тестере. В эмуляторе биржи.

4)Запустите тест на нескольких годах истории, чтобы захватить разные сезоны выплат (весна и лето — самые «дивидендные» месяцы на MOEX).

Начисление дивидендов и их включение в тестере, можно посмотреть здесь:

8) Один из вариантов тестирования

Штатные настройки робота для ТОП 30 акций MOEX за 10 лет:

9) Риски и нюансы

Честно про слабые места стратегии:

1)Дивидендный гэп. После отсечки цена падает примерно на размер дивиденда — выплата сама по себе прибыли не гарантирует. SMA-фильтр и ранний выход нужны именно для борьбы с этим эффектом.

2)Комиссии. Сделки короткие, оборота много — смотрите на свой тариф.

3)Проскальзывание. На неликвидных бумагах пользуйтесь айсберг-ордерами и не лезьте туда, где спред съест выплату.

4)Налоги. С дивидендов удерживается налог — учитывайте это при подсчёте реальной доходности стратегии.

Следующая статья — KeltnerDividendScreener: торгуем тренд, но только в бумагах с хорошей дивидендной историей. Другой взгляд на те же данные. Подписывайтесь!

Удачных алгоритмов!

https://smart-lab.ru/company/os_engine/blog/1024149.php

Скачать OsEngine: https://github.com/AlexWan/OsEngine

Официальная поддержка OsEngine в MAX:https://max

Канал Научный трейдинг в MAX: https://max.ru/

Поддержка OsEngine в Телеграм: https://t.me/osengine_official_support

Канал Научный трейдинг (Bad Quant) в Телеграм: https://t.me/bad_quant

https://www.tbank.ru/invest/

Это отрывок статьи. Полную версию читайте на сайте источника по ссылке ниже.

Источник: Smart-Lab