Вопросы по данным

Почему? Это же будет полезно?
Давайте сделаем сшивку, это позволит строить стресс и бек тесты на более длинных горизонтах.
Чем могу помочь, чтобы это реализовать?

Да, согласен, что это полезно. Но может быт трудоёмким процессом. Посмотрю, старые скрипты. Если всё работает, сделаю. Если нет, обращусь за помощью :slight_smile:

По склейке можно наверное составить типо такого словаря, естественно дополнив его

LEGACY_MAPPING: Dict[str, tuple] = {
“T”: (“TCSG”, 1.0), # Т-Банк (Тинькофф)
“X5”: (“FIVE”, 1.0), # X5 Group
“UPRO”: (“EONR”, 1.0), # Юнипро
“YDEX”: (“YNDX”, 1.0), # Яндекс
“VKCO”: (“MAIL”, 1.0), # VK (бывш. Mail Ru)
“LENT”: (“LNTA”, 1.0), # Лента
“HEAD”: (“HHRU”, 1.0), # HeadHunter
}

Я у себя использовал такой алгоритм склейки:

  1. При запросе тикера, присутствующего в LEGACY_MAPPING, определяется старый тикер и коэффициент конвертации.

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

  3. Цены старого тикера делятся на коэффициент (для приведения к ценам нового тикера).

  4. Данные старого и нового тикеров объединяются с сохранением разрыва (gap) между периодами торгов.

  5. Дивиденды также объединяются с аналогичной корректировкой сумм.

Покопавшись понял, что полноценная склейка обычных тикеров пока невозможна. В нашей базе данных не хранится информация по дивидендам. Мы ее берем из внешних источников. Adjusted_close надо пересчитывать ежедневно с учетом поступающих дивиов. Надо переделывать базу дынных и самим считать adjusted_close. Пока такое не потянем.

Добрый день, проверял дивиденды по российским компаниям, которые есть в базе okama и обнаружил, что некоторые данные не сходятся с другими источниками (dohod.ru). Или дивиденды не стоит в okama смотреть?

Дивиденды - тем сложная. Мы и раньше замечали, что по российским акциям встречались ошибки. В целом можно исправлять. Можете, например, прислать тикеры, по которым попались ошибки.

Вот что удалось обнаружить с ИИ (смотрел далеко не все акции):

2. Дубли и лишние записи — выплаты, которых не было, или одна выплата дважды с разными датами:

  • MGNT: 80,17 дважды (06 и 07.2023), 360,71 (31.12.2023), 120,24 (06.2024);
  • TRNFP: 9 927,43 дважды (06 и 07.2023);
  • TATN: 21,60 и 27,71 (03–04.07.2023);
  • PHOR:
    • 2011–2012: 25,00, 29,32, 34,29;
    • 2020: 66,00;
    • 2023–2024 — шесть записей, расходящихся с фактическими выплатами;
  • по одной–две лишние записи: AFKS, ALRS, FLOT, GMKN (675,44 в 2024), MOEX, MTSS, NVTK, MAGN, BSPB, ROSN, LKOH (05.07.2024).

3. Неверные суммы:

  • TATN и TATNP: 13,57 вместо 35,17 (01.2024); 28,57 вместо 25,17 (07.2024); 31,10 вместо 38,20 (10.2024);
  • BSPB: 14,79 вместо 23,37; 17,84 вместо 27,26 (2024);
  • NVTK: 25,63 вместо 35,50 (10.2024);
  • MAGN: 0,8054 вместо 2,75 (06.2024);
  • LKOH: 256 вместо 793 (12.2022);
  • SNGSP: 15,16 вместо 12,29 (07.2024); SNGS: 0,80 вместо 0,85 (07.2024);
  • PHOR: 284,81 вместо 291 (12.2023).

4. Пересчёт на сплиты непоследователен. Часть выплат приведена к бумагам после сплита, часть — нет:

  • TRNFP: 18 865,45 за 07.2024 — после сплита 100:1 от 21.02.2024 должно быть 177,20;
  • SBER 2007: 0,3855 — до сплита 1000:1 выплата была 385,50; SBERP 2007: 0,465 вместо 9,30;
  • PHOR 2011: 25 вместо 250 (сплит 10:1 в 2012);
  • IRAO 2011: 0,0015 вместо 0,000015.

5. Пропуски — выплаты, которых нет в Okama:

  • GMKN: вся история 2013–2023, 22 выплаты;
  • 2024–2026 у многих бумаг: YDEX, T, VTBR, OZON, HEAD (HHRU), SVCB, CHMF, NLMK, ROSN, NVTK, MOEX, MTSS, TATN/TATNP, BSPB, FLOT, ALRS, LKOH, SNGS/SNGSP.

Поправили данные по дивидендам российских акций. Проверьте, пожалуйста, данные по тем тикерам, где вы заметили расхождения. Если проблема осталась, напишите тикер и период — проверим.