ข้ามขีดจำกัดของการส่งคำสั่งด้วย Excel เพียงแค่ใช้ Microsoft Excel เป็นก็สามารถสร้าง Algorithm ของตนเองได้ “Settrade Excel VBA SDK” เป็นส่วนเสริมของ Microsoft Excel ช่วยให้นักลงทุนสามารถสร้าง Algorithm และส่งคำสั่งได้ด้วยตนเองโดยใช้โปรแกรม Microsoft Excel
การติดตั้ง
สามารถ Download ส่วนเสริมและศึกษาการใช้งานได้จาก developer.settrade.com
1) เลือกแถบ Navigation Bar ในส่วนของ API Reference
2) เลือกแถบด้านข้างในหัวข้อ Download
3) เลือก Plugin ที่รองรับกับ version ของ Excel
4) แตกไฟล์ .rar และทำการติดตั้งโปรแกรม
ถ้าโปรแกรมหา dll ไม่เจอให้ติดตั้ง Microsoft Visual C++
https://support.microsoft.com/th-th/help/2977003/the-latest-supported-visual-c-downloads
ถ้าติดตั้งโปรแกรมเรียบร้อยใน Excel จะมีแถบ Settrade เพิ่มขึ้นมา
ในการใช้งานจำเป็นที่จะต้องใส่ Attribute ดังนี้
Broker ID = คือรหัสของโบรคเกอร์ถ้าใช้ Sandbox ใส่เป็น “SANDBOX”
App Code = บัญชีจริงใส่ค่าเป็น “ALGO” ถ้าใช้ Sandbox ใส่เป็น “SANDBOX”
App ID = ได้รับจากการ Generate Key
App Secret = ได้รับจากการ Generate Key
Excel VBA
Excel VBA ถ้าพูดให้เข้าใจง่ายคือ ภาษาที่ใช้ควบคุมการทำงานของโปรแกรม Excel ในการใช้งาน Excel VBA SDK จำเป็นต้องมีความรู้ความเข้าใจการทำงานเล็กน้อย เพียงเพื่อนำมาใช้สร้าง Template สำหรับการใช้งานใน Excel ในการใช้ Excel VBA อันดับแรกต้องเปิดใช้งานแถบ Developer ใน Excel ก่อน ถ้ายังไม่มีแถบ Developer สามารถเปิดแถบดังกล่าวได้ดังนี้
อันดับต่อมาคือการเปิดการอนุญาตใช้ Marcros
เมื่อเปิด Visual basic ในแถบ Developer จะพบกับหน้าปล่าวๆ ใช้ในการเขียน Code เราสามารถควบคุมการทำงานทั้งหมดของ Excel จากการเขียน Code ที่นี่
ในการบันทึก Excel ร่วมกับ VBA code จะบันทึกสเปรตชีตทั่วไปเหมือน Excel ธรรมดา แต่
ใน Dropdown ในส่วน Save as type จะเลือกเป็นแบบ Excel Macro
การดึงข้อมูลบัญชี
Code ชุดแรก Setup() ใช้สร้าง object โดยกำหนดตัวแปร deriv เป็น Public
Code ชุดที่สอง DerivAccount() เป็นชุดหลักในการทำงาน ใช้ในการดึงข้อมูลจาก Settrade โดยใช้ Attribute เป็นหมายเลขบัญชี โดยทำการรัน code ชุดแรกก่อนจึงจะสามารถรันชุดนี้ได้ผ่านคำสั่ง Call setup
ในที่นี้ทำการดึงข้อมูลมาเก็บใน Cell C13 – C18
Worksheets เป็นตัวกำหนดตำแหน่งของ sheet Range ใช้กำหนดตำแหน่ง Cell ในการใส่ข้อมูล
การดึงข้อมูลราคา
ส่วนการดูราคา สามารถเรียกได้จากการใส้สูตรใน Excel ได้โดยตรง
ในส่วน A1 คือชื่อ Symbol “S50Z20”
ในส่วน A2 คือ Attribute หรือคุณลักษณะ
ยกตัวอย่างเช่น
“last” = Last Price
“bid_price1” = ราคา bid ช่องที่ 1
“ask_price1” = ราคา ask ช่องที่ 1
“bid_volume1” = volume bid ช่องที่ 1
“ask_volume1” = volume ask ช่องที่ 1
การส่งคำสั่ง
เมื่อกำหนดตัวแปรที่จำเป็นสำหรับการส่งคำสั่งดังนี้
เมื่อนำคำสั่งทุกอย่างมายำรวมไว้ด้วยกัน Algorithm จะมีการทำงานดังนี้
คำสั่งที่นำมาแสดงเป็นตัวอย่างข้างต้นเพียงไม่กี่คำสั่งเท่านั้น
ทั้งนี้สามารถดูคำสั่งเพิ่มเติมจากเว็บไซต์ของ Settrade API : https://developer.settrade.com/open-api/api-reference/getting-start
Array ( [cooCAFXXSUAV] => cooCAFXXSUAV [Secure-PHPSESSID] => f9sdbdebvbjbdjukq3lifu42es )
Array ( [sesCAFXXSLAT] => 1733246564 [CAFXSI18NX] => en [_csrf] => fbb5ca7b616eb4c215784057752e53f4 [CAFXSFEREF] => https://www.caf.co.th/switcher.html?action=language&language=en&origin=https%3A%2F%2Fwww.caf.co.th%2Flearning-tfex%2Fsettrade-api-excel-vba-sdk.html )
Array ( [content] => settrade-api-excel-vba-sdk )
Array ( )