Verwenden Sie die von au Kabucom Securities für Personen aus Python bereitgestellte Kabu-Station-API. Es wird davon ausgegangen, dass die Kabu-Station installiert ist.
Unten wird die Handelskapazität erworben, der Kontostand angezeigt und der Auftrag angezeigt.
import json
import requests
import yaml
# ---
def get_token(): #Holen Sie sich einen Token. Es ändert sich jedes Mal, wenn Sie es erhalten oder wenn Sie die Kabu-Station neu starten.
with open('auth.yaml', 'r') as yml:
auth = yaml.safe_load(yml)
url = 'http://localhost:18080/kabusapi/token'
headers = {'content-type': 'application/json'}
payload = json.dumps(
{'APIPassword': auth['PASS'],}
).encode('utf8')
response = requests.post(url, data=payload, headers=headers)
return json.loads(response.text)['Token']
# ---
token = get_token()
url = 'http://localhost:18080/kabusapi/wallet/cash'
response = requests.get(url, headers={'X-API-KEY': token,})
cash = json.loads(response.text)
print("Handelskapazität\t{}".format(cash['StockAccountWallet']))
url = 'http://localhost:18080/kabusapi/positions'
response = requests.get(url, headers={'X-API-KEY': token,})
positions = json.loads(response.text)
print('Code Markendurchschnittlicher Kaufpreis Anzahl der Bestände Aktueller Wert Gewinn / Verlust')
for position in positions:
print("{}\t{}\t{}\t{}\t{}\t{}".format(
position['Symbol'],
position['SymbolName'],
position['Price'],
position['LeavesQty'],
position['CurrentPrice'],
position['ProfitLoss']))
url = 'http://localhost:18080/kabusapi/orders'
response = requests.get(url, headers={'X-API-KEY': token,})
orders = json.loads(response.text)
print('Code Marke Bestellpreis Bestellnummer Frist')
for order in orders:
if order['State'] == 1:
print("{}\t{}\t{}\t{}\t{}".format(
order['Symbol'],
order['SymbolName'],
order['Price'],
order['OrderQty'],
order['ExpireDay'],))
Der Produktionsumgebungsport ist 18080 und der Verifizierungsumgebungsport ist 18081. Andere Verbindungen als localhost sind ebenfalls nicht möglich.
[Anfrage] Informationen zum API-Zugriff von einem anderen als localhost Issue#34 https://github.com/kabucom/kabusapi/issues/34
Probieren Sie es mit PowerShell aus
netsh http add urlacl url=http://[ IP ADDRESS ]:18080/ user=Everyone
Als ich es gebunden habe, wurde es mit einem 503-Fehler abgelehnt.
Recommended Posts