Skip to content

fix: map renamed yfinance ticker PSKY -> SKYD - #352

Merged
houtanb merged 1 commit into
mainfrom
claude/psky-yfinance-fix
Nov 6, 2026
Merged

houtanb merged 1 commit into
mainfrom
claude/psky-yfinance-fix

Conversation

@claude

@claude claude Bot commented Nov 1, 2026

Copy link
Copy Markdown

Requested by Houtan · Slack thread

Before: The nightly yfinance fetch (2026-11-01) flagged PSKY as an uncurated ticker: it returns no data and is no longer in the S&P 500 list. It is in neither nullified_questions nor ticker_renames. Each night it gets carried forward as resolved and triggers the Slack alert. Its resolution file also stops getting new prices, so the PSKY pair questions in the pool would resolve to stale prices.

After: PSKY maps to SKYD in yfinance ticker_renames. The fetch no longer requests PSKY and fetches SKYD instead. The updater writes SKYD's history to PSKY's resolution file, so existing PSKY questions and pairs resolve on live prices and the alert stops. test_known_renames_present now also asserts PSKY -> SKYD.

How: this is a rename, not a delisting. When Paramount Skydance's acquisition of Warner Bros. Discovery closed on 2026-10-06, the company changed its name to Skydance Corporation. Its Class B stock moved from Nasdaq (PSKY) to the NYSE under the new symbol SKYD. The security and its holders stayed the same; only the symbol changed. (The cash-out delisting was WBD's, handled in #341.) Sources:

Caveats for the reviewer:

  • I could not re-run the yfinance fetch for PSKY or SKYD from the sandbox, because its egress proxy blocks the Yahoo Finance hosts (403 on CONNECT). I also could not check that Yahoo serves pre-2026-10-06 PSKY history under SKYD. Please confirm that yf.Ticker("SKYD").history(period="max") goes back to Aug 2025 before merging.
  • On 2026-10-13, SKYD distributed warrants (SKYD WS) to Class B holders. Yahoo may adjust historical closes for that distribution.
  • Possible follow-up, not in this PR: the pair pool in src/sources/yfinance_questions.py still lists PSKY. With the rename, those pairs drop out of sampling but keep resolving. Regenerating the pool would pick up SKYD if wanted.

Tests: ruff check and ruff format --check are clean on the touched files. pytest on src/tests/unit/sources/test_yfinance.py, test_yfinance_pairs.py, src/tests/unit/scripts/test_generate_yfinance_pairs.py and src/tests/unit/test_base_source.py gives 154 passed. The full suite needs Python 3.14 syntax, which the sandbox cannot install.


Generated by Claude Code

Paramount Skydance changed its name to Skydance Corporation and moved its Class B stock from Nasdaq
(`PSKY`) to the NYSE as `SKYD`, effective 2026-10-06, when its acquisition of Warner Bros.
Discovery closed. It is the same security under a new symbol, so this is a rename, not a delisting:
https://www.sec.gov/Archives/edgar/data/0002041610/000110465926113076/tm2626659d3_8k.htm ;
https://www.tradingview.com/news/tradingview:01ced82c4b7be:0-skydance-to-list-class-b-shares-and-warrants-on-nyse-ticker-to-change-to-skyd/

The nightly fetch flagged `PSKY` as uncurated (no data, not in the S&P 500 list). Add a
`ticker_renames` entry so the updater fetches history under `SKYD` and writes it to `PSKY`'s
resolution file, matching the existing `FI`/`MMC`/`BK`/`SATS`/`EQR` handling. Extend
`test_known_renames_present` with the new mapping.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012pDUkRhKXgpLripTZNtGwp
@houtanb
houtanb force-pushed the claude/psky-yfinance-fix branch from 1e5512c to 9c56c0f Compare November 6, 2026 15:45
@houtanb
houtanb marked this pull request as ready for review November 6, 2026 15:45
@houtanb
houtanb merged commit 0775b12 into main Nov 6, 2026
1 check passed
@houtanb
houtanb deleted the claude/psky-yfinance-fix branch November 6, 2026 16:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants