{"slug":"does-ipo-gmp-predict-listing-gains","qid":"pop_by_year","label":"pop_by_year","post_title":"does-ipo-gmp-predict-listing-gains","post_url":"/blog/does-ipo-gmp-predict-listing-gains#q-pop_by_year","columns":["listing_year","listings","median_offer_to_open_pct","median_offer_to_close_pct"],"rows":[{"listing_year":"2017","listings":148,"median_offer_to_open_pct":8,"median_offer_to_close_pct":8.8},{"listing_year":"2018","listings":178,"median_offer_to_open_pct":13.9,"median_offer_to_close_pct":14.2},{"listing_year":"2019","listings":170,"median_offer_to_open_pct":7,"median_offer_to_close_pct":10.3},{"listing_year":"2020","listings":259,"median_offer_to_open_pct":14.4,"median_offer_to_close_pct":10.3},{"listing_year":"2021","listings":360,"median_offer_to_open_pct":3.5,"median_offer_to_close_pct":3.5},{"listing_year":"2022","listings":61,"median_offer_to_open_pct":0.4,"median_offer_to_close_pct":0.2},{"listing_year":"2023","listings":96,"median_offer_to_open_pct":2.7,"median_offer_to_close_pct":2.3},{"listing_year":"2024","listings":159,"median_offer_to_open_pct":1.2,"median_offer_to_close_pct":1.2},{"listing_year":"2025","listings":281,"median_offer_to_open_pct":1.2,"median_offer_to_close_pct":1.2},{"listing_year":"2026","listings":166,"median_offer_to_open_pct":0.2,"median_offer_to_close_pct":0.1}],"shape":"ranking","sql":"WITH day_one AS\n(\n    SELECT\n        i.ticker                                                 AS ticker,\n        i.list_date                                              AS list_date,\n        (toFloat64(d.open_px)  / i.offer_price - 1) * 100        AS offer_to_open,\n        (toFloat64(d.close_px) / i.offer_price - 1) * 100        AS offer_to_close,\n        (toFloat64(d.close_px) / toFloat64(d.open_px) - 1) * 100 AS open_to_close,\n        toFloat64(d.open_px) * toFloat64(d.day_volume)           AS day1_turnover\n    FROM\n    (\n        SELECT\n            ticker,\n            toDate(argMax(listing_date, last_updated))         AS list_date,\n            argMax(toFloat64(final_issue_price), last_updated) AS offer_price\n        FROM global_markets.stocks_ipos\n        WHERE listing_date >= '2017-01-01'\n          AND listing_date <  '2026-09-01'\n          AND final_issue_price > 0\n          AND currency_code = 'USD'\n          AND ticker NOT IN ('SPCX')\n        GROUP BY ticker\n    ) AS i\n    INNER JOIN\n    (\n        SELECT\n            ticker,\n            date,\n            max(open)   AS open_px,\n            max(close)  AS close_px,\n            max(volume) AS day_volume\n        FROM global_markets.stocks_daily_aggs\n        WHERE date >= '2017-01-01'\n          AND date <  '2026-09-01'\n        GROUP BY ticker, date\n    ) AS d\n        ON d.ticker = i.ticker AND d.date = i.list_date\n    WHERE d.day_volume > 0\n      AND d.open_px > 0\n      AND i.offer_price > 0\n)\nSELECT\n    toString(toYear(list_date)) AS listing_year,\n    count()                     AS listings,\n    round(quantileDeterministic(0.5)(offer_to_open,  cityHash64(ticker)), 1) AS median_offer_to_open_pct,\n    round(quantileDeterministic(0.5)(offer_to_close, cityHash64(ticker)), 1) AS median_offer_to_close_pct\nFROM day_one\nGROUP BY listing_year\nHAVING count() >= 5\nORDER BY listing_year","computed_at":"2026-10-03T15:20:14.348678+00:00","elapsed":0.004837886}