【发布时间】:2020-07-09 18:49:27
【问题描述】:
我正在使用 Alpaca API。
import alpaca_trade_api as tradeapi
api = tradeapi.REST('key1', 'key2', 'https://paper-api.alpaca.markets', 'v2')
#retrieve open positions
pos = api.list_positions()
pos
输出:
[Position({ 'asset_class': 'us_equity',
'asset_id': 'b0b6dd9d-8b9b-48a9-ba46-b9d54906e415',
'avg_entry_price': '382.01',
'change_today': '0.0025959042399769',
'cost_basis': '382.01',
'current_price': '382.36',
'exchange': 'NASDAQ',
'lastday_price': '381.37',
'market_value': '382.36',
'qty': '1',
'side': 'long',
'symbol': 'AAPL',
'unrealized_intraday_pl': '0.35',
'unrealized_intraday_plpc': '0.0009162063820319',
'unrealized_pl': '0.35',
'unrealized_plpc': '0.0009162063820319'})]
这是我的尝试:
pos[0]['asset_id']
>>>TypeError: 'Position' object is not subscriptable
如何隔离存储在 Position 对象中的内容而不将其转换为字符串?
-
type(Position)是alpaca_trade_api.entity.Position
【问题讨论】:
-
正如@DYZ 的解决方案所述,您必须访问特定于
Position的方法。请参阅 Easily visualize the correlation of your portfolio in Python 和 Alpaca 文档。