All about Monte Carlo Simulation
- Nuthdanai Wangratham
- 7 พ.ค.
- ยาว 3 นาที
“ทำไมคุณถึงคิดว่าสามารถประเมินมูลค่าที่แท้จริงได้ ในเมื่อมันขึ้นอยู่กับปัจจัยมากมายที่ไม่มีในงบการเงิน?”— Paul Wilmot
“ทำไม Quant ต้องเริ่มเรียนเรื่องการกำหนดราคา Option ก่อน?” คำถามที่ผมถาม Willmott ในคลาส CQF
คำตอบที่ได้กลับคือ “เขาไม่ได้อยากให้คุณเข้าใจ Option Pricing… เขาอยากให้คุณเข้าใจ Random Behaviour of Assets” นี่คือหัวใจของ Quant Finance ทั้งหมด — ความเข้าใจว่าโลกของราคานั้นสุ่ม และเราจำเป็นต้องสร้างแบบจำลองเพื่อเข้าใจมัน ไม่ใช่เพื่อทำนาย และหนึ่งในเครื่องมือทำความเข้าใจนั้นคือ Monte Carlo Simulation

ประวัติหย่อนย่อของ Monte Carlo Simulation
ย้อนกลับไปปี 1900 — ก่อนที่ Black-Scholes จะถือกำเนิด ก่อนที่คำว่า “Quant” จะกลายเป็นอาชีพ Louis Bachelier ได้เขียนวิทยานิพนธ์ที่ชื่อว่า Théorie de la spéculation และเสนอแนวคิดที่ปฏิวัติโลกการเงิน:
“อิทธิพลที่กำหนดความเคลื่อนไหวของตลาดหุ้นมีมากมายนับอนันต์... ไม่ต้องสงสัยเลยว่าทฤษฎีความน่าจะเป็นไม่สามารถอธิบายความเคลื่อนไหวของราคาหุ้นได้ทั้งหมด... แต่ก็เป็นไปได้ที่จะใช้คณิตศาสตร์ศึกษาสภาวะคงที่ และความน่าจะเป็นนี้สามารถประเมินได้ในเชิงคณิตศาสตร์”
เขาเสนอสมการ:
dS = µS dt + σS dX
ซึ่งพูดง่าย ๆ คือ ราคาของสินทรัพย์เปลี่ยนแปลงด้วยสององค์ประกอบ: ค่าคาดหวัง (µ) และการสุ่ม (σ)
การสุ่มนี้มาจากกระบวนการที่เรารู้จักกันในชื่อ Brownian Motion ซึ่งภายหลังกลายเป็นรากฐานของ stochastic calculus ทั้งหมดในโลกการเงิน
Monte Carlo ทำงานอย่างไร
“Monte Carlo Simulation คือวิธีการที่เรายอมรับความโง่เขลา (ignorance) ของเราอย่างสง่างาม แล้วหันไปหาสถิติให้ช่วยนำทาง เพราะในโลกแห่งความไม่แน่นอน การสุ่มที่ดีอาจฉลาดกว่าการคาดเดาที่แย่”
“Monte Carlo Simulation” ฟังดูเหมือนเทคนิคอะไรบางอย่างที่นักพนันในคาสิโนโมนาโกอาจใช้ตัดสินใจแทงรูเล็ต แต่เปล่าเลย… ชื่อนั้นอาจฟังดูหรูหราหรือเสี่ยงโชค แต่ต้นกำเนิดของมันกลับจริงจังกว่ามาก และเกี่ยวพันกับหนึ่งในโปรเจคที่จริงจังที่สุดของมนุษยชาติ: โครงการแมนฮัตตัน — โครงการสร้างระเบิดนิวเคลียร์
ในช่วงสงครามโลกครั้งที่สอง นักวิทยาศาสตร์ในโครงการแมนฮัตตันต้องเผชิญปัญหาที่ไม่มีสูตรลัด: รัศมีของผลกระทบรังสีจากการระเบิด มันเป็นคำถามที่ซับซ้อนเกินกว่าจะหาคำตอบจากสมการ (closed-form solution) ใด ๆ นักวิทยาศาสตร์ชื่อ Stanislaw Ulam และเพื่อนของเขา John von Neumann (ใช่ครับ คนเดียวกับที่มีสมการตั้งชื่อตามเขาในทุกที่) เสนอแนวคิดง่าย ๆ ที่ปฏิวัติโลก: “ลองสุ่มดูสิ”
แนวคิดคือ ถ้าเราสุ่มค่าต่าง ๆ จำนวนมากพอ ผลลัพธ์เฉลี่ยที่ได้จะใกล้เคียงกับความจริง – สถิติและกฎของจำนวนมาก (Law of Large Numbers) จะช่วยให้เราเห็นโครงร่างของความเป็นไปได้ ลองคิดภาพง่าย ๆ: คุณอยากหาพื้นที่ของวงกลมโดยไม่ใช้สูตร πr² จะทำยังไง? ก็แค่สุ่มจุดในสี่เหลี่ยมที่ครอบวงกลมนั้น แล้วดูว่ากี่จุดอยู่ในวงกลม ถ้าทำมากพอ ค่าประมาณของ π จะเผยออกมาเอง มหัศจรรย์ไหมล่ะ? แล้วถ้าเราลองเปลี่ยนจากวงกลมเป็นรูปทรงประหลาด เช่นรูปหัวใจล่ะ? แบบนี้สิ ถึงจะไม่มีสูตรตายตัว การสุ่มจึงกลายเป็นวิธีที่ทรงพลัง
แล้วมันเกี่ยวอะไรกับ Quant Finance?
โมเดลของ Bachelier ใช้การแจกแจงแบบปกติ(normal distribution) กับระดับราคาโดยตรง ซึ่งหมายความว่า ราคาสามารถติดลบได้ — ซึ่งไม่สมเหตุสมผลในโลกแห่งความจริง(แม้ผมจะเคยเห็นราคานำ้มันติดลบมาแล้ว)
ในปี 1964, Paul Samuelson และ Osborne ได้เสนอการปรับโมเดล โดยใช้ลอการิทึมของราคา (log-price) แทน และเราได้โมเดลที่กลายเป็นมาตรฐานในยุคถัดมาที่เรียกว่า Geometric Brownian Motion (GBM) — เพราะมันทำให้ราคาจำลองเคลื่อนที่แบบ exponential และไม่ติดลบ
โมเดลนี้อาจดูเหมือนเป็น academic toy จนกระทั่ง Ed Thorp — นักคณิตศาสตร์ ผู้เชี่ยวชาญด้าน Blackjack และผู้บุกเบิก Hedge Fund — นำมันมาใช้จริงในการเทรด option ไม่สิต้องเรียกว่าหาราคาของ Option ที่ควรจะเป็น
เขาใช้โมเดลสุ่มนี้เพื่อประเมินราคา option ก่อนที่ Black-Scholes จะถูกตีพิมพ์ และสร้างกองทุนที่ ไม่มีใครล้มเขาได้ จนได้รับฉายาว่า “ผู้จัดการกองทุนไร้พ่าย” การที่เราไม่สามารถหาคำตอบจากสมการ(closed-form solution) ได้สำหรับ option บางประเภท ทำให้ Monte Carlo Simulation เข้ามามีบทบาท หลักการคือ:
ถ้าเราไม่รู้ว่าราคาจะเป็นยังไงในอนาคต ก็จำลองมันขึ้นมาซะเลยหลายหมื่นครั้ง แล้วหาค่าเฉลี่ยของผลลัพธ์
แต่การจะ “สุ่มให้ดี” คุณต้องเข้าใจธรรมชาติของ asset returns — และนั่นแหละคือเหตุผลที่ Quant ทั้งหลายต้องเรียน stylized facts, stochastic models, และแนวคิดเบื้องหลัง Brownian Motion อย่างลึกซึ้ง
แล้วในโลกแห่งการเงินและความไม่แน่นอนนี้… เราเอาเครื่องมือสุ่ม ๆ แบบนี้มาใช้ “ทำอะไร” กันแน่?
เราจะพาไปดูตัวอย่างการใช้ Monte Carlo Simulation ในโลกการเงินแบบพอสังเขป แต่เชื่อเถอะ แค่ “พอสังเขป” ก็อาจทำให้คุณอยากหยิบ Excel หรือ Python ขึ้นมาลองสุ่มอะไรสักอย่างแล้ว
วางแผนการลงทุนระยะยาว (โดยเฉพาะเพื่อการเกษียณ)
สมมุติว่าคุณต้องการจัดพอร์ตการลงทุนเพื่อให้มีเงินใช้ไปจนแก่ แต่คุณไม่รู้ว่าเงินจะพอไหม อัตราผลตอบแทนจะดีพอหรือเปล่า จะเกิดวิกฤติอะไรขึ้นกลางทางไหม แล้วจะถอนเงินปีละเท่าไหร่โดยที่พอร์ตไม่พัง?
นี่แหละ คือสนามประลองของ Monte Carlo Simulation
ลองสุ่มอนาคตขึ้นมาหลายหมื่นแบบ — มีทั้งปีที่ตลาดพัง ปีที่ตลาดพุ่ง และปีที่เงินเฟ้อเล่นงานไม่หยุด แล้วลองดูว่าในแต่ละฉากคุณยังมีเงินเหลือไหมตอนอายุ 90 หรือว่าเจ๊งตั้งแต่ปีที่ 15 ของการเกษียณ
ผลลัพธ์? คุณจะได้สิ่งที่เรียกว่า“probability of success” — โอกาสที่พอร์ตจะรอด และยังบอกคุณได้ถึง safe withdrawal rate (ถอนเท่าไหร่ไม่ให้เจ๊ง) และแม้แต่การวาง glide path ที่เหมาะสม (ควรลดหุ้นเพิ่มพันธบัตรตอนไหน)
อีกหนึ่งการใช้งานสำคัญในหมวดนี้คือ Asset Liability Modeling (ALM)โดยเฉพาะในโลกของกองทุนบำเหน็จบำนาญ (pension fund) หรือประกันชีวิต ซึ่งต้องบริหารพอร์ตให้สมดุลกับภาระผูกพันในอนาคต การสุ่มหลาย ๆ scenario เพื่อดูว่าในอนาคตที่หลากหลาย พอร์ตยังสามารถรองรับภาระหนี้สินได้หรือไม่ คือหัวใจของ ALM ซึ่ง Monte Carlo Simulation ตอบโจทย์อย่างยิ่ง
ทำให้การออกแบบชีวิตหลังเกษียณ ด้วยความไม่แน่นอนที่ถูกจัดการอย่างมีระบบ
การบริหารความเสี่ยง
พูดง่าย ๆ คือ Monte Carlo ช่วยให้เรารู้ว่า “แย่ที่สุดที่อาจเกิดขึ้นคืออะไร?” — โดยเฉพาะในกรณีที่ “สูตรทั่วไป” ไม่พอ
อยากรู้ว่า portfolio ของคุณจะร่วงหนักแค่ไหนใน worst-case 5%? อยากเข้าใจว่า correlation ที่เปลี่ยนในยามวิกฤติจะทำให้ผลรวมดูแย่ขนาดไหน? ลืมสูตรปิดไปได้เลย สุ่มมันขึ้นมาหมื่นครั้ง แล้วดู distribution ที่ได้
สิ่งที่คุณได้คือ Value at Risk หรือแม้แต่ Conditional VaR (เจ็บแค่ไหนถ้าเจ็บจริง) — ทั้งหมดสร้างจากการจำลองความน่าจะเป็น
การกำหนดราคา Option
ในโลกของอนุพันธ์ เราเคยฝันว่า Black-Scholes จะตอบทุกอย่างได้… แต่ความจริงมันซับซ้อนกว่านั้นเยอะ ไม่ว่าจะเป็น path-dependent options, exotic derivatives หรือ market regime ที่ไม่ได้ “เป็น Gaussian”
Monte Carlo Simulation เข้ามาเติมเต็มช่องว่างเหล่านี้ โดยเฉพาะเมื่อ option ที่เราต้องการประเมินมี payoff ที่ขึ้นอยู่กับ “เส้นทาง” ของราคา (เช่น Asian option, Barrier option, Lookback option ฯลฯ) ซึ่ง Black-Scholes ไม่สามารถจัดการได้ตรง ๆ
หลักการของ Monte Carlo สำหรับการกำหนดราคา option คือการจำลอง “เส้นทางของราคา” (price paths) จำนวนมากในอนาคต ตามสมมติฐานที่กำหนดไว้ เช่น drift, volatility, risk-free rate หรือแม้แต่ jump-diffusion หรือ stochastic volatility หากโมเดลรองรับ เมื่อได้เส้นทางของราคามาแล้ว ก็จะคำนวณ payoff ของ option สำหรับแต่ละเส้นทาง แล้วถอยกลับมาหามูลค่าปัจจุบันโดยการ discount กลับมา (มักใช้ risk-neutral measure) มูลค่าของ option จึงได้จากการเฉลี่ยของ payoff ทั้งหมดที่จำลองขึ้น — ซึ่งยิ่งจำนวน simulation มากเท่าไร ความแม่นยำก็ยิ่งสูงขึ้น (ตามกฎของจำนวนมาก) ข้อดีของ Monte Carlo คือความยืดหยุ่นสูง สามารถประยุกต์ใช้กับ option ทุกประเภท แม้กระทั่งในภาวะตลาดที่ไม่เป็นเชิงเส้น และยังสามารถนำไปใช้กับ portfolio ของ options หลายตัวที่มีความซับซ้อนได้ด้วย แม้กระทั้งการทดสอบกลยุทธ์การลงทุนที่หาค่าคาดหวัง ของ DCA กับลงทุนก้อนเดียว หรือ Grid trading ก็สามารถทำได้ ที่จริงแล้วการใช้ Montecalo Sumulation ในทางการเงินยังมีมากมายอีกมาก(แต่ไม่ใช่เอาไปหาแนวรับแนวต้านแน่)
Stylized Facts of Asset Returns: เข้าใจไว้เพื่อสุ่มแล้วไม่แตก
เวลาที่เราทำ Monte Carlo Simulation เพื่อจำลองราคาทรัพย์สินในอนาคต คำถามที่มักถูกมองข้ามคือ…
"แล้วเราควรสุ่มอย่างไรให้มันดู 'เหมือนโลกจริง'?”
เพราะต่อให้คุณสุ่มมา 1 ล้านเส้นทางด้วยสูตรสมการสวยหรู แต่ถ้ามันไม่สะท้อนพฤติกรรมจริงของตลาด ก็อาจไม่มีประโยชน์อะไรเลยนอกจากกิน CPU เปล่า ๆ
ในโลกการเงินไม่มีความจริงมีแต่รูปแบบที่เราพบซำ้ๆ สิ่งนี้ Quant เรียกว่า Stylized Facts คือชุดข้อเท็จจริงเชิงประจักษ์ (empirical regularities) ที่เราพบเห็นในข้อมูลราคาทรัพย์สินทั่วโลกและในช่วงเวลาต่าง ๆ แม้สินทรัพย์จะต่างกัน ตลาดจะไม่เหมือนกัน แต่ลักษณะเหล่านี้...ดันโผล่มาเหมือนกันราวกับเป็น ลายเซ็นของตลาดการเงิน
ลองไปดูกันว่า “ข้อเท็จจริงเชิงสไตล์” มีอะไรบ้าง และทำไมคุณควรรู้ก่อนจะเริ่ม “สุ่ม” อะไรสักอย่าง
Fat Tails — ความผันผวนที่ไม่ธรรมดา
แจกแจงผลตอบแทนของสินทรัพย์มักมี “หางหนา” (fat tails) มากกว่าการแจกแจงแบบปกติ (normal distribution) หมายความว่า เหตุการณ์สุดโต่ง เช่น crash หรือ boom เกิดบ่อยกว่าที่ Gaussian คาดไว้มาก สุ่มแบบ normal อย่างเดียว = โลกที่วิกฤตไม่เคยเกิด**
“ถ้า model ของคุณไม่สามารถจำลองโอกาสที่ตลาดจะร่วง 10% ในวันเดียวได้เลย… คุณอาจไม่ได้ทำ model แต่กำลังเขียนนิยายวิทยาศาสตร์อยู่”
Volatility Clustering — ความผันผวนมาเป็นชุด
ตลาดมีพฤติกรรมแบบ “ช่วงเงียบแล้วช่วงคลั่ง” สลับกัน — ถ้ามีความผันผวนสูงในวันนี้ โอกาสที่จะยังผันผวนสูงในวันถัดไปก็สูงเช่นกัน งานของ Mandelbrot และ Engle ทำให้เราเข้าใจว่าความผันผวนไม่ใช่ค่าคงที่ แต่มีโครงสร้างในตัวเอง มีความต่อเนื่องและ autocorrelation สูง — โดยเฉพาะใน absolute และ squared returns
Leverage Effect — ความผันผวนกับทิศทางราคาไม่ใช่เพื่อนกัน
เมื่อราคาหุ้นตก ความผันผวนมักพุ่ง — แต่พอราคาขึ้น กลับไม่ค่อยมีอะไรเกิดขึ้นกับ volatility เท่าไหร่
นี่คือ “asymmetry” ที่สำคัญ ถ้าคุณ ignore ไป การวัด risk จะ underestimate ไปทันที
Non-zero skewness — ความเบ้ของผลตอบแทน
ผลตอบแทนของสินทรัพย์มักไม่ symmetric — บางครั้งเบ้ซ้าย บางครั้งเบ้ขวา ขึ้นอยู่กับธรรมชาติของสินทรัพย์นั้น ๆ ถ้าคุณใช้แค่ mean กับ standard deviation แล้วคิดว่าเพียงพอ... คุณอาจพลาดความจริงที่สำคัญมาก
จาก lecture note ของ Stephen Taylor: distribution ของ daily returns มักจะมี high peak และ fat tails มากกว่า normal มาก โดย sample kurtosis สูงกว่า 6 (เทียบกับค่า 3 ของ normal distribution)
Short-term returns ≠ i.i.d
ผลตอบแทนรายวันไม่ได้เป็น independent and identically distributed อย่างที่ textbook สอนเสมอไป มีทั้ง autocorrelation, momentum, และ pattern ลึก ๆ ที่พอร์ตของคุณอาจสะดุดได้ถ้าไม่รู้
Comments