{"slug":"volatility-targeting-position-sizing","qid":"cross_section","label":"One 10% risk budget, six names, six different weights","post_title":"Volatility Targeting for Position Sizing","post_url":"/blog/volatility-targeting-position-sizing#q-cross_section","columns":["symbol","realised_vol_pct","raw_weight","capped_weight"],"rows":[{"symbol":"SPY","realised_vol_pct":12.8,"raw_weight":0.78,"capped_weight":0.78},{"symbol":"KO","realised_vol_pct":18.7,"raw_weight":0.53,"capped_weight":0.53},{"symbol":"AAPL","realised_vol_pct":25.2,"raw_weight":0.4,"capped_weight":0.4},{"symbol":"MSFT","realised_vol_pct":32,"raw_weight":0.31,"capped_weight":0.31},{"symbol":"NVDA","realised_vol_pct":36.7,"raw_weight":0.27,"capped_weight":0.27},{"symbol":"TSLA","realised_vol_pct":46.5,"raw_weight":0.21,"capped_weight":0.21}],"shape":"ranking","sql":"WITH\n    px AS\n    (\n        SELECT\n            ticker,\n            date                  AS d,\n            toFloat64(any(close)) AS c\n        FROM global_markets.stocks_daily_aggs\n        WHERE ticker IN ('KO', 'SPY', 'MSFT', 'AAPL', 'NVDA', 'TSLA')\n          AND date >= subtractYears(today(), 1)\n          AND date <  today()\n        GROUP BY ticker, d\n    ),\n    px_sorted AS\n    (\n        SELECT\n            ticker,\n            arraySort(p -> p.1, groupArray((d, c))) AS pts\n        FROM px\n        GROUP BY ticker\n    ),\n    vols AS\n    (\n        SELECT\n            ticker AS symbol,\n            arrayReduce('stddevSamp',\n                arrayFilter(x -> abs(x) < 0.4,\n                    arrayMap((a, b) -> log(b.2 / a.2),\n                             arraySlice(pts, 1, length(pts) - 1),\n                             arraySlice(pts, 2)))) * sqrt(252) AS ann_vol\n        FROM px_sorted\n    )\nSELECT\n    symbol,\n    round(ann_vol * 100, 1)              AS realised_vol_pct,\n    round(0.10 / ann_vol, 2)             AS raw_weight,\n    round(least(0.10 / ann_vol, 2.0), 2) AS capped_weight\nFROM vols\nORDER BY realised_vol_pct","computed_at":"2026-08-22T04:32:26.586334+00:00","elapsed":0.038122968}