A data pool and 14 models that simulate trades on historical data.
Updated Oct 10, 2026 · Research only, not advice
How it works? Any requests, recommendations or questions?How each model did
Each model's return minus its index over the same years. Bars to the right beat the index.
5 years, all money in at the start
2021-2026 · vs SPY- Profitable dips, never sold+51.7%-25.7 pts
- Cheap, lowest P/E first+48.3%-28.6 pts
- Cheap and rising+44.6%-32.4 pts
- Fixed cheap limits+37.7%-39.3 pts
- Cheapest quarter+36.0%-41.0 pts
- Model B: absolute value+36.0%-41.0 pts
- Quality and neglected+26.9%-50.1 pts
- Model A: relative value+19.5%-57.4 pts
- Profitable dips, sell when P/E doubles+16.2%-61.2 pts
Long run
2013-2026 · vs IWM- Neglected, price only+329.1%+45.8 pts
- Value and neglected+210.5%-72.8 pts
Buy on a big move
2020-2026 · $1,000 per trade, vs the same cash in SPY- Buy 10% drops+9.9%-36.1 pts
- Buy 10% jumps+8.4%-36.3 pts
- Buy 10% jumps, real stop price+4.6%-40.1 pts
Model details
Search for a model to see its chart, its numbers and a few of its trades.
Could it be luck?
With 14 models tried, the best will look good by chance. Each score is the chance a model's return per unit of risk is truly above zero once that is allowed for.
- Just holding SPY, 2021-20260.76
- Profitable dips, never sold0.59
- Neglected, price only0.58
- Cheap and rising0.53
- Cheap, lowest P/E first0.50
- Value and neglected0.46
- Fixed cheap limits0.43
- Model B: absolute value0.42
- Cheapest quarter0.42
- Quality and neglected0.38
- Model A: relative value0.34
- Profitable dips, sell when P/E doubles0.34
- Buy 10% jumps0.24
- Buy 10% drops0.08
- Buy 10% jumps, real stop price0.04
The line marks the 0.95 needed to pass.
The data
Prices go back decades. Company filings only became machine readable in 2009, so models that read financials can only be tested from about 2013.
Latest screen, Jul 28, 2026: 2,407 of 9,297 stocks passed.
What is missing
Most tests only include companies that still exist, which makes results look better than they were. Dead companies are being added about 450 a month (921 so far).
Only about a third of dividends paid are in the price data. This affects the models and the index alike.
Every trade costs a flat 0.25% each way. No taxes, and no extra cost for hard-to-trade stocks.
357 companies that delisted before 2017 still can't be matched to their filings.
All 62 measuresEverything the screen can read about a company.
accrualsratio(TTM net income - TTM operating CF) / assets; high = suspicious
assetsUSDTotal assets, latest reported
assets_currentUSDCurrent assets
buyback_yieldratioTTM buybacks / market cap
cashUSDCash and equivalents, latest reported
cash_conversionratioTTM operating cash flow / TTM net income
cash_to_assetsratioCash / total assets
current_ratioratioCurrent assets / current liabilities
debt_to_equityratioLong-term debt / equity
decline_daysdaysDays since LAST at that peak
dilution_1yratioShare count growth over ~1 year, split-adjusted
dividend_yieldratioTTM dividends paid / market cap
dollar_volumeUSDMedian daily traded value (tradability)
drawdownratioFall from trailing-252d peak
earnings_growth_1yratioTTM net income growth; null off a negative base
equityUSDStockholders equity, latest reported
fcf_marginratioTTM free cash flow / TTM revenue
fcf_yieldratioTTM free cash flow / market cap
forward_epsUSDConsensus EPS, next 4 quarters, as visible on as_of
forward_peratioPrice / forward 4-quarter consensus EPS
goodwillUSDGoodwill on the balance sheet
goodwill_to_assetsratioGoodwill / total assets (acquisition risk)
gross_marginratioTTM gross profit / TTM revenue
interest_coverageratioTTM operating income / TTM interest expense
inventoryUSDInventory, net
inventory_to_revenueratioInventory / TTM revenue
liabilitiesUSDTotal liabilities, latest reported
liabilities_currentUSDCurrent liabilities
long_term_debtUSDLong-term debt (total, else noncurrent)
market_capUSDRAW price x as-reported shares
net_debtUSDLong-term debt minus cash
ocf_growth_1yratioTTM operating cash flow growth
operating_marginratioTTM operating income / TTM revenue
pe_ratioratioMarket cap / TTM net income (positive only)
ppe_netUSDProperty, plant and equipment, net
price_to_bookratioMarket cap / stockholders equity
profit_marginratioTTM net income / TTM revenue
ps_ratioratioMarket cap / TTM revenue
public_floatUSDPublic float as stated on the cover page
rd_intensityratioR&D / TTM revenue
receivablesUSDAccounts receivable, net current
receivables_to_revenueratioReceivables / TTM revenue
retained_earningsUSDRetained earnings / accumulated deficit
revenue_growth_1yratioTTM revenue vs the same measure a year earlier
reverse_splitscountReverse splits in trailing year (distress)
roaratioTTM net income / total assets
roeratioTTM net income / equity
sbc_to_revenueratioShare-based comp / TTM revenue (real dilution cost)
shares_outcountShares outstanding, as reported
ttm_buybacksUSDTrailing 12m share repurchases (absolute)
ttm_capexUSDTrailing 12m capital expenditure (absolute)
ttm_dividends_paidUSDTrailing 12m dividends paid (absolute)
ttm_free_cash_flowUSDTTM operating cash flow - capex, period-aligned
ttm_gross_profitUSDTrailing 12m gross profit
ttm_interest_expenseUSDTrailing 12m interest expense (absolute)
ttm_net_incomeUSDTrailing 12m net income
ttm_operating_cash_flowUSDTrailing 12m cash from operations
ttm_operating_incomeUSDTrailing 12m operating income
ttm_rdUSDTrailing 12m research and development
ttm_revenueUSDTrailing 12m revenue, point-in-time
ttm_sbcUSDTrailing 12m share-based compensation
volume_trendratio30d mean volume / prior mean volume