Strasmore Research
Deep Dives · Matt ConnorBy Matt Connor · · Updated 2026-08-08

2026年上半年美国国债收益率曲线扭曲分析

2026年上半年美国国债收益率曲线中段上升、两端持稳,2s10s利差始终未倒挂,30年期收益率一度逼近5%,查看完整数据与历史比较。

2026年上半年,美国国债收益率曲线出现扭曲,而非整体平移。从1月首次交易数据到6月最后一笔交易数据,2年期国债收益率上升了67个基点,1个月期国库券收益率变动了-2个基点,30年期国债收益率仅变动5个基点;曲线中段上升,两端基本持稳。同一六个月期间,2s10s利差72个基点收窄至30个基点,但始终未出现倒挂。

本页汇总了上半年的完整利率数据:三个时点的收益率曲线、各期限的扭曲幅度、2s10s利差的每日走势、30年期收益率突破5%的持续表现,以及过去五十年上半年收益率曲线扭曲情况,便于比较本次走势。每个数字均来自已存储的查询结果。展开任意面板即可查看背后的SQL。

什么是扭曲,以及它为何不同于平移

平移是指各期限的变动幅度大致相同:整条曲线向上或向下移动,但形态保持不变。扭曲则是指不同期限的变动幅度不同,因此曲线形态本身发生变化。

当您将曲线的不同部分视为不同工具时,这一区别十分重要。最短端包括几周后到期的短期国库券,其交易水平接近当前政策利率。长端反映市场对未来数十年经济增长和通胀的看法,即使短端经历数月剧烈波动,长端也可能基本不动。中段通常以2年期利率作为代表,反映市场对未来几年政策利率的预期如何重新定价。

如果在某个阶段,中段上升三分之二个百分点,而两端都保持不变,就意味着市场正在重新绘制近期利率路径,同时维持对长期前景的原有判断。

三个时点的收益率曲线:1月、3月和6月

要最清楚地观察曲线扭曲,最直接的方法是定期记录整条曲线,并将这些图像并排比较。下方面板展示了七个期限在三个单日时点的截面:上半年的首个交易日、3月最后一个交易日,以及6月最后一个交易日。

查询七个期限、三个单日快照:上半年第一个数据、三月最后一个数据和六月最后一个数据
到期日1月百分比3月百分比6月百分比
1-month3.723.743.7
3-month3.653.73.87
1-year3.473.683.98
2-year3.473.794.14
5-year3.743.924.19
10-year4.194.34.44
30-year4.864.884.91
每个数字背后的完整 SQL
WITH
    (SELECT (yield_1_month, yield_3_month, yield_1_year, yield_2_year, yield_5_year, yield_10_year, yield_30_year) FROM global_markets.treasury_yields
     WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') ORDER BY date ASC LIMIT 1) AS jan_row,
    (SELECT (yield_1_month, yield_3_month, yield_1_year, yield_2_year, yield_5_year, yield_10_year, yield_30_year) FROM global_markets.treasury_yields
     WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-03-31') ORDER BY date DESC LIMIT 1) AS mar_row,
    (SELECT (yield_1_month, yield_3_month, yield_1_year, yield_2_year, yield_5_year, yield_10_year, yield_30_year) FROM global_markets.treasury_yields
     WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') ORDER BY date DESC LIMIT 1) AS jun_row
SELECT z.1 AS maturity, z.2 AS jan_pct, z.3 AS mar_pct, z.4 AS jun_pct
FROM (
    SELECT arrayJoin(arrayZip(['1-month','3-month','1-year','2-year','5-year','10-year','30-year'],
        [jan_row.1, jan_row.2, jan_row.3, jan_row.4, jan_row.5, jan_row.6, jan_row.7],
        [mar_row.1, mar_row.2, mar_row.3, mar_row.4, mar_row.5, mar_row.6, mar_row.7],
        [jun_row.1, jun_row.2, jun_row.3, jun_row.4, jun_row.5, jun_row.6, jun_row.7])) AS z
)
自己运行这个查询

1月的曲线并不是干净的上行斜线。年内首个交易日,2年期收益率为 3.47%,低于1个月期国库券的 3.72%。曲线中段因此出现下凹,而低点正好位于反映近期政策预期的期限。到3月最后一个交易日,2年期收益率升至 3.79%;到6月最后一个交易日,下凹已完全消失。2年期收益率为 4.14%,高于面板中的所有国库券期限,随后收益率沿曲线逐点上升,30年期最终达到 4.91%。六个月的时间将一条有凹陷的曲线变成了传统的上行曲线。变化并不是所有期限收益率同步上移,而是中段凹陷被抬高。

逐个期限看这次扭曲

将1月快照从6月快照中扣除后,这次扭曲呈现出自身的形态:以2年期为中心形成峰值,并向两端逐渐收敛至零。图中将每个期限的变动拆分为第一季度和第二季度两个阶段。

查询2026年上半年各期限的变动,按季度划分:峰值正好位于2年期
到期日第一季度变动(基点)第二季度变动(基点)上半年变动(基点)
1-month2-4-2
3-month51722
1-year213051
2-year323567
5-year182745
10-year111425
30-year235
每个数字背后的完整 SQL
WITH
    (SELECT (yield_1_month, yield_3_month, yield_1_year, yield_2_year, yield_5_year, yield_10_year, yield_30_year) FROM global_markets.treasury_yields
     WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') ORDER BY date ASC LIMIT 1) AS jan_row,
    (SELECT (yield_1_month, yield_3_month, yield_1_year, yield_2_year, yield_5_year, yield_10_year, yield_30_year) FROM global_markets.treasury_yields
     WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-03-31') ORDER BY date DESC LIMIT 1) AS mar_row,
    (SELECT (yield_1_month, yield_3_month, yield_1_year, yield_2_year, yield_5_year, yield_10_year, yield_30_year) FROM global_markets.treasury_yields
     WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') ORDER BY date DESC LIMIT 1) AS jun_row
SELECT z.1 AS maturity,
       round((z.3 - z.2) * 100, 0) AS q1_change_bp,
       round((z.4 - z.3) * 100, 0) AS q2_change_bp,
       round((z.4 - z.2) * 100, 0) AS h1_change_bp
FROM (
    SELECT arrayJoin(arrayZip(['1-month','3-month','1-year','2-year','5-year','10-year','30-year'],
        [jan_row.1, jan_row.2, jan_row.3, jan_row.4, jan_row.5, jan_row.6, jan_row.7],
        [mar_row.1, mar_row.2, mar_row.3, mar_row.4, mar_row.5, mar_row.6, mar_row.7],
        [jun_row.1, jun_row.2, jun_row.3, jun_row.4, jun_row.5, jun_row.6, jun_row.7])) AS z
)
自己运行这个查询

2年期的67个基点是图中最大变动,高于1年期的51、5年期的45和10年期的25,也比两端的变动高出一个数量级。按季度拆分来看,这一上行是持续发生的,而不是单次跳升:第一季度上涨32个基点,第二季度上涨35个基点。无论是什么因素重新定价了收益率曲线中段,其影响都持续贯穿两个季度,并在每笔成交中逐步体现出来。下方的日度序列以更细的粒度印证了这一点。

Did the 2s10s spread invert in H1 2026?

No, and the receipts pin down exactly how close it came. The one-row panel holds the half's boundary values; the chart under it is every daily print.

查询2s10s利差记录:起点、终点、最低值(含日期)、最高值和数据次数
起始(基点)结束(基点)最低(基点)最低日期最高(基点)读数
7230272026-06-1874124
每个数字背后的完整 SQL
SELECT
    round((argMin(yield_10_year - yield_2_year, date)) * 100, 0) AS start_bp,
    round((argMax(yield_10_year - yield_2_year, date)) * 100, 0) AS end_bp,
    round(min(yield_10_year - yield_2_year) * 100, 0) AS min_bp,
    argMin(toString(date), (yield_10_year - yield_2_year, date)) AS min_date,
    round(max(yield_10_year - yield_2_year) * 100, 0) AS max_bp,
    count() AS prints
FROM global_markets.treasury_yields
WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30')
  AND isNotNull(yield_10_year) AND isNotNull(yield_2_year)
自己运行这个查询

The spread between the 10-year and 2-year yields opened the half at 72 basis points, never printed wider than 74, and ended June at 30. Its floor was 27 basis points, printed on 2026-06-18, the closest approach to inversion, still comfortably positive. A reader who only wants the inversion answer can stop here; the path matters for a different question.

查询上半年每次数据发布的2s10s利差
124 rows (showing 20)
d2s10s利差(基点)
2026-01-0272
2026-01-0571
2026-01-0671
2026-01-0768
2026-01-0870
2026-01-0964
2026-01-1265
2026-01-1365
2026-01-1464
2026-01-1561
2026-01-1665
2026-01-2070
2026-01-2166
2026-01-2265
2026-01-2364
2026-01-2666
2026-01-2771
2026-01-2870
2026-01-2971
2026-01-3074
每个数字背后的完整 SQL
SELECT toString(date) AS d, round((yield_10_year - yield_2_year) * 100, 0) AS spread_2s10s_bp
FROM global_markets.treasury_yields
WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30')
  AND isNotNull(yield_10_year) AND isNotNull(yield_2_year)
ORDER BY date
自己运行这个查询

Was the flattening one sharp event or a grind? The daily series answers: 124 prints stepping down from 72 basis points on 2026-01-02 to 30 at the June close, with no single-day collapse anywhere in the sequence. A flattening that arrives print by print is a slow repricing; one that arrives in a week usually has a date attached. This one was a grind.

30年期国债与5%关口

从变动栏看,长期国债收益率在这半年度内波澜不惊,首尾仅变动5个基点。但期间曾触及一个值得记录的水平。以下记录衡量了这次触及。

查询30年期上半年表现:起点、终点、首次和末次达到5%的数据、处于或高于5%的时间,以及最高值
起始百分比结束百分比首次达到5的日期最后达到5的日期达到或超过5的读数最高百分比最高日期读数
4.864.912026-05-042026-06-10165.182026-05-19124
每个数字背后的完整 SQL
SELECT
    round(argMin(yield_30_year, date), 2) AS start_pct,
    round(argMax(yield_30_year, date), 2) AS end_pct,
    toString(minIf(date, yield_30_year >= 5)) AS first_5_date,
    toString(maxIf(date, yield_30_year >= 5)) AS last_5_date,
    countIf(yield_30_year >= 5) AS prints_at_or_above_5,
    round(max(yield_30_year), 2) AS high_pct,
    argMax(toString(date), (yield_30_year, date)) AS high_date,
    count() AS prints
FROM global_markets.treasury_yields
WHERE date >= toDate('2026-01-01') AND date <= toDate('2026-06-30') AND isNotNull(yield_30_year)
自己运行这个查询

30年期国债收益率在该半年度以4.86%开盘,并于2026-05-04首次达到或超过5%。在该半年度的124次报价中,有16次达到或超过这一关口;其间于2026-05-19升至5.18%的高点,最终于4.91%回落至该关口下方。整数关口本身没有特殊的市场机制,但30年期国债收益率达到5%是按揭交易台和养老金配置机构会引用的水平。市场走势给出了明确答案:收益率从2026-05-042026-06-10期间一直处于或高于该水平。这是一次发生在5月初至6月中旬的阶段性行情,处于整体平稳的半年度之内,但期间完成了三分之一个百分点的往返波动。

五十年的半年期曲线扭转

这样的扭转罕见吗?我们将半年期扭转定义为2年期收益率变动减去10年期收益率变动。正值表示短端上涨更快(或下跌更少),即曲线从短端开始变平。该面板计算了自1976以来每个半年的这一数值;1976是2年期和10年期序列首次在完整半年内同时有数据的年份。面板还列出了每个半年的2s10s利差最低值。

查询自1976年以来的每个半年:2年期和10年期的变动、两者之间的扭曲,以及该半年2s10s利差的最低数据
100 rows (showing 20)
期间开始半年读数2年期变动(基点)10年期变动(基点)扭转(基点)最低2s10s(基点)
1976-07-011976 H2125-168-107-6185
1977-01-011977 H1126663630106
1977-07-011977 H2123110446632
1978-01-011978 H112412479459
1978-07-011978 H21241545698-86
1979-01-011979 H1124-103-37-66-82
1979-07-011979 H212423015773-169
1980-01-011980 H1125-242-41-201-241
1980-07-011980 H2125405230175-170
1981-01-011981 H112415614412-170
1981-07-011981 H2125-131-6-125-155
1982-01-011982 H1124792554-71
1982-07-011982 H2125-512-404-108-24
1983-01-011983 H112694643052
1983-07-011983 H21246889-2164
1984-01-011984 H11252301983252
1984-07-011984 H2124-315-232-8320
1985-01-011985 H1123-136-1459106
1985-07-011985 H2125-68-11951100
1986-01-011986 H1124-121-1694842
每个数字背后的完整 SQL
SELECT concat(toString(toYear(date)), if(toMonth(date) <= 6, '-01-01', '-07-01')) AS period_start,
       concat(toString(toYear(date)), if(toMonth(date) <= 6, ' H1', ' H2')) AS half,
       count() AS prints,
       round((argMax(yield_2_year, date) - argMin(yield_2_year, date)) * 100, 0) AS change_2y_bp,
       round((argMax(yield_10_year, date) - argMin(yield_10_year, date)) * 100, 0) AS change_10y_bp,
       round((argMax(yield_2_year, date) - argMin(yield_2_year, date)) * 100
           - (argMax(yield_10_year, date) - argMin(yield_10_year, date)) * 100, 0) AS twist_bp,
       round(min(yield_10_year - yield_2_year) * 100, 0) AS min_2s10s_bp
FROM global_markets.treasury_yields
WHERE date >= toDate('1976-07-01') AND date <= toDate('2026-06-30')
  AND isNotNull(yield_2_year) AND isNotNull(yield_10_year)
GROUP BY period_start, half
HAVING prints >= 100
ORDER BY period_start ASC
自己运行这个查询
查询排名记录:按绝对值比较2026年上半年扭曲幅度与此前每个半年的结果
2026年上半年扭转(基点)按幅度排名比较的半年数首年出现倒挂的半年数最近倒挂半年开始
42421001976282024-07-01
每个数字背后的完整 SQL
SELECT
    round(anyIf(twist, period_start = '2026-01-01'), 0) AS h1_2026_twist_bp,
    arrayCount(x -> abs(x) > abs(anyIf(twist, period_start = '2026-01-01')), groupArrayIf(twist, period_start != '2026-01-01')) + 1 AS rank_by_magnitude,
    count() AS halves_compared,
    toUInt16OrZero(substring(min(period_start), 1, 4)) AS first_year,
    countIf(min_2s10s < 0) AS halves_with_inversion,
    max(if(min_2s10s < 0, period_start, '')) AS last_inverted_half_start
FROM (
    SELECT concat(toString(toYear(date)), if(toMonth(date) <= 6, '-01-01', '-07-01')) AS period_start,
           count() AS prints,
           (argMax(yield_2_year, date) - argMin(yield_2_year, date)) * 100
             - (argMax(yield_10_year, date) - argMin(yield_10_year, date)) * 100 AS twist,
           min(yield_10_year - yield_2_year) * 100 AS min_2s10s
    FROM global_markets.treasury_yields
    WHERE date >= toDate('1976-07-01') AND date <= toDate('2026-06-30')
      AND isNotNull(yield_2_year) AND isNotNull(yield_10_year)
    GROUP BY period_start
    HAVING prints >= 100
)
自己运行这个查询

2026年上半年的扭转幅度为42个基点。按绝对值计算,这一数值在100个半年中排名第42,处于中间位置,并不异常。表中显示,双向扭转幅度达到这一水平三倍和四倍的半年期都曾出现。该半年期的特殊之处在于方向发生了反转:2025年的两个半年期中,2年期收益率均下跌(2025年上半年下跌-53个基点,下半年下跌-31个基点);2026年上半年则上涨67个基点,曲线中前端至中端在年末年初发生了方向变化。倒挂栏显示了这一半年期所处的时代背景:100个半年期中的28个曾在某个时点出现负值2s10s利差;其中最近一次始于2024-07-01,处于2022年至2024年长期倒挂的尾段。2026年上半年最低为27个基点,因此完全未进入这一行列。

曲线趋平会影响什么

这种扭曲形态在债券市场之外的三个影响领域。以下只说明传导机制,不作预测。抵押贷款利率:30年期固定抵押贷款利率通常以高于10年期美国国债收益率的利差报价。10年期收益率在本阶段收于4.44%,变动25个基点,仅为2年期收益率变动幅度的一部分。若曲线扭曲主要集中在2年期,抵押贷款定价受到的影响会远小于同等幅度的整体平行移动。银行利差:银行通常以短期利率融资,并以较长期利率放贷。曲线趋平会收窄这两类利率形成的利差,而这正是净息差的基础。衰退规律:美国过去的衰退之前,2年期与10年期国债收益率利差曾出现倒挂,因此该利差一直受到关注。本阶段从未出现倒挂;最低点为27个基点。上述因素是否能说明未来走势,属于预测范畴;本文不作预测。

拍卖日历说明

上述图表均未显示供给,但了解其背后的节奏仍然很有帮助。美国财政部每月发行2年期、5年期和7年期国债,并按照季度再融资周期拍卖10年期和30年期国债,其间还会进行增发。这里的每个收益率,都是在这一稳定的新券发行日历下形成的市场价格。本文数据集不包含拍卖层面的结果(投标倍数、尾部利差),因此不对任何具体拍卖中的需求作出判断。

常见问题

2026年美国国债收益率曲线是否倒挂?

上半年没有。2026年上半年2年期与10年期收益率利差最低为27个基点,出现在2026-06-18;年初为72,6月底为30。整个期间利差保持为正,但曲线趋于平坦。

什么是收益率曲线扭曲?

这是曲线形状发生变化,而非整体水平变化。不同期限的收益率变动幅度不同。2026年上半年,2年期收益率上升67个基点,而1个月期和30年期收益率仅变动个位数基点。曲线中段因此出现扭曲,不同于所有期限同步移动的平行移动。

2026年2年期美国国债收益率上升了多少?

上半年累计上升67个基点,从1月首次交易数据中的3.47%升至6月最后一个交易数据中的4.14%;其中两个季度分别变动3235个基点。

30年期美国国债收益率何时突破5%?

2026年上半年首次达到或超过5%的交易数据出现在2026-05-04。收益率于2026-05-19升至5.18%的峰值,半年度结束时回落至该水平以下,为4.91%。

美国收益率曲线上次倒挂是什么时候?

按本页以半年为单位的统计口径,最近一个出现2年期与10年期收益率利差倒挂的半年始于2024-07-01。自1976以来,共有28个半年中的100个至少有一次2年期与10年期收益率利差为负。


同六个月的股票、行业和期权台账见2026年上半年市场回顾;该期间交易所依据的宏观数据发布见进入下半年的宏观背景。上方每个面板均可复现。将SQL粘贴到Strasmore终端,并针对同一组数据表运行即可。

方法

  • 起始值和结束值分别是各期限在2026年1月1日至6月30日期间的首笔和末笔成交记录,按查询中的日期选取。这些快照对应单日数据行,分别为上半年首笔成交、3月末笔成交和6月末笔成交;在这些日期,七个期限的数据均完整。
  • 半年历史数据自1976年7月开始配对比较2年期和10年期,这是两条序列首次同时有完整半年的时期。通过查询内置的筛选条件,剔除共同成交记录少于100笔的半年,并在表格中列出每个半年的成交记录数量。历史数据的上限固定为2026年6月30日,因此后续数据到来后,比较样本不会扩大。
  • 极值按“数值—日期”元组确定性打破平局,因此即使成交值相同,重新生成结果也不会改变日期。
  • 生成过程通过受控的只读路径执行;公开页面从不查询实时数据。数据仓库状态截至2026年7月12日。
#treasuries#yield curve#rates#2s10s#bonds