2s10s spread คืออะไร และการทำงานของ yield curve
ทำความเข้าใจความหมายของ 2s10s spread และกลไกของ Yield Curve พร้อมวิเคราะห์สภาวะ Inversion ในอดีตผ่านข้อมูลอัตราผลตอบแทนพันธบัตรรัฐบาลที่ตรวจสอบได้
2s10s spread คือส่วนต่างระหว่างอัตราผลตอบแทนพันธบัตรรัฐบาลสหรัฐฯ อายุ 10 ปี และอายุ 2 ปี โดยคำนวณจากอัตราผลตอบแทนอายุ 10 ปี ลบด้วยอัตราผลตอบแทนอายุ 2 ปี เมื่อค่าเป็นบวก หมายความว่าการกู้ยืมระยะยาวให้ผลตอบแทนสูงกว่าการกู้ยืมระยะสั้น ซึ่งเป็นสภาวะปกติทั่วไป แต่เมื่อค่ากลายเป็นลบ แสดงว่าเส้นอัตราผลตอบแทน (yield curve) เกิดสภาวะ inverted (ส่วนกลับ) ซึ่งเป็นสภาวะที่มักเกิดขึ้นก่อนการเกิดภาวะถดถอยทางเศรษฐกิจของสหรัฐฯ ในยุคปัจจุบัน และเป็นสิ่งที่นักเทรดตรวจสอบกันทุกวัน
ข้อมูลทุกตัวในหน้านี้ดึงมาจากคำสั่ง query ที่จัดเก็บไว้เพื่อดึงข้อมูลอัตราผลตอบแทนพันธบัตรรัฐบาลจริง หากต้องการดูคำสั่ง SQL เบื้องหลังข้อมูลแต่ละส่วน สามารถขยายแผงข้อมูลด้านล่างได้
yield curve คืออะไร?
ผลตอบแทนของพันธบัตรคืออัตราผลตอบแทนต่อปีที่คุณจะได้รับจากการซื้อพันธบัตรในราคาปัจจุบันและถือจนครบกำหนด ซึ่งเป็นสิ่งที่เทียบเคียงได้กับเงินปันผลที่หุ้นจ่ายในรูปแบบ cash dividends รัฐบาลสหรัฐฯ กู้ยืมเงินผ่านพันธบัตรที่มีอายุครบกำหนดหลายรูปแบบพร้อมกัน ตั้งแต่ 1 เดือนไปจนถึง 30 ปี โดยแต่ละอายุจะมีอัตราผลตอบแทนเป็นของตนเอง yield curve คือการแสดงผลตอบแทนทั้งหมดนี้ ณ ช่วงเวลาใดเวลาหนึ่ง โดยพล็อตจากอายุครบกำหนดที่สั้นที่สุดทางด้านซ้ายไปจนถึงอายุยาวที่สุดทางด้านขวา
ปลายทั้งสองด้านของเส้นอัตราผลตอบแทนตอบคำถามที่ต่างกัน พันธบัตรอายุสั้นจะมีอัตราผลตอบแทนใกล้เคียงกับอัตราดอกเบี้ยนโยบายของ Federal Reserve โดยพันธบัตรอายุ 1 เดือนส่วนใหญ่จะสะท้อนราคาของตลาดเงินข้ามคืน ในปัจจุบัน ส่วนพันธบัตรอายุยาวจะรวมเอาอัตราดอกเบี้ยระยะสั้นที่คาดการณ์ไว้ในอีกหนึ่งทศวรรษข้างหน้าบวกกับ term premium ซึ่งเป็นผลตอบแทนส่วนเพิ่มที่นักลงทุนต้องการเพื่อแลกกับการต้องนำเงินมาผูกไว้นานขึ้นและต้องเผชิญกับความผันผวนของราคาที่สูงกว่า
วิธีอ่าน yield curve: แบบปกติ, แบบราบ (flat) และแบบส่วนกลับ (inverted)
รูปแบบส่วนใหญ่ที่พบมีอยู่ 3 ลักษณะ:
- Normal (ลาดขึ้น): พันธบัตรที่มีอายุยาวขึ้นแต่ละช่วงจะมีผลตอบแทนสูงกว่าช่วงก่อนหน้าเล็กน้อย
- Flat: ผลตอบแทนระยะสั้นและระยะยาวมีค่าใกล้เคียงกันมาก
- Inverted: พันธบัตรระยะสั้นให้ผลตอบแทนสูงกว่าระยะยาว โดยเส้นกราฟจะลาดลง
นี่คือเส้นอัตราผลตอบแทนจริง โดยใช้อัตราผลตอบแทนล่าสุดที่ประกาศสำหรับแต่ละอายุครบกำหนด:
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
m.1 AS maturity,
round(m.2, 2) AS yield_pct
FROM
(
SELECT arrayJoin([
('1 month', argMaxIf(yield_1_month, date, isNotNull(yield_1_month))),
('3 month', argMaxIf(yield_3_month, date, isNotNull(yield_3_month))),
('1 year', argMaxIf(yield_1_year, date, isNotNull(yield_1_year))),
('2 year', argMaxIf(yield_2_year, date, isNotNull(yield_2_year))),
('5 year', argMaxIf(yield_5_year, date, isNotNull(yield_5_year))),
('10 year', argMaxIf(yield_10_year, date, isNotNull(yield_10_year))),
('30 year', argMaxIf(yield_30_year, date, isNotNull(yield_30_year)))
]) AS m
FROM global_markets.treasury_yields
WHERE date >= today() - INTERVAL 30 DAY
)จากข้อมูลล่าสุด พันธบัตรอายุ 1 เดือนให้ผลตอบแทน 3.76% ในขณะที่พันธบัตรอายุ 30 ปีให้ผลตอบแทน 5.09% ซึ่งเป็นการลาดขึ้นจากซ้ายไปขวาตามรูปแบบ "normal"
วิธีคำนวณ 2s10s spread
นำอัตราผลตอบแทนอายุ 10 ปี ลบด้วยอัตราผลตอบแทนอายุ 2 ปี นี่คือสูตรทั้งหมด ผลลัพธ์มักจะถูกระบุในหน่วย basis points (bps) โดย 1 basis point เท่ากับหนึ่งในหนึ่งร้อยของหนึ่งเปอร์เซ็นต์ ดังนั้นส่วนต่าง 0.50 เปอร์เซ็นต์ จึงเท่ากับ 50 bps
คำว่า "spread" หมายถึงส่วนต่างระหว่างอัตราดอกเบี้ยหรือราคาสองค่า ซึ่งเป็นแนวคิดเดียวกับ bid-ask spread ในหุ้น แต่เป็นการนำมาใช้กับจุดสองจุดบนเส้นอัตราผลตอบแทนพันธบัตรรัฐบาลแทนที่จะเป็นราคาเสนอซื้อขายของหุ้นตัวเดียว
ทำไมต้องเป็นสองอายุนี้? พันธบัตรอายุ 2 ปี สะท้อนมุมมองของตลาดต่อนโยบายของ Fed ในช่วงสองปีข้างหน้า ในขณะที่อายุ 10 ปี เป็นอัตราดอกเบี้ยระยะยาวที่เป็นมาตรฐานสำหรับต้นทุนการกู้ยืมเพื่อที่อยู่อาศัยและภาคธุรกิจ ส่วนต่างของทั้งสองค่านี้ช่วยสรุปความชันของเส้นอัตราผลตอบแทนทั้งหมดให้เหลือเพียงตัวเลขเดียว สำหรับปัจจัยทางเศรษฐกิจมหภาคที่อัตราดอกเบี้ยเหล่านี้สะท้อนถึง เช่น เงินเฟ้อและตลาดแรงงาน สามารถดูได้ที่ where inflation and jobs data stood at mid-year
yield curve ยังเป็นแบบ inverted อยู่หรือไม่? 2s10s ในปัจจุบัน
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
date AS as_of,
round(yield_2_year, 2) AS two_year_pct,
round(yield_10_year, 2) AS ten_year_pct,
round(yield_10_year - yield_2_year, 2) AS spread_pct,
round((yield_10_year - yield_2_year) * 100) AS spread_bps
FROM global_markets.treasury_yields
WHERE isNotNull(yield_10_year) AND isNotNull(yield_2_year)
ORDER BY date DESC
LIMIT 1ณ 2026-07-16 พันธบัตรอายุ 2 ปีให้ผลตอบแทน 4.16% และอายุ 10 ปีให้ผลตอบแทน 4.57% ทำให้ 2s10s spread อยู่ที่ 0.41 เปอร์เซ็นต์ หรือ 41 bps ค่าที่อ่านได้เป็นบวก ซึ่งหมายความว่า ณ ราคาปิดล่าสุดในข้อมูลนี้ เส้นอัตราผลตอบแทนยังไม่เป็นแบบ inverted
2s10s spread ย้อนหลัง 20 ปี รายเดือน
ส่วนต่างของวันเดียวเป็นเพียงภาพถ่าย ณ ขณะหนึ่ง แต่ข้อมูลเชิงลึกจะอยู่ในชุดข้อมูลต่อเนื่อง แผนภูมิด้านล่างคือค่าเฉลี่ยของ 2s10s รายเดือนในช่วง 20 ปีที่ผ่านมา เส้นที่สำคัญที่สุดคือเส้นศูนย์ โดยทุกครั้งที่ค่าตกลงไปต่ำกว่าเส้นนี้จะถือว่าเป็นสภาวะ inversion
SQL เบื้องหลังตัวเลขแต่ละตัว
SELECT
toStartOfMonth(date) AS month,
round(avg(yield_10_year - yield_2_year), 2) AS spread_pct
FROM global_markets.treasury_yields
WHERE date >= toStartOfMonth(now()) - INTERVAL 20 YEAR
AND date < toStartOfMonth(now())
AND isNotNull(yield_10_year)
AND isNotNull(yield_2_year)
GROUP BY month
ORDER BY monthช่วงข้อมูลเริ่มต้นที่ต่ำกว่าศูนย์เล็กน้อยที่ -0.03 เปอร์เซ็นต์ ซึ่งเป็นช่วงปลายของการเกิด inversion ในช่วงกลางทศวรรษ 2000 ช่วงเวลาที่ยาวนานใต้เส้นศูนย์ทางด้านขวาของแผนภูมิคือเหตุการณ์ในช่วงปี 2022–2024 ซึ่งเป็นช่วงที่ผู้อ่านส่วนใหญ่จำได้ โดยเดือนเต็มเดือนล่าสุดในชุดข้อมูลมีค่าเฉลี่ยอยู่ที่ 0.36 เปอร์เซ็นต์
ทุกเหตุการณ์ 2s10s inversion ในข้อมูล: วันที่, ความลึก, ระยะเวลา
การดูแผนภูมิอาจทำให้คุณต้องกะระยะด้วยสายตา แต่การใช้คำสั่ง query สามารถระบุข้อมูลได้อย่างแม่นยำ ในที่นี้ inverted close หมายถึงวันใดก็ตามที่อัตราผลตอบแทนอายุ 10 ปีปิดต่ำกว่าอายุ 2 ปี และหากมีช่วง inverted close ที่ห่างกันมากกว่า 60 วันปฏิทิน จะถือว่าเป็นคนละเหตุการณ์กัน
SQL เบื้องหลังตัวเลขแต่ละตัว
WITH inverted_closes AS
(
SELECT
date,
round((yield_10_year - yield_2_year) * 100) AS spread_bps
FROM global_markets.treasury_yields
WHERE isNotNull(yield_10_year) AND isNotNull(yield_2_year)
AND yield_10_year < yield_2_year
),
flagged AS
(
SELECT
date,
spread_bps,
if(dateDiff('day', lagInFrame(date, 1, date) OVER (ORDER BY date ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW), date) > 60, 1, 0) AS starts_new_episode
FROM inverted_closes
),
episodes AS
(
SELECT
date,
spread_bps,
sum(starts_new_episode) OVER (ORDER BY date ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS episode_id
FROM flagged
)
SELECT
min(date) AS first_inverted_close,
max(date) AS last_inverted_close,
count() AS inverted_closes,
min(spread_bps) AS deepest_bps
FROM episodes
GROUP BY episode_id
ORDER BY first_inverted_closeตารางนี้มีทั้งหมด 11 เหตุการณ์ ย้อนหลังไปถึงช่วงปลายทศวรรษ 1970 เหตุการณ์ที่ลึกที่สุดเกิดขึ้นเป็นอันดับแรก คือช่วงปี 1978–1980 ซึ่งมีค่าต่ำสุดที่ -241 bps ส่วนเหตุการณ์ที่ยาวนานที่สุดคือเหตุการณ์ล่าสุด โดยระหว่าง 2022-07-06 ถึง 2024-09-05 มีการปิดแบบ inverted ทั้งหมด 539 วันทำการ โดยมีค่าปิดที่ลึกที่สุดอยู่ที่ -108 bps ในทางตรงกันข้าม เหตุการณ์ในเดือนสิงหาคม 2019 มีช่วงเวลาปิดแบบ inverted เพียง 3 วัน และช่วงที่ลดลงในต้นเดือนเมษายน 2022 มีเพียง 2 วัน
Inversions และภาวะถดถอย: สิ่งที่บันทึกระบุไว้
2s10s ถูกใช้เป็นตัวบ่งชี้ภาวะถดถอยทางเศรษฐกิจอย่างแพร่หลาย ดังนั้นจึงควรระบุให้ชัดเจนว่าข้อมูลบันทึกแสดงผลอย่างไร วันที่เริ่มต้นภาวะถดถอยไม่ใช่ข้อมูลตลาด แต่มาจากลำดับเหตุการณ์วัฏจักรธุรกิจของ NBER ไม่ใช่จากการ query ตามลำดับเหตุการณ์ดังกล่าว ภาวะถดถอยของสหรัฐฯ เริ่มต้นในเดือนมกราคม 1980, กรกฎาคม 1981, กรกฎาคม 1990, มีนาคม 2001, ธันวาคม 2007 และกุมภาพันธ์ 2020 โดยวันเริ่มต้นแต่ละครั้งเกิดขึ้นหลังจากช่วงเวลาในตารางข้างต้นที่ 2s10s ปิดแบบ inverted
ข้อมูลในทิศทางตรงกันข้ามมีความซับซ้อนกว่า เหตุการณ์ในช่วงกลางปี 1998 (มี inverted closes จำนวน 27 ครั้ง) ตามมาด้วยช่วงเศรษฐกิจขยายตัวอีกเกือบสามปีก่อนที่ภาวะถดถอยในปี 2001 จะเริ่มขึ้น ส่วนเหตุการณ์ปี 2022–2024 ซึ่งเป็นเหตุการณ์ที่ยาวที่สุดในตาราง ยังไม่มีการประกาศภาวะถดถอยของสหรัฐฯ จนถึงกลางปี 2026 และระยะเวลาระหว่างการปิดแบบ inverted ครั้งแรกจนถึงการเริ่มภาวะถดถอยนั้นมีความแตกต่างกันมาก เช่น การเกิด inversion ในช่วงกลางทศวรรษ 2000 เริ่มต้นเมื่อวันที่ 2005-12-27 ซึ่งเป็นเวลาประมาณสองปีก่อนเกิดภาวะถดถอยในเดือนธันวาคม 2007
สรุปคือ ในข้อมูลชุดนี้ ภาวะถดถอยของสหรัฐฯ ทุกครั้งในยุคปัจจุบันเกิดขึ้นตามหลังการเกิด inversion แต่ไม่ใช่ทุกการเกิด inversion ที่จะตามมาด้วยภาวะถดถอย ส่วนต่างนี้คือบทสรุปของการกำหนดราคาในตลาดพันธบัตร ไม่ใช่เครื่องนับถอยหลัง
Steepening, flattening, และ un-inversion
อีกสามคำที่จะทำให้คำศัพท์สมบูรณ์คือ:
- Flattening — 2s10s แคบลงเข้าหาศูนย์ ผลตอบแทนระยะสั้นและระยะยาวมีค่าเข้าใกล้กัน
- Steepening — 2s10s กว้างขึ้น ส่วนต่างระหว่างผลตอบแทนระยะยาวและระยะสั้นเพิ่มขึ้น
- Un-inversion — ส่วนต่างที่เป็นลบกลับขึ้นมาเหนือศูนย์
ในข้อมูลชุดนี้ เส้นอัตราผลตอบแทนกลับมาเป็นปกติ (un-inverted) หลังจาก 2024-09-05 และค่าเฉลี่ยรายเดือนมีค่าสูงกว่าศูนย์มาโดยตลอด โดยอยู่ที่ 0.36 เปอร์เซ็นต์ในเดือนเต็มเดือนล่าสุด การเกิด steepening ออกจากสภาวะ inversion สามารถเกิดขึ้นได้สองวิธี คือ ผลตอบแทนระยะสั้นลดลงเร็วกว่าระยะยาว (นักเทรดเรียกว่า bull steepener) หรือผลตอบแทนระยะยาวเพิ่มขึ้นเร็วกว่าระยะสั้น (เรียกว่า bear steepener) ชื่อเรียกเหล่านี้อธิบายถึงฝั่งของธุรกรรมที่เคลื่อนที่ แต่ตัวส่วนต่างเองทำหน้าที่เพียงบันทึกขนาดของช่องว่างเท่านั้น
การเกิด yield curve inversion มีความหมายอย่างไรต่อพอร์ตโฟลิโอ
การเกิด inversion เปลี่ยนการคำนวณระหว่างการถือเงินสดกับการถือพันธบัตรระยะยาว เมื่อผลตอบแทนระยะสั้นสูงกว่าระยะยาว พันธบัตรอายุสั้นและกองทุนตลาดเงินจะให้ผลตอบแทนสูงกว่าพันธบัตรระยะยาวโดยไม่มีความผันผวนของราคาเท่ากัน นี่เป็นการระบุถึงผลตอบแทนที่มีให้ ไม่ใช่คำแนะนำ เนื่องจากพันธบัตรระยะยาวอาจให้ผลตอบแทนดีกว่าได้หากอัตราดอกเบี้ยลดลงจากจุดนั้น และเงินสดจะถูกกำหนดราคาใหม่ให้ต่ำลงเมื่ออัตราดอกเบี้ยระยะสั้นลดลง
สิ่งที่การเกิด inversion ไม่ได้ทำคือการกำหนดทิศทางของหุ้น หุ้นสามารถปรับตัวขึ้นในช่วงที่มี inversion และปรับตัวลงในช่วงอื่นๆ ได้เช่นกัน
FAQ
yield curve แบบปกติควรมีลักษณะอย่างไร?
เป็นแบบลาดขึ้น: พันธบัตรที่มีอายุยาวขึ้นแต่ละช่วงจะมีผลตอบแทนสูงกว่าช่วงก่อนหน้า เส้นอัตราผลตอบแทนปัจจุบันด้านบนเริ่มจาก 3.76% ที่อายุ 1 เดือน ไปจนถึง 5.09% ที่อายุ 30 ปี ซึ่งสอดคล้องกับรูปแบบดังกล่าว
ปัจจุบัน 2s10s spread เป็นบวกหรือเป็นลบ?
ณ 2026-07-16 มีค่าเท่ากับ 41 bps ซึ่งเป็นบวก หมายความว่าอัตราผลตอบแทนอายุ 10 ปีสูงกว่าอายุ 2 ปี และเส้นอัตราผลตอบแทนไม่ได้อยู่ในสภาวะ inverted ณ ราคาปิดนั้น
การเกิด yield curve inversion หมายความว่าภาวะถดถอยกำลังจะมาถึงเสมอไปหรือไม่?
ไม่ ในข้อมูลชุดนี้ ภาวะถดถอยของสหรัฐฯ ทุกครั้งตั้งแต่ปลายทศวรรษ 1970 เกิดขึ้นตามหลังการเกิด inversion แต่ในทางกลับกันนั้นไม่เป็นจริงเสมอไป เช่น เหตุการณ์ในปี 1998 ตามมาด้วยช่วงเศรษฐกิจขยายตัวอีกสามปี และเหตุการณ์ปี 2022–2024 ซึ่งมี inverted closes ลึกถึง 539 ครั้ง ก็ยังไม่มีการประกาศภาวะถดถอยหลังจากนั้นจนถึงกลางปี 2026
ทำไมพันธบัตรอายุ 2 ปี ถึงอาจให้ผลตอบแทนสูงกว่าอายุ 10 ปี?
พันธบัตรอายุ 2 ปี จะเคลื่อนไหวตามอัตราดอกเบี้ยนโยบายของ Fed ในปัจจุบันและสิ่งที่ตลาดคาดการณ์ในอีกสองปีข้างหน้า เมื่อตลาดคาดการณ์ว่าอัตราดอกเบี้ยระยะสั้นจะต่ำลงมากในอนาคต ค่าเฉลี่ยของอัตราดอกเบี้ยระยะสั้นที่คาดการณ์ไว้ในช่วงสิบปีอาจต่ำกว่าอัตราผลตอบแทนอายุ 2 ปีในปัจจุบัน ซึ่งเพียงพอที่จะดึงให้อัตราผลตอบแทนอายุ 10 ปีต่ำลงมา การกำหนดราคาเช่นนี้คือสิ่งที่ค่า 2s10s ที่เป็นลบบันทึกไว้
2s10s ต่างจาก 3-month/10-year spread อย่างไร?
ต่างกันเพียงฝั่งระยะสั้นเท่านั้น เวอร์ชัน 3-month/10-year จะเปลี่ยนจากอายุ 2 ปีเป็นพันธบัตรอายุ 3 เดือน ซึ่งจะเกาะติดกับอัตราดอกเบี้ยนโยบายได้แน่นกว่า และเป็นรูปแบบที่ใช้ในโมเดลคาดการณ์ภาวะถดถอยทางวิชาการบางแห่ง ทั้งสองแบบเป็นส่วนหนึ่งของเส้นอัตราผลตอบแทนเดียวกันที่แสดงไว้ด้านบนสุดของหน้านี้
ตรวจสอบตัวเลขด้วยตนเอง
แผงข้อมูลทุกส่วนด้านบนคือผลลัพธ์จากคำสั่ง query ที่จัดเก็บไว้ ทั้งแผนภูมิ ตาราง และ SQL คือวัตถุเดียวกัน และไม่มีข้อมูลใดที่ถูกพิมพ์ด้วยมือ หากต้องการรันข้อมูลเหล่านี้ใหม่เทียบกับประวัติพันธบัตรรัฐบาลทั้งหมด หรือต้องการเปลี่ยนอายุครบกำหนดเพื่อสร้างส่วนต่างของคุณเอง คุณสามารถคัดลอก SQL ไปวางในเทอร์มินัล Strasmore ได้ทันที