首页 > 解决方案 > 如何通过原生 API 在交易站显示买单

问题描述

from ibapi.client import EClient
from ibapi.wrapper import EWrapper
from ibapi.contract import Contract
from ibapi.order import *

import threading
import time

class IBapi(EWrapper, EClient):
    def __init__(self):
        EClient.__init__(self, self)


    def openOrder(self, orderId, contract, order, orderState):
        print('openOrder id:', orderId, contract.symbol, contract.secType, '@', contract.exchange,
              ':', order.action, order.orderType, order.totalQuantity, orderState.status)

def run_loop():
    app.run()


app = IBapi()
app.connect('127.0.0.1', 7497, 123)

# Start the socket in a thread
api_thread = threading.Thread(target=run_loop, daemon=True)
api_thread.start()

time.sleep(3)
app.disconnect()

这是我请求帐户中所有未结订单的代码。但是我只能在输出中取回卖单,而不能取回买单。我的交易站有买单记录。所以,我想知道是不是因为只能请求卖单,如果不能,我怎么能通过api请求我所做的所有订单,包括卖单和买单。

参考:https ://interactivebrokers.github.io/tws-api/index.html

标签: pythoninteractive-brokersib-api

解决方案


推荐阅读