Urgent.News

What's breaking now, across thousands of outlets.

Finance & Markets

We replicated a published 0DTE options paper to four decimals. One unit-scale bug reverses its headline result — confirmed by the author

This is the short version of the full write-up, which carries every table: Replicating Vilkov (2026) on 0DTE trading rules . Grigory Vilkov's "0DTE Trading Rules: Tail Risk, Implementation, and Tactical Timing" (SSRN 4641356) is a rare thing in the trading literature: the author shipped the code and the data panels behind his tables, MIT-licensed. So instead of comparing numbers to a memory, we…

Grigory Vilkov's 0DTE Trading Rules paper allowed for replication of all seven option structures and cost tiers to four decimal places. However, a bug in the unit scale revealed a critical issue. The P&L column was stored in percent of spot, while the bid-ask spread column was recorded as a fraction of spot. This discrepancy caused the cost code to subtract one from the other, resulting in a cost charged at 0.022bp instead of the correct 2.2bp.

Adjusting the half-spread cost to its true size revealed that every unconditional strategy in the paper went negative, with the best put ratio spread having a mean gross edge of +0.0251% of spot per day, compared to the original 0.0343%.

Upon discovering the bug, the author acknowledged the error and offered to publish the findings. The corrected result showed a significant reversal in the headline conditional Sharpe, dropping from +1.55 to +0.33. Furthermore, retraining the ML layer with the corrected cost led to a much worse performance of -0.70. The author's response highlighted the consequence of this error, stating that most of the original result was due to the cost arithmetic, with only a small portion attributed to the model trained on mislabeled days.

The author promptly fixed the bug and released an updated version with a KNOWN-ISSUES.md file and a unit-scale assert module to prevent such errors in the future. The corrected result revealed that the headline conditional result had reversed sign, with the put ratio spread going from +0.93 to -0.75. The author also emphasized that crossing the quoted spread did not leave any profit for the trader.

His advice for researchers who ship code is to be cautious about mixed scales in dataframes, to assert units at boundaries, and to retrain models after fixing bugs, as re-evaluation alone may underestimate the damage. Vilkov's decision to publish the raw data and his transparent response to the issue exemplify the best practices needed in this field.

Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.

Read the original at dev.to →

More in Finance & Markets

More from Wednesday 26 August →