Python 使用交互式代理IBPy获取投资组合名称和现有订单

Python 使用交互式代理IBPy获取投资组合名称和现有订单,python,interactive-brokers,ibpy,Python,Interactive Brokers,Ibpy,我已经用IBPy做了一段时间的实验;然而,以下两件事一直让我难以理解: a) 如何确定头寸所属的实际投资组合的名称?我知道如何找到头寸、它们的成本、价值等(使用message.UpdatePortfolio),但场外交易模拟可能会有许多投资组合,它有助于了解每个头寸属于哪个投资组合。甚至可以在多个投资组合中向IB发送信息吗 b) 如何使用IBPy查找现有订单?因此,当我运行代码时,我希望它显示所有头寸,以及它们的订单类型和限额(例如,如果是AAPL的限额订单,我希望找到限额价格等) 非常感谢 a

我已经用IBPy做了一段时间的实验;然而,以下两件事一直让我难以理解:

a) 如何确定头寸所属的实际投资组合的名称?我知道如何找到头寸、它们的成本、价值等(使用message.UpdatePortfolio),但场外交易模拟可能会有许多投资组合,它有助于了解每个头寸属于哪个投资组合。甚至可以在多个投资组合中向IB发送信息吗

b) 如何使用IBPy查找现有订单?因此,当我运行代码时,我希望它显示所有头寸,以及它们的订单类型和限额(例如,如果是AAPL的限额订单,我希望找到限额价格等)

非常感谢

a)据我所知,IB API没有“投资组合”的概念。您可能需要保留为哪个投资组合输入的订单列表,然后根据您的投资组合与订单数据解析IB提供的订单数据

b) IB会跟踪下订单的客户机(即调用API代码的客户机-通常默认为0)

如果您想知道哪些订单是通过客户端输入的,那么:client.reqOpenOrders()

如果您想知道所有未结订单,即通过您的客户加上其他客户或TW提交的订单,那么:client.reqAllowenOrders()