f/reports/xcheck_official/vtrdx.json
Greg Pomerantz 1f5720d7db verify_official: 497/497K forms, per-share layout, candidate re-ranking
- EFTS queries now include 497/497K (many fund families publish their
  per-fund highlights there, not in the consolidated N-CSR) and re-rank
  hits by registrant name match (ticker/brand words), newest first,
  capped at 2 filings per CIK
- new parse_per_share_blocks for the JPMorgan-style 'Per share operating
  performance' table (per-class value blocks; dashes = zero)
- parse_highlights now tolerates row labels split across table cells
  (modernized N-CSRS format, e.g. Calamos 2026)
- region finders: word-flexible name patterns (US vs U.S., class letters),
  self-validating per-share regions (a candidate block must match the
  local series, so a name mention in notes doesn't attribute another
  fund's tables in a combined 58 MB report)
- main() keeps the best result across candidate filings (N-CSRS vs 497
  can round differently) and stops early on 'ok'
- local_series applies the corrections overlay so corrected funds verify
  against their filing

Results: JLPSX and CVSIX now 'ok' (all bounded fiscal years agree with
the official filings); CVSIX also gets a 2023-12-21 0.510 capital-gain
correction. bnd/pmaix still ok (no regression).
2026-08-31 18:10:39 -04:00

166 lines
2.7 KiB
JSON

{
"symbol": "vtrdx",
"name": "Voya Separate Portfolios Trust - Voya Target Retirement 2025 Fund",
"filing": {
"accession": "0001104659-25-010891",
"doc": "tm254258d1_ncsrs.htm",
"period_end": "2024-11-30",
"display": "Voya Separate Portfolios Trust (CIK 0001392116)",
"ciks": [
"0001392116"
],
"score": 34.04657
},
"how": "ticker",
"n_bytes": 8377074,
"verdict": "weak-match",
"class": "?",
"mean_rel_err": 0.9082,
"nav_check": {
"date": "2025-08-07",
"official": 12.07,
"local": 12.68,
"rel": 0.0505,
"ok": true
},
"periods": [
{
"period": "fy",
"end": "2014-12-31",
"official": 2011.72,
"local": 0,
"diff": 2011.72,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2019-12-31",
"official": 0.22,
"local": 0.891,
"diff": -0.671,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2005-12-31",
"official": 0.45,
"local": 0,
"diff": 0.45,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2021-12-31",
"official": 0.67,
"local": 2.785,
"diff": -2.115,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2011-12-31",
"official": 0.2,
"local": 0,
"diff": 0.2,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2021-05-31",
"official": 0.29,
"local": 1.228,
"diff": -0.938,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2011-05-31",
"official": 0.49,
"local": 0,
"diff": 0.49,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2017-05-31",
"official": 11.905,
"local": 0,
"diff": 11.905,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2028-05-31",
"official": 0.53,
"local": 0,
"diff": 0.53,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2034-05-31",
"official": 0.95,
"local": 3.44,
"diff": -2.49,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2014-05-31",
"official": 0.95,
"local": 0,
"diff": 0.95,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2024-05-31",
"official": 0.951,
"local": 0,
"diff": 0.951,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2027-05-31",
"official": 0.7957,
"local": 0,
"diff": 0.7957,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2029-05-31",
"official": 12.07,
"local": 3.44,
"diff": 8.63,
"ok": false,
"unbounded": false
},
{
"period": "fy",
"end": "2015-05-31",
"official": 0.16,
"local": 0,
"diff": 0.16,
"ok": false,
"unbounded": true
}
],
"other_classes": [
"?"
]
}