Skip to content

MSFT dividend data has gaps #1004

Open
Open

Description

@fashandge

I downloaded dividend data using the rest API and use them in my application. While debugging the data using Claude Code, it finds the following issue on MSFT dividend data. Could you fix them?

MSFT pays quarterly (Feb, May, Aug, Nov), but Massive's data for 2017 has only two records instead of four — the May and November ex-dividend dates are
missing entirely. Their haf values bundle two quarters of adjustment into each event.

The consequence for adjust_daily_bars.py: for any price date between 2017-02-14 and 2017-08-14, the next ex-div in our data is 2017-08-15 (haf=0.908207).
Yahoo has 2017-05-17 as next, with a haf that's lower by one dividend factor (~0.6%). So our adjusted prices are ~0.57–0.60% too high for that entire
window. Same story between Aug and Nov 2017.

This is a source data gap in Massive — nothing in the pipeline is broken. Everything from 2018 onward is fine.

Activity

  1. fashandge commented on Mar 4, 2026

    @fashandge
    Author

    I debugged further to find more tickers likely with quarterly dividends but missing dividends events for some quarters in the downloaded dividends data using rest API:

           ticker   ex_date        gap   combined_ratio  typical_combined_ratio   ratio
           -----------------------------------------------------------------
           TG       2020-12-21     186         0.703913    0.992918  0.7089
           SPQ      2024-12-23     181         0.862442    0.993475  0.8681
           CRDE     2022-08-15     182         0.880000    1.000000  0.8800
           CSR      2018-12-31     200         0.890625    0.987485  0.9019
           FTGC     2022-12-15     174         0.905180    0.992239  0.9123
           TNL      2018-06-14     202         0.902844    0.987850  0.9139
           ADX      2019-11-22     190         0.923513    0.996313  0.9269
           CWPS     2023-01-12     182         0.932581    1.000000  0.9326
           TFC      2019-08-13     182         0.923209    0.986799  0.9356
           SPUU     2017-06-20     182         0.934067    0.996133  0.9377
           FDLS     2024-12-16     174         0.941926    0.997680  0.9441
           LFVN     2023-09-07     191         0.941940    0.994506  0.9471
           FAAR     2022-12-15     174         0.943116    0.992174  0.9506
           RTX      2019-11-14     182         0.944148    0.992612  0.9512
           BRZU     2021-12-21     182         0.946297    0.993694  0.9523
           MYLD     2025-03-20     181         0.950500    0.993460  0.9568
           PEO      2019-11-22     190         0.952366    0.993365  0.9587
           BVERS    2022-09-21     182         0.959677    1.000000  0.9597
           PGJ      2024-06-24     189         0.957687    0.997041  0.9605
           BKNIY    2024-12-03     155         0.960770    1.000000  0.9608
           TTT      2024-12-23     180         0.956103    0.994886  0.9610
           DVYE     2024-12-17     189         0.948727    0.986719  0.9615
           ADVE     2024-12-18     175         0.957634    0.994404  0.9630
           FRO      2023-03-15     181         0.940749    0.975931  0.9639
           CMTOY    2023-04-06     182         0.965568    1.000000  0.9656
           VIASP    2024-03-28     182         0.966135    1.000000  0.9661
           CWPS     2022-04-13     181         0.966833    1.000000  0.9668
           HEQT     2022-12-27     183         0.965354    0.996650  0.9686
           NXTI     2024-12-23     181         0.968119    0.998125  0.9699

    Explanation of columns:
    gap: the number of days to the previous dividend event. If it's > 90 days, then it's missing dividend events for some quarters.
    --- the following columns are for reference and debugging
    ratio: calculated based on historical_adjustment_factor, today's factor / next event's factor
    combined ratio: if there are multiple dividend events on the same day, we multiply those ratios

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions