vnpy/Q_n_A.md
2019-09-14 11:07:22 +08:00

212 lines
7.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

--------------------------------------------------------------------------------------------
###FAQ
#1、CentOS的环境管理员身份
# 1.1 安装系列开发环境:
# cmake
yum install cmake
# 安装解压包支持
yum install bzip2.x86_64
# 安装nodejs支持request
wget -qO- https://rpm.nodesource.com/setup_8.x | bash -
yum -y install nodejs
如果安装不了更新yum后再安装
# 支持ssl
yum -y install openssl-devel
# 安装python开发库
yum install python-devel.x86_64
# 1.2 创建anaconda下的py35环境 (切换至运行用户身份例如trade)
su - trade
wget -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-4.3.1-Linux-x86_64.sh
chmod a+x Anaconda3-4.3.1-Linux-x86_64.sh
./Anaconda3-4.3.1-Linux-x86_64.sh
.
# 配置为国内的镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
选择其中一个来创建
conda create --name py35 python=3.5
激活py35
source activate py35
# 1.3 编译ctp的api
cd /home/trade/vnpy-master
cd vnpy/api/ctp
激活python环境
source activate py35
sh build.sh
cd vnctptd/test
修改tdtest.py填写账号和ip等信息
python tdtest.py 验证 ctp api是否正常。
# 安装boost (root身份
wget http://sourceforge.net/projects/boost/files/boost/1.66.0/boost_1_66_0.tar.gz/download
mv download boost_1_66_0.tar.gz
tar -xvzf boost_1_66_0.tar.gz
cd boost_1_66_0/
记得先创建好py35的虚拟环境
export CPLUS_INCLUDE_PATH=/home/trade/anaconda3/envs/py35/include/python3.5m
修改 boost_1_66_0/tools/build/example/user-config.jam
using python : 3.5 : /home/trade/anaconda3/envs/py35/bin/python3 : /home/trade/anaconda3/envs/py35/include/python3.5m : /home/trade/anaconda3/envs/py35/lib ;
把user-config.jam复制到用户目录
cp user-config.jam /root/
回到 boost_1_66_0/
运行bootstrap.sh
./bootstrap.sh --with-python=/home/trade/anaconda3/envs/py35/bin/python3 --with-python-version=3.5 --with-python-root=/home/trade/anaconda3/envs/py35
编译,安装
./b2 --buildtype=complete install
检查 /usr/local下include/boost, lib/libboos_python3.so等是否存在
# 1.4 安装vnpy其他需要的包
(py35)/home/trade/vnpy-master: conda install pyqt
(py35)/home/trade/vnpy-master: pip install -r requirements.txt
# 1.5 运行vnpy无界面
(py35)/home/trade/vnpy-master/Examples/
# 编译ctp的api(运行用户例如trade)
cd /home/trade/vnpy-master
cd vnpy/api/ctp
激活python环境
source activate py35
./build.sh
cd vnctptd/test
修改tdtest.py填写账号和ip等信息
python tdtest.py 验证 ctp api是否正常。
#2、Ubuntu的环境
sudo apt-get install gcc
sudo apt-get install make
sudo apt-get install libssl-dev
sudo apt-get install freetds-dev
sudo apt-get install python-dev
sudo apt-get install mpi-default-dev
sudo apt-get install libicu-dev
sudo apt-get install libbz2-dev
sudo apt-get install libboost-thread-dev
sudo apt-get install libboost-python-dev
sudo apt-get install cython
sudo apt-get install nodejs
sudo apt-get update && sudo apt-get install build-essential
#3、创建多版本环境
wget -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-4.3.1-Linux-x86_64.sh
chmod a+x Anaconda3-4.3.1-Linux-x86_64.sh
./Anaconda3-4.3.1-Linux-x86_64.sh
# 配置为国内的镜像
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
选择其中一个来创建
conda create --name py35 python=3.5
激活的例子
source activate py35
升级虚拟环境得pip
pip install --upgrade pip
#3、碰到的问题找不到vnpy.xx.xx(原2.7环境)
可能你使用了vnpy的原版安装到conda环境中了。需要先卸载 pip uninstall vnpy
#4、碰到的问题importError: libGL.so.1: cannot open shared object file: No such file or directory
ubuntu下sudo apt install libgl1-mesa-glx
centOS下sudo yum install mesa-libGL.x86_64
#5、碰到的问题version `GLIBCXX_3.4.21' not found
conda install libgcc
若出现更高版本需求参见第10点
#6、碰到的问题在3.5 env下安装RqPlus时报错:talib/common.c:242:28: fatal error: ta-lib/ta_defs.h: No such file or directory
locate ta_defs.h
找到地址:/home/user/anaconda3/pkgs/ta-lib-0.4.9-np111py27_0/include/ta-lib
# 复制一份到/usr/include目录下
sudo cp /home/user/anaconda3/pkgs/ta-lib-0.4.9-np111py27_0/include/ta-lib /usr/include -R
#7、碰到的问题安装某些组件提示 cl.exe Not found
如果你安装了VC基础组件需要增加一个用户环境变量把"C:\Program Files (x86)\Microsoft Visual Studio\Shared\14.0\VC\bin" 添加到path变量中
#8、Install Ta-Lib
如果你用py35虚拟环境
source activate py35
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
conda install -c quantopian ta-lib=0.4.9
# 9、数字货币的增量安装
conda install scipy
pip install autobahn
pip install twisted
若出现找不到rc.exe 请先使用vs x86&x64界面激活py35后再运行
pip install pyOpenSSL
# 10、升级gcc
使用奇正MOM的CTP API时提示`GLIBCXX_3.4.22' not found当前centos最高版本是 3.4.21通过yum不能升级需要手工下载升级。
wget http://ftp.de.debian.org/debian/pool/main/g/gcc-9/libstdc++6_9.2.1-8_amd64.deb
解压
ar -x libstdc++6_9.2.1-8_amd64.deb
(就是 ar 命令不是tar
tar -xvf data.tar.xz
安装
删除: rm /usr/lib64/libstdc++.so.6
拷贝: cp usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28 /usr/lib64/
连接: ln /usr/lib64/libstdc++.so.6.0.28 /usr/lib64/libstdc++.so.6
结果
strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX
GLIBCXX_3.4
GLIBCXX_3.4.1
GLIBCXX_3.4.2
GLIBCXX_3.4.3
GLIBCXX_3.4.4
GLIBCXX_3.4.5
GLIBCXX_3.4.6
GLIBCXX_3.4.7
GLIBCXX_3.4.8
GLIBCXX_3.4.9
GLIBCXX_3.4.10
GLIBCXX_3.4.11
GLIBCXX_3.4.12
GLIBCXX_3.4.13
GLIBCXX_3.4.14
GLIBCXX_3.4.15
GLIBCXX_3.4.16
GLIBCXX_3.4.17
GLIBCXX_3.4.18
GLIBCXX_3.4.19
GLIBCXX_3.4.20
GLIBCXX_3.4.21
GLIBCXX_3.4.22
GLIBCXX_3.4.23
GLIBCXX_3.4.24
GLIBCXX_3.4.25
GLIBCXX_DEBUG_MESSAGE_LENGTH
# 11、升级glibc
使用奇正MOM的CTP API时提示`GLIBC_2.18' not found当前centos最高版本是 3.4.21通过yum不能升级需要手工下载升级。
root 用户登录
wget http://ftp.gnu.org/gnu/glibc/glibc-2.18.tar.gz
tar zxvf glibc-2.18.tar.gz
cd glibc-2.18
mkdir build
cd build
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
make j4
make install