IBpy2 和 IBGateway 之间没有交换数据



我正在使用backtrader作为IBpy2的客户端来访问我在Docker上运行的IBC控制的IBGateway。

我面临的问题是我的系统启动并挂在那里,没有错误或打印调试信息。

调试了我的方式,直到这一行,阅读:

self.m_serverVersion = self.m_reader.readInt()

正在等待通过连接接收服务器版本,该连接永远不会到达。

只有当 IBGateway 通过 docker 运行时,我才会得到这个,我不明白 IBpy 怎么可能建立连接但不能交换数据。

我无法确定问题可能在哪里,它仅在 IBC 在 docker 撰写时发生的事实表明这取决于 Docker 编写,这是我docker-compose.yml文件

---更新:---

version: '3.7'
services:
  trader:
    build: ./
    image: mytrader
    container_name: mytrader
    networks: 
      - trading
    depends_on: 
      - tws  
  tws:
    build: ./ib-docker
    image: ibconnect
    container_name: ibconnect
    ports:
      # - "4001:4001"
      - "4003:4003"
      - "5901:5901"
    volumes:
      - ./ib-docker/config.ini:/root/ibc/config.ini
      # - ./ib-docker/twsstart.sh:/opt/ibc/twsstart.sh
      - ./ib-docker/gatewaystart.sh:/opt/ibc/gatewaystart.sh
    environment:
      - TZ=UTC
      # Variables pulled from /root/IBController/IBControllerGatewayStart.sh
      - VNC_PASSWORD=password
      - IBC_PATH=/opt/ibc
      - LOG_PATH=/root/ibc/logs
    env_file:
      - tws_credentials.env
    networks: 
      - trading
networks: 
  trading: 
    driver: bridge

和网络列表

% docker network ls
NETWORK ID          NAME                    DRIVER              SCOPE
4ad25f1cf0f4        bridge                  bridge              local
9ca6f0e3f509        giuliotrader_default    bridge              local
3afbca83e020        giuliotrader_trading    bridge              local
73c2590a3a11        host                    host                local
34e58c19f5e3        none                    null                local

很乐意根据需要发布任何其他文件或信息。

谢谢

下午好,也许你应该使用从交易者到tws的链接

services:
  trader:
    links:
      - tws
    build: ./
    image: mytrader
    container_name: mytrader

相关内容

  • 没有找到相关文章

最新更新