---
title: "9 · กรณีศึกษาที่ทำซ้ำได้"
description: ทำซ้ำ backtest ของคอร์สบน S&P 500, เปรียบเทียบแบบจำลอง VaR 1 วันห้าแบบ และอ่านผล HS VaR backtest ปี 2025–2026
inline_math: true
---

# 9 · กรณีศึกษาที่ทำซ้ำได้

<p class="lead">สามกรณีศึกษาบนข้อมูล S&P 500 แสดงว่าสูตรในบทที่ 2–7 ทำงานอย่างไรกับข้อมูลจริง: แบบจำลองที่ breach บ่อยเกินไป แบบจำลองที่ผ่านความถี่แต่ไม่ผ่านความเป็นอิสระ และกราฟจากเครื่องมือภายนอกที่ใช้ขอบเขตเขตผิด</p>

<p class="source-note">อ้างอิงต้นฉบับ: หน้า 24–26 · <a href="downloads/market-risk-handbook.pdf#page=25">เปิด PDF หน้า 24</a> · ข้อมูลราคาเป็นของ workbook คอร์สต้นทาง และไม่ได้แจกจ่ายในเว็บนี้</p>

## 9.1 ทำซ้ำ backtest ของคอร์ส: S&P 500, 99%/10 วัน, σ จากหน้าต่าง 21 ค่า

<div class="kpi-grid">
<div><strong>1,219</strong><span>การเปรียบเทียบที่ใช้ได้</span></div>
<div><strong>25</strong><span>breach (คาดไว้ 12.2)</span></div>
<div><strong>2.05%</strong><span>อัตรา breach (เทียบ 1%)</span></div>
<div><strong>56%</strong><span>Pr(breach | breach ก่อนหน้า)</span></div>
</div>

<figure class="source-figure"><img src="assets/images/source-figures/figure-06.png" alt="กราฟเส้นปี 2013 ถึง 2018: ผลตอบแทนล่วงหน้า 10 วันจริงสีน้ำเงิน VaR 99%/10 วันสีแดง และกากบาท 25 จุดที่ breach กระจุกในปี 2014 ปลายปี 2014 และสิงหาคม 2015" width="1352" height="536" loading="lazy"><figcaption>ภาพที่ 6 (ต้นฉบับ Figure 6) VaR 99%/10 วัน (แดง) และผลตอบแทนล่วงหน้า 10 วัน (น้ำเงิน) ม.ค. 2013–ม.ค. 2018; × คือ breach</figcaption></figure>

การคำนวณซ้ำโดยอิสระจากราคาปิด 1,250 ค่าใน workbook ของคอร์สตามขั้นตอน §7.2 ได้ผลตรงกับ notebook ของคอร์สทุกตัว: การเปรียบเทียบ 1,219 ครั้ง, breach 25 ครั้ง, 2.05% การตีความ

- อัตรา breach ราวสองเท่าของระดับทางทฤษฎี Normal VaR จากหน้าต่าง 21 ค่าจึงก้าวร้าว
- breach กระจุกตัว (ม.ค. 2014, ก.ย.–ธ.ค. 2014 และ shock ค่าเงินหยวน **สิงหาคม 2015**) ความน่าจะเป็นแบบมีเงื่อนไข 56% สูงกว่า 1% มาก ผสมทั้งการกระจุกตัวของความผันผวนจริงกับผลเชิงกลของหน้าต่าง 10 วันที่ซ้อนกัน
- ก่อนสิงหาคม 2015 σ ต่ำและแบบจำลอง “มองไม่เห็น” shock ที่กำลังมา หลังจากนั้น VaR ลึกลงอย่างรวดเร็วแล้วดีดกลับใน 21 วันต่อมา: ผลของหน้าต่างแบบคลาสสิก

## 9.2 เปรียบเทียบแบบจำลอง VaR 1 วัน (ม.ค. 2014–ม.ค. 2018, T = 999)

| แบบจำลอง | Breach $x$ | $x/T$ | $\mathrm{LR}_{\mathrm{POF}}$ (p) | $\mathrm{LR}_{\mathrm{ind}}$ (p) | 250 วันล่าสุด | เขต | VaR |
|---|--:|--:|--:|--:|--:|---|--:|
| Rolling σ (21), Normal | 23 | 2.30% | 12.51 (0.0004) | 2.57 (0.11) | 5 | เหลือง | −1.62% |
| EWMA 0.94, Normal | 21 | 2.10% | 9.31 (0.002) | 3.17 (0.08) | 4 | เขียว | −1.65% |
| EWMA 0.94 + Cornish–Fisher* | 11 | 1.10% | 0.10 (0.75) | 8.15 (0.004) | 3 | เขียว | −2.31% |
| Historical simulation 250 | 15 | 1.50% | 2.20 (0.14) | 5.63 (0.02) | 3 | เขียว | −2.14% |
| Filtered HS (EWMA 0.94) | 14 | 1.40% | 1.45 (0.23) | 6.17 (0.01) | 3 | เขียว | −2.17% |

\* ตัวคูณ CF ใช้ความเบ้ของตัวอย่างทั้งหมด −0.437 และ excess kurtosis 2.870 (ไม่ได้แปลงกลับเป็น S, K) จึงมี look-ahead bias ใช้เพื่อการอธิบายเท่านั้น ทุกแบบจำลองใช้ข้อมูลถึง $t-1$ สำหรับวัน $t$; ผลตอบแทน 1 วันไม่ซ้อนกัน breach ที่คาดไว้: 9.99

<figure class="source-figure"><img src="assets/images/source-figures/figure-07.png" alt="กราฟ VaR 1 วัน 99% ปี 2014 ถึง 2018 สามเส้น: HS 250 สีส้มเป็นขั้นบันได EWMA 0.94 Normal สีน้ำเงินตอบสนองเร็ว FHS สีเขียวลึกที่สุดราว −6% หลังสิงหาคม 2015 พร้อมแท่งผลตอบแทนรายวันสีเทา" width="1352" height="655" loading="lazy"><figcaption>ภาพที่ 7 (ต้นฉบับ Figure 7) VaR 1 วัน 99% สามแบบ: HS 250 เป็น plateau, EWMA ตอบสนองเร็ว และ FHS ผสานหางเชิงประจักษ์กับความผันผวนปัจจุบัน</figcaption></figure>

**ข้อสรุป**: (1) เมื่อใช้ตัวคูณ Normal breach เกิดราวสองเท่าของอัตราทางทฤษฎีไม่ว่าจะใช้แบบจำลองความผันผวนใด: ปัญหาอยู่ที่ตัวคูณ ไม่ใช่ความผันผวน (2) การเปลี่ยนไปใช้ตัวคูณ CF หรือควอนไทล์เชิงประจักษ์ (HS, FHS) ผ่านการทดสอบความถี่ (3) แต่การทดสอบความเป็นอิสระปฏิเสธ CF, HS และ FHS: เมื่อมี breach เพียง 11–15 ครั้ง คู่ breach ติดกันสองคู่ก็ดัน $\pi_1$ ให้สูง; ในตัวอย่างเล็ก $\mathrm{LR}_{\mathrm{ind}}$ ไม่เสถียรและควรอ่านคู่กับกราฟ (4) HS VaR ค้างบนที่ราบสูงราวหนึ่งปีหลังสิงหาคม 2015 ขณะที่ FHS ผ่อนลงเมื่อตลาดสงบ: แม่นกว่าแต่ procyclical มากกว่า

## 9.3 อ่านผล HS VaR backtest ของ S&P 500 (ม.ค. 2025–ม.ค. 2026)

<figure class="source-figure"><img src="assets/images/source-figures/figure-08.png" alt="สามแผงจากเครื่องมือ backtest: บนเป็นราคา S&amp;P 500 พร้อมจุดแดง 11 วันที่ breach ส่วนใหญ่ช่วงกุมภาพันธ์ถึงเมษายน 2025 กลางเป็นผลตอบแทน 1 วันกับ HS VaR 99% ที่ลึกราว −6% หลังเมษายน ล่างเป็น breach สะสม 11 ครั้งเทียบค่าคาด 2.5 และแถบความเชื่อมั่น 95% กล่องสรุประบุ Green ≤5, Yellow ≤10, Result RED, Kupiec p-val 0.0001" width="1436" height="1126" loading="lazy"><figcaption>ภาพที่ 8 (ต้นฉบับ Figure 8) backtest HS VaR 1 วัน 99%: ราคาและวันที่ breach (บน), ผลตอบแทน 1 วันเทียบ VaR (กลาง), breach สะสมเทียบแถบ binomial 95% (ล่าง)</figcaption></figure>

**ตรวจตัวเลข**: การเปรียบเทียบ 249 ครั้ง, breach 11 ครั้ง (4.42%), คาดไว้ 2.49 คำนวณ Kupiec ใหม่โดยอิสระได้ LR = 15.96, p = 6.5×10⁻⁵ (ค่า 0.0001 ในกราฟเป็นค่าปัดเศษ); $\Pr(X\ge11)=5.2\times10^{-5}$ ผล **แดง** ถูกต้อง

**ขอบเขตของเขต**: กราฟระบุ “Green ≤5, Yellow ≤10” ภายใต้ Basel ควรเป็น **เขียว 0–4, เหลือง 5–9, แดง ≥10** (ข้อผิดพลาด off-by-one ใน §7.3) ผลสรุปในกรณีนี้ไม่เปลี่ยน แต่จำนวน 5 หรือ 10 จะถูกจัดเขตผิด

**สิ่งที่กราฟแสดง**:

- **lookback สั้น**: หลัง shock ภาษีศุลกากรเดือนเมษายน 2025 VaR อยู่ใกล้ −6% ราวเจ็ดสัปดาห์ และกลับมาราว −2% ภายในปลายพฤษภาคม ถ้าเป็น HS แบบน้ำหนักเท่ากัน 250 วัน วันสุดขั้วของเมษายนจะค้างใน VaR ถึงเมษายน 2026 จึงบ่งว่าหน้าต่างยาวราวหนึ่งถึงสองเดือน (ต้องยืนยันกับโค้ด) เมื่อมีข้อมูลเพียง 30–60 ค่า ควอนไทล์ 1% ก็คือ “วันที่แย่ที่สุดล่าสุด” (หรือค่าประมาณระหว่างสองวันที่แย่ที่สุด) ดังนั้น **ทุกวันที่แย่ที่สุดใหม่ย่อมเป็น breach**: นี่คือเหตุผลเชิงโครงสร้างของ breach 11 ครั้ง
- **breach กระจุกตัว**: ห้า breach ในช่วง ก.พ.–มี.ค. อยู่ในราวห้าสัปดาห์ ขณะที่ตลาดเปลี่ยนจากสงบเป็นขาลงและหน้าต่างยังถือข้อมูลความผันผวนต่ำของเดือนมกราคม เป็นความล้มเหลวด้านความเป็นอิสระแบบคลาสสิก; เพิ่มการทดสอบ Christoffersen
- **ที่ราบและขั้นบันได**: ส่วนที่แบนและขั้นบันไดในแผงกลางคือลายเซ็นของ HS

**ข้อเสนอแนะ**: ขยายหน้าต่างเป็น ≥250 วัน (ขั้นต่ำตามกฎเกณฑ์) หรือเปลี่ยนเป็น FHS (revol ด้วย EWMA 0.94–0.97); บันทึกธรรมเนียมการประมาณค่าเปอร์เซ็นไทล์; รายงาน ES 97.5% และ stressed VaR คู่กัน; สำหรับพอร์ตให้ backtest เทียบกับ HPL
