หลักสูตร/ปี พ.ศ. วิศวกรรมศาสตรบัณฑิต สาขาวิชาวิศวกรรมคอมพิวเตอร์ ปี พ.ศ. 2567
ภาคและปีการศึกษาที่สำเร็จการศึกษา ภาคปลาย ปีการศึกษา 2566
ประเภทโครงงาน
โครงงานวิศวกรรม
ชื่อโครงงานภาษาไทย
ซอฟต์แวร์การดำเนินการตามคำสั่งแบบปรับตัวสำหรับการซื้อขายหลักทรัพย์
ชื่อโครงงานภาษาอังกฤษ
An Adaptive Order Execution for Securities Investment Software
ผู้พัฒนา
6310505688 นายกิตติภัค วิบูลเสถียร
อาจารย์ที่ปรึกษาหลัก
ยอดเยี่ยม ทิพย์สุวรรณ์
อาจารย์ที่ปรึกษาร่วม
-
บทคัดย่อ
ซอฟต์แวร์การดำเนินการแบบปรับตัวได้สำหรับการซื้อขายหลักทรัพย์นั้นประกอบไปด้วยสองส่วนหลักด้วยกันโดยส่วนแรกก็คือ เทคนิคการจัดพอร์ตโฟลิโอ(Portfolio Optimization) และส่วนที่สองก็คือ อัลกอริทึมการดำเนินการแบบปรับตัวได้ (Adaptive Order Execution Algorithm) โดยในส่วนแรกสำหรับการจัดพอร์ตโฟลิโอนั้น จะเริ่มต้นจากการที่ผู้ใช้ป้อนรายชื่อของหุ้นที่สนใจพร้อมทั้งเงื่อนไขในการจัดพอร์ตโฟลิโอให้กับระบบ จากนั้นอัลกอริทึมสำหรับการจัดพอร์ตโฟลิโอจะทำการคำนวณจำนวนหุ้นที่ควรมีอยู่ในพอร์ตสำหรับหุ้นแต่ละชนิดเพื่อให้ได้ผลลัพธ์ของพอร์ตโฟลิโอตรงตามเงื่อนไขของผู้ใช้ (ตามความคาดหวังด้านผลตอบแทนรายปีและความเสี่ยงที่รับได้) ซึ่งผลลัพธ์ของส่วนแรกนั้นจะถูกนำไปใช้เป็นข้อมูลในการคำนวณวิธีการซื้อขายหุ้นแต่ละชนิดในแต่ละช่วงเวลาด้วยระบบส่วนที่สองซึ่งก็คืออัลกอริทึมการดำเนินการการซื้อขายแบบปรับตัวได้ โดยในส่วนนี้ได้มีการใช้เทคนิคทางด้านการเรียนรู้ของเครื่องจักร (Machine Learning) และการหาค่าที่ดีที่สุดตามเงื่อนไขที่ได้รับ (Optimization Problems) เพื่อทำการทำนายจำนวนวอลุ่ม (Volume) ของหุ้นแต่ละตัวและแนวโน้มราคา (Price Trend Direction) ในทุกๆ 1 นาทีเพื่อทำปรับรูปแบบของคำสั่งซื้อขายในแต่ละช่วงเวลา (รายนาที) เพื่อให้สอดคล้องกับการเปลี่ยนแปลงของสภาพการซื้อขายภายในตลาด โดยในแต่ละคำสั่งซื้อขายนั้นจะประกอบไปด้วย Limit Order (เป็นคำสั่งซื้อที่สามารถกำหนดราคาที่อยากได้ได้แต่ไม่สามารถกำหนดได้ว่า order ที่ส่งไปจะถูกดำเนินการ (execute) ตอนไหน) และ Market Order (ซึ่งเป็นคำสั่งซื้อที่จะทำให้ order ถูกดำเนินการในทันทีแต่ทว่าไม่สามารถกำหนดได้ว่าจะได้ราคาเท่าไร โดยราคาจะขึ้นอยู่กับราคาที่ดีที่สุดที่ตลาดให้ ณ ขณะนั้น) ซึ่งรูปแบบคำสั่งซื้อทั้งสองประเภทในแต่ละ order นี้จะถูกปรับอัตราส่วนไปเรื่อยๆขึ้นอยู่กับผลลัพธ์การทำนายและการคำนวณของระบบ สุดท้ายแล้วการวัดผลการทำงานนั้นจะขึ้นอยู่กับ VWAP (Volume-Weighted Average Price) ซึ่งจะใช้เป็นเชิงการเปรียบเทียบระหว่าง user's VWAP และ market's VWAP เพื่อดูว่าอัลกอริทึมสามารถซื้อหรือขายได้ใกล้เคียงกับค่า VWAP ของตลาดให้ได้มากที่สุดได้หรือไม่
Abstract
Our adaptive order execution software consists of portfolio optimization and execution algorithm. The first part, which is portfolio optimization, is about how to optimize the portfolio with the specified list of the stocks to match with the constraints given by the user. The output of the first part is the amounts of each stock that should be in portfolio which will be used as the input to the second part, the execution algorithm. The execution algorithm is a means for executing the order in each trade to match the constraints that have been programmed in each step of algorithm. The algorithm is designed by using computer engineering techniques such as machine learning and optimization technique for calculating how to execute the order in each trade for acquiring or liquidating the stocks through two types of order (Limit Order and Market Order) in each time frame. The algorithm works with the real-time data from the SET (the Stock Exchange of Thailand) by receiving the real-time data and processing them through the data cleaning methods and performing the execution process for every 1-minute time frame. The method for measuring the performance of our algorithm is the VWAP (Volume-Weighted Average Price) method which is about how can we adjust the algorithm to buy (long) or sell (short) the stocks so that the user’s VWAP is close to the market's VWAP as much as possible.
คำสำคัญ (Keywords)
Portfolio Optimization
Execution Algorithm
Machine Learning
VWAP
Real-Time Data Processing
เว็บไซต์โครงงาน
-
ที่เก็บเวอร์ชันซอร์สโค้ด
Frontend Code: https://github.com/AlienX77-cmd/senior_proj_main
Backend Code: https://github.com/AlienX77-cmd/senior_proj_backend
ผู้นำเข้าข้อมูลครั้งแรก
นายกิตติภัค
วิบูลเสถียร
(b6310505688)
แก้ไขครั้งสุดท้าย
เมื่อ April 1, 2024, 9:52 p.m. โดย
นายกิตติภัค
วิบูลเสถียร
(b6310505688)
สถานะการอนุมัติ
รออนุมัติ