Reconstructing corporate-action basis without opening strategy returns
Author: Arhan Canli
Project: AlphaC Algorithms / Canli Capital
Research status: Data-methods audit; strategy replay forbidden
Abstract
An immutable operating-margin replay exposed a corporate-action data defect: dividend values from the frozen Sharadar ACTIONS archive were being treated as raw cash amounts even when they were expressed on a later split-adjusted basis. This note records the diagnosis, issuer-anchored repair contract, versioned materialization, and full-lake validation. The dividend gate passes after the repair, but the split-boundary gate fails. Consequently, this work makes no performance claim and does not authorize a strategy replay, sleeve admission, or production promotion.
Trigger and preserved result
The valid historical operating-margin result remains KILLED: Sharpe
-0.4173809362582861, maximum drawdown 0.39623483315571484, and final equity
63911.64507926929. A later apparent Sharpe of 0.2595404513705637 is rejected because its replay
was contaminated by unverified corporate-action units. The first divergence was a legitimate
RGLD dividend; the largest distortion was a CMCT cashflow produced by interpreting a split-adjusted
dividend as raw cash. Historical results are not rewritten by this investigation.
Diagnosis and repair contract
Across 167,120 positive dividend rows, 422 exceeded the full pre-ex-date raw close. Applying the
product of same-ticker raw action='split' values on or after each dividend date reconciled 421 of
those 422 rows. Raw adrratiosplit rows were treated as metadata, not as a second executable share
mutation.
Apple provides the ordinary-event anchor. The frozen source contains a dividend value of 0.205
on 2020-05-08 and a later four-for-one split. Their product, 0.82, exactly equals Apple's
issuer-declared cash dividend. This supports—but does not elevate beyond inference—the following
normalization:
raw cash amount = source dividend value × product of later same-ticker market split ratios
The sole unresolved impossible row, VATE on 2020-05-14, was quarantined exactly after issuer and
independent-provider evidence failed to support it. A zero-value HDB marker was also quarantined
exactly. No amount was imputed. The source archive and original lake remain immutable. The sealed
repair receipt has content hash
sha256:48fcfde04e3c7f7d28bc349c93b55911f97514317e74bac67fca80980b621e47.
Versioned materialization
The corrected corporate-action lake is a new physical version, not an in-place edit. It maps
171,924 base rows to 171,780 normalized rows: 167,118 dividends were normalized, 31,807 dividend
amounts changed, 142 ADR-ratio metadata rows were removed from execution, 4,662 market-split rows
were preserved, and exactly two source rows were quarantined. Non-corporate-action datasets are
hard-linked and the original lake is preserved by hash. The materialization receipt has content
hash sha256:178c4564f9c5e0b917db752879c08a2f25c3133e614f92f0ecec6af3c33ef1c0.
Full-lake validation
The dividend gate passes: all 167,118 dividend rows were checked; zero exceed the full pre-ex-date
close; the maximum observed multiple is 0.9836065573770493; and 259 rows lack a two-sided price
boundary and remain explicitly counted.
The split gate fails. Of 4,662 market-split groups, 4,189 are consistent, three would verify under
the reciprocal ratio, 109 have unexplained price boundaries, and 361 lack a two-sided price
boundary. In total, 473 failed or unverifiable events affect 401 instruments. The validation
receipt therefore records CORPORATE_ACTION_VALIDATION_FAILED_SPLIT_BOUNDARIES, content hash
sha256:6ed09e42b6e6a744df4dfb3c9bbd927b58ac70a813c9c819a1592daa8afae583.
The engine now fails closed when an exposed position or order encounters a split that violates its price-boundary sanity check. It may no longer log the defect and continue with unconverted exposure, which could fabricate profit and loss.
Independent split cross-check
A GET-only Polygon reference audit downloaded 28,079 split records over the sealed 1997-12-31--2026-08-23 interval and cross-checked all 473 local failed or unverifiable events by date and ticker alias. The external provider confirms the stored ratio for 114 events, confirms the reciprocal of the stored ratio for one event (BMNR on 2021-04-27), reports a materially different event ratio for two events (ACHC on 2011-11-01 and JHG on 2017-05-30), and has no matching event for 356. Three initially apparent conflicts resolve at the source's recorded five-decimal precision.
These classifications narrow the next investigation; they do not close the gate. Stored-ratio
confirmation does not explain a disagreeing or absent local price boundary. BMNR is a candidate
for a separately sealed reciprocal-ratio repair, not an authorized mutation. Conflicting and
unmatched events remain closed. The external cross-check receipt has content hash
sha256:b401c5260988ba900d0acac857bfeda28a3cb353d6a18db3b9ef55890dc67a32.
Claim boundary and next decision
This study reconstructs and validates corporate-action data. It opens no return series, spends no strategy hypothesis, and establishes no Sharpe, drawdown, sleeve, or live-performance result. A new replay is prohibited until every split exception is either independently resolved under a sealed versioned policy or excluded through a predeclared, economically defensible universe rule. Unmatched records cannot be made green by deletion.
Primary issuer and schema references: