簡體   English   中英

quantconnect IBController 需要每隔幾個小時重新登錄一次,

[英]quantconnect IBController needing to relogin every few hours,

我通過從Quantconnect獲取最新版本更新了Ryan Kennedy的 IBConnect Docker 鏡像,是我最終得到的 Docker 鏡像。

基本上 dockerfile 包含:

FROM ubuntu:18.04
MAINTAINER Ryan Kennedy <hello@ryankennedy.io>

RUN  apt-get update \
  && apt-get install -y wget \
  && apt-get install -y unzip \
  && apt-get install -y xvfb \
  && apt-get install -y libxtst6 \
  && apt-get install -y libxrender1 \
  && apt-get install -y libxi6 \
  && apt-get install -y socat \
  && apt-get install -y software-properties-common

# Setup IB TWS
RUN mkdir -p /opt/TWS
WORKDIR /opt/TWS

ENV ibgateway_version x64-v974.4g
ENV ibgateway_script ibgateway-latest-standalone-linux-${ibgateway_version}.sh
ENV ibcontroller_file IBController-QuantConnect-3.2.0.5.zip

# from https://github.com/QuantConnect/Lean/blob/master/DockerfileLeanFoundation
RUN wget http://cdn.quantconnect.com/interactive/${ibgateway_script} && \
    chmod 777 ${ibgateway_script} && \
    ./${ibgateway_script} -q && \
    wget -O ~/Jts/jts.ini http://cdn.quantconnect.com/interactive/ibgateway-latest-standalone-linux-${ibgateway_version}.jts.ini && \
    rm ${ibgateway_script}

# Install IB Controller: Installs to /opt/IBController
RUN wget http://cdn.quantconnect.com/interactive/${ibcontroller_file} && \
    unzip ${ibcontroller_file} -d /opt/IBController && \
    chmod -R 777 /opt/IBController && \
    rm ${ibcontroller_file}

# Install Java 8
RUN \
  echo oracle-java8-installer shared/accepted-oracle-license-v1-1 select true | debconf-set-selections && \
  add-apt-repository -y ppa:webupd8team/java && \
  apt-get update && \
  apt-get install -y oracle-java8-installer && \
  rm -rf /var/lib/apt/lists/* && \
  rm -rf /var/cache/oracle-jdk8-installer

WORKDIR /

#CMD yes

# Launch a virtual screen
RUN Xvfb :1 -screen 0 1024x768x24 2>&1 >/dev/null &
RUN export DISPLAY=:1

ADD runscript.sh runscript.sh
CMD bash runscript.sh

一切正常,除了每隔幾個小時開始記錄:

05:48:36:462 IBController: detected frame entitled: Connecting to server...; event=Activated
05:51:19:741 IBController: detected dialog entitled: Re-login is required; event=Opened
05:51:19:743 IBController: Let user choose whether to re-login
05:51:19:751 IBController: detected dialog entitled: Re-login is required; event=Activated
05:54:20:608 IBController: detected dialog entitled: Re-login is required; event=Closed
05:54:21:191 IBController: detected dialog entitled: Re-login is required; event=Opened
05:54:21:191 IBController: Let user choose whether to re-login

我想它由於任何原因失去了連接,然后有一個未處理的重新連接對話框,我不知道如何解決這個問題。

IBGateway、IB API C# 和 IBController 項目版本都非常緊密地耦合在一起。 它們可能不應該單獨使用,否則您會遇到像這樣的版本兼容性問題。

LEAN (您從中擴展的開源算法交易項目)附帶了我們構建的這些程序的版本,它們完美地協同工作。 LEAN 總共部署和管理了 50,000 多個實時算法,因此它經過了很好的實戰測試! 我們還分叉了 IBController 並維護了一個可用於生產的 bug,免費版本。

如果可以,我建議使用原始的 LEAN Foundation。 它將為您節省數月的頭痛。 我們有專職工程師維護代碼庫並為其做出貢獻,以確保這些組件對於 QuantConnect 社區的 70,000 名量化分析師保持可靠。

——我是創始人@QC。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM