{"slug":"macro-picture-entering-h2-2026","qid":"curve_monthly","label":"The Treasury curve at each month-end of H1 2026: bill, 2-year, 10-year, and the spreads between them","post_title":"Macro Picture Entering H2 2026, With Receipts","post_url":"/blog/macro-picture-entering-h2-2026#q-curve_monthly","columns":["period_start","y3m_pct","y2_pct","y10_pct","spread_2s10s_pct","y2_minus_bill_pct","y2_chg_since_jan","y10_chg_since_jan"],"rows":[{"period_start":"2026-01-01","y3m_pct":3.67,"y2_pct":3.52,"y10_pct":4.26,"spread_2s10s_pct":0.74,"y2_minus_bill_pct":-0.15,"y2_chg_since_jan":0,"y10_chg_since_jan":0},{"period_start":"2026-02-01","y3m_pct":3.67,"y2_pct":3.38,"y10_pct":3.97,"spread_2s10s_pct":0.59,"y2_minus_bill_pct":-0.29,"y2_chg_since_jan":-0.14,"y10_chg_since_jan":-0.29},{"period_start":"2026-03-01","y3m_pct":3.7,"y2_pct":3.79,"y10_pct":4.3,"spread_2s10s_pct":0.51,"y2_minus_bill_pct":0.09,"y2_chg_since_jan":0.27,"y10_chg_since_jan":0.04},{"period_start":"2026-04-01","y3m_pct":3.68,"y2_pct":3.88,"y10_pct":4.4,"spread_2s10s_pct":0.52,"y2_minus_bill_pct":0.2,"y2_chg_since_jan":0.36,"y10_chg_since_jan":0.14},{"period_start":"2026-05-01","y3m_pct":3.69,"y2_pct":3.98,"y10_pct":4.45,"spread_2s10s_pct":0.47,"y2_minus_bill_pct":0.29,"y2_chg_since_jan":0.46,"y10_chg_since_jan":0.19},{"period_start":"2026-06-01","y3m_pct":3.87,"y2_pct":4.14,"y10_pct":4.44,"spread_2s10s_pct":0.3,"y2_minus_bill_pct":0.27,"y2_chg_since_jan":0.62,"y10_chg_since_jan":0.18}],"shape":"table","sql":"SELECT toString(toStartOfMonth(date)) AS period_start,\n    round(argMax(yield_3_month, date), 2) AS y3m_pct,\n    round(argMax(yield_2_year, date), 2) AS y2_pct,\n    round(argMax(yield_10_year, date), 2) AS y10_pct,\n    round(argMax(yield_10_year, date) - argMax(yield_2_year, date), 2) AS spread_2s10s_pct,\n    round(argMax(yield_2_year, date) - argMax(yield_3_month, date), 2) AS y2_minus_bill_pct,\n    round(round(argMax(yield_2_year, date), 2) - first_value(round(argMax(yield_2_year, date), 2)) OVER (ORDER BY toStartOfMonth(date)), 2) AS y2_chg_since_jan,\n    round(round(argMax(yield_10_year, date), 2) - first_value(round(argMax(yield_10_year, date), 2)) OVER (ORDER BY toStartOfMonth(date)), 2) AS y10_chg_since_jan\nFROM global_markets.treasury_yields\nWHERE date >= toDate('2026-01-01') AND date < toDate('2026-07-01')\n  AND yield_2_year IS NOT NULL AND yield_10_year IS NOT NULL AND yield_3_month IS NOT NULL\nGROUP BY toStartOfMonth(date)\nORDER BY period_start","computed_at":"2026-08-11T14:23:39.285372+00:00","elapsed":0.003303533}