Category Archives: Settrade Open API

Settrade OpenAPI Version 2 Part #1

บทความที่แล้วผมได้แนะนำระบบ Settrade OpenAPI Version 2 กันไปบ้างแล้ว คราวนี้เราจะมาเขียนโปรแกรมเพิ่มเติมในการตรวจสอบออเดอร์กันบ้าง สำหรับวันนี้ทีเฟค S50Z22 ที่เป็นซีรี่ย์หลักในปัจจุบัน บนโปรแกรม Straming Sandbox ไม่มีการเคลื่อนไหวต้องไปใช้ตัวอื่นทดสอบการส่งคำสั่งแทน ในที่นี้ผมขอใช้ทีเฟค S50H23 ในการรันโปรแกรม place-order.py

import time
from settrade_v2 import Investor

def my_message(result):
    data = result['data']
    hi_price = data['high']
    low_price = data['low']
    last_price = data['last']
    place_order = deri.place_order(
        pin="000000",
        symbol=code,
        side=side,
        position="Auto",
        price_type="Limit",
        price=last_price,
        volume=volume,
    )
    order_no = place_order["orderNo"]
    print("Place order",code,"side =",side,"order no. =",order_no,"volume =",volume)
    print("Stock info",code,"Hi = ",hi_price,"Low =",low_price,"Last =",last_price)

volume = 1
side = "Long"
code = "S50H23"
investor = Investor(
    app_id="xxx",
    app_secret="xxx",
    broker_id="SANDBOX",
    app_code="SANDBOX",
    is_auto_queue=False)
deri = investor.Derivatives(account_no="xxx")
realtime = investor.RealtimeDataConnection()
sub = realtime.subscribe_price_info(code, on_message=my_message)
sub.start()
while True:
    time.sleep(1)
    break

หมายเหตุ xxx – ข้อมูลบัญชีในระบบ Sandbox OpenAPI

หลังจากรันโปรแกรม 2 ครั้งเราจะได้ออเดอร์บน Straming Sandbox มา 2 ออเดอร์

Continue reading

Settrade OpenAPI Version 2

หลังจากที่ตลาดหลักทรัพย์แห่งประเทศไทยได้เปิดให้ใช้งานระบบ Settrade OpenAPI มาประมาณ 3 ปี ในช่วงเดือนมีนาคม 2566 จะมีการปรับปรุงระบบครั้งใหญ่ ซึ่งจะมีการอัพเกรดจากปัจจุบันเวอร์ชัน 0.5 ไปสู่เวอร์ชัน 2.0 ในการอัพเกรดครั้งนี้จะแตกต่างจากช่วงแรกที่ยังสามารถรองรับคำสั่งชุดก่อนหน้านั้นได้ ดังนั้นหลังจากเดือนมีนาคม 2566 การใช้งาน Settrade OpenAPI จะต้องเป็นชุดคำสั่งตั้งแต่เวอร์ชัน 2 ขึ้นไป รายละเอียด

การติดตั้ง และใช้งาน OpenAPI เวอร์ชัน 2
การทดสอบโปรแกรมปัจจุบันต้องทำผ่านระบบ Sandbox

Continue reading

Settrade Open API กับฟังก์ชัน Auto Position

สำหรับท่านที่เทรด TFEX เป็นประจำคงจะทราบดีว่าฟังก์ชัน Auto Position นั้นเป็นเครื่องมือที่สำคัญอย่างยิ่งของการเปิดและปิดสัญญาอนุพันธ์ TFEX ในส่วนของ SDK for Python เวอร์ชันแรกยังไม่มี Auto Position ให้ใช้งาน แต่สำหรับ SDK for Python เวอร์ชัน 0.5.0 สามารถเรียกใช้ฟังก์ชันนี้ได้แล้ว

Settrade Open API upgrade new version

ช่วงเริ่มต้นที่ทดลองใช้ Settrade Open API ผมเริ่มใช้ตั้งแต่เวอร์ชัน 0.3.9 ตอนนั้นใช้พอร์ตจำลองผ่านระบบ Sanbox ของ settrade.com เขียนโปรแกรม จนตอนหลังเปิดพอร์ต API กับทางโบรกเกอร์ได้เรียบร้อยก็เริ่มต้นพัฒนาโปรแกรมกับพอร์ตที่ใช้งานจริง หลังจากนั้น Settrade ก็ปรับปรุง Python SDK เป็นเวอร์ชัน 0.4.0 และเวอร์ชัน 0.5.0 ตามลำดับ เท่าที่สังเกตทาง Settrade ทำการพัฒนาโปรแกรมชุดเชื่อมต่อกับ API มาอย่างต่อเนื่อง…

วันนี้จะมาแนะนำการอัพเกรดเวอร์ชันของ Settrade Open API ที่เป็นชุด SDK for Python กันครับ โดยเราสามารถอัพเกรดผ่านโปรแกรม pip ดังนี้

C:\Python> pip3 install ––upgrade settrade

# pip3 install ––upgrade settrade

ซึ่งคำสั่งอัพเกรดนี้ใช้ได้ทั้งโอเอส Windows 10 และ Linux ส่วนรายละเอียดเวอร์ชันสามารถดูได้จากเว็บไซต์ด้านล่างครับ

https://developer.settrade.com/open-api/api-reference

ท่านสามารถพูดคุยแลกเปลี่ยนความคิดเห็นได้ที่ไลน์ Python Project จาก Line QR code ด้านล่าง
#TfexRobot #PythonRobot #RobotTrade #PythonRobotTrade

TFEX Robot – โรบอทเรขาส่วนตัว

บริการโรบอทเรขาส่วนตัว แจ้งเตือนผ่านโปรแกรมไลน์จำนวนจำกัด สมัครก่อนรับสิทธิ์ก่อน แจ้งเตือนราคา TFEX แบบ real time ผ่านโปรแกรม Line บนโทรศัพท์มือถือ ไม่ต้องนั่งเฝ้าหน้าจอก็ทราบความเคลื่อนไหวราคาหุ้น TFEX ตลอดวัน โดยแจ้งเตือนตามเวลาดังนี้

• TFEX เปิดตลาดภาคเช้า เวลา 09:45 น.
• TFEX ปิดตลาดภาคเช้า เวลา 12:30 น.
• TFEX เปิดตลาดภาคบ่าย เวลา 14:15 น.
• TFEX ปิดตลาดภาคบ่าย เวลา 16:55 น.

รายละเอียดการแจ้งเตือน

• ราคาสูงสุดของวัน
• ราคาต่ำสุดของวัน
• ราคาล่าสุด
• สัญญาณ RSI
• ราคาเปลี่ยนแปลงเทียบกับวันก่อนหน้า

#TfexRobot #PythonRobot #RobotTrade #PythonRobotTrade

คอร์สภาษาไพทอนสำหรับสร้างโรบอทเทรด

หลักการสำคัญ
เรียนออนไลน์วันเสาร์และอาทิตย์ผ่านโปรแกรม Zoom สร้างโรบอทซื้อขายหุ้น TFEX โดยไม่ต้องนั่งเฝ้าหน้าจอทั้งวัน การเรียนทุกวันประกอบด้วย ภาคทฤษฏี 1 ชั่วโมง ภาคปฏิบัติ 1 ชั่วโมง ใช้สัญญาณซื้อขายที่ง่าย ไม่ซับซ้อน และมีตัวกรองสัญญาณเพิ่มอีก 1 สัญญาณ เพื่อลดการ swing ของสัญญาณซื้อขายหลัก

คอร์สที่ 1 – ไพทอนเบื้องต้น
Day 1. ระบบคอมพิวเตอร์เบื้องต้น
–           ภาษาไพทอน
–           โครงสร้างการเขียนโปรแกรมภาษาไพทอน
Day 2. ตัวแปร การกำหนดค่า และชนิดข้อมูล
–           นิพจน์ ตัวดำเนินการ
Day 3. การตัดสินใจ เงื่อนไข และการทำซ้ำ
–           ฟังชัน และโมดูล
Day 4. เขียน Flow Chart การค้นหา และจัดการข้อผิดพลาด
ค่าลงทะเบียน 14,900 บาท

คอร์สที่ 2 – Settrade Open API
Day 1. โครงสร้างพื้นฐาน Settrade Open API และ Line Chat API
Day 2. การส่งออเดอร์ Buy, Sell, Long และ Short
Day 3. การส่งสัญญาณเตือนเข้าโปรแกรม Line บนโทรศัพท์มือถือ
Day 4. สร้าง Hybridge Robot ขึ้นมาใช้งาน
ค่าลงทะเบียน 14,900 บาท

คอร์สที่ 3 – Database สำหรับ Robot Trade
Day 1. ติดตั้งและใช้งาน MariaDB
–           เรียนรู้และใช้งานภาษา SQL เบื้องต้น
Day 2. สร้าง Database และ Table สำหรับจัดเก็บราคาหุ้น
Day 3. คำนวณสัญญาณ Moving Average และ RSI จากฐานข้อมูล
Day 4. สร้าง Robot Trade เพื่อใช้งานจริง
ค่าลงทะเบียน 15,900 บาท

หากสนใจลงทะเบียนครบทั้ง 3 คอร์ส สามารถสอบถามโปรโมชั่นได้ทาง…
อีเมล python.robottrade@gmail.com
หรือเพิ่มเพื่อนจากไลน์คิวอาร์โค้ดด้านล่าง
#TfexRobot #PythonRobot #RobotTrade #PythonRobotTrade

Q&A

Continue reading

เขียนโปรแกรมเชื่อมต่อกับ Settrade Open API – Part #3

ก่อนหน้านี้ได้เขียนถึงการเรียกใช้งาน Settrade Open API เบื้องต้นกันไปแล้ว ต่อไปพาร์ทนี้เราจะทดลองส่งคำสั่งเปิดออเดอร์ SHORT หรือ LONG กันบ้างครับ โดย Settrade API มีโมดูลให้เราใช้งานสำหรับเปิดออเดอร์คือ place.order() ในบรรทัดที่ 43 โดยมีรูปแบบตามรูปด้านล่าง

Continue reading

เขียนโปรแกรมเชื่อมต่อกับ Settrade Open API – Part #2

สำหรับ part นี้เราจะนำข้อมูลของ Settrade Account Info มาแสดงผลในแบบที่ดูดีมีชาติตระกูลกันครับ เพราะ real data จะดูค่อนยากหน่อย ก่อนอื่นขออธิบายภาพรวมของโปรแกรมกันก่อน โดยส่วนแรกบรรทัดที่ 8 กำหนดไว้เพื่อที่เราจะสามารถเปิดโปรแกรม หรือรันได้โดยตรงบน Command Prompt ถัดมาบรรทัดที่ 10-11 เป็นการประกาศโมดูล และฟังก์ชันต่างๆที่เราต้องการใช้งาน เช่น configparser และ Investor (รบกวนย้อนกลับไปดูใน Part #1 ประกอบด้วย)

จากนั้นก็ดึงคอนฟิกต่างๆของ Settrade Open API เข้ามาในโปรแกรมของเรา ซึ่งอยู่ในบรรทัดที่ 13-29 ส่วนของโปรแกรมที่ทำงานจริงๆจะอยู่ในบรรทัดที่ 31-42

Continue reading

เขียนโปรแกรมเชื่อมต่อกับ Settrade Open API – Part #1

หลังจากติดตั้งโปรแกรมต่างๆเรียบร้อยแล้วเราก็มาเริ่มเขียนโปรแกรมด้วยภาษาไพทอน เพื่อเชื่อมต่อกับ Settrade Open API กันครับ โดยส่วนแรกเราจะทำการดึง Account Info ที่อยู่บนระบบของ settrade.com มาแสดงผลลัพธ์กัน ก่อนอื่นท่านก็ต้องมีโปรแกรมสำหรับสร้างหรือแก้ไขซอร์สโค้ดกันครับ ซึ่งมีให้เลือกใช้งานหลากหลายโปรแกรม เช่น Notepad, Notepad++, PyCharm จะใช้โปรแกรมไหนก็แล้วแต่ท่านถนัด

จากนั้นป้อนข้อมูลตามรูปด้านล่างนี้ โดยไฟล์แรกจะเป็นคอนฟิกไฟล์ สำหรับเก็บข้อมูลต่างๆของ Settrade Open API ที่ต้องทำแบบนี้ เพราะตัวซอร์สโค้ดกับคอนฟิกควรจะอยู่คนละที่กัน เผื่อบังเอิญเราแชร์ซอร์สโค้ดไปให้คนอื่นดู หรือท่านอาจจะพัฒนาโปรแกรมร่วมกันหลายคนข้อมูลสำคัญส่วนตัวจะได้ปลอดภัยครับ

ไฟล์แรกคือ stt-user-info.conf

Continue reading