Interactive Brokers (IB) อนุญาตให้เชื่อมต่อกับซอฟต์แวร์การซื้อขาย Trader Workstation (TWS) ผ่าน TWS API
คุณต้องเริ่ม TWS บนคอมพิวเตอร์ของคุณก่อน และภายในเมนูการตั้งค่า คุณต้องเปิดใช้งานการเข้าถึง TWS API สำหรับอินเทอร์เฟซเครือข่าย "localhost" ของคุณ (127.0.0.1) บนพอร์ต 7496 สำหรับการซื้อขายกระดาษ (บัญชีสาธิต/ทดสอบ) นี่คือพอร์ต 7497 ตามค่าเริ่มต้น ซึ่งจะทำให้สามารถเรียกใช้สคริปต์บนเครื่องเดียวกับที่คุณใช้ TWS ได้
แทนที่จะใช้ IB TWS คุณสามารถใช้ IB Gateway ได้เช่นกัน ซึ่งใช้พอร์ต 4002 ตามค่าเริ่มต้นสำหรับการซื้อขายกระดาษ (บัญชีทดลอง/ทดสอบ) และ 4001 สำหรับบัญชีที่ใช้งานอยู่/จริง/บัญชีจริง
ตรวจสอบสิ่งนี้: https://interactivebrokers.github.io/tws-api/initial_setup.html
เมื่อคุณเริ่มสคริปต์ที่เชื่อมต่อกับ TWS ของคุณ คุณจะเห็นแท็บใหม่ "API" บน TWS ของคุณ
ซอฟต์แวร์ TWS API อย่างเป็นทางการจาก Interactive Brokers อยู่ที่ https://www.interactivebrokers.com/en/trading/ib-api.php
การสนทนาเกี่ยวกับ TWS API จะดีที่สุดบน https://groups.io/g/twsapi
โปรดตรวจสอบคำถามที่พบบ่อยได้ที่: https://dimon.ca/dmitrys-tws-api-faq/
ib_async เป็นอีกหนึ่ง python API ที่จะเชื่อมต่อกับ TWS ของคุณด้วย docu ที่ https://ib-api-reloaded.github.io/ib_async/api.html และการสนทนาที่ https://groups.io/g/insync (โครงการเดิมที่https://github.com/erdewit/ib_insync)
หากต้องการติดตั้ง ib_async ให้ติดตั้ง python3 ก่อนแล้วจึงรัน:
pip3 ติดตั้ง ib_async
หากต้องการอัพเดต ib_async ในภายหลัง ให้รัน:
ติดตั้ง pip3 -- อัปเกรด ib_async
pandas เป็นไลบรารีหลามเพิ่มเติมที่มีประโยชน์สำหรับการวิเคราะห์และจัดการข้อมูล
ติดตั้งบน Debian หรือ Ubuntu Linux ด้วย:
sudo apt-get ติดตั้ง python3-pandas
หรือคุณสามารถติดตั้งผ่าน pip3:
pip3 ติดตั้งแพนด้า
สำหรับการอัปเดตให้ดำเนินการ:
ติดตั้ง pip3 -- อัปเกรดแพนด้า
สคริปต์ตัวอย่างที่ดาวน์โหลดข้อมูลหุ้นย้อนหลังสำหรับบริษัททั้งหมดของดัชนี DOW, SP500 และ Nasdaq100
ข้อมูลจะถูกจัดเก็บไว้ในไดเร็กทอรีย่อย "data" ตามค่าเริ่มต้น ดังนั้นโปรดสร้างไดเร็กทอรีนี้ก่อนที่จะเรียกใช้สคริปต์นี้
ดู stock-hist-data-download.py
วิธีอัปเดตรายการดัชนีของ SP500 และ Nasdaq100:
python3 stock-hist-data-download.py --list-index > TMPFILE diff -u stock-hist-data-download.py TMPFILE
ตรวจสอบhttps://github.com/deltaray-io/ib_dlด้วย
รัน IB TWS โดยอัตโนมัติ: https://github.com/IbcAlpha/IBC
https://groups.io/g/ibcalpha
หัวข้อ Github ที่ควรดู:
https://github.com/topics/interactive-brokers
https://github.com/topics/tws
https://github.com/topics/tws-api
https://github.com/topics/ib-api
https://github.com/topics/ibapi
IB ทับทิม: https://github.com/ib-ruby
https://github.com/andrey-zotov/ib_console
https://github.com/pavanmullapudy/InteractiveBrokers_TWS_API
https://github.com/pavanmullapudy/InteractiveBrokers_TWS_API/blob/master/futures%20and%20options/NIFTY%20ORB%20Trading%20System/tech_indicators.py
ความแตกต่างเล็กน้อยจาก TWS API คือการสืบค้นแบบยืดหยุ่นและการดาวน์โหลด/การแยกวิเคราะห์
นี่คือโครงการบางส่วนเกี่ยวกับเรื่องนี้:
https://github.com/MikePia/structjour