Strasmore Research
Deep Dives · Matt ConnorBy Matt Connor · · Updated 2026-07-24

Treasury Yield Curve H1 2026 twist

Analisi della curva Treasury nel primo semestre 2026: un twist che ha elevato la parte centrale senza invertire lo spread 2s10s o alterare i terminali.

La curva dei rendimenti Treasury ha subito un twist piuttosto che uno shift nella prima metà del 2026. Tra la prima rilevazione di gennaio e l'ultima di giugno, il rendimento del 2-year è salito di 67 basis points, mentre il titolo a 1-month si è mosso di -2 e il bond a 30-year solo di 5 — la parte centrale della curva è salita mentre entrambe le estremità sono rimaste quasi stabili. Nello stesso semestre, lo spread 2s10s si è appiattito da 72 a 30 basis points senza mai invertire. Questa pagina contiene il registro completo dei tassi del semestre: la curva in tre momenti distinti, il twist per scadenza, il percorso giornaliero del 2s10s, la corsa del 30-year sopra il 5% e cinquant'anni di twist semestrali per il confronto. Ogni numero è il risultato di una query memorizzata — espandi qualsiasi pannello per visualizzare il codice SQL sottostante.

Cos'è un twist — e perché si distingue da uno shift

Uno parallel shift sposta ogni scadenza di circa la stessa quantità: l'intera curva si sposta verso l'alto o verso il basso mantenendo la sua forma. Un twist sposta le diverse scadenze di quantità differenti, modificando quindi la forma stessa della curva. Questa distinzione è fondamentale quando si analizzano le diverse parti della curva come strumenti distinti. La parte iniziale — i titoli con scadenza a poche settimane — viene scambiata vicino al tasso di policy attuale. La parte finale riflette una visione decennale su crescita e inflazione e può rimanere stabile nonostante mesi di volatilità sul front-end. La parte centrale — con il 2-year come indicatore classico — è il punto in cui viene ricalcolato il percorso dei tassi previsto per i prossimi due anni. Un semestre in cui la parte centrale sale di due terzi di punto mentre entrambe le estremità restano stabili indica che il mercato sta ridisegnando il percorso dei tassi a breve termine, lasciando invariata la prospettiva di lungo periodo.

La curva in tre momenti: gennaio, marzo, giugno

Il modo più semplice per osservare un twist è fotografare l'intera curva a intervalli regolari e affiancare le immagini. Il pannello sottostante contiene tre istantanee di un singolo giorno — la prima quotazione di gennaio, l'ultima di marzo e l'ultima di giugno — su sette scadenze.

QuerySette scadenze, tre snapshot giornalieri: il primo dato del semestre, l'ultimo di marzo e l'ultimo di giugno
L'esatto SQL dietro ogni numero
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
)

La fotografia di gennaio non mostra una pendenza ascendente regolare. La prima quotazione dell'anno per il 2-year, 3.47%, si trovava al di sotto del 3.72% del bill a 1 mese — un avvallamento nella parte centrale della curva, con il punto minimo in corrispondenza delle scadenze che determinano la politica monetaria a breve termine. Entro l'ultima quotazione di marzo, il 2-year era salito a 3.79%, e entro l'ultima quotazione di giugno l'avvallamento era completamente scomparso: il 2-year si attestava al 4.14%, sopra ogni scadenza dei bill nel pannello, e i rendimenti aumentavano progressivamente lungo la curva, terminando con il 30-year al 4.91%. In sei mesi, una curva con un avvallamento è diventata una curva con pendenza ascendente convenzionale — non spostando tutti i valori verso l'alto, ma eliminando l'avvallamento.

Il twist, per scadenza

Sottraendo il dato di gennaio da quello di giugno, il twist presenta una forma specifica: una gobba centrata sul 2-year, che decresce verso lo zero ad entrambe le estremità. Il pannello suddivide il movimento di ogni scadenza nelle componenti del Q1 e del Q2.

QueryVariazione H1 2026 per scadenza, suddivisa in trimestri — il hump è sul 2-year
L'esatto SQL dietro ogni numero
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
)

I 67 basis points del 2-year rappresentano il movimento maggiore del pannello — superiore ai 51 dell'1-year, ai 45 del 5-year e ai 25 del 10-year, e di un ordine di grandezza superiore rispetto alle estremità. La suddivisione trimestrale indica che la crescita è stata costante piuttosto che un singolo scatto: 32 basis points nel primo trimestre, 35 nel secondo. Qualunque fattore abbia ricalcolato il prezzo della parte centrale della curva lo ha fatto in entrambi i trimestri, dato dopo dato — la serie giornaliera sottostante conferma lo stesso concetto con maggiore dettaglio.

Lo spread 2s10s si è invertito nel primo semestre del 2026?

No — e i dati indicano esattamente quanto si sia avvicinato al limite. Il pannello a riga singola contiene i valori limite del semestre; il grafico sottostante riporta ogni rilevazione giornaliera.

QueryLo slope 2s10s: inizio, fine, minimo (con data), massimo e numero di print
L'esatto SQL dietro ogni numero
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)

Lo spread tra i rendimenti del 10 anni e del 2 anni ha aperto il semestre a 72 basis points, non ha mai superato i 74 basis points ed è terminato a giugno a 30 basis points. Il suo valore minimo è stato di 27 basis points, registrato il 2026-06-18 — l'avvicinamento più vicino all'inversione, rimanendo comunque ampiamente in territorio positivo. Un lettore che cerca solo la risposta sull'inversione può fermarsi qui; l'andamento è rilevante per un'altra questione.

QueryLo spread 2s10s, ogni print del semestre
L'esatto SQL dietro ogni numero
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

Il flattening è stato un evento improvviso o un processo graduale? La serie giornaliera risponde: 124 rilevazioni in calo progressivo da 72 basis points il 2026-01-02 fino a 30 alla chiusura di giugno, senza alcun crollo in un singolo giorno nell'intera sequenza. Un flattening che avviene rilevazione dopo rilevazione è un repricing lento; uno che avviene in una settimana ha solitamente una data precisa. Questo è stato un processo graduale.

Il 30-year e la soglia del 5%

L'andamento del long bond appare stabile nella colonna delle variazioni — 5 basis points dall'inizio alla fine — ma il percorso ha toccato un livello degno di nota. Il grafico sottostante misura tale passaggio.

QueryIl 30-year del semestre: inizio, fine, primo e ultimo print al 5%, tempo sopra il 5% e il massimo
L'esatto SQL dietro ogni numero
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)

Il 30-year ha aperto il semestre al 4.86%, ha registrato un tasso pari o superiore al 5% per la prima volta il 2026-05-04, ha trascorso 16 delle 124 quotazioni del semestre a quel livello o superiore, ha raggiunto il picco del 5.18% il 2026-05-19, e ha chiuso nuovamente sotto tale soglia al 4.91%. Le cifre tonde non comportano meccanismi particolari, ma il 5% sul 30-year è un livello utilizzato dai desk mortgage e dagli allocatori pensionistici, e il dato di mercato è preciso: la permanenza a quel livello o superiore è durata da 2026-05-04 a 2026-06-10 — un episodio tra l'inizio di maggio e metà giugno all'interno di un semestre piatto che ha registrato una oscillazione complessiva di un terzo di punto.

Cinquant'anni di twist semestrali

Un twist di questo tipo è raro? Definiamo il twist semestrale come la differenza tra la variazione del 2-year e quella del 10-year — i valori positivi indicano che il front end è cresciuto più velocemente (o è sceso meno) rispetto alla parte lunga, con un appiattimento della curva. Il panel calcola questo valore per ogni semestre dal 1976, il primo anno in cui le serie del 2-year e del 10-year sono state pubblicate insieme per un semestre completo, includendo il valore minimo del 2s10s per ogni semestre.

QueryOgni semestre dal 1976: variazione 2y e 10y, twist tra i due e il minimo 2s10s del semestre
L'esatto SQL dietro ogni numero
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
QueryRank receipt: twist di H1 2026 rispetto a ogni semestre precedente, per valore assoluto
L'esatto SQL dietro ogni numero
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
)

Il twist del primo semestre del 2026 misura 42 basis points, posizionandosi al 42 dei 100 semestri per dimensione assoluta — una posizione mediana, non un outlier. La tabella contiene semestri con dimensioni tre o quattro volte superiori in entrambe le direzioni. Ciò che distingue questo semestre è l'inversione di direzione: in entrambi i semestri del 2025 il 2-year è SCESO (-53 basis points nel primo semestre 2025, -31 nel secondo), mentre il primo semestre del 2026 ha registrato un aumento di 67 basis-point — la parte centrale-front della curva ha cambiato direzione al passaggio dell'anno. La colonna dell'inversione colloca il semestre nel suo contesto storico: il 28 dei 100 semestri ha registrato un 2s10s negativo in un momento qualsiasi, e il più recente di questi è iniziato nel 2024-07-01 — la fase finale della lunga inversione 2022–2024. Il minimo del primo semestre 2026 di 27 basis points lo ha tenuto completamente fuori da quel gruppo.

L'impatto di una curva più piatta

Un twist come questo si manifesta in tre ambiti al di fuori del mercato obbligazionario, analizzati come meccanismi piuttosto che come previsioni. Tassi ipotecari: i tassi ipotecari fissi a 30 anni sono tipicamente quotati con uno spread rispetto al rendimento del 10-year Treasury, e il 10-year ha chiuso il semestre al 4.44% — un movimento di 25 basis points, una frazione di quello del 2-year. Un twist concentrato sul 2-year influisce sulla determinazione dei prezzi ipotecari molto meno rispetto a uno shift parallelo della stessa entità nominale. Margini bancari: le banche tendono a finanziarsi ai tassi brevi e a prestare a tassi più lunghi; un appiattimento restringe il divario definito da questi due tassi, che costituisce la materia prima del net interest margin. Aritmetica della recessione: un'inversione dei 2s10s ha preceduto le passate recessioni statunitensi, motivo per cui lo spread attira l'attenzione. Questo semestre non ne ha registrata alcuna; il limite minimo è stato di 27 basis points. Stabilire se ciò indichi cosa accadrà in futuro è una previsione, e questa pagina non effettua previsioni.

Una nota sul calendario delle aste

Nessuno dei pannelli sopra riporta l'offerta, ma è importante conoscere il ritmo sottostante. Il Treasury emette titoli a due, cinque e sette anni ogni mese e mette all'asta i titoli a dieci e trenta anni durante il ciclo di rifinanziamento trimestrale, con riaperture intermedie; ogni yield qui è un prezzo di mercato stabilito rispetto a questo calendario costante di nuove emissioni. I risultati a livello di asta (bid-to-cover ratios, tails) non sono inclusi in questo dataset, pertanto questa pagina non esprime giudizi sulla domanda relativa a una specifica vendita.

FAQ

La curva dei rendimenti Treasury si è invertita nel 2026?

Non nella prima metà dell'anno. Il valore minimo dello spread 2s10s nel primo semestre del 2026 è stato di 27 punti base, in 2026-06-18 — l'anno è iniziato con un valore di 72 e si è concluso a giugno con 30, con una curva più piatta ma sempre positiva.

Cos'è un yield-curve twist?

Un cambiamento nella forma della curva anziché nel suo livello: scadenze diverse si muovono di importi differenti. Nel primo semestre del 2026 il rendimento a 2 anni è salito di 67 punti base, mentre il rendimento a 1 mese e quello a 30 anni si sono mossi di cifre a una sola cifra — un twist concentrato sulla parte centrale della curva, a differenza di uno shift parallelo che muove tutti i titoli insieme.

Di quanto è salito il rendimento del Treasury a 2 anni nel 2026?

67 punti base durante il primo semestre — dal 3.47% della prima rilevazione di gennaio al 4.14% dell'ultima rilevazione di giugno, con una ripartizione di 32 e 35 tra i due trimestri.

Quando il rendimento del Treasury a 30 anni ha superato il 5%?

La sua prima rilevazione nel primo semestre del 2026 pari o superiore al 5% è avvenuta il 2026-05-04. Ha raggiunto il picco del 5.18% il 2026-05-19 e ha chiuso il semestre nuovamente sotto la soglia al 4.91%.

Quando si è verificata l'ultima inversione della curva dei rendimenti US?

Secondo il bilancio semestrale di questa pagina, l'ultimo semestre contenente una rilevazione 2s10s invertita è iniziato il 2024-07-01. In totale, 28 di 100 semestri dal 1976 hanno registrato un 2s10s negativo almeno una volta.


I registri relativi ad equity, settori e opzioni dello stesso semestre sono disponibili nel riepilogo di mercato del primo semestre 2026, mentre i dati macro con cui il semestre è stato scambiato si trovano nel quadro macro in entrata nel secondo semestre. Ogni pannello sopra riportato è riproducibile — copiare la query SQL nel terminale Strasmore ed eseguirla sulle stesse tabelle.

Metodologia

  • I valori di inizio e fine corrispondono alla prima e all'ultima quotazione per ogni scadenza nel periodo tra il 1° gennaio e il 30 giugno 2026, selezionati tramite data nella query; gli snapshot sono righe di un singolo giorno (la prima quotazione del semestre, l'ultima di marzo, l'ultima di giugno) e tutte e sette le scadenze sono complete in tali date.
  • Lo storico semestrale accoppia i titoli a 2 anni e 10 anni a partire dal 19 luglio 1976, ovvero il primo semestre completo in cui entrambe le serie sono quotate congiuntamente. I semestri con meno di cento quotazioni congiunte sono esclusi tramite un controllo nella query; il numero di quotazioni per semestre è indicato nella tabella. Il limite superiore dello storico è fissato al 30 giugno 2026, pertanto il set di confronto non può espandersi con l'arrivo di nuovi dati.
  • In caso di parità, i valori estremi vengono risolti in modo deterministico (tuple valore-data), così che la rigenerazione non possa modificare una data in caso di quotazioni identiche.
  • La generazione avviene tramite il percorso di sola lettura protetto; la pagina pubblica non interroga mai i dati in tempo reale. Stato del Warehouse al 12 luglio 2026.