vnpy/vnpy/api/ib
2017-08-18 16:35:58 +08:00
..
build 更改项目的目录结构 2017-05-04 23:23:25 +08:00
ibapi 主要改进:1、将原代码和文档中与新版本 vnpy 不兼容的部分进行了调整修复;2、集成了 VNC 服务,可以直接通过 VNC 程序运行图形界面程序;3、在制作镜像时自动编译和更新 ctp 接口程序库(其他接口也可做类似修改)。 2017-08-18 16:35:58 +08:00
test 更改项目的目录结构 2017-05-04 23:23:25 +08:00
vnib class_<std::vector<ibapi::shared_ptr<OrderCondition>>>("OrderConditionList").def(vector_indexing_suite<std::vector<ibapi::shared_ptr<OrderCondition>>, true>()); 重复定义了。 删除一行。 2017-07-26 18:46:23 +08:00
__init__.py 简化对API的引用结构,增加vnpy版本信息 2017-05-08 17:45:50 +08:00
build.sh 主要改进:1、将原代码和文档中与新版本 vnpy 不兼容的部分进行了调整修复;2、集成了 VNC 服务,可以直接通过 VNC 程序运行图形界面程序;3、在制作镜像时自动编译和更新 ctp 接口程序库(其他接口也可做类似修改)。 2017-08-18 16:35:58 +08:00
CMakeLists.txt 更改项目的目录结构 2017-05-04 23:23:25 +08:00
README_en.md 更改项目的目录结构 2017-05-04 23:23:25 +08:00
README.md 更改项目的目录结构 2017-05-04 23:23:25 +08:00
vnib.pyd 简化对API的引用结构,增加vnpy版本信息 2017-05-08 17:45:50 +08:00
vnib.so 简化对API的引用结构,增加vnpy版本信息 2017-05-08 17:45:50 +08:00

vn.ib

vn.ib is still under developing, encapsulation is partially done, further contributions are warmly welcome : )

Introduction

vn.ib is a Python encapsulation of IB POSIX C++ API with full functionality of the original C++ API. The name of functions and classes is consistent with original C++ API.

Difference between vn.py and IbPy

  1. vn.ib is a Python encapsulation of POSIX C++ API based on Boost.Python, which provides higher efficiency than IbPy.
  2. vn.ib integrates exception handling function inside the encapsulation, which avoids the disconnection to the IB server when exception is triggered.
  3. vn.ib needs to be compiled before calling (by default, .pyd file is compiled under Windows 7 32bit environment), while IbPy is a pure Python library.
  4. vn.ib is based on 9.72 beta API, while IbPy is based on old 9.70 stable API.

Changes from original API

Object comparison functions are added into shared_ptr.h and SoftDollerTier.h in order to automaticall encapsulate vector object to Python.

Linux version

Currently, revision is needed to deploy vn.ib in Linux environment:

  1. Object comparison functions are added into shared_ptr.h and SoftDollerTier.h in order to automaticall encapsulate vector object to Python.
  2. EReader.cpp: EReader::bufferedRead, change min to std::min (No revision needed in Windows environment)
  3. EClient.cpp: Add EncodeField<const char*> in order to partially characterize EncodeField<T> (If you use GCC to compile, you need to do this, otherwise you will get underfined symbol error. MSVC is free from the error).

We suspect that IB development team is developing and testing the API under Windows environment, here is the compiling process:

  1. cd vn.ib/ibapi/linux, run bash build.sh to generate twsapi.so
  2. cd vn.ib/, run bash build.sh to generate vnib.so

API version

Version: IB API for Windows beta 9.72.18

Date: 2016-09-14

Link: http://interactivebrokers.github.io/