{"repo":"Finance-broski/backtest-bias","free":true,"listed":false,"github":"https://github.com/Finance-broski/backtest-bias","clone":"git clone https://github.com/Finance-broski/backtest-bias.git","description":"Checks whether your backtest data is lying to you: survivorship detection and CI integrity gates for financial price panels.","language":"Python","stars":10,"topics":["backtesting","data-quality","india","python","quantitative-finance","survivorship-bias","trading"],"license":"MIT","category":"trading","readme_excerpt":"backtest-bias Checks whether your backtest data is lying to you. Most backtests don't fail loudly. They flatter you quietly, because the data underneath them is missing the stocks that died. This library tests your price panel for that, in one line, and tells you roughly what it costs when it finds it. The measured numbers this library is built on These are not estimates. I measured them on real Indian market data and published the write-ups: - 24% of the top-500 Indian stocks (as of 2015) are invisible to yfinance today: delisted, merged, or renamed with no public mapping. A universe built by fetching current listings runs on survivors only. - Survivor-only universes inflated equal-weight returns by +0.8 to +3.2 pp/yr depending on the universe vintage and the survivor definition. Same market, same method, a factor of four apart. Anyone quoting one number is guessing. (Working paper under review at SSRN.) - On the most widely used Kaggle NSE dataset, index-membership look-ahead added +10% terminal wealth cap-weighted and +43% equal-weighted over 2010-2021. The bias depends on construction. - How much of a universe should be dead? Measured across six top-500 vintages (2012-2022, Indian equities), the curve is stable: 5-8% by 3 years, 11-14% by 5, 17-21% by 7, 24-30% by 10. Verdicts quote the range matched to your window length. If your panel lost zero names, your panel is the problem. Citing this If you use the library or the measured constants in BIAS TABLE.md, cite it as: Ja","default_branch":null,"files":null,"tree":[],"storefront":"/r/Finance-broski","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Finance-broski/backtest-bias/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}