เปรียบเทียบการคิดต้นทุนแบบ First-in , First-out (FIFO) กับแบบ Weighted Average (WAVG)

5 July 2022 – ตั้งแต่ FIN version 4.0 เป็นต้นไป ผู้ใช้ FIN สามารถเลือกกำหนด การคิดต้นทุนของแต่ละ กองทุนที่บันทึกเข้าไปใน portfolio ได้ด้วยตนเองนะครับ (ค่า default ปกติคือ FIFO แต่สามารถปรับเปลี่ยนได้ด้วยตนเองตลอดเวลา) เนื้อหาในบทความนี้ จะทำให้เห็นภาพแบบลงตัวอย่างจริง ของการคิดต้นทุนแบบ First-in, First-out (เรียกชื่อย่อว่า FIFO) กับแบบ Weigthed Average (เรียกชื่อย่อว่า WAVG) นะครับ

ก่อนจะลงรายละเอียดตัวอย่างคำนวณจริง จะขอสรุปเนื้อหาแบบสั้นกระชับก่อนเลยฮะ ดังนี้

  • การคิดทั้ง 2 วิธีนั้น เป็นวิธีการคิดต้นทุนทางบัญชีตามปกติ ไม่มีวิธีไหน ถูกหรือผิดแต่อย่างไร เป็นแค่วิธีการคิดต้นทุนเท่านั้นครับ เป็นแนวคิดคำนวณที่ใช้ได้กับทรัพย์สินหลายรูปแบบ กองทุนรวมก็เป็นหนึ่งในนั้น

  • สไตล์การคิด จะอยู่ที่ตอนการ Sell Transaction ครับ โดยปกติเมื่อทำการขายใดๆ จะทำให้เกิดการคำนวณ Realized Profit/Loss เกิดขึ้น โดยการเทียบว่า ด้วยราคาที่ขายปัจจุบัน เมื่อเทียบกับต้นทุน นั้นกำไร หรือขาดทุน ทีนี้ ต้นทุนจะอยู่ที่จุดใดนั้น จะขึ้นอยู่กับว่า ใช้วิธีไหนคิด ถ้า FIFO ก็จะเทียบต้นทุนกับ Lot เก่าสุดที่ยังเหลือให้ขาย ถ้าเป็น WAVG ก็จะเทียบกับต้นทุนเฉลี่ยกลาง

  • FIN version 4.0 เป็นต้นไป ที่จะเปิดให้ update/download ได้บน App Store นั้น ตั้งแต่วันที่ 6 July 2022 เป็นต้นไป ผู้ใช้สามารถเลือกกำหนดได้ครับ ว่า กองทุนไหน ให้คิดต้นทุนวิธีไหน ตามที่ต้องการ กด Download หรือ Update ได้ที่ https://apple.co/2HSKplH

เริ่มต้นด้วยการบันทึก Buy Transaction ของกองทุนสักหนึ่งกองก่อนเลยนะครับ กรณีนี้ขอเลือก K-USXNDQ-A(A) โดยบันทึก Buy Transaction จำนวน 2 รอบ (หรือจะเรียกว่า 2 Lots ก็ได้) ตามรูปด้านล่างนี้

การบันทึกเฉพาะ Buy transactions นั้น การคิดต้นทุน ทั้ง 2 วิธี จะได้ค่าเดียวกันเสมอ นั่นคือ 20.8796 แต่ถ้าเริ่มมี Sell Transaction นั่นจะทำให้ การคิดต้นทุนทั้ง 2 วิธีจะเริ่มได้คนละค่าต้นทุนครับ เดี๋ยวค่อยชี้ให้เห็นตัวอย่าง การคิดต้นทุน ณ ภาพนี้ คือ คิดวิธีการเดียวกันเลยครับ คือ ยอดเงินทั้งหมด 10,000 + 20,000 หารด้วย จำนวนหน่วยทั้งหมด 1,436.8068 หน่วย ออกมาต้นทุนที่ 20.8796 บาทต่อหน่วยลงทุน ตรงไปตรงมา นะครับ ทั้ง WAVG, FIFO จะได้ค่าเดียวกันเสมอครับ

ใน FIN version 4.0 เราสามารถเลือกดู Transaction ที่บันทึกได้ 3 แบบ คือ แบบปกติ ตามรูปด้านบนจะขึ้นทุก transaction ที่บันทึกเข้าไป และ ยังสามารถเลือกดูแบบ Group by Lot หรือ by Year ได้ ซึ่งจริงๆ ก็ทำได้มานานแล้ว แต่ FIN version 4.0 นั้น จะเห็นรายละเอียดมากขึ้น ตามรูปด้านล่างนี้

คือจะเห็น Lot 1 และ Lot 2 พร้อมกับ แท่งสีเขียว เพื่อให้เห็น ปริมาณหน่วยที่เหลืออยู่ใน Lot นั้นๆ นั่นเอง ทีนี้เริ่มบันทึก Sell Transaction ครับ ของวันที่ 6 July 2021 จำนวน 8,000.00 บาท ตามภาพด้านล่าง

สิ่งที่เกิดขึ้นคือ ราคาต้นทุนเฉลี่ยของ FIFO กับ WAVG จะเริ่มแตกต่างกันแล้วครับ ตามภาพด้านบน จะเห็นว่า Avg Cost แบบ FIFO มีการเปลี่ยนค่า เป็น 20.8700 จากเดิมที่ 20.8796 ส่วนของการคิดแบบ WAVG จะเป็นไปตามรูปด้านล่าง คือได้ค่า 20.8796 เท่าเดิม นี่คือ จุดแตกต่างนั่นเอง ว่าทุกๆ Sell Transaction ที่คิดแบบ FIFO จะทำให้ Avg Cost ต่อหน่วยของกองทุนนั้นๆ มีค่าเปลี่ยนแปลงไป นั่นเป็นเพราะ FIFO ตามชื่อเลยครับ First-in, First-out เวลาขาย จะขาย Lot เก่าสุดออกไปก่อน (เป็นแนวคิดเดียวกับ ที่ใช้คิดต้นทุนในกองทุน LTF สมัยก่อน) เมื่อ Lot เก่าขายออกไปหมดแล้ว ต้นทุนเฉลี่ยก็จะขยับไปเรื่อยๆ ตาม Lot ที่ยังเหลืออยู่

มาดูรูปแบบการแสดงผลแบบ By Lot กันบ้างของการคิดแบบ WAVG ตามภาพด้านล่างนี้ จะพบว่า แท่งสีเขียว มีการหายไปบางส่วน แต่จะเกิดขึ้นกับทุกๆ Lot ในปริมาณสัดส่วนที่เท่าๆ กัน อันนี้คือ การขายแบบ WAVG ครับ คือการขายนั้น จะขายเทียบกับทุก Lot นั่นเอง (เทียบ Current Value ลบกับ ค่าต้นทุนเฉลี่ยกลางของ ทุก Lot) ทำให้เวลาขาย นั้น ต้นทุนเฉลี่ย ยังคงเป็นค่าคงที่ ตราบใดที่ไม่ได้มี Buy Transaction Lot ใหม่เข้ามาเฉลี่ยเพิ่มเติม

ถ้าเป็นการขายแบบ FIFO จะได้ แท่งเขียวตามรูปด้านล่างนี้ ซึ่งจะเห็นว่า การขายออกที่ 8,000.00 บาท หรือคิดเป็นจำนวนหน่วยลงทุนที่ 288.6356 หน่วยนั้น จะขายออกจาก Lot 1 ก่อน จากเดิม Lot 1 มีจำนวนหน่วยอยู่ที่ 478.0571 หน่วย เมื่อโดนขายออกไป 288.6356 หน่วยจะเหลือหน่วยที่ยังขายต่อได้ที่ 189.4215 หน่วย ถ้าคิดต้นทุนเฉลี่ย ณ จุดเวลานี้ จะคิดได้จาก เอา Remaining Cost ที่เหลืออยู่ของทั้ง 2 Lots นั่นคือ 3,962.32 + 20,000.00 แล้วหารด้วยจำนวนหน่วยที่เหลืออยู่ทั้งหมด คือ 1,148.1712 หน่วย ได้ออกมาที่ 20.8700 นั่นเอง

ก็จะเห็นได้ว่า FIN version 4.0 นั้น สามารถช่วยอธิบายเรื่อง FIFO, WAVG แบบเห็นภาพได้ชัดเจน ด้วย แท่งสีเขียวนี้ครับ ว่าขายที่ Lot ไหนบ้าง น่าจะเป็น app ที่ช่วยทำให้เห็นภาพเรื่องนี้ได้ชัดเจนสุด และ อิงข้อมูลจริงที่บันทึก อธิบายทุกอย่างได้เป๊ะสุดแล้วครับ 🙂

ตัวอย่างต่อไป หากเราต้องการขายต่อโดยบันทึกขายต่ออีก 12,000.00 บาท จำนวนหน่วยที่ 407.5893 แบบตามรูปด้านล่างนี้ หากเป็น FIFO เราจะเห็นว่าค่าเฉลี่ยต้นทุนต่อหน่วย ขยับไปที่ 20.8605 แล้วครับ ซึ่งถ้าดูดีๆ คือ คือราคาต้นทุนของ Buy Lot 2 นั่นเอง กรณีนี้ Lot ที่ 1 ขายหมดเกลี้ยงไปแล้ว

รูปถัดไปด้านล่างนี้ แสดงผลแบบ By Lot ของ FIFO จะเห็นว่า Lot 1 กลายเป็นสีเทา ขายหมดไปเรียบร้อย ดังนั้นต้นทุนเฉลี่ยของ FIFO ที่จะใช้คือ ใช้ของ Lot ที่เหลืออยู่ ในกรณีนี้คือ Lot 2 ซึ่งต้นทุนอยู่ที่ 20.8605 ค่าเฉลี่ยต้นทุนก็จะเป็นค่าเดียวกัน

มาลองดูแบบ WAVG บ้าง ตามรูปด้านล่างนี้ครับ ต้นทุนเฉลี่ย Avg Cost ก็ยังคงเป็นค่าเดิมคือ 20.8796 และหากดู Group by Lot แท่งสีเขียวนั้น ถึงแม้ว่าเราจะทำ Sell Transaction ไป 2 รอบแล้ว การขาย ก็คือ ขายเทียบกับทุก Lot เหมือนเดิม จะไม่มี Lot ใด Lot หนึ่งขายหมดก่อน เหมือนแบบ FIFO ทุก Lot จะขายไปพร้อมๆ กัน เฉือนออกในสัดส่วนที่พอๆ กัน นั่นเอง วิธีคิดต้นทุนเฉลี่ยยังคงเหมือนเดิมคือ เอา Remaining Cost ของทุก Lot มารวมกัน และ หารด้วยจำนวนหน่วย ดังนี้ (5,154.36 + 10,308.72) / 740.5819 = 20.8796

อ่านถึงจุดนี้ คงจะเห็นภาพอย่างชัดเจนของความแตกต่างระหว่าง การคิดต้นทุนทั้ง 2 วิธีนะครับ และ FIN version 4.0 ก็สามารถช่วยอธิบายให้เห็นภาพเรื่องนี้ได้อย่างชัดเจนภายใน app ตามที่อธิบายไปทั้งหมด นอกเหนือจากค่าต้นทุนเฉลี่ยที่จะคิดต่างกันแล้ว ค่า Realized Profit/Loss ก็จะออกมาแตกต่างกันเช่นกันนะครับ เพราะว่า การเทียบต้นทุนกับ Lot เก่านั้น ทั้ง 2 วิธีจะใช้คนละจุดเทียบกันนั่นเอง

หากต้องการอ่านข้อมูลเพิ่มเติมเกี่ยวกับ FIFO นั้น สามารถดูได้จากบทความเก่าในอดีต ที่ผมเคยเขียนไว้ มาประกอบเพิ่มเติมได้ครับ กดอ่านได้ที่นี่

FIN version 4.0 เป็นต้นไป ที่จะเปิดให้ update/download ได้บน App Store นั้น ตั้งแต่วันที่ 6 July 2022 เป็นต้นไป กดได้ที่ Link นี้ https://apple.co/2HSKplH โดยจะรองรับ iOS 15, iPadOS 15 และ macOS ที่ใช้ Apple Silicon Chip M1, M2 ขึ้นไปนะครับ

หากมีคำถาม ความคิดเห็นใดๆ สามารถเขียนเข้ามาในหน้า Feedback ใน FIN App ได้เลยนะครับ ขอบคุณครับผม :]

วิธีคำนวณผลตอบแทนแบบ Time-Weighted Rate of Return (TWR)

4 July 2022 — เกริ่นนำก่อนนะฮะ FIN พัฒนามาตลอดกว่าหลายปี ก็มีการเพิ่ม feature อะไรต่างๆ พอสมควร และ ล่าสุด ก็เพิ่ม วิธีการคำนวณผลตอบแทน ที่เป็น Industry standard ในแวดวง Finance เข้ามานะครับ คือการคิดผลตอบแทนแบบ TWR (Time-weighted rate of return) ซึ่งปัจจุบัน ค่อนข้างนิยมมากๆ ครับ ในกลุ่ม กองทุนรวมนะฮะ ดังนั้นตั้งแต่ FIN version 4.0 เป็นต้นไป (July 2022) FIN จะมีวิธีการคิดผลตอบแทน Total Return แบบทางเลือกด้วยวิธี TWR ซึ่งในบทความนี้จะอธิบายวิธีการคิดผลตอบแทนแบบนี้โดยมีตัวอย่างให้ดูนะครับ

หรืออาจจะ search Google ด้วย keyword “คิดผลตอบแทน twr” ก็จะเห็นบทความอธิบายเรื่องนี้ อยู่พอสมควรครับ

ซึ่ง TWR เป็น ทางเลือกนึงๆ ในการคิดคำนวณภายใน FIN นะครับ (ซึ่งเป็นทางเลือกที่ นิยมกันมากในโลก Finance) แต่ว่า หาก user รู้สึกว่า ยังไม่เคลียร์หรือกระจ่างชัดจริงๆ หรือไม่ชอบดูตัวเลข TWR นี้ ภายใน FIN จะสามารถให้ user กำหนด ปิดหรือเปิด การแสดงผล ค่า TWR ในหน้า Portfolio ได้ครับ โดยการกดที่ ปุ่ม Manage ที่หน้า Portfolio แล้ว เมื่อเข้าไปแล้ว ก็ scroll ลงมาล่างสุด จะเห็น “ปิดการแสดงผล % TWR ในแต่ละ Asset” ให้ปิด switch ไม่ให้เป็นสีเขียว ก็จบครับ 🙂 FIN จะพยายามรองรับทุกทางเลือก

FIN version เก่า  การคิด %Total Return นั้น จะใช้วิธี แบบ Simple ครับ ซึ่งใช้วิธีคิดแบบง่าย เพื่อให้เข้าใจง่าย แต่ว่าก็เป็นวิธีที่ ไม่ได้คำนึงถึง การเปลี่ยนแปลงของ cost (พวก buy/sell transaction ที่บันทึกเข้าไป) ในช่วงเวลาต่างๆ ในอดีต การคิดจะง่ายและตรงไปตรงมา (แต่ไม่ได้สะท้อน performance ที่แท้จริงของ การลงทุนนั้นๆ)  แต่ใช้งานได้ล่ะครับ เพราะหลายๆ App ก็จะยังใช้วิธีแบบ Simple Total Return แต่ เมื่อมีทางเลือกอื่นอย่าง TWR ซึ่งจัดเป็น วิธีที่นิยมกันมากพอสมควร ก็เลยสร้างมาใน FIN version 4.0 ด้วยครับ

ที่ว่าการคิดง่ายและตรงไปตรงมา คือ   เอาค่า Unrealized PL ปัจจุบัน + Dividend (ถ้ามี และถ้าต้องการนำมารวม) + Realized PL (ถ้ามี และถ้าต้องการนำมารวม) มา sum กันทั้งหมด (เป็นการ Sum ข้ามเวลาจากจุดในอดีตมาถึงปัจจุบัน)   แล้วก้อนนี้ จะหารด้วย   current active cost ทั้งหมด (cost จากอดีต “ที่เหลืออยู่” รวมๆ กันมาจนถึงจุดปัจจุบัน) ในครั้งเดียว   หารกันออกมา ได้ค่า % อันนึง จบ ซึ่ง กรณีที่กองนั้นๆ เรามี transaction ซื้อ/ขาย จำนวนมาก cost ในอดีตมันก็จะหายไปจาก current active cost ด้วยครับ ทำให้การคิด %Return ตรงนี้ พร่องหายไปครับ

ด้วยความที่วิธีนี้ factor หลายอย่างมันพร่องหายไป เพราะ % ที่ได้ นั้น คือ  มันไม่แฟร์ ต่อ  Transaction เก่าๆ ในอดีตฮะ  ถ้า transaction เก่าๆ ในอดีต ทำ % Return ไว้ดีมาก (หรือในทางตรงกันข้าม)  จะถูกกลืนหมดด้วยสูตรการคิดแบบด้านบนครับ

ก่อนจะเข้ายกตัวอย่าง ถึงจุดนี้ ให้ แยกความเข้าใจ ระหว่าง % Return กับ ปริมาณเงิน นะครับ สูตรของ TWR จะเน้นๆ ที่ % Return (ไม่ได้สนใจ ที่ปริมาณเงิน สนใจที่ค่าสัดส่วน) นั่นหมายความว่า ปกติ % Return นั้น จะคิดจากการนำ ตัวเลขปริมาณเงิน A หารด้วย ตัวเลขปริมาณเงิน B เป็นค่าสัดส่วนออกมา จะเห็นว่า การหารกันตรงนี้ ปริมาณเงิน มันจะไม่อยู่ในสมการให้เห็นแล้วนะครับ เป็น % ทั้งหมด (เป็นค่า สัดส่วน)

ยกตัวอย่างนะครับ สมมติ ลงทุนกองทุนนึง เริ่มที่ 1 ล้านบาทถ้วน (Lot 1) ลงทุนวันที่ 1 July 2021

ผ่านไป 6 เดือน (วันที่ 1 Jan 2022) Current Value ของกองนี้อยู่ที่ 1.5 ล้านบาท (%Return ณ จุดเวลานี้คือ 50%)
ซึ่ง ณ จุดนี้ มีการลงทุนเพิ่มอีก 1 ล้านบาทด้วย (Lot 2) ในวันนั้น รวม Current Value จุดนี้คือ 2.5 ล้านบาท

ผ่านไปอีก 6 เดือน ณ วันที่ 1 July 2022 Current Value อยู่ที่ 2.0 ล้านบาท ok หยุดที่จุดเวลานี้ แล้วคิด Return ตามวิธีด้านล่าง

ถ้าคิดด้วยวิธีแบบง่ายคือ เอา Unrealized Profit คือ 0.0 บาท หารด้วย Total Active Cost คือ 2.0 ล้านบาท (เราลงทุน 1 ล้านบาท 2 ครั้ง) % Total Return คือ 0% นะครับ
ซึ่งถามว่า ใช่หรือเปล่า ?

เงินของ Lot 1 ที่เราใส่ไป 1 ล้านบาท เมื่อ 1 ปีที่แล้ว Return ไม่มีเลย? ค่าออกมา 0% ไม่น่าใช่นะครับ Lot นี้ยังไงก็มี %Return ค่าเป็น +  แต่จะโดนกลบด้วยสูตรการคิดแบบด้านบนฮะ 

ถ้าคิดด้วย วิธีของ TWR จากตัวอย่างนี้ คือ Total Return ที่ 20.0% ครับ ดูจาก Online Calculator อันนี้ได้ฮะ
Screenshot: https://bit.ly/twr-online-calculator
Online Calculator: https://www.rateofreturnexpert.com/time-weighted-return-calculator/

ถ้าแสดงวิธีคิดตามสูตร คือ มี 2 sub-period
Period 1:  ช่วงเวลา 1 ล้าน ไปเป็น 1.5 ล้าน   อันนี้ Return คือ  1.5     ( 0.5 / 1.0 ) + 1
Period 2: ช่วงเวลา 2.5 ล้าน เหลือ 2 ล้าน    อันนี้ Return คือ  0.8    ( -0.5 / 2.5 )  + 1 
เมื่อนำเข้าสูตร TWR จะได้ ( 1.5 x 0.8 ) – 1  = 0.2  ( 20% นั่นเองครับ )

อันนี้จะสะท้อน performance ที่แท้จริงออกมาครับ ในมุมของ % Return ที่แท้จริงนะครับ (ต้องแยกให้ออก ระหว่าง % Return กับ ปริมาณเงิน ว่าเป็นคนละแบบ)
คือถ้าดูจริงๆ ให้มองว่า Return ของ ช่วงเวลาแรก นั้นคือ 1.5 จากนั้น ถูกลดทอนลงที่ 0.8 (ของฐาน 1.5) มันเลยออกมาเป็นแนวการคูณกันเพื่อลดทอน %Return ลงไปในสัดส่วน 0.8 (ในเคสนี้นะครับ) มันเลยเหลือที่ 1.2 (หรือ 20% นั่นเอง %Return ที่แท้จริง)

OK มาเริ่มลงรายละเอียดของสูตรวิธีการคิดของ TWR ณ ​จุดนี้

ใจความหลักของเนื้อหานี้ จะอ้างอิงจากบทความที่ Investorpedia – https://www.investopedia.com/terms/t/time-weightedror.asp แต่จะแทนตัวอย่างด้วย กองทุนภายในประเทศไทย เพื่อเป็นตัวอย่างการคำนวณแบบ TWR

วิธีคิดแบบ TWR นั้นค่อนข้างดีในเชิงการคิด Performance ของการลงทุนจริงๆ เพราะ เป็นการคิดผลตอบแทนแบบทบต้น และ ไม่ได้มีการอิงตัวแปรพวก money inflows เงินเข้า หรือ money outflows เงินออก ที่จะส่งผลกระทบต่อค่า Total Return การคำนวณจะเป็นการคำนวณด้วยช่วงเวลาต่างๆ และ ผลตอบแทนเป็นลักษณะการ คูณกันของผลตอบแทนในแต่ละช่วง จากจุดเริ่มต้นยาวไปจนถึงจุดปัจจุบัน สูตรจะเป็นไปในลักษณะของ geometric mean คูณต่อเนื่อง (ดูรายละเอียดเพิ่มเติมได้ที่ https://www.investopedia.com/terms/g/geometricmean.asp) แต่สูตรของ TWR จะเป็นไปตามลักษณะดังนี้ (จะไม่ได้เหมือนกับ geometric mean แบบเป๊ะๆ ที่จะมี การถอด root n)

สูตรการคิด TWR: Time-Weighted Rate of Return

หากพิจารณาจากตัวแปรต่างๆ ในสูตรนี้ จะพบว่าสูตรจะสนใจแค่ค่า Return (หรือในสูตรคือค่า HP มาจากการคิดแบบ ปลาย-ต้น หารทั้งหมดด้วยต้น ผลที่ได้ออกมาคือค่า Return ประเภทนึง) ในแต่ละช่วงเวลา และ จำนวนของช่วงเวลา เท่านั้น จะไม่ได้สนใจเรื่องปริมาณของเงินลงทุน (ว่ามีการนำเงินเข้ามาเพิ่ม หรือนำเงินออกไป มากน้อยขนาดไหน) การคิดคำนวณก็จะเป็นไปตามสูตรนี้ ซึ่งมีการคูณกันต่อเนื่องในแต่ละช่วงเวลา ดังนั้นแล้ว คำนวณด้วย มือแบบ manual ก็ถ้าข้อมูลไม่เยอะมาก อาจจะทำได้ครับ แต่ถ้าเยอะมาก ใช้ FIN คำนวณ น่าจะดีกว่า เพราะ ออกแบบการคิดเรื่องนี้มาโดยเฉพาะ และคิดอย่างละเอียด ดูรายละเอียดเพิ่มเติมได้ท้ายๆ บทความ

ยกตัวอย่างการคิด TWR ของจริงกับกองทุนรวม สักหนึ่งกองนะครับ เพื่อความง่ายในการคิด จะขอกองที่ไม่ได้มีค่าธรรมเนียมในการซื้อหรือขาย เพื่อที่จะได้ง่ายต่อการคิดตรงๆ ดังนี้นะครับ สมมติ transaction ต่างๆ ดังนี้

  • วันที่ 4 August 2020 ผมเริ่มเข้าซื้อของกอง B-INNOTECHRMF จำนวนเงิน 1,000,000.00 บาท (1 ล้าน ได้ที่ราคา 14.6287 บาทต่อหน่วย และ จำนวนหน่วยทั้งสิ้น 68,358.7741 หน่วย)

  • หนึ่งปีต่อมา วันที่ 4 August 2021 NAV ของ B-INNOTECHRMF อยู่ที่ 21.2353 นั่นแปลว่า มูลค่า Current Market Value ของกองทุนนี้ที่ผมถืออยู่คือ 21.2353 * 68,358.7741 = 1,451,619.07564573 (1.45 ล้าน)
  • คำนวณ Sub Period ที่ 1 ในกรณีนี้ดังนี้นะครับ (1,451,619.07564573 – 1,000,000.00) / 1,000,000.00 = 0.451619 (หรือ 45.1619%)

  • และในวันนั้นเอง (4 August 2021) ผมซื้อเพิ่มอีก 1,000,000 บาท (ได้ที่ราคา 21.2354 บาทต่อหน่วย จำนวนหน่วย: 47,091.1779 หน่วย) มูลค่า Current Market Value ของวันที่ 4 August 2021 คือ 2,451,614.3657056 (2.45 ล้าน) มาจาก จำนวนหน่วย 115,449.952 คูณด้วย NAV 21.2353

  • จุดปัจจุบัน (อิงจากบทความนี้) B-INNOTECHRMF ค่า NAV วันล่าสุดคือวันที่ 29 June 2022 นั้นค่า NAV คือ 17.7870 Current Market Value คือ 2,053,508.296224

  • คำนวณ Sub Period ที่ 2 ดังนี้นะครับ 2,053,508.296224 – (1,451,619.07564573 + 1,000,000.00) / (1,451,619.07564573 + 1,000,000.00) = -0.162386882765167 (หรือ -16.2386882765167%)

  • จากนั้นคำนวณ TWR ของ Sub Period 2 ช่วงเวลา จนถึงจุดปัจจุบัน 29 June 2022 ได้ดังนี้ ((1+0.451619) * (1-0.162386882765167)) – 1 = 0.215895 (หรือ 21.5895%)

  • ค่า TWR ของกองทุนนี้ ตามรายละเอียดด้านบน คือ +21.5895% ถ้าปัดเศษก็คือ +21.59% ถ้าดูจากหน้าจอของ FIN ของกองทุนนี้ตามรายการที่บันทึกไปด้านบน ก็จะได้เป๊ะ ตามรูปนี้ครับ

ทีนี้มาวิเคราะห์กันต่อ แบบง่ายๆ ไม่ต้อง TWR ให้วุ่นวายหรือซับซ้อน ดูกันที่ NAV ของกองทุนนี้ครับ

NAV ของจุดเริ่มต้นคือ 14.6286 (4 Aug 2020) NAV ของจุดปัจจุบันคือ 17.7870 (29 June 2022) กองนี้ไม่ได้มีปันผล ดังนั้นคิดส่วนต่างกันตามปกติ จะได้ที่ (17.7870 – 14.6286) / 14.6286 = 21.59% เช่นกัน นั่นยืนยันการคิดสูตรของ TWR นั้น ไม่ได้สนใจ ขนาดเงินเข้าหรือออกในการคำนวณ ทุกอย่างอิง Return ในแต่ละ Sub Period และนำมาคูณกันตามสูตร ซึ่งก็จะมี Total Return ที่สอดคล้องตามกองทุนนี้จริงๆ ถ้าดูจาก การเปลี่ยนแปลงของ NAV ของกองทุน

ทั้งหมดนี้คือ การคิดแบบอย่างง่ายนะครับ แต่ในความเป็นจริง กองทุนที่เราซื้อหรือขายนั้นอาจจะมี อีกหลายค่าที่มาเกี่ยวข้อง ที่ทำให้ การคิด Return แต่ละช่วงเวลานั้น ไม่ได้ ง่ายๆ อย่างตามตัวอย่างด้านบน เพราะว่าจะมีเรื่องของ

  • ค่าธรรมเนียมซื้อหรือขาย ของแต่ละ Transaction (ถ้ามี)
  • เงินปันผล (ถ้ามี)
  • ถ้ามีการขายเกิดขึ้น ไม่ว่าจะเป็นการขายโดยนักลงทุน หรือ ระบบการขายแบบ auto-redemption ขายคืนอัตโนมัติ จะมีค่า Realized Profit/Loss เกิดขึ้นที่ต้องนำมาคิดเข้าไปด้วย เพราะค่าเหล่านี้คือค่า กำไรจริง/ขาดทุนจริง ซึ่งค่า Realized Profit/Loss ตรงนี้ ก็จะขึ้นกับ วิธีการคิดต้นทุนที่เราสามารถเลือกด้วยครับ ว่าจะใช้แบบ FIFO หรือ Weight Average ในการคิด

ค่าต่างๆ เหล่านี้ จะใช้คิดตอนที่เราคิด Return ในแต่ละ Sub Period ครับ ว่าต้องบวก ต้องลบ อะไรเข้าไปบ้าง

วิธีการคิดแบบ TWR นี้ จะทำให้เราวัด Performance ของ กองทุนที่เราซื้อขาย ได้ค่อนข้างดีเพราะ TWR สะท้อน performance จริงออกมาครับ เพราะโดยปกติแล้วการลงทุน เราจะเป็นแนวมีการ ซื้อหลายรอบ (หลายช่วงเวลา) หรือ อาจจะขายหลายรอบเช่นกัน (แล้วแต่ลักษณะการลงทุน) นั่นแปลว่า Cost เราจะไม่คงที่ครับ จะเปลี่ยนแปลงตลอดเวลา การคิด %Return ที่อิงกับ Cost ที่เป็นตัวเลขล่าสุดนั้น จะไม่ใช่วิธีที่ดีครับ เพราะมันไม่ได้สะท้อน Return จริงๆ ออกมา

อย่างกรณีนี้ หากดูว่า Cost คือ 2,000,000.00 (เพราะเราซื้อ ไว้ รอบละ 1 ล้าน จำนวน 2 รอบ) แล้วดู Current Market Value อยู่ที่ 2,053,508.30 แล้วเห็นกำไร +53,508.30 แล้วนำมาหารด้วย Cost 2 ล้าน แล้วจะได้ +2.675% อันนี้ไม่สะท้อน performance ที่แท้จริง เพราะกำไรตรงนี้ มันมาจาก cost 2 ส่วน คนละช่วงเวลากัน

ยกเว้นว่า เราจะลงทุนในกองนั้นๆ แค่ครั้งเดียว แล้วปล่อยยาวๆ ไม่ได้ทำอะไรเพิ่ม อันนั้น อาจจะคิด Return จาก Cost ได้ตรงไปตรงมา แต่ถึงจะเป็นแบบนี้ ใช้วิธีแบบ TWR ก็จะ ได้ค่าเดียวกันอยู่ดี นั่นแปลว่า TWR จะใช้คำนวณได้ในหลายกรณีหลากหลาย adaptive, dynamic กว่านั่นเอง

ซึ่ง กระบวนการคิดต่างๆ เหล่านี้ ผมพัฒนาเข้าไปใน FIN version 4.0 เรียบร้อยแล้ว และมีการคิด Sub Period คือ อิงกับ NAV ทุกวันทำการของกองทุนรวมนั้นๆ (คือคิด Sub Period ทุกวันทำการ) แล้วนำมาคิด TWR จากจุดเริ่มต้นจนถึงปัจจุบัน โดยที่สามารถ plot ออกมาเป็น chart ต่างๆ ตามรูปด้านบน ซึ่งคุณผู้ใช้ สามารถใช้ได้อย่างสะดวกเลยครับ แค่กรอก transaction ต่างๆ ให้ครบถ้วน เดี๋ยว FIN version 4.0 จะคำนวณออกมาให้หมดครับ

และยังมีอีกหลายความสามารถที่ต่อยอดการคิดจากเรื่องนี้ครับ FIN สามารถคิด Total Return ได้หลายระดับ ตั้งแต่ระดับของแต่ละกองทุนที่บันทึกเข้าไป, ระดับของทั้ง Portfolio หรือ ระดับหลาย Portfolio รวมกัน (กำหนด portfolio ได้ว่าจะให้รวม portfolio ใดบ้าง) ทำให้เราเห็นภาพรวมของ Total Return ได้ครบในหลายๆ มิติ และยังนำมาใช้ในอีกหลายๆ ความสามารถของ FIN version 4.0

อ่านถึงจุดนี้แล้ว คุณสามารถโหลด FIN ได้บน Apple App Store https://apple.co/2HSKplH Version 4.0 นั้นรองรับ iOS, iPad OS 15 ขึ้นไป และรวมถึง macOS ที่ใช้ chip Apple Silicon M1, M2 ด้วยครับ คาดการณ์ว่าน่าจะเริ่ม update FIN version 4.0 ได้ตั้งแต่ วันพุธที่ 6 July 2022 เป็นต้นไป

ลองใช้ FIN ใหม่ดูครับ หากมีความคิดเห็นใดๆ สามารถเขียนมาในหน้า Feedback ใน FIN ได้เลยนะครับ
ขอบคุณครับ

ทำความรู้จักค่า Drawdown และการนำมาประเมินความเสี่ยงของการลงทุน

ตั้งแต่ Fund Factsheet ของกองทุนรวมแบบใหม่ถูกนำมาใช้  ภายในนั้นจะมีข้อมูลที่น่าสนใจอยู่ข้อมูลหนึ่ง ที่เรียกว่า Maximum Drawdown ซึ่งภาษาไทยจะเรียกว่า “ผลขาดทุนสูงสุด” ในรอบระยะเวลาที่สังเกตที่ผ่านมา ค่านี้จะแสดงผลเป็นค่าติดลบเสมอครับ โดยคิดเป็นเปอร์เซ็นต์  ค่านี้จะเอาไว้ใช้ประเมินความเสี่ยงของสินทรัพย์ที่เรากำลังพิจารณาลงทุนครับ   ในบทความนี้จะอธิบายว่า ทำไมค่า Maximum DrawDown นี้ มันถึงดูเข้าใจง่ายกว่า ค่าบ่งชี้ความเสี่ยงของสินทรัพย์ที่เราลงทุนค่าอื่นๆ เช่น SD (Standard Deviation) หรืออื่นๆ (คือผม มองว่ามันเข้าใจง่ายนะครับ คนอื่นๆ อาจจะมองตรงข้ามก็ได้นะ 555+)

เริ่มต้นชี้ให้เห็นเลยครับ ว่าค่า Drawdown นี้มันนิยามเป็นอย่างไร ดูจากภาพ chart ด้านล่างนี้จะง่ายสุดนะครับ ปกติ มูลค่าของสินทรัพย์นั้นๆ จะเปลี่ยนไปตามเวลา  แกน X คือ แกนของเวลา  แกน Y คือ แกนของ Net Asset Value ของสินทรัพย์นั้นๆ  จุดที่เกิด Drawdown คือ จุดที่อยู่ในภาพ สีแดงเข้มๆ ครับ

drawdown
ภาพจาก http://cdar.berkeley.edu/researcharea/drawdown-risk/

นิยามของ Drawdown คือ  ในช่วงเวลาที่ผ่านมานั้นที่เรากำลังสังเกตดูย้อนหลังอยู่นั้น ราคาของสินทรัพย์นั้นๆ มีการปรับตัวลดลงต่ำสุด จากจุดสูงสุดที่ผ่านมา เท่าไรบ้างโดยจะคิดเป็นเปอร์เซ็นนะครับ  โดยสูตรการคำนวณคือ  เอา ( Valley Value – Peak Value ) หารด้วย Peak Value อีกที จากนั้นคูณด้วย 100 เพื่อให้ได้ค่าเปอร์เซ็นต์ออกมา สูตรนี้ยังไงก็ได้ค่า ติดลบ นะครับ

( (Valley Value – Peak Value) / Peak Value ) * 100.0

ถ้ามองข้อมูลอดีตย้อนหลัง 1 ปี , 3 ปี หรือ 5 ปี นั้น เราจะเห็นจุด Drawdown มากมายแน่นอนครับ ยกเว้นสินทรัพย์ประเภทที่มีแต่มูลค่าขึ้นตลอดนะครับ เช่นกลุ่ม Money Market Fund นะครับ อันนั้นน่าจะขึ้นตลอด แทบจะไม่มีค่า Drawdown ให้คำนวณ  ทีนี้เมื่อมีจุด Drawdown จำนวนมาก  จุดที่เราสนใจจริงๆ คือ  ในอดีตของสินทรัพย์ตัวนี้ มีจุด Drawdown สูงสุดอยู่ที่เท่าไร นั่นเอง หรือที่เรียกว่า Maximum Drawdown  ถ้าดูจาก Chart ด้านบน ก็จะเห็นฮะว่า  small drawdown นั้น มีขนาดเล็กกว่า  large drawdown นั่นเอง  ซึ่งจากรูปด้านบนนี้  large drawdown ตรงนั้นคือค่า Maximum Drawdown นั่นเอง

นั่นแปลว่า  ถ้าเรามองข้อมูลอดีตของกองทุนหรือหุ้นตัวนี้ๆ แล้ว  เราเห็นช่วงที่ขาดทุนสูงสุดกี่เปอร์เซ็นต์ นั้นจะทำให้เราเข้าใจความเสี่ยงได้ดีขึ้นมากพอสมควร  (เมื่อเทียบกับค่า SD: Standard Deviation) เพราะว่า เราจะเข้าใจค่า % Drawdown นั่นเอง ว่า ถ้ามันมีค่าอยู่ที่ -20%  นั่นแปลว่า  ถ้าเราลงทุนที่จุด Peak จำนวนเงิน 100 บาท และ เจอภาวะ Drawdown ที่ -20%  นั่นแปลว่า ที่จุดต่ำสุด เงินลงทุนเราจะเหลืออยู่ที่ 80 บาท นั่นเอง  คือตัวเลขค่านี้มันจะทำให้เราคำนวณออกมาเป็นจำนวนเงินที่หายไปได้ (Unrealized Loss) ครับ ว่าเราจะรับไหวมั๊ยนะ

ทีนี้ โดยสถิติแล้ว เรามักจะไม่ได้ลงทุนอยู่ที่จุด Peak สักเท่าไรอยู่แล้วครับ (ยกเว้นซวยจริงๆ 5555+ ซึ่งบางคน อาจจะเคยมีประสบการณ์)  นั่นแปลว่า  ค่า Drawdown ถ้าเราลงทุนจริงก็อาจจะน้อยกว่าค่านี้ฮะ  ดังนั้น การเห็นค่า Maximum Drawdown นั้นเหมือนกับการที่เราได้เห็น ค่าขาดทุนสูงสุดในอดีตของสินทรัพย์นี้ๆ แล้ว ว่าอยู่ในระดับที่เรายอมรับได้หรือไม่ นั่นเอง  ก็เลยมักจะถูกนำมาใช้ในการประเมินความเสี่ยง ในการลงทุนครับ

แต่ !!! ทั้งหมดนี้ คือ การวัดค่าข้อมูลที่อยู่ในอดีตนะครับ  อนาคตไม่มีใครสามารถทำนายได้ชัดเจนอยู่แล้ว  อาจจะเกิด Drawdown ที่เป็นค่าที่ใหญ่กว่าค่าเดิมในอดีตก็ได้เช่นกัน ฉะนั้นการติดตามการลงทุนในสินทรัพย์ที่เราลงทุนอยู่นั้น ยังคงเป็นเรื่องสำคัญครับ

ภาพต่อมาครับ ภาพ chart ด้านล่างนี้ จะชี้ให้เห็นค่าอีกค่าหนึ่ง ที่เอาไว้ประเมินร่วมกันครับ  นั่นคือ Recovery Time นั่นเอง ซึ่งมันคือ จำนวนวันทั้งหมดที่ สินทรัพย์นั้นๆ เกิดค่า Drawdown แล้ว ต้องใช้ระยะเวลาทั้งหมดกี่วัน ถึงจะกลับมา เท่าทุน นั่นเอง

maxdur1
ภาพจาก https://www.mutualfundobserver.com/2014/08/recovery-time/

จากที่ผมเห็นข้อมูลมา  ก็มีหลายสินทรัพย์ที่ใช้ระยะเวลา ไม่กี่สิบวัน  บางสินทรัพย์ก็ใช้ระยะเวลา ไม่กี่ปี (หลายร้อยวัน) ถึงจะกลับมาคืนทุนเท่าเดิมนะครับ  ก็จะหลากหลายกันไป แล้วแต่ช่วงจังหวะ

อ่านถึงจุดนี้จะเข้าใจกันแล้วนะครับว่าค่า Drawdown เหล่านี้โดยส่วนตัวผมมองว่า เป็นค่าที่มีประโยชน์แก่การนำมาพิจารณาคัดเลือก สินทรัพย์เพื่อการลงทุนพอสมควรครับโดยมองในมุมของความเสี่ยงนะครับ ว่าเราจะรับ ค่าขาดทุนสูงสุด “ในอดีต” ของสินทรัพย์นั้นๆ ได้มากน้อยแค่ไหน  รับได้หรือไม่  เพราะเวลาเราเลือกลงทุนใดๆ นั้น แน่นอนว่า เราจะมองทั้ง Reward (ผลตอบแทน) และ Risk (ความเสี่ยง) เสมอๆ  ดังนั้นใน FIN App กองทุนรวม จึงมีข้อมูลเหล่านี้ให้ดูประกอบการพิจารณาด้วยเช่นกัน  โดยตัวอย่างหน้าจอจะเป็นดังภาพด้านล่างนี้ครับ

Download FIN App ได้จาก Apple App Store: https://apple.co/400dMWZ

IMG_9670

วิธีการใช้คือ กดเข้าดู Fund Profile ที่ต้องการ จากนั้นกดที่ Tab ที่เขียนว่า Chart ครับ  (ตามภาพด้านบน) ทีนี้ โดยปกติที่หน้า Chart ก็จะแสดง กราฟของ NAV ตามช่วงระยะเวลาย้อนหลังต่างๆ ตามที่ต้องการ  แต่ใน version ใหม่นี้ จะแสดงค่า Drawdown ได้ด้วย โดยการกดที่ปุ่ม DD ครับ  แล้วจะแสดง NAV พร้อมกับ แถบ Drawdown ต่างๆ ให้เห็นกันชัดๆ เลยครับ ว่า จุด Peak อยู่ที่วันไหน Valley วันไหน และ Recovery วันไหน ใช้ระยะเวลาเท่าไร อย่างชัดเจน

นอกเหนือไปจากนั้นก็จะแสดง Drawdown ย่อยอื่นๆ ด้วยครับ  ตาม List ด้านล่างของหน้าจอเลยฮะ เราก็จะเห็นจุด Drawdown อื่นๆ ที่ไม่ใช่ Maximum Drawdown ไปด้วยเช่นกันฮะ เรียกได้ว่า มาครบครันเลยทีเดียว สำหรับ version ใหม่ นี้

ปิดท้ายบทความนี้ ด้วยเรื่องของ ค่าความเสี่ยง ตรงนี้อีกรอบนะครับ ว่า การขาดทุนใดๆ ถ้าต้องการแก้ไขกลับคืนให้มาอยู่จุดเดิม ถ้ายิ่งขาดทุนมาก เราต้องลุ้นกันตัวโก่งและเหนื่อยมากในการให้มันกลับมาเท่าทุน ดังนั้นแล้ว  ให้พึงระวังไว้เสมอนะครับ จากภาพด้านล่างนี้จะเห็นชัดครับ ว่ายิ่งปล่อยขาดทุนมาก จะต้องทำกลับคืนมาที่เท่าไรแค่ไหน นะครับ ลองดูฮะ

Losses
ภาพจาก https://cleonalira.co.uk/why-you-should-care-about-losses/

ยกตัวอย่างนะครับ เราลงทุนในสินทรัพย์ตัวหนึ่งที่ 100 บาทนะครับ จากนั้นเราปล่อยขาดทุนไป 50% มูลค่าเราจะเหลืออยู่ที่ 50 บาท ครับ  จากนั้น ณ จุดนั้นเอง การย้อนกลับไปที่ 100 บาท เพื่อให้ได้เท่าทุน   ณ จุดที่เรามีเหลืออยู่ 50 บาทนั้น เราต้องการอีก 50 บาท เพื่อให้กลับไปที่จุดเดิม   นั่นแปลว่า ณ จุดนั้นๆ เราต้องการ ให้มัน บวก (gain) ไปอีก 50 บาท คิดเป็น 100% จากจุด 50 บาท นั่นเอง   ซึ่ง มันไม่ใช่เรื่องง่ายนะครับ ที่จะทำให้เกิดแบบนั้นได้บ่อยๆ  ดังนั้นปิดท้าย คือ  ให้ระวังเรื่อง Risk Loss ดีๆ กันนะครับ นักลงทุน  เราควรจะรู้จุดหยุดของเราเหมือนกันฮะ

Clip Introduction to FIN App ในงาน Mutual Fund Fair 2016 @ SET

Clip ย้อนหลัง (36 นาที) ของ session “Introduction to FIN App” ที่ผมไปบรรยายใน งาน Mutual Fund Fair 2016 ของตลาดหลักทรัพย์ เมื่อวันที่ 24 July 2016 ครับ เนื้อหาน่าจะมีประโยชน์สำหรับ คนที่ลงทุนกองทุนรวม และ ยังไม่รู้จักหรือยังไม่เคยใช้ FIN App หรือว่า เคยใช้แล้ว แต่อยากเห็นภาพรวมทุกความสามารถ ก็ดูจาก clip นี้ก็ได้เช่นกันครับ 🙂

จริงๆ ตลาดหลักทรัพย์มี clip ความรู้ด้านอื่นๆ ใหม่ๆ ตลอดเวลานะครับ อาจจะไปลอง subscribe channel ได้ฮะ ที่ https://www.youtube.com/user/setgroupofficial/videos

FIN App ในส่วนของ Portfolio ใช้วิธีคิดต้นทุนแบบ FIFO (First in, First out)

ณ เวลานี้ (กันยายน 2560) FIN App ในส่วนของ Portfolio ใช้วิธีการคิดต้นทุนเป็นแบบ FIFO (First in, First out) นะครับ ทีนี้เพื่อให้ชัดเจนสำหรับท่านที่ยังไม่ทราบว่า FIFO คิดอย่างไร เลยเขียนมาบรรยายเพิ่มเติมนิดนึงฮะ

ปกติการลงต้นทุนของสินค้าในบัญชีจะมี 3 ระบบหลัก คือ แบบ Average, FIFO, LIFO

  • Average จะเป็นการรวมราคาต้นทุนที่ซื้อไว้ทั้งหมดหารด้วยจำนวนหน่วยที่เหลือ
  • FIFO (First in, First out) สินค้าเข้าก่อนคิดเป็นต้นทุนออกก่อน คำนวณโดยเอาราคาต้นทุนสินค้าที่ซื้อเข้ามาก่อนเป็นต้นทุนหากมีการขายออกไป
  • LIFO (Last in, First out) สินค้าที่เข้ามาหลังสุด คิดเป็นต้นทุนออกไปก่อน คำนวณโดยเอาราคาต้นทุนสินค้าที่ซื้อหลังสุดเป็นต้นทุนหากมีการขายออกไป

ซึ่งโดยมากวิธีการคิดต้นทุน NAV กองทุนรวมจะใช้แบบ FIFO และ Average เป็นส่วนใหญ่ และเนื่องจากระบบ FIFO เป็นระบบที่ใช้ในการคิดต้นทุนกองทุนรวม LTF ตามกำหนดการเสียภาษี

มาดูตัวอย่าง
Day 1 ซื้อ กองทุน A @ 10 B จำนวน 100 หน่วย
Day 2 ซื้อ กองทุน A @ 12 B จำนวน 200 หน่วย
Day 3 ซื้อ กองทุน A @ 15 B จำนวน 50 หน่วย
Day 4 ขาย กองทุน A @ 16 B จำนวน 100 หน่วย
Day 5 ขาย กองทุน A @ 20 B จำนวน 250 หน่วย

11265306_817109605025086_5626433976029808548_o
วิธีคิดต้นทุนแบบ FIFO และ แบบ Average

วิธีการคำนวณ แบบ FIFO
เมื่อมีการขายเกิดขึ้นจะคิดต้นทุนราคาของหน่วยที่ราคา 10 บาท ก่อน ดังนั้น ขายราคาที่ 16 – 10 บาทจะรับรู้กำไรที่ 6 บาท หลังจากขายวันที่ 4 แล้วสามารถหา average ณ Day 4 ของ FIFO ได้ 12.6

วิธีการคำนวณ แบบ Average
คิดคำนวณ Average ทุกครั้งที่มีการซื้อหน่วยลงทุนมาเพิ่ม หากมีการขายออก ต้นทุนเฉลี่ยจะยังคงเดิม

ข้อสังเกตุ
ทั้ง 2 วิธี หากมีแต่การซื้อหน่วยลงทุนอย่างเดียว ค่าเฉลี่ยที่ได้จะเท่ากัน
แม้ว่าต้นทุนจะแตกต่างกัน แต่ว่าผลสุดท้ายถ้าขายหมดก็จะได้กำไรเท่ากัน
ข้อมูลเพิ่มเติมลองดูตัวอย่างที่: https://www.nomuradirect.com/th/help/information-faqs.aspx