{"slug":"self-match-prevention-and-wash-trades","qid":"venue_footprint","label":"Venues quoting and printing the same stock in one 15-minute window","post_title":"Self-Match Prevention and Wash Trades","post_url":"/blog/self-match-prevention-and-wash-trades#q-venue_footprint","columns":["ticker","quoting_venues","printing_venues"],"rows":[{"ticker":"AAPL","quoting_venues":16,"printing_venues":17},{"ticker":"MSFT","quoting_venues":16,"printing_venues":17},{"ticker":"NVDA","quoting_venues":16,"printing_venues":17},{"ticker":"JNJ","quoting_venues":14,"printing_venues":16},{"ticker":"SPY","quoting_venues":14,"printing_venues":17},{"ticker":"KO","quoting_venues":11,"printing_venues":17}],"shape":"ranking","sql":"SELECT\n    q.ticker          AS ticker,\n    q.quoting_venues  AS quoting_venues,\n    t.printing_venues AS printing_venues\nFROM\n(\n    SELECT\n        ticker,\n        countDistinct(bid_exchange) AS quoting_venues\n    FROM global_markets.cache_stocks_quotes\n    WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'SPY', 'KO', 'JNJ')\n      AND sip_timestamp >= toDateTime('2026-06-10 14:00:00', 'UTC')\n      AND sip_timestamp <  toDateTime('2026-06-10 14:15:00', 'UTC')\n      AND bid_price > 0\n    GROUP BY ticker\n) AS q\nINNER JOIN\n(\n    SELECT\n        ticker,\n        countDistinct(exchange) AS printing_venues\n    FROM global_markets.stocks_trades\n    WHERE ticker IN ('AAPL', 'MSFT', 'NVDA', 'SPY', 'KO', 'JNJ')\n      AND sip_timestamp >= toDateTime('2026-06-10 14:00:00', 'UTC')\n      AND sip_timestamp <  toDateTime('2026-06-10 14:15:00', 'UTC')\n    GROUP BY ticker\n) AS t ON t.ticker = q.ticker\nORDER BY quoting_venues DESC, ticker","computed_at":"2026-08-13T16:20:09.577493+00:00","elapsed":0.002941166}