{"slug":"sell-in-may-and-go-away","qid":"strategy_growth","label":"Growth of one dollar: holding all year vs holding only November through April","post_title":"Does Sell in May and Go Away Work?","post_url":"/blog/sell-in-may-and-go-away#q-strategy_growth","columns":["year","buy_and_hold_growth","winter_only_growth"],"rows":[{"year":2006,"buy_and_hold_growth":1.13,"winter_only_growth":1.09},{"year":2007,"buy_and_hold_growth":1.28,"winter_only_growth":1.17},{"year":2008,"buy_and_hold_growth":1.2,"winter_only_growth":1.05},{"year":2009,"buy_and_hold_growth":0.76,"winter_only_growth":0.94},{"year":2010,"buy_and_hold_growth":1.03,"winter_only_growth":1.08},{"year":2011,"buy_and_hold_growth":1.18,"winter_only_growth":1.24},{"year":2012,"buy_and_hold_growth":1.21,"winter_only_growth":1.39},{"year":2013,"buy_and_hold_growth":1.38,"winter_only_growth":1.57},{"year":2014,"buy_and_hold_growth":1.63,"winter_only_growth":1.68},{"year":2015,"buy_and_hold_growth":1.8,"winter_only_growth":1.74},{"year":2016,"buy_and_hold_growth":1.78,"winter_only_growth":1.72},{"year":2017,"buy_and_hold_growth":2.06,"winter_only_growth":1.93},{"year":2018,"buy_and_hold_growth":2.29,"winter_only_growth":1.99},{"year":2019,"buy_and_hold_growth":2.54,"winter_only_growth":2.16},{"year":2020,"buy_and_hold_growth":2.51,"winter_only_growth":2.06},{"year":2021,"buy_and_hold_growth":3.61,"winter_only_growth":2.64},{"year":2022,"buy_and_hold_growth":3.56,"winter_only_growth":2.37},{"year":2023,"buy_and_hold_growth":3.59,"winter_only_growth":2.55},{"year":2024,"buy_and_hold_growth":4.34,"winter_only_growth":3.06},{"year":2025,"buy_and_hold_growth":4.79,"winter_only_growth":2.98},{"year":2026,"buy_and_hold_growth":6.21,"winter_only_growth":3.14}],"shape":"ranking","sql":"WITH monthly AS (\n    SELECT toStartOfMonth(toDate(toTimeZone(window_start, 'America/New_York'))) AS month_start,\n           argMax(close, window_start) AS month_close\n    FROM global_markets.delayed_stocks_minute_aggs\n    WHERE ticker = 'SPY'\n      AND toDate(toTimeZone(window_start, 'America/New_York')) >= toDate('2005-04-01')\n      AND toDate(toTimeZone(window_start, 'America/New_York')) <= toDate('2026-04-30')\n      AND (toHour(toTimeZone(window_start, 'America/New_York')) * 60\n           + toMinute(toTimeZone(window_start, 'America/New_York'))) BETWEEN 570 AND 959\n    GROUP BY month_start\n),\npairs AS (\n    SELECT toYear(apr_m.month_start) + 1 AS year,\n           toFloat64(oct_m.month_close) / toFloat64(apr_m.month_close) AS summer_ratio,\n           toFloat64(apr_next.month_close) / toFloat64(oct_m.month_close) AS winter_ratio\n    FROM monthly AS apr_m\n    INNER JOIN monthly AS oct_m ON oct_m.month_start = addMonths(apr_m.month_start, 6)\n    INNER JOIN monthly AS apr_next ON apr_next.month_start = addMonths(apr_m.month_start, 12)\n    WHERE toMonth(apr_m.month_start) = 4\n)\nSELECT year,\n       round(exp(sum(log(summer_ratio * winter_ratio)) OVER (ORDER BY year)), 2) AS buy_and_hold_growth,\n       round(exp(sum(log(winter_ratio)) OVER (ORDER BY year)), 2) AS winter_only_growth\nFROM pairs\nORDER BY year","computed_at":"2026-08-03T10:51:59.349774+00:00","elapsed":0.003969084}