Как запросить стоимость входа на одну позицию? - PullRequest
0 голосов
/ 28 октября 2019

Я хочу получить среднюю стоимость одной позиции.

Я использую API IB-insync и использую reqPositions (). Результат:

[Position(account='DU1675421', contract=Stock(conId=29622888, symbol='HEIA', exchange='AEB', currency='EUR', localSymbol='HEIA', tradingClass='HEIA'), position=100.0, avgCost=90.97088),
 Position(account='DU1675421', contract=Future(conId=176791153, symbol='N225M', lastTradeDateOrContractMonth='20191212', multiplier='100', currency='JPY', localSymbol='164120019', tradingClass='NK225M'), position=1.0, avgCost=2284540.0)]

Я хотел бы получить среднюю стоимость 1 позиции. Как бы я это сделал?

b = ib.reqPositions()
while ib.sleep(0.5):
    plb = b
    print (plb)

b.avgCost () не работает.

1 Ответ

0 голосов
/ 29 октября 2019

Похоже, что reqPositions возвращает список именованных кортежей.
Чтобы получить доступ к элементу в именованном кортеже, вам нужно будет выполнить итерации по списку, например,

for position in b:
    print(position.avgCost)
...