บริษัทหลักทรัพย์ที่ปรึกษาการลงทุน คลาสสิก ออสสิริส จำกัด

วิธีการใช้งาน Python SDK

วิธีการใช้งาน Python SDK

Python SDK

Install

ติดตั้ง python Settrade Python SDK library โดยใช้ Command Line  
โดยพิมพ์คำสั่ง “pip install settrade” 

ในส่วน Python editor ทำการ import library settrade.openapi

ถ้าโปรแกรมหา dll ไม่เจอให้ติดตั้ง  Microsoft Visual C++  

สามารถดาวน์โหลดได้จากเว็บไซต์

https://support.microsoft.com/th-th/help/2977003/the-latest-supported-visual-c-downloads

Create investor objects

ในขั้นแรกต้องสร้าง object ของ investor ขึ้นมาใช้งานก่อน

Attributes ที่จำเป็นต้องใส่

Sandbox

  • app_id และ app_secret
  • ใช้ Application Id และ Secret Id ที่สร้างมาก่อนหน้านี้
  • ในส่วน broker_id และ app_code ใส่เป็น “SANDBOX”

การส่งคำสั่งจริง

  • broker_id จะเป็นรหัสของ Broker
  • app_code จะเป็น “ALGO”

Create account objects

ขั้นต่อมาสร้าง objects ของบัญชีเทรดต้องการ Attribute account_no สามารถเลือกบัญชีได้ดังนี้

  • “username-D” สำหรับบัญชี TFEX (เป็นรูปแบบบัญชีเฉพาะของ Sandbox)
  • “username-E” สำหรับบัญชี หุ้น (เป็นรูปแบบบัญชีเฉพาะของ Sandbox)

ถ้าเป็นบัญชีจริงสามารถใช้เลข Account ของบัญชีได้เลย
เมื่อเรียกใช้ method get_account_info() จะแสดงสถานะของ portfolio

Get data

ในการ feed data ก่อนอื่นสร้าง object จาก MQTTWebsocket() เพื่อใช้ในการ subscribe ข้อมูล

ในตัวอย่างนี้จะสร้าง Object ชื่อว่า mqtt ขึ้นมา

Subscribe Bid Offer

หลังจากที่ได้ Object mqtt มาแล้วในการ feed ข้อมูลเราจะมาสร้าง callback function เพื่อ execute จาก MQTTWebsocket ในที่นี้ ( callback function ชื่อว่า returnSub() )

ใช้ method subscribe_bid_offer ในการรับค่า Bid Offer

ค่าดิบๆที่ได้มาจะอยู่ในรูป dictionary เมื่อปรับปรุงให้สวยงามและ Print ค่าที่ออกมาจะเป็นดังนี้

Subscribe last price

วิธีการคล้ายๆกับการ Subscribe Bid Offer เพียงแต่ใช้ method  subscribe_price_info ในการรับค่าราคาปัจจุบัน

ค่าดิบๆที่ได้มาจะอยู่ในรูป dictionary เมื่อปรับปรุงให้สวยงามและ Print ค่าที่ออกมาจะเป็นดังนี้

PlaceOrder
คำสั่ง PlaceOrder เป็นคำสั่งที่ใช้ในการส่งคำสั่งซื้อขาย

Symbol = คือชื่อหลักทรัพย์ที่ต้องการซื้อขาย

Price = คือราคาที่ต้องการซื้อขาย

Volume = คือปริมาณที่ต้องการในการซื้อขาย

Side = คือสถานะของ Order ว่าจะเป็น "LONG" หรือ "SHORT"

Position = 
- คือรูปแบบของสถานะแบ่งเป็น เปิดสถานะ Open Position "OPEN",

- ปิดสถานะ Close Position "CLOSE"

- หรือ Auto Position "AUTO" ไม่สนใจว่าเป็นสถานะใดแต่จะใช้หลักการ net position

Pin = รหัสในการส่งคำสั่ง sandbox คือ pin="000000"

price_type = เป็น Optional กำหนดรูปแบบคำสั่ง "LIMIT", "ATO", "MP", "MP-MTL", "MP-MKT"

*ในตัวอย่างเป็น derivative account

*ทั้งนี้ Settrade API ยังสามารถส่งคำสั่งลักษณะอื่นๆได้อีก สามารถศึกษาได้จาก api-reference ของ Settrade

คำสั่งที่นำมาแสดงเป็นตัวอย่างข้างต้นเพียงไม่กี่คำสั่งเท่านั้น ทั้งนี้สามารถดูคำสั่งเพิ่มเติมจากเว็บไซต์ของ Settrade API:https://developer.settrade.com/open-api/api-reference/getting-start

เปิดบัญชี TFEX
พร้อมรับสิทธิพิเศษทันที !!
Array
(
)
		
Array
(
    [sesCAFXXSLAT] => 1711703054
    [CAFXSI18NX] => th
    [_csrf] => 817227768c03ace588ecce84592f8f52
    [CAFXSFEREF] => https://www.caf.co.th/learning-tfex/settrade-api-python-sdk.html
)
		
Array
(
    [content] => settrade-api-python-sdk
)
		
Array
(
)