(로또 사는 아빠) 살림 하는 엄마

คู่มือการพัฒนา API ของบริษัทหลักทรัพย์ Korea Investment & Securities

สร้าง: 2024-04-22

สร้าง: 2024-04-22 23:53

ก่อนหน้านี้ เราได้เรียนรู้เกี่ยวกับเหตุผลในการสร้างโปรแกรมเทรดอัตโนมัติโดยใช้ API ของบริษัทหลักทรัพย์เคไอ (한국투자증권) รวมถึงข้อดีต่างๆ ที่ได้รับจากการใช้ API นี้แล้ว

ในครั้งนี้ เราจะมาสรุปและแบ่งปันขั้นตอนการรวบรวมข้อมูลที่จำเป็นสำหรับการพัฒนา API ของบริษัทหลักทรัพย์เคไอ (한국투자증권) เนื่องจากมีผู้เชี่ยวชาญหลายท่านได้แบ่งปัน API ของบริษัทหลักทรัพย์เคไอ (한국투자증권) ไว้แล้ว จึงไม่ยากที่จะค้นหาข้อมูล แต่ถึงกระนั้น เราอยากจะแชร์มุมมองและประสบการณ์ที่ได้จากการรวบรวมข้อมูล เพื่อเป็นประโยชน์ต่อผู้อ่าน (แนะนำให้เริ่มต้นจากการดูที่ GitHub ก่อนเลยนะครับ!!)


เว็บไซต์อย่างเป็นทางการ

เว็บไซต์อย่างเป็นทางการของบริษัทหลักทรัพย์เคไอ (한국투자증권)

สามารถค้นหาข้อมูลเบื้องต้นได้จากเว็บไซต์อย่างเป็นทางการของบริษัทหลักทรัพย์เคไอ (한국투자증권) โดยสามารถดำเนินการต่างๆ ผ่านเว็บไซต์ เช่น การตั้งค่าบัญชีผู้ใช้ การตั้งค่าบัญชีซื้อขาย การสมัครใช้บริการจำลองการซื้อขาย และการสมัครใช้บริการซื้อขายต่างประเทศ นอกจากนี้ เว็บไซต์ยังมีลิงก์ไปยังเว็บไซต์สำหรับนักพัฒนาอย่างง่ายดาย

คู่มือการพัฒนา API ของบริษัทหลักทรัพย์ Korea Investment & Securities

เมนูการพัฒนาในระบบของบริษัทหลักทรัพย์ Korea Investment & Securities อยู่ในเมนูการซื้อขาย



ศูนย์พัฒนา KIS Developer

เว็บไซต์ KIS Developer เป็นเว็บไซต์ที่จำเป็นต้องเข้าเยี่ยมชมอยู่เสมอระหว่างการพัฒนา API โดยสามารถตรวจสอบรายละเอียดของเอกสาร API ได้จากเว็บไซต์นี้

คู่มือการพัฒนา API ของบริษัทหลักทรัพย์ Korea Investment & Securities

API สำหรับออก Access Token ซึ่งเป็นขั้นตอนพื้นฐานที่สุด


คู่มือการพัฒนา API ของบริษัทหลักทรัพย์ Korea Investment & Securities

รายละเอียดของค่า Request และ Response ของ API ใช้ค่าเหล่านี้ในการเรียกใช้งาน API และประมวลผลข้อมูลที่ได้รับ



GitHub - koreainvestment/open-trading-api

นี่คือที่เก็บข้อมูล (Repository) ของ Open Trading API บน GitHub ไฟล์ README.md จะแนะนำขั้นตอนการทำงานอย่างละเอียด ดังนั้น ดังที่ได้กล่าวไว้ข้างต้น แนะนำให้เริ่มดูจาก GitHub ก่อนเลยครับ

คู่มือการพัฒนา API ของบริษัทหลักทรัพย์ Korea Investment & Securities

GitHub Repository



WikiDocs

สุดท้ายนี้ คือ WikiDocs ที่สามารถใช้เป็นข้อมูลอ้างอิงในการพัฒนาด้วย Python เนื่องจากผู้เขียนคือพนักงานของบริษัทหลักทรัพย์เคไอ (한국투자증권) จึงมีความน่าเชื่อถือสูง สาเหตุที่ระบุว่า “ส่วนใหญ่” เนื่องจากไม่มีการอัปเดตเนื้อหาเพิ่มเติมในช่วงเวลาหนึ่ง และส่วนตัวแล้วพบปัญหาในการทำตามขั้นตอนเกี่ยวกับข้อมูลแบบเรียลไทม์ แต่หาทางแก้ไขไม่ได้

คู่มือการพัฒนา API ของบริษัทหลักทรัพย์ Korea Investment & Securities

คู่มือการพัฒนาในรูปแบบ WikiDocs ทำได้อย่างครบถ้วน



ข้อมูลอ้างอิงเพิ่มเติม

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

วิดีโอของ Jocoding (23:41)

จากวิดีโอนี้ ทำให้เข้าใจข้อดีของ API ของบริษัทหลักทรัพย์เคไอ (한국투자증권) จากมุมมองของผู้ใช้ และเนื่องจากวิดีโอได้อธิบายโค้ดที่ทำงานได้จริง จึงทำให้เข้าใจได้ง่ายขึ้น หากก่อนหน้านี้ได้ทำความเข้าใจคร่าวๆ เกี่ยวกับข้อมูลต่างๆ จากเว็บไซต์อย่างเป็นทางการแล้ว ขอแนะนำให้ดูวิดีโอของ Jocoding (23:41) ก่อนเลยครับ


Websockets

ก่อนหน้านี้ได้กล่าวถึงไปบ้างแล้วว่า พบปัญหาในการจัดการข้อมูลแบบเรียลไทม์ โดย WikiDocs ได้ใช้ websockets ใน Python แต่ไม่เข้าใจว่า websockets คืออะไร เมื่อเกิดปัญหาแบบนี้ ก็ต้องถามสิครับ +_+


ChatGPT ช่วยด้วย

คู่มือการพัฒนา API ของบริษัทหลักทรัพย์ Korea Investment & Securities

ถ้าไม่มี ChatGPT คงแย่แน่เลย


ดูเหมือนจะเป็นวิธีการสำหรับการสื่อสาร และเมื่อเชื่อมต่อแล้ว จะสามารถรับข้อมูลได้อย่างต่อเนื่อง จากสิ่งที่ได้ศึกษา พบว่า REST API จะส่งคำขอหนึ่งครั้ง และได้รับการตอบกลับหนึ่งครั้ง แต่ Websocket จะส่งคำขอหนึ่งครั้ง และได้รับการตอบกลับอย่างต่อเนื่อง ในการเขียนโปรแกรมเทรดอัตโนมัติ จำเป็นต้องใช้ทั้งสองอย่างนี้ร่วมกัน และต้องทำงานได้อย่างราบรื่น


แต่พบปัญหาในตัวอย่างของ WikiDocs หลังจากส่งคำขอด้วย websocket แล้ว โปรแกรมก็เข้าสู่สถานะ while True: และหยุดทำงานอยู่ตรงนั้น แน่นอนว่าต้องมีวิธีแก้ไข แต่เนื่องจากผมยังเป็นมือใหม่ จึงไม่คุ้นเคยกับแนวคิดนี้ จึงไม่ทราบว่าจะแก้ไขอย่างไร ดังนั้น จึงได้ค้นหาใน GitHub ว่ามีโค้ดตัวอย่างที่เขียนด้วยวิธีอื่นหรือไม่


ที่เก็บข้อมูล (Repository) บน GitHub

  • python-kis - Soju06/python-kis: 📈 ไลบรารี API การเทรดแบบ REST ของบริษัทหลักทรัพย์เคไอ (한국투자증권) ที่เขียนด้วย Python (github.com)
  • pykis - pjueon/pykis: แพ็กเกจ Python สำหรับใช้งาน API การเทรดแบบใหม่ของบริษัทหลักทรัพย์เคไอ (한국투자증권) ได้อย่างง่ายดาย (github.com)
  • mojito - sharebook-kr/mojito: Python wrapper สำหรับ KIS (github.com)

ต้องขอขอบคุณผู้เชี่ยวชาญทุกท่านที่ได้แบ่งปันโค้ด ได้ลองตรวจสอบ 3 ที่เก็บข้อมูล (Repository) แต่ที่เลือกใช้ในครั้งนี้คือ python-kis โดยนำโค้ดส่วนที่เกี่ยวข้องกับ websocket มาใช้ สรุปแล้ว ไม่ได้ใช้ไลบรารี websockets แต่ใช้ไลบรารี websocket และ websocket-client แทน ขอขอบคุณ Soju06 และทุกท่านที่ได้แบ่งปันโค้ดดีๆ บน GitHub ครับ

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

ความคิดเห็น0

2024-11-18 สิ่งที่สนใจอย่างหลากหลายในชีวิต : ฉันใช้เวลาว่างทำอะไรบ้าง?บทความบล็อกที่เขียนเมื่อวันที่ 18 พฤศจิกายน 2024 บทความนี้กล่าวถึงงานอดิเรก การลงทุน การเรียนรู้ และกิจวัตรประจำวันต่างๆ ของผู้เขียน รวมถึงความกังวลเกี่ยวกับการเพิ่มประสิทธิภาพการทำงานผ่านระบบอัตโนมัติ
Charles Lee
Charles Lee
Charles Lee
Charles Lee

November 19, 2024

[ไม่ต้องใช้เวลา+ฟรี+รับฟรีกาแฟทุกคน] การแข่งขันจำลองการลงทุน K-BIT $8000 (บิตคอยน์/อีเธอเรียม/แอร์ดรอป)เข้าร่วมการแข่งขันจำลองการลงทุน K-BIT และรับคูปองกาแฟฟรี 8,000 ดอลลาร์สหรัฐเป็นเงินรางวัล และร่วมสร้างประสบการณ์การลงทุนที่สนุกสนานไปกับทีม Sepower
팀 세력, SEPOWER
팀 세력, SEPOWER
팀 세력, SEPOWER
팀 세력, SEPOWER

August 12, 2024

เรื่องราวการพัฒนาโครงการ LegiNote ตอนที่ 3 - Request ใน Goบทความนี้จะแนะนำกระบวนการพัฒนาโครงการ LegiNote ซึ่งใช้ภาษา Go ในการดึงข้อมูลกฎหมายจาก OpenAPI ของสภาผู้แทนราษฎร ครอบคลุมหัวข้อต่างๆ เช่น การส่งคำขอ HTTP และการกำหนดโครงสร้างข้อมูล
statpan
statpan
statpan
statpan

August 26, 2024

เรียนโค้ดดิ้งที่ไหนดี? : รวมบริการสอนโค้ดดิ้งออนไลน์สำหรับเว็บกำลังมองหาบริการสอนโค้ดดิ้งออนไลน์สำหรับเว็บอยู่ใช่ไหม? เปรียบเทียบเว็บไซต์สอนโค้ดดิ้งทั้งแบบฟรีและแบบเสียเงิน และเริ่มต้นการเรียนรู้โค้ดดิ้งที่เหมาะสมกับตัวคุณ
길리
길리
길리
길리

March 29, 2024

บริการ IT ต่างๆบทความที่รวบรวมบริษัทต่างๆ ที่ให้บริการ AI และเครื่องมือต่างๆ มากมาย เช่น การสรุปวิดีโอ YouTube การสร้างเว็บเพจ การแปลงไฟล์ PDF และอื่นๆ อีกมากมาย ลองดูลิงก์บริการต่างๆ ได้เลย
여행가고싶은블로거지만여행에대해다루진않을수있어요
여행가고싶은블로거지만여행에대해다루진않을수있어요
여행가고싶은블로거지만여행에대해다루진않을수있어요
여행가고싶은블로거지만여행에대해다루진않을수있어요

April 23, 2024

🚀 Next BNB เหรียญคริปโต้จาก VC ยักษ์ใหญ่ Hashkey แจก Airdrop บน Hashkey Exchange [Bitcoin/Ethereum/NFT]Hashkey Exchange กำลังจัดกิจกรรมแจก Airdrop โดยผู้ใช้สามารถรับโทเค็น HSK ได้หลังจากยืนยันตัวตน KYC และทำการซื้อขายคริปโต้ตามจำนวนที่กำหนด
팀 세력, SEPOWER
팀 세력, SEPOWER
팀 세력, SEPOWER
팀 세력, SEPOWER

April 25, 2024