Zu Beginn haben wir uns damit beschäftigt, warum wir ein automatisches Handelsprogramm mit der 한국투자증권 (Koreainvestment Securities)-API erstellen möchten und welche Vorteile dies bietet.
Nun möchte ich den Prozess der Informationsbeschaffung für die Entwicklung der 한국투자증권 (Koreainvestment Securities)-API zusammenfassen und mit Ihnen teilen. Da bereits viele erfahrene Entwickler die 한국투자증권 (Koreainvestment Securities)-API geteilt haben, war es nicht schwer, Informationen zu finden. Dennoch möchte ich meine Eindrücke darüber, welche Inhalte zugänglich waren, kurz kommentieren und hoffe, dass diese Informationen hilfreich sind. (Es ist empfehlenswert, mit dem GitHub-Repository zu beginnen!)
Offizielle Website
Offizielle Website von 한국투자증권 (Koreainvestment Securities)
Grundlegende Informationen können Sie auf der offiziellen Website erhalten. Über die offizielle Website von 한국투자증권 (Koreainvestment Securities) können Sie Aufgaben wie die Einrichtung von Benutzerkennung und Konto, die Beantragung von Probehandeln und die Beantragung von internationalen Transaktionen durchführen. Darüber hinaus bietet die offizielle Website einfache Links zu den Websites, die für die Entwicklung bestimmt sind.
Im Menü von Korea Investment & Securities befinden sich die entwicklungsbezogenen Inhalte im Trading-Menü.
KIS Developer Entwicklerzentrum
Die KIS Developer-Website ist eine Website, die Sie während der API-Entwicklung immer wieder besuchen sollten. Hier finden Sie detaillierte Informationen zur API-Dokumentation.
Die API zur Ausgabe des grundlegendsten Zugriffstokens.
Detaillierte Informationen zu den Anforderungs- und Antwortwerten der API. Anhand dieser Werte wird die API aufgerufen, die Antwort empfangen und verarbeitet.
GitHub - koreainvestment/open-trading-api
Dies ist das Open Trading API GitHub-Repository. In der Datei README.md finden Sie eine hilfreiche Schritt-für-Schritt-Anleitung. Daher empfehle ich, wie bereits erwähnt, mit GitHub zu beginnen.
Github Repository.
Wikidocs
Schließlich gibt es noch Wikidocs, das als Referenz für die Python-Entwicklung dienen kann. Da der Autor bei 한국투자증권 (Koreainvestment Securities) arbeitet, sind die meisten Inhalte zuverlässig. Der Grund, warum ich ‚die meisten‘ sage, ist, dass im Laufe der Zeit keine weiteren Inhalte hinzugefügt wurden und ich persönlich bei der Implementierung des Echtzeitdaten-Teils auf Probleme gestoßen bin, für die ich keine Lösung finden konnte.
Auf WikiDocs gibt es eine gute Entwicklungsanleitung.
Zusätzliche Referenzen
Wenn man sich diese Referenzmaterialien anschaut, könnte man denken, dass man mit ein bisschen Mühe schnell ein Programm entwickeln kann. Allerdings bin ich nicht so versiert und bin daher auf einige Probleme gestoßen. Deshalb habe ich verschiedene Quellen durchsucht und Hilfe erhalten. Ich werde nun die zusätzlichen Referenzen auflisten, die mir geholfen haben. Da es sich um Informationen handelt, die ich gefunden habe, sollten Sie sie auch leicht finden können.
Ein Video von 조코딩 (Jocoding) (23:41)
Durch dieses Video konnte ich die Vorteile der 한국투자증권 (Koreainvestment Securities)-API aus Benutzersicht verstehen. Und da der funktionierende Quellcode im Video erläutert wurde, war das Verständnis einfacher. Wenn Sie bereits durch die offizielle Website einen groben Überblick über die verfügbaren Funktionen erhalten haben, empfehle ich Ihnen, sich das Video von 조코딩 (Jocoding) (23:41) anzusehen.
Websockets
Wie bereits kurz erwähnt, bin ich bei der Verarbeitung von Echtzeitdaten auf Probleme gestoßen. In Wikidocs wurde Python Websockets verwendet. Allerdings war mir nicht ganz klar, was Websockets sind. In solchen Fällen muss man fragen. +_+
ChatGPT, hilf mir.
Ohne ChatGPT wäre ich verloren.
Es scheint sich um eine Methode zur Kommunikation zu handeln, bei der nach der Verbindung Daten empfangen werden können. Nach dem, was ich bisher gelesen habe, ist REST API eine Methode, bei der eine Anfrage eine Antwort erhält, während WebSocket eine Methode ist, bei der nach der Registrierung einer Anfrage fortlaufend Antworten empfangen werden. Für die Programmierung eines automatischen Handelssystems müssen beide Methoden gut implementiert und kombiniert werden.
Aber ich bin bei dem Beispiel in Wikidocs hängen geblieben. Die Anfrage über WebSocket war erfolgreich, aber dann wurde ‚while True:‘ ausgeführt und der Prozess blieb in diesem Zustand hängen. Es muss eine Lösung geben, aber als Anfänger bin ich mit dem Konzept nicht vertraut und konnte mir keinen Reim darauf machen, wie man das Problem lösen kann. Daher habe ich auf GitHub nach einem anderen Weg gesucht, den Code zu implementieren.
GitHub-Repository
- python-kis - Soju06/python-kis: 📈 Python-basierte Trading-API-Bibliothek für 한국투자증권 (Koreainvestment Securities) basierend auf REST (github.com)
- pykis - pjueon/pykis: Python-Paket zur einfachen Verwendung der neuen Open Trade API von 한국투자증권 (Koreainvestment Securities) (github.com)
- mojito - sharebook-kr/mojito: Python-Wrapper für KIS (github.com)
Ich habe erneut festgestellt, wie viele versierte Entwickler es gibt. Ich habe zwar drei Repositories geprüft, aber in diesem Fall habe ich das erste Repository, python-kis, verwendet. Ich habe den Code aus diesem Repository übernommen und den WebSocket-Teil als Referenz verwendet. Letztendlich habe ich statt der Bibliothek ‚websockets‘ die Bibliotheken ‚websocket‘ und ‚websocket-client‘ verwendet. An dieser Stelle möchte ich Soju06 und allen anderen GitHub-Nutzern, die hilfreiche Codes freigeben, meinen Dank aussprechen.
Nun kann ich diese Informationen nutzen, um mit der Entwicklung zu beginnen. Es gab zwar einige Probleme, aber ich werde diese separat zusammenfassen und mit Ihnen teilen. Als Nächstes werde ich meine Überlegungen zur ‚Struktur des automatischen Aktienhandels‘ vorstellen, die etwas grundlegender sein können. Auf dieser Basis hoffe ich, in Zukunft Fehler zu vermeiden und bereits entwickelte Teile einfach wiederverwenden zu können.
Kommentare0