Per-share financial-highlights parser (cef_annual.py) now reconciles divs+gains+ROC==distributions and the full NAV chain per column for 48 of 50 shortlist funds, from three layout families (inline, transposed, + repair rules for footnotes/split-decimals/sign- magnitude/combined-rows). DXYZ is a correct zero-distribution result; STEW is a documented columnar-stream exception. cef_merged.json character column now uses actual data. 123/123 tests.
1 line
940 B
JSON
1 line
940 B
JSON
{"sym": "IGD", "cik": 1285890, "name": "Voya GLOBAL EQUITY DIVIDEND & PREMIUM OPPORTUNITY FUND", "bdc": false, "n_tender": 0, "ticker": "IGD", "report_filed": "2025-11-10", "ncols": 11, "nav_beg": [6.16, 5.89, 5.97, 6.36, 6.01, 6.26, 7.02, 8.03, 8.01, 7.52, 9.31], "nav_end": [6.220000000000001, 6.159999999999999, 5.890000000000001, 5.970000000000001, 6.34, 6.01, 6.26, 7.02, 8.03, 8.01, 7.52], "mkt_end": [5.99, 5.6, 5.1, 5.35, 5.9, 5.47, 5.5, 6.56, 7.56, 7.29, 6.51], "dist_tot": [0.3, 0.58, 0.48, 0.48, 0.48, 0.48, 0.63, 0.73, 0.73, 0.88, 0.91], "divs": [0.08, 0.2, 0.18, 0.23, 0.16, 0.06, 0.18, 0.17, 0.3, 0.62, 0.77], "gains": [0.22, 0.38, 0.3, 0.25, 0.32, 0.42, 0.45, 0.11, 0.43, 0.26, 0.14], "roc": [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.45, 0.0, 0.0, 0.0], "ops": [0.36, 0.85, 0.4, 0.09, 0.81, 0.23, 0.13, 0.28, 0.75, 1.37, 0.88], "share_div": 0.4416167664670659, "share_gains": 0.4910179640718562, "share_roc": 0.06736526946107783} |