Letztes Mal, kabu Station® API - Ich habe einen Python-Wrapper für die REST-API erstellt, aber ich werde erklären, wie man ihn einfach verwendet. Geben Sie außerdem den Code ein, den Sie tatsächlich verwenden, um die Lagerbestände zu überprüfen, die Sie halten oder bestellen.
Siehe Github: https://github.com/shirasublue/python-kabusapi
kabusapi
.import kabusapi
api = kabusapi.Context('localhost', '18080', 'hogehoge')
Der Standardwert des Arguments "Kontext" ist übrigens
hostname='localhost',
port=18080,
password=None,
token=None,
Daher können Sie bei normaler Verwendung eine Verbindung zur Produktionsumgebung herstellen, indem Sie nur das unten gezeigte Kennwort angeben.
api = kabusapi.Context(password='hogehoge')
Außerdem wird in der Kabu-Stations-API das Token jedes Mal geändert, wenn das Token erfasst oder aktiviert wird. Wenn "Token" von einem anderen Programm erfasst wird, kann es wie folgt eingestellt werden.
api = kabusapi.Context(token='fugafuga')
Informationen zum Überprüfen des Tokens finden Sie unter "api.token".
print(api.token)
positions = api.positions()
positions = sorted(positions, key=lambda x: x['Symbol']) #Nach Bestandscode sortieren
print('Codemarke, durchschnittlicher Kaufpreis, Anzahl der Besitztümer, aktueller Wert, Gewinn und Verlust')
for position in positions:
profit_loss = position['ProfitLoss']
if profit_loss == None:
profit_loss = '---'
print("{}\t{:11.7}\t{:>10}\t{:>10}\t{:>10}\t{:>10}".format(
position['Symbol'],
position['SymbolName'],
position['Price'],
position['LeavesQty'],
position['CurrentPrice'],
profit_loss))
orders = api.orders()
print('Code Marke, Bestellpreis, Anzahl der Bestellungen, aktueller Preis, Frist')
for order in orders:
state = order['State']
if state >= 4: # 1,2,3:Warten,wird bearbeitet,Verarbeitet
continue
price = order['Price']
if price == 0.0:
price = 'Markt'
side = order['Side']
if side == '2':
side = 'Kaufen'
elif side == '1':
side = 'Verkaufen'
board = api.board(symbol=order['Symbol'], exchange=1)
current_price = board["CurrentPrice"]
if current_price == None:
current_price = "---"
print("{}\t{:11.7}\t{:>10}/{:<}\t{:>10}\t{:>10}\t{:>10}".format(
order['Symbol'],
order['SymbolName'],
price,
side,
order['OrderQty'],
current_price,
order['ExpireDay'],
))
Recommended Posts