{"slug":"good-faith-violations-in-cash-accounts","qid":"gap_mix","label":"Trailing year: calendar days a sale waited to settle","post_title":"Good Faith Violations in Cash Accounts","post_url":"/blog/good-faith-violations-in-cash-accounts#q-gap_mix","columns":["gap_label","sale_count","share_pct"],"rows":[{"gap_label":"1 calendar day","sale_count":194,"share_pct":77.9},{"gap_label":"2 calendar days","sale_count":3,"share_pct":1.2},{"gap_label":"3 calendar days","sale_count":45,"share_pct":18.1},{"gap_label":"4 calendar days","sale_count":7,"share_pct":2.8}],"shape":"ranking","sql":"SELECT\n    concat(toString(gap_days), if(gap_days = 1, ' calendar day', ' calendar days')) AS gap_label,\n    count()                                                                         AS sale_count,\n    round(100.0 * count() / sum(count()) OVER (), 1)                                AS share_pct\nFROM\n(\n    SELECT\n        dateDiff('day', date, leadInFrame(date) OVER (ORDER BY date ROWS BETWEEN 1 FOLLOWING AND 1 FOLLOWING)) AS gap_days\n    FROM\n    (\n        SELECT date\n        FROM global_markets.stocks_daily_aggs\n        WHERE ticker = 'SPY'\n          AND date >= today() - 366\n          AND date <= today() - 3\n        GROUP BY date\n    )\n)\nWHERE gap_days > 0\nGROUP BY gap_days\nORDER BY gap_days","computed_at":"2026-08-22T04:06:32.646480+00:00","elapsed":0.028530968}