{"slug":"rule-144-and-restricted-stock-sales","qid":"cap_tests","label":"The two Rule 144 volume tests, in millions of shares","post_title":"Rule 144 and Selling Restricted Stock","post_url":"/blog/rule-144-and-restricted-stock-sales#q-cap_tests","columns":["ticker","cap_shares_m","cap_weekly_m","quarterly_cap_m","larger_test"],"rows":[{"ticker":"AAPL","cap_shares_m":147.48,"cap_weekly_m":259.26,"quarterly_cap_m":259.26,"larger_test":"four-week volume"},{"ticker":"MSFT","cap_shares_m":74.31,"cap_weekly_m":189.19,"quarterly_cap_m":189.19,"larger_test":"four-week volume"},{"ticker":"KO","cap_shares_m":43.03,"cap_weekly_m":78.51,"quarterly_cap_m":78.51,"larger_test":"four-week volume"},{"ticker":"AXP","cap_shares_m":6.95,"cap_weekly_m":13.98,"quarterly_cap_m":13.98,"larger_test":"four-week volume"},{"ticker":"ADP","cap_shares_m":4.04,"cap_weekly_m":12.04,"quarterly_cap_m":12.04,"larger_test":"four-week volume"},{"ticker":"BLK","cap_shares_m":1.55,"cap_weekly_m":3.25,"quarterly_cap_m":3.25,"larger_test":"four-week volume"}],"shape":"table","sql":"SELECT\n    v.ticker                                                       AS ticker,\n    round(s.shares_out / 100 / 1e6, 2)                             AS cap_shares_m,\n    round(v.weekly_volume / 1e6, 2)                                AS cap_weekly_m,\n    round(greatest(s.shares_out / 100, v.weekly_volume) / 1e6, 2)  AS quarterly_cap_m,\n    if(v.weekly_volume >= s.shares_out / 100,\n       'four-week volume',\n       'one percent of shares')                                    AS larger_test\nFROM\n(\n    SELECT\n        ticker,\n        toFloat64(sum(volume)) / 4 AS weekly_volume\n    FROM global_markets.stocks_daily_aggs\n    WHERE ticker IN ('AAPL', 'MSFT', 'KO', 'ADP', 'AXP', 'BLK')\n      AND date >= today() - 32\n      AND date <  today() - 4\n    GROUP BY ticker\n) AS v\nINNER JOIN\n(\n    SELECT\n        arrayJoin(tickers)                                                     AS ticker,\n        toFloat64(argMax(basic_shares_outstanding, (filing_date, period_end))) AS shares_out\n    FROM global_markets.stocks_income_statements\n    WHERE hasAny(tickers, ['AAPL', 'MSFT', 'KO', 'ADP', 'AXP', 'BLK'])\n    GROUP BY ticker\n) AS s ON s.ticker = v.ticker\nWHERE s.shares_out > 0\nORDER BY cap_weekly_m DESC","computed_at":"2026-08-22T04:18:45.639341+00:00","elapsed":0.129902275}