f/overrides/event-backup/bmskx-dividend.csv
Greg Pomerantz bb8e39605e Event-history protection: backup dir, empty-download fallback, docs
Yahoo's 2026 event-feed change (capitalGain events dropped for some
funds; no events at all for terminated tickers) can wipe good event
history on re-download. Defense in depth:

- overrides/event-backup/: last-known-good copy of every dividend/
  capitalGain file (8,192 files, 58 MB); refresh with
  scripts/backup_events.py after each dump update
- data.py event_file(): frozen > data-root (while populated) > backup;
  used by panel reads, verify_official, and the double-listing scanner
- README: capital-gain files are mutual-fund-only in this dump; Yahoo
  has no LT/ST split (tax.py taxes capg at lt_rate; the per-fund split
  would come from fund-company annual tax statements or commercial feeds)
- tests: exact Timestamp .loc keys (pandas 3.x string matching returns a
  Series on large DatetimeIndex)
2026-08-31 21:59:25 -04:00

2.5 KiB

1DateDividends
22023-08-310.047000
32021-04-300.030000
42021-10-290.028000
52023-02-280.035000
62018-11-300.040000
72026-01-300.039000
82022-04-290.030000
92024-11-290.042000
102025-02-280.037000
112025-12-310.044000
122026-02-270.037000
132017-02-280.034000
142019-04-300.039000
152020-03-310.042000
162022-12-300.041000
172020-10-300.035000
182022-06-300.030000
192016-12-210.016000
202018-08-310.041000
212019-10-310.041000
222016-11-300.034000
232020-04-300.038000
242021-08-310.032000
252023-03-310.043000
262017-07-310.035000
272019-01-310.042000
282021-06-300.029000
292021-07-300.032000
302022-11-300.038000
312016-09-300.038000
322018-12-310.044000
332019-03-290.042000
342018-05-310.037000
352018-09-280.037000
362023-01-310.037000
372018-10-310.038000
382016-08-310.036000
392017-03-310.036000
402019-07-310.041000
412025-11-280.042000
422025-12-220.021000
432017-06-300.033000
442017-11-300.033000
452025-08-290.044000
462025-06-300.042000
472018-06-290.037000
482020-06-300.037000
492022-10-310.037000
502020-01-310.037000
512020-12-310.039000
522025-09-300.042000
532026-07-310.038000
542018-02-280.034000
552023-09-290.045000
562025-03-310.042000
572024-04-300.045000
582018-03-290.040000
592018-04-300.038000
602019-09-300.039000
612024-05-310.047000
622024-08-300.047000
632024-09-300.045000
642024-12-310.043000
652019-05-310.040000
662019-06-280.040000
672021-01-290.035000
682026-04-300.037000
692018-01-310.035000
702020-08-310.036000
712022-02-280.028000
722023-11-300.047000
732017-04-280.035000
742019-12-230.027000
752023-05-310.044000
762019-12-310.045000
772025-01-310.041000
782017-10-310.035000
792019-11-290.040000
802024-06-280.044000
812026-03-310.040000
822021-02-260.029000
832025-04-300.042000
842025-10-310.042000
852022-03-310.028000
862024-07-310.046000
872017-08-310.035000
882020-07-310.038000
892021-09-300.030000
902022-07-290.032000
912026-05-290.039000
922018-07-310.040000
932020-02-280.036000
942020-05-290.039000
952021-03-310.032000
962021-11-300.026000
972021-12-310.029000
982017-12-290.035000
992021-05-280.030000
1002022-09-300.034000
1012016-10-310.037000
1022016-12-300.036000
1032017-05-310.037000
1042022-05-310.028000
1052023-10-310.047000
1062024-02-290.044000
1072020-09-300.034000
1082021-12-220.201000
1092022-01-310.030000
1102023-06-300.044000
1112024-03-280.047000
1122024-10-310.044000
1132025-07-310.042000
1142017-01-310.039000
1152020-11-300.037000
1162023-04-280.046000
1172026-06-300.038000
1182018-12-210.041000
1192019-02-280.036000
1202024-01-310.047000
1212023-07-310.046000
1222023-12-290.050000
1232025-05-300.044000
1242017-09-290.033000
1252019-08-300.039000
1262022-08-310.033000