- RPA로 미국주식 자동 매매하기 (그리드 매매법)
- #RPA #UIPATH #PYTHON #미국주식 #키움 #영웅문GLOBAL #그리드 매매 #질문이 지식이 되도록#레버리지#시간적자유
ขณะนี้ผมได้พัฒนา API ของบริษัทหลักทรัพย์ Korea Investment & Securities เสร็จสิ้นไปในระดับหนึ่งแล้วครับ เหมือนกับว่ามันกำลังกลายเป็นซีรีส์จริงๆ เลยล่ะครับ เนื่องจากผ่านกระบวนการที่ยากลำบาก จึงทำให้รู้สึกท้อแท้และเศร้าใจโดยที่ไม่มีใครพูดอะไรเลย คนที่เก่งๆ คงจะสร้างมันขึ้นมาได้อย่างรวดเร็วในขั้นตอนเดียว ผมรู้สึกอิจฉาความฉลาดและพรสวรรค์ของพวกเขามาก อย่างไรก็ตาม ผมก็เตือนตัวเองอยู่เสมอว่าชีวิตไม่ได้ประกอบขึ้นด้วยแต่คนเก่งๆ และพยายามปลอบใจตัวเอง
นี่เป็นบทความที่ 5 แล้วครับ แต่ก็ไม่มีเนื้อหาอะไรมาก เป็นเพียงเรื่องราวที่มองโลกในแง่ร้ายเกี่ยวกับกระบวนการสร้างโปรแกรมเทรดอัตโนมัติโดยใช้ API ของบริษัทหลักทรัพย์ Korea Investment & Securities ถึงอย่างนั้น ถ้ามีใครติดตามอ่าน ผมก็รู้สึกขอบคุณมากๆ ครับ +_+
เมื่อเจอปัญหาที่แก้ไม่ตก ก็ต้องลองใช้ทุกวิธีที่เตรียมไว้ try except
ก่อนหน้านี้ ผมได้เขียนเกี่ยวกับปัญหาที่พบเจอระหว่างการพัฒนา API ของบริษัทหลักทรัพย์ Korea Investment & Securities บางอย่างอาจเป็นเพราะบริษัทหลักทรัพย์ Korea Investment & Securities บางอย่างอาจเป็นความผิดพลาดของผมเอง แต่เมื่อสรุปปัญหาเหล่านั้นอีกครั้ง ก็จะได้ดังต่อไปนี้
- การเปิดบัญชีกับบริษัทหลักทรัพย์ Korea Investment & Securities (กรณีที่ไม่สามารถโอนบัญชี ISA ได้)
- ไม่มีการสนับสนุนการลงทุนจำลอง
- Websockets - การรับข้อมูลแบบเรียลไทม์
- วิธีการซื้อขาย
สำหรับการเปิดบัญชีนั้น ผมได้แก้ไขปัญหาโดยการไปติดต่อที่สาขาใกล้บ้าน โชคดีที่สาขาอยู่ห่างออกไปประมาณ 40 นาที ถ้าหากว่าไม่ได้อยู่ในเขตกรุงโซล.. หรือไม่ได้อยู่ในเขตเมืองใหญ่.. และอยู่ที่ๆ มีธรรมชาติสวยงาม ผมก็อยากจะขอให้มีการเปิดบัญชีแบบออนไลน์อย่างแน่นอน อย่างไรก็ตาม การเปิดบัญชีเป็นสิ่งที่จำเป็นก่อนที่จะเริ่มพัฒนาโดยใช้ API ดังนั้นโปรดเปิดบัญชีให้เหมาะสมกับสถานการณ์ของแต่ละบุคคล
การไม่มีการสนับสนุนการลงทุนจำลองนั้น จริงๆ แล้วไม่ใช่ปัญหาใหญ่ เพียงแต่รู้สึกไม่สบายใจนิดหน่อย เช่น ถ้าซื้อหุ้นแล้วเกิดมีหนี้สินล่ะ หรือถ้าหากสร้างโทเค็นการลงทุนจริงอยู่เรื่อยๆ แล้วบัญชีถูกระงับล่ะ ฯลฯ แต่สำหรับผู้ที่เชี่ยวชาญในการพัฒนาแล้ว คงจะไม่กังวลกับเรื่องนี้ เป็นเพราะความสามารถของผมไม่เพียงพอและขาดประสบการณ์ในการเขียนโปรแกรมเกี่ยวกับหุ้น และ Websockets ก็เป็นเพราะทักษะการเขียนโปรแกรมของผมไม่ดีพอ ทำให้ไม่สามารถใช้งานได้ตามที่ต้องการ ทั้งหมดเป็นเพราะความบกพร่องของผมเองครับ ㅠ_ㅠ
ปัญหาอยู่ที่ Websocket ครับ เพราะ Websocket ทำให้ผมรู้สึกว่าตัวเองไม่มีความสามารถ!! แต่จริงๆ แล้วตัวอย่างที่ให้มาเดิมนั้น ผมไม่เข้าใจเลยว่าต้องแก้ไขอย่างไร ในสถานการณ์เช่นนี้ ผมคิดว่ามี "ทางเลือกในการดำเนินการต่ออีกไม่กี่ทาง"
- เรียนรู้ Websockets เพื่อแก้ไขปัญหานี้ให้ได้!!
- ลองดูว่าคนอื่นแก้ปัญหานี้ได้อย่างไร!!
วิธีที่ง่ายที่สุดก็คือการค้นหาข้อมูล แน่นอนว่าผมเลือกข้อ 2 ครับ ผมลองค้นหาในเว็บไซต์ KIS Developer ของบริษัทหลักทรัพย์ Korea Investment & Securities ด้วยคำหลักไม่กี่คำ แต่ก็หาคำตอบที่ดีไม่ได้ (ส่วนใหญ่เป็นคำถามลับๆ โอ๊ยยย..) ถัดไปก็ถึงตา ChatGPT แล้วล่ะครับ แต่ผมก็ไม่รู้ว่าจะถามอะไรดี "ผมกำลังพัฒนา API ของบริษัทหลักทรัพย์ Korea Investment & Securities และใช้ websockets เพื่อรับข้อมูลแบบเรียลไทม์ นี่คือโค้ดที่ผมใช้ในตอนนี้นะครับ แต่ในสถานะนี้ ผมอยากจะเพิ่มและลบข้อมูลราคาซื้อขาย ราคาเสนอซื้อ ราคาเสนอขาย และข้อมูลการซื้อขายแบบเรียลไทม์ จะต้องทำอย่างไรดี?"
ถ้าไม่มี ChatGPT ก็ไม่รู้จะทำยังไงแล้ว…
ตัวอย่างโค้ดที่ให้มาดีมากเลย… แต่ผลลัพธ์มันเหมือนกันหมดเลยอ่ะ…
วิธีสุดท้ายคือการค้นหาใน github repository
GitHub ดีมากเลยครับ มีคนใจดีแบ่งปันโค้ดเยอะมาก ขอบคุณจริงๆ ครับ
ผมค้นหาด้วยคำว่า "koreainvestment" และพบ repository มากมาย อันแรกคือ github อย่างเป็นทางการของบริษัทหลักทรัพย์ Korea Investment & Securities ดังนั้นจึงข้ามไป อันที่สองเป็น repository ของคุณ Jocoding ถ้าหากว่าใครได้ดูวิดีโอ YouTube ความยาวประมาณ 20 นาทีของเขามาก่อน ก็สามารถข้ามไปได้เลย อันที่สามดึงดูดใจผมมาก python-kis ของคุณ Soju06!! (ไม่รู้ว่าเขาชอบดื่มเหล้าโซจูหรือเปล่า หรือว่าชื่อจริงคือโซจู แต่ขอใช้โอกาสนี้ขอบคุณเขาอีกครั้งครับ ❤️) เมื่อเข้าไปสำรวจ repository นี้ พบว่ามีการทำงานเกี่ยวกับหุ้นในประเทศเกาหลีอยู่แล้ว แต่ดูเหมือนว่าจะยังไม่มีการทำงานเกี่ยวกับหุ้นต่างประเทศ จึงคิดว่าจะไม่ดูก็ได้ แต่ตอนนี้ผมพบเบาะแสที่จะช่วยแก้ไขปัญหา Websockets ได้แล้ว ไม่ใช่แล้วล่ะครับ เมื่อทดสอบกับหุ้นในประเทศเกาหลีแล้ว พบว่ามันทำงานได้โดยแก้ไขปัญหา Websockets เรียบร้อยแล้ว +_+ ผมจึงตัดสินใจที่จะนำส่วนนี้มาใช้เพื่อให้สามารถทำงานกับหุ้นต่างประเทศได้ด้วย และพยายามที่จะดูโค้ด แต่เนื่องจากความรู้ด้าน Python ของผมไม่เพียงพอ จึงไม่สามารถเข้าใจเนื้อหาที่คุณ Soju06 ทำไว้ได้ อย่างไรก็ตาม ผมได้รู้ว่าเขาใช้ websocket และ websocket-client แทน websockets และสามารถแก้ไขปัญหาได้โดยใช้เฉพาะส่วนนี้เท่านั้น การรู้ลึกๆ ก็ดีมาก แต่การไม่รู้ลึกก็ไม่ได้หมายความว่าจะสร้างไม่ได้ ผมได้เรียนรู้สิ่งนี้จากประสบการณ์อีกครั้ง (ชีวิตจึงงดงามเสมอ~ 🎶)
ในบรรดาปัญหาที่กล่าวมาข้างต้น ยังเหลือปัญหาเรื่องวิธีการซื้อขายอยู่ วิธีการซื้อขายยังคงเป็นเรื่องยาก และถ้าหากมีคำตอบที่ถูกต้อง คนที่รู้คำตอบนั้นคงจะได้ครอบครองความมั่งคั่งของทั้งโลกไปแล้วล่ะครับ แต่ผมไม่ได้มองวิธีการซื้อขายในแง่ร้าย เนื่องจากการซื้อขายหุ้นอัตโนมัติจำเป็นต้องมีเกณฑ์ในการซื้อ/ขาย เกณฑ์นั้นก็คือวิธีการซื้อขายนั่นเอง ไม่มีคำตอบที่ถูกต้อง แต่ในเชิงตรรกะนั้น วิธีการซื้อขายเป็นสิ่งที่จำเป็น คำพูดของผมเริ่มจะงงๆ แล้วนะครับ อย่างไรก็ตาม สิ่งที่ผมต้องการจะบอกก็คือ วิธีการซื้อขายยังคงเป็นเรื่องยาก แต่ถึงกระนั้น การที่ได้คิดว่าทำไมผู้ที่ว่าจ้างถึงต้องการใช้เกณฑ์เหล่านี้ ก็ช่วยให้ผมได้สะสมประสบการณ์มากขึ้น ซึ่งนับว่าเป็นเรื่องที่ดี
ผมได้ผ่านประสบการณ์และความผิดพลาดเหล่านี้มาแล้ว และในอนาคตก็คงจะต้องเจอกับกระบวนการเหล่านี้ต่อไป แต่หวังว่าบทความนี้จะเป็นประโยชน์สำหรับผู้ที่กำลังเผชิญกับปัญหาคล้ายๆ กัน หรือถ้าหากใครมีวิธีที่ดีกว่านี้ ก็ขอให้ช่วยเหลือสัตว์โลกผู้โง่เขลาคนนี้ด้วยจิตใจที่เมตตา ผมรู้สึกขอบคุณมากๆ ครับ ยินดีต้อนรับทุกช่องทางไม่ว่าจะเป็น คอมเมนต์ อีเมล หรือแชทแบบเปิด
- อีเมล : ssjokelife@naver.com
- แชทแบบเปิด : https://open.kakao.com/o/gCim3mle
นอกจากนี้ ผมยังรับงานสร้างโปรแกรมเทรดหุ้นอัตโนมัติด้วยนะครับ การที่จะนำวิธีการเทรดที่คิดไว้มาใช้จริงนั้น จำเป็นต้องมีการเขียนโค้ด แต่การเรียนรู้การเขียนโปรแกรมนั้นเป็นเรื่องที่ยากลำบาก จึงทำให้หลายคนเลือกที่จะใช้เงินแก้ปัญหา แต่ถึงแม้ว่าจะอยากใช้เงินแก้ปัญหา การหาคนที่สามารถสร้างสิ่งที่ต้องการให้ได้อย่างตรงตามใจนึกนั้นก็ไม่ใช่เรื่องง่าย ผมไม่ได้บอกว่าตัวเองเป็นคนแบบนั้น แต่ถ้าหากใครรู้สึกว่าผมมีความเป็นไปได้ที่จะทำได้บ้าง ก็อย่าลังเลที่จะติดต่อมาครับ ค่าใช้จ่ายจะถูกกำหนดขึ้นหลังจากที่เราได้พูดคุยกันเกี่ยวกับวิธีการเทรดอย่างละเอียดแล้ว และตัดสินใจที่จะเริ่มพัฒนาจริง การอธิบายให้ใครฟังเป็นหนึ่งในวิธีที่ดีในการรวบรวมวิธีการเทรดในหัวของเรา เพราะมันจะช่วยให้เราสามารถกำหนดรายละเอียดได้มากขึ้น ผมยินดีที่จะช่วยเหลือครับ เพราะผมเองก็จะได้ประโยชน์จากการช่วยเหลือด้วยเช่นกัน ❤️
ความคิดเห็น0