{"slug":"sub-penny-rule-and-price-improvement","qid":"subpenny_prints","label":"Share of prints that landed on a sub-penny price","post_title":"The Sub-Penny Rule and Price Improvement","post_url":"/blog/sub-penny-rule-and-price-improvement#q-subpenny_prints","columns":["ticker","subpenny_trade_pct","subpenny_volume_pct"],"rows":[{"ticker":"KO","subpenny_trade_pct":46.56,"subpenny_volume_pct":24.88},{"ticker":"T","subpenny_trade_pct":39.05,"subpenny_volume_pct":46.58},{"ticker":"BAC","subpenny_trade_pct":37.88,"subpenny_volume_pct":40.28},{"ticker":"NVDA","subpenny_trade_pct":36.77,"subpenny_volume_pct":28.51},{"ticker":"F","subpenny_trade_pct":36.42,"subpenny_volume_pct":58.03},{"ticker":"AAPL","subpenny_trade_pct":36.08,"subpenny_volume_pct":22.84},{"ticker":"MSFT","subpenny_trade_pct":31.87,"subpenny_volume_pct":25.44}],"shape":"ranking","sql":"SELECT\n    ticker,\n    round(100 * countIf(toUInt64(round(toFloat64(price) * 10000)) % 100 != 0) / count(), 2)       AS subpenny_trade_pct,\n    round(100 * sumIf(size, toUInt64(round(toFloat64(price) * 10000)) % 100 != 0) / sum(size), 2) AS subpenny_volume_pct\nFROM global_markets.stocks_trades\nWHERE ticker IN ('MSFT', 'AAPL', 'NVDA', 'KO', 'BAC', 'T', 'F')\n  AND sip_timestamp >= '2026-06-17 14:00:00'\n  AND sip_timestamp <  '2026-06-17 14:15:00'\n  AND price > 0\nGROUP BY ticker\nORDER BY subpenny_trade_pct DESC","computed_at":"2026-08-07T15:10:20.796274+00:00","elapsed":0.002390566}