Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将Alpaca API对象解析为json_Python_Json_Parsing - Fatal编程技术网

Python 将Alpaca API对象解析为json

Python 将Alpaca API对象解析为json,python,json,parsing,Python,Json,Parsing,我正在使用羊驼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': 'b0

我正在使用羊驼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
如何隔离位置对象中存储的内容而不将其转换为字符串

  • type(Position)
    is
    alpaca\u trade\u api.entity.Position

    • 在过去的几天里,有这么多这样的问题,我想知道是什么激发了人们对羊驼的兴趣。答案是
      pos[0]。资产id
      :羊驼对象有属性,而不是键。

      在过去的几天里,有这么多这样的问题,我想知道是什么激发了人们对羊驼的兴趣。答案是
      pos[0]。资产id
      :羊驼对象具有属性,而不是键。

      尝试以下操作:

      getattr(pos, 'asset_id')
      
      我没有头寸,但它与资产的作用相同:

      a = api.get_asset('NFLX')
      print(getattr(a, 'symbol'))
      
      试试这个:

      getattr(pos, 'asset_id')
      
      我没有头寸,但它与资产的作用相同:

      a = api.get_asset('NFLX')
      print(getattr(a, 'symbol'))
      

      正如@DYZ的解决方案所指出的,您必须访问特定于
      位置的方法。请参阅和羊驼文档。正如@DYZ的解决方案所述,您必须访问特定于
      位置的方法。请参阅和羊驼文档。