Framework กระบวนการออกเเบบระบบการลงทุน

Pawarison Tanyu
Algo Alchemist
Published in
3 min readJun 24, 2023

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

  • DataMining , OverFitting หมายถึงระบบการลงทุนที่ จดจำข้อมูลที่ใช้ทดสอบมากจนเกินไป ฉะนั้นเมื่อนำไปใช้จริงแล้วจึงไม่ได้ผลตามที่ทดสอบ ซึ่งอาจจะเกิดจากการ Optimize ที่มากเกินไป จนไปเจอผมลัพธ์ที่ดูดีเกินความเป็นจริง (ความบังเอิญทางสถิติในอดีต ) ทำให้ขาดความยืดหยุ่นเมื่อนำไปใช้กับสภาวะตลาดที่ไม่เคยทดสอบ
  • การตั้งสมมุติฐานในการออกเเบบระบบการลงทุนที่ไม่สมจริง เช่น การตั้ง Slippage หรือค่า Commission ที่ต่ำกว่าความเป็นจริง ซึ่งจะทำให้ผลลัพธ์ดูดีกว่าความเป็นจริง
  • Data Quality การเลือกใช้ข้อมูลในอดีตเพื่อทำการทดสอบ ซึ่งมีหลายเรื่องที่ต้องคำนึงถึง อย่างเช่น ฐานข้อมูลมีการรวมหุ้นที่ถูกถอดออกจากตลาดมาทดสอบด้วยหรือไม่(Survivol Ship Bias Free) ไปจนถึงมีการปรับข้อมูลให้รวมเงินปันผลหรือการปรับโครงสร้างเงินทุนหรือไม่

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

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

โดย จะเเบ่งการค้นคว้าออกเป็น 3 ส่วนด้วยกันคือ

  • Macro Indicator : มุ่งเน้นไปที่การศึกษาภาพรวมตลาดเป็นหลักเพื่อที่จะสร้าง Customize Index ขึ้นมา โดยมีเป้าหมายที่จะหา Market Condition ที่เหมาะสมในการพัฒนากลยุทธ์ต่อไป ซึ่งวิเคราะห์เเบบ Top-Down ลงมาตั้งเเต่ MacroEconomic, Sentiment Indicator ไปจนถึงพฤติกรรมของหุ้นรายตัวที่ขับเคลื่อนIndexนั้นๆ (Market Breadth)
รูปตัวอย่าง
  • Price Anomaly : มุ่งเน้นไปที่การหา Anomaly ต่างๆ ของราคาสินทรัพย์ที่จะลงทุนเป็นหลักเช่น Pattern หรือ พฤติกรรมของราคา
  • Money Management Method : มุ่งเน้นไปที่การออกเเบบเเละเตรียมชุดโค้ดในส่วนของการบริหารเงินทุนในเเบบต่างๆ เพื่อนำไปประกอบกับกลยุทธ์หลักต่อไป ซึ่งส่วนใหญ่จะอ้างอิงจากหนังสือ Difitive Guide to Position Sizing ของ Van K. Tharp, Ph.D.

ภาพรวมกระบวนการพัฒนาระบบการลงทุนฉบับย่อ

Phase 1 In-Sample Data

Goal Setting : เมื่อกำหนด Environment สำหรับการวิจัยเเละทดสอบได้เเล้ว ก็ถึงเวลาที่จะกำหนดเป้าหมายของกลยุทธ์นั้นๆ เช่น ผลตอบเเทนที่คาดหวัง, ความเสี่ยงหรือความผันผวนที่รับได้สูงสุด, ระยะเวลาในการลงทุน, ระยะเวลาเฉลี่ยที่กลยุทธ์ไม่สามารถทำกำไรได้ซึ่งอาจส่งผลทางด้าน psychological เป็นต้น

Strategy Drafting and Preparation : โดยจะต้องตอบคำถามดังต่อไปนี้

  • What markets do you want to focus on? โดยจะกำหนด Universe ที่เหมาะสมกับ Goal Setting ที่เราได้ตั้งเอาไว้
  • What timeframes do you want to test? ระยะสั้นกลางยาว Instraday หรือ EOD
  • What ideas will you test? โดยจะกำหนดประเภทของกลยุทธ์ที่เหมาะสม Goal Setting ที่เราได้ตั้งเอาไว้
  • What parameters will you test? กำหนดตัวแปรหรือเงื่อนไขต่างๆในการลงทุน โดย limit จำนวนตัวแปรเอาไว้ เพื่อไม่ให้ Overfitting เเละสามารถผ่านพ้นได้ทุกสภาวะตลาด
  • What metrics will you use to measure success? โดย key metric ที่ใช้ใน Phase 1 จะเน้นความได้เปรียบทางสถิติเป็นหลักอย่างเช่น R-multiple Distribution, SQN หรือ Consecutive win-loss เป็นต้น เพื่อวัดความสามารถในการทำกำไรโดยปราศจากผลกระทบจากกลยุทธ์การบริหารเงิน อีกทั้งเมื่อมีความได้เปรียบทางสถิติที่สูงจะช่วยลด Worst Case Scenario ลงได้อีกด้วยเมื่อมีจำนวน Sample ที่เยอะขึ้น (บทความหน้าเราจะพูดถึงเรื่องนี้กันครับ)
  • When will you give up on an idea? โดยจะกำหนด Criteria ในเเต่ละช่วงของการทดสอบ ซึ่งเเต่ละกลยุทธ์จะมีเกณฑ์ต่างกัน ซึ่งโดยส่วนใหญ่จะใช้ Custom Benchmark ในการอ้างอิง

Market Classification Drafting : ใช้เครื่องมือเเละ insight ที่ได้จากการวิจัยเเละทดสอบใน Data Lab มาสร้าง Custom Index ที่เหมาะสมกับกลยุทธ์การลงทุน เพื่อกำหนด Timing ว่าช่วงใหนของถือ Equity หรือช่วงใหนควรถือเงินสด ไปจนถึงการขายล้างพอร์ตเพื่อรอสภาวะตลาดที่เหมาะสมในการเข้าทำกำไร

รูปตัวอย่าง สีเขียวคือปริมาณเงินสด จะกลับมาถือเมื่อตลาดไม่เอื้ออำนวย

Preliminary Research and Hypothesis Testing : ทดสอบกลยุทธ์เบื้องต้นว่าเเนวคิดหรือทฤษฏีที่ได้นำมาใช้ เป็นไปตามสมมุติฐานหรือไม่เเละต้องตั้งอยู่บนหลักการที่มีเหตุมีผลและมีหลักฐานที่สามารถชี้วัดได้ โดยในส่วนนี้จะเป็น General Research หรือการวิจัยในหัวข้อที่ต้องการทำความเข้าใจตลาดและกลยุทธ์โดยทั่วไป

Sensitivity Analysis : ทดสอบความไวต่อการเปลี่ยนแปรงของตัวแปร โดยจะทดสอบตัวแปรต่อไปนี้

  • Position Score : การจัดลำดับความสำคัญของหุ้นเกิดสัญญาณซื้อ ซึ่งเราจะทดสอบโดยการจัดลำดับความสำคัญตามกลยุทธ์ที่เลือก เทียบกับการสุ่มลำดับความสำคัญ เพื่อหาว่าตัวแปรที่เราได้เลือกมามีนัยยะสำคัญหรือไม่
  • Missing Trade : จำลองอัตราการเข้าซื้อผิดผลาด (ไม่สามารถเปิด Position ได้) ว่าเป็นไปตามสมมุติฐานหรือไม่ ซึ่งเมื่ออัตรา Missing Trade เพิ่มขึ้น ผลตอบเเทนก็ควรจะลดลงอย่างมีนัยยะ เพราะ Missing Trade เป็นตัวเเทนของค่าเสียโอกาสที่เกิดขึ้น
  • Slippage : อัตราการคลาดเคลื่อนของราคาซื้อ ซึ่งเมื่อ slippage เพิ่มขึ้น ผลตอบเเทนก็ควรจะลดลง
  • Initial Equity Range : ขนาดของเงินทุนตั้งต้น เพื่อทดสอบว่ากลยุทธ์สามารถรับเงินทุนต่ำสุดหรือสูงสุดเท่าไหร่โดยที่ยังสามารถรักษาผลตอบเเทนที่คาดหวังได้เท่าเดิม ซึ่งในส่วนนี้จะสัมพันธ์กับเงื่อนไขในการเข้าซื้อหุ้นเรื่องสภาพคล่อง

จากนั้นเมื่อกลยุทธ์ผ่านเกณฑ์ ของ Phase1 ที่ตั้งไว ้ก็จะไปที่ Phase ถัดไปครับ

Phase 2 In-Sample Data

ใน Phase นี้ จะใช้เกณฑ์ที่เเตกต่างจาก Phase1 โดยจะเน้นที่ประสิทธิภาพโดยรวมของกลยุทธ์เป็นหลัก

Add Money Management Method : ในส่วนนี้เราเพิ่มการบริหารเงินทุนเข้าไปในกลยุทธ์ กล่าวคือยิ่งกลยุทธ์มีความได้เปรียบเชิงสถิติที่สูง (SQN , Expectancy …) การที่นำการบริหารเงินทุนเข้ามาช่วยจะยิ่งช่วยเพิ่มการทำกำไรเเละลดความเสี่ยงได้สูงขึ้นไปอีกขั้น เเละนี่ก็คือเหตุผลที่เรากำหนด Key Factors หรือตัวชี้วัดในเเต่ละ Phase ของการทดสอบกลยุทธ์เเตกต่างกันครับ โดยเราจะใช้กลไกบริหารเงินทุนเเละความเสี่ยงเเบ่งเป็น 3 ระดับด้วยกัน

  • Portfolio Risk Model : เป็นการบริหารความเสี่ยงระดับพอร์ตโฟลิโอด้วยการควบคุมระดับ Portfolio Heat เเละ Exposure โดยรวม โดยจะไม่ซื้อหลักทรัพย์เพิ่มเมื่อถึงระดับที่กำหนด หรือ Scale Out บางส่วนออก
  • Position Risk Model : กำหนดน้ำหนักการลงทุนต่อหลักทรัพย์ของพอร์ตโฟลิโอหรือไม่เกินสัดส่วนสภาพคล่องที่เพียงพอของหุ้นตัวนั้นๆ(Liquidity Control) รวมถึงกฏเกณฑ์ข้อบังคับของตลาดหลักทรัพย์ ซึ่งการกำหนดกลยุทธ์การบริหารเงินในส่วนนี้จะสัมพันธ์กับค่าที่ได้จาก Key Metrics ใน Phase1 ด้วย
  • System Mechanic and Tactic : เป็นระบบควบคุมความเสี่ยงเพิ่มเติม เช่น การขายหลักทรัพย์ทั้งหมดออกจากพอร์ตโฟลิโอไปถือเงินสดในช่วงเวลาหนึ่งๆ เมื่อตลาดโดยรวมเกิดการเปลี่ยนแปลงเป็นขาลงฉับพลันผิดปกติหรือเกิดเหตุการไม่คาดคิดขึ้น (Stop Bleeding System)

Robustness and Performance Testing : หลังจากกลยุทธ์ของเราได้รวมองค์ประกอบทั้งหมดครบเเล้วเเละได้ผลตอบแทนและความเสี่ยงเป็นที่น่าพอใจ จากนั้นจะถูกส่งมาที่กระบวนการทดสอบความเสถียรของกลยุทธ์การลงทุน โดยเราจะทดสอบด้วยกระบวนการ Monte Carlo Warkforward Analysis (MC WFA)

ตัวอย่างการกำหนดช่วงของขอมูล

ซึ่งเเต่ละช่วงการรันของ WFA เราจะทำการ Monte Carlo Simulation ไปด้วย โดยตัวเเปรของการ Simulation คืออัตรา Missing Trade เเละ Slippage ( เหตุผลที่เราต้องทำวิธีนี้เพราะการรันเพียงครั้งเดียวจะมีตัวอย่างที่ไม่เพียงพอที่จะมีนัยสำคัญทางสถิติ) โดยผลลัพธ์ที่เราได้จากการทำ WFA คือเราสามารถประเมินความยืดหยุ่นของระบบการลงทุนได้ละเอียดเเละเข้มงวดในทุกๆสภาวะตลาด ซึ่ง Key Factors ในส่วนนี้จะเน้นไปที่การประเมินความเสี่ยงเป็นหลักเช่น Risk of Ruin หรือ VaR เป็นต้น

Phase 3 Out-of-Sample Data

ในส่วนนี้กระบวนการจะเหมือนกับ Phase 2 เเต่จะใช้ข้อมูลในส่วนที่กลยุทธ์เราไม่เคยเห็นมาก่อน หรือ Out-of-Sample Data เพื่อทดสอบความเสถียรยั่งยืนของกลยุทธ์ครับ

--

--