{"slug":"what-is-the-ttm-squeeze","qid":"squeeze_frequency","label":"Share of sessions in a squeeze, six liquid names, three years","post_title":"What Is the TTM Squeeze? Formula and Limits","post_url":"/blog/what-is-the-ttm-squeeze#q-squeeze_frequency","columns":["ticker","squeeze_count","squeeze_share_pct"],"rows":[{"ticker":"JNJ","squeeze_count":130,"squeeze_share_pct":17.3},{"ticker":"KO","squeeze_count":126,"squeeze_share_pct":16.8},{"ticker":"MSFT","squeeze_count":113,"squeeze_share_pct":15},{"ticker":"NVDA","squeeze_count":77,"squeeze_share_pct":10.3},{"ticker":"SPY","squeeze_count":70,"squeeze_share_pct":9.3},{"ticker":"AAPL","squeeze_count":47,"squeeze_share_pct":6.3}],"shape":"ranking","sql":"WITH\npx AS\n(\n    SELECT\n        ticker,\n        date,\n        toFloat64(any(close)) AS c,\n        toFloat64(any(high))  AS h,\n        toFloat64(any(low))   AS l\n    FROM global_markets.stocks_daily_aggs\n    WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'SPY', 'KO', 'JNJ')\n      AND date >= '2023-07-01'\n      AND date <  '2026-09-01'\n    GROUP BY ticker, date\n),\ntr AS\n(\n    SELECT\n        ticker,\n        date,\n        c,\n        h,\n        l,\n        lagInFrame(c) OVER (PARTITION BY ticker ORDER BY date ROWS BETWEEN 1 PRECEDING AND 1 PRECEDING) AS prev_c\n    FROM px\n),\nstat AS\n(\n    SELECT\n        ticker,\n        date,\n        stddevPop(c) OVER (PARTITION BY ticker ORDER BY date ROWS BETWEEN 19 PRECEDING AND CURRENT ROW) AS sd,\n        count()      OVER (PARTITION BY ticker ORDER BY date ROWS BETWEEN 19 PRECEDING AND CURRENT ROW) AS bars,\n        avg(if(prev_c > 0, greatest(h - l, abs(h - prev_c), abs(l - prev_c)), h - l))\n                     OVER (PARTITION BY ticker ORDER BY date ROWS BETWEEN 19 PRECEDING AND CURRENT ROW) AS atr\n    FROM tr\n)\nSELECT\n    ticker,\n    countIf(4 * sd < 3 * atr)                           AS squeeze_count,\n    round(100 * countIf(4 * sd < 3 * atr) / count(), 1) AS squeeze_share_pct\nFROM stat\nWHERE bars = 20\n  AND date >= '2023-09-01'\nGROUP BY ticker\nORDER BY squeeze_share_pct DESC","computed_at":"2026-09-27T16:13:37.856089+00:00","elapsed":0.003232075}