安装与配置
使用宽易平台目前有两种方式:
- 使用合作方服务器
- 使用Docker下载最新版本容器在本地构建服务器
若仅仅使用行情数据功能可以直接pip安装qesdk包。详见qesdk数据接口
pypi地址:https://pypi.org/project/qesdk/
合作方服务器
目前和长江合作的服务器地址为:
若您还没有注册账号,您可以选择:
- 使用手机登录自动生成账号
- 联系我们开户:Contact – QUANTEASE
本地使用docker安装配置
如果您的电脑或云服务器是64位 x86架构(目前不支持arm架构),您可以直接在本地使用Docker安装的方式使用宽易服务。
下面分别介绍在Windows系统和Linux系统下如何安装Docker环境,以及配置本系统的具体操作。
安装配置之windows篇
安装 WSL
参考在 Windows 10 上安装 WSL 此问题,进行 Windows 宿主机的配置。
使用管理员身份在命令行下运行:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
重启操作系统
下载适用于 x64 计算机的 WSL2 Linux 内核更新包
下载后双击运行此安装包。
以管理员身份在命令行下执行:
wsl --set-default-version 2
安装 Ubuntu
在 Windows 10 的应用商店里搜索"Ubuntu"并安装:
安装时会提示输入密码,该密码是之后在启动 Ubuntu 时用的密码,请牢记
检测 Ubuntu WSL 版本
以管理员身份执行:
wsl.exe -l -v
示例中安装的 Ubuntu Name 为 "Ubuntu", 如像上图出现 Ubuntu 版本为 1, 则继续执行命令:
wsl.exe --set-version Ubuntu 2
出现下图结果即为成功:
安装 Docker
安装完成后双击 Docker Desktop Installer.exe 安装即可完成安装。
Docker 设置
Docker Desktop 安装完成后,进入 Settings 界面,选择 Resources 菜单下的 WSL INTEGRATION,并确保打开ubuntu开关,按下图设置后,点击右下角的 Apply & Restart 即可。
启动 Ubuntu
在应用商店里,选择 Ubuntu,点击"打开"按钮启动 Ubuntu,并执行命令切换到 root 用户:
sudo su -
检查 Docker 环境
在 Ubuntu 命令行中执行命令:
docker version
若能像下图一样正常显示 docker 版本信息,则正常,若出现异常,请根据提示信息解决异常问题。
宽易服务安装
在Ubuntu 命令行输入以下代码
curl -o install-qeserver.sh https://quantease.cn/downloads/qeserver/install-qeserver.sh -k
sudo chmod +x install-qeserver.sh
bash install-qeserver.sh
以上代码基本就是三步:
- 下载安装bash文件
- 修改bash文件属性使其可以执行
- 执行bash文件。
执行bash一开始会要求输入几个参数:
Please input notebook port(Input ENTER to use default:8888):
The notebook port is 8888
Please input webpage ip(Input ENTER to use default:127.0.0.1):
The notebook port is 127.0.0.1
Please input webpage port(Input ENTER to use default:5088):
The notebook port is 5088
说明:
- 首先是Notebook服务的端口,默认是8888,若与系统其他服务端口没有冲突,请直接回车即可使用默认值,否则输入其他端口号。
- 然后是监控网页使用的IP地址,若您是本地使用,直接回车使用默认值,若为云服务,请输入云服务器IP地址。
- 然后是监控网页使用的端口号,默认5088,若与系统其他服务端口没有冲突,请直接回车使用默认值,否认输入其他端口号。
执行bash文件成功后会提示:
启动服务完成,请在浏览器访问http://127.0.0.1:8888,默认用户名test,默认密码888888
启动宽易平台服务
启动浏览器,地址栏输入http://127.0.0.1:8888,看到登录界面,用户名用test,密码用888888
完成启动。若安装中出现任何问题,请及时联系我们。
若端口或者IP地址配置错误,您可以重新执行该bash文件进行配置,bash文件会主动删除之前的服务,重新建立新服务容器。(注:所有原有数据可能丢失,在安装成功后请勿在此使用该bash文件)。
bash install-qeserver.sh
安装配置之linux篇
Linux对Docker非常友好,也是仅需要两步:安装并启动Docker; 下载宽易服务bash文件并运行。
Linux下安装Docker
若已经安装了Docker,请略过此节,直接进入安装宽易服务
安装说明:
- LInux环境对Docker非常友好,最早Docker就是基于Linux开发。如果是Windows或者Mac操作系统,也可以通过安装Linux虚拟机来使用Docker,此时就是在LInux上操作和使用整个服务。虚拟机形式下若在host主机上使用,需要了解虚拟机的网络配置映射到哪个IP地址。
通常仅需要如下命令就可以安装Docker:
Ubuntu/Debian/LinuxMint 安装
sudo apt-get update sudo apt-get install -y docker.io sudo systemctl start docker sudo systemctl enable docker
第一步若系统很新可以省掉。
CentOS/RedHat/RHEL 安装
sudo yum update sudo yum install -y docker sudo systemctl start docker sudo systemctl enable docker
第一步若系统很新可以省掉。
注:若下载太慢,通常是因为使用默认的下载源,换成国内的镜像源(比如清华,网易,豆瓣)就会很快。或者可以使用DaoCloud提供的下载方法:DaoCloud | Docker 极速下载
Docker下宽易服务安装-Linux
仅一个bash文件搞定宽易服务安装。
以root或root组成员身份在 Terminal 中输入如下命令:
curl -o install-qeserver.sh https://quantease.cn/downloads/qeserver/install-qeserver.sh -k
sudo chmod +x install-qeserver.sh
bash install-qeserver.sh
以上代码基本就是三步:
- 下载安装bash文件
- 修改bash文件属性使其可以执行
- 执行bash文件。
执行bash一开始会要求输入几个参数:
Please input notebook port(Input ENTER to use default:8888):
The notebook port is 8888
Please input webpage ip(Input ENTER to use default:127.0.0.1):
The notebook port is 127.0.0.1
Please input webpage port(Input ENTER to use default:5088):
The notebook port is 5088
说明:
- 首先是Notebook服务的端口,默认是8888,若与系统其他服务端口没有冲突,请直接回车即可使用默认值,否则输入其他端口号。
- 然后是监控网页使用的IP地址,若您是本地使用,直接回车使用默认值,若为云服务,请输入云服务器IP地址。
- 然后是监控网页使用的端口号,默认5088,若与系统其他服务端口没有冲突,请直接回车使用默认值,否认输入其他端口号。
执行bash文件成功后会提示:
Quantease service is launched. Please visit http://127.0.0.1:8888 to use it.
Default username: test
Default password: 888888
此时在您的浏览器打开该网址,输入用户名密码即可使用宽易平台服务了。(默认用户名test 密码888888)
若端口或者IP地址配置错误,您可以重新执行该bash文件进行配置,bash文件会主动删除之前的服务,重新建立新服务容器。(注:所有原有数据可能丢失,在安装成功后请勿在此使用该bash文件)。
bash install-qeserver.sh
若安装中出现任何问题,请及时联系我们。
本地docker服务常见错误解决方法
在 Windows 10 的安装说明:
参考说明:建议使用.Windows 10/11专业版或企业版,版本号2004以上.,并且BIOS的CPU虚拟化功能已经打开。以上满足条件的话,安装最新Windows Docker Desktop(建议4.5以上)即可,在安装过程中勾选自动安装WSL2相关windows组件。
若为x64计算机架构,需要安装WSL 升级内核包:WSL x64内核升级
若第一次重启后出现如下提示信息,是因为系统要将用户设置到docker-users用户组,注销重登陆即可。
若提示安装WSL2不成功,可参考文章 WINDOWS10安装WSL步骤win10中的步骤1到步骤5(无须执行步骤6安装ubuntu)
若产生如下错误,请暂时卸载或关闭360安全卫士/腾讯管家等安全软件,并参照如下文章解决:win10启动docker报错System.InvalidOperationException
请安装后勾选如下选择项,以便重启电脑后能docker自动运行,否则可能发生因docker没有启动,导致我们的环境网页进不去。
WINDOWS10下如何查看BIOS是否已经开启CPU虚拟化 打开任务管理器,如果中CPU虚拟化不是“已启用”状态,需要BIOS中开启CPU虚拟化。
宽易服务安装
输入的几个参数:
请输入Notebook端口号,直接回车使用默认值8888:
#直接回车输入的Notebook端口为8888,或者输入相应数字再按回车。
请输入监控网页IP地址,直接回车使用默认值127.0.0.1
#直接回车输入的监控网页IP地址为127.0.0.1,或者输入相应数字再按回车。
请输入监控网页端口号,直接回车使用默认值5088
#直接回车输入的Notebook端口为5088,或者输入相应数字再按回车。
说明:
- 首先是Notebook服务的端口,默认是8888,若与系统其他服务端口没有冲突,请直接回车即可使用默认值,否则输入其他端口号。
- 然后是监控网页使用的IP地址,若您是本地使用,直接回车使用默认值,若为云服务,请输入云服务器IP地址。
- 然后是监控网页使用的端口号,默认5088,若与系统其他服务端口没有冲突,请直接回车使用默认值,否认输入其他端口号。
本地docker服务常见操作
启动宽易服务
若长期未使用宽易服务,或者重启电脑后,需要重新启动Docker 和启动宽易服务
若为Windows系统:
首先,启动Docker Desktop, 确保左下角小鲸鱼为绿色状态(如下图)
然后点击 Containers/Apps,选择qeserver,点击启动小图标(如下图)
Linux系统
首先启动docker:
sudo systemctl start docker
某些老旧系统无法使用该命令,可以尝试如下命令
sudo service docker start
然后启动qeserver服务:
sudo docker start qeserver
更新到宽易服务最新版本
Windows系统更新方法:
版本更新只需要先停止qeserver,再启动qeserver即可。
停止qeserver, 在docker desktop中左边选择Containers/Apps, 找到qeserver那一行,选择如下停止图标:
等‘qeserver’前面图标变成灰色,代表已经完全停止,此时再点击如下启动图标即可。
Linux系统版本更新方法
一行命令完成版本更新:
sudo docker restart qeserver
修改用户名密码
首先进入容器中
docker exec -it qeserver bash
修改test用户密码:
passwd test
增加新用户,比如新用户tom
useradd -d /home/tom -m tom
passwd tom
修改完成后,记得使用exit退出
exit
自行安装库
首先进入容器中
docker exec -it qeserver bash
docker里面操作系统是Debian 9,若要安装系统包,可以使用
apt-get install <package>
<package>
为您要安装的包名
若要安装python库,一般使用
pip install <pypi_package>
<pypi_package>
为您要安装的python库包名
修改完成后,记得使用exit退出
exit
在本机控制docker下策略
使用python程序,可以自动在本机运行或停止docker环境下写好的策略ipynb文件
在写相应python程序之前,需要事先在本机的python环境下用pip安装相应python包。
pip install docker
然后可以参考使用如下例程来对notebook中编写的ipynb格式的策略进行控制,比如加入定时计划任务。
#############################################################
#
#Pypi docker should be installed in advance:
#
# pip install docker
#
#############################################################
import docker
import os
import tarfile
client = docker.from_env()
qeserver = client.containers.get('qeserver')
###此函数可用于用程序启动qeserver ####
def startDockerServer():
global qeserver
qeserver.start()
###此函数可用于用程序停止qeserver ####
def stopDockerServer():
global qeserver
qeserver.start()
###此函数可用于在host系统控制启动某个ipynb文件后台运行####
## i.e.
## startTrade('test','csvtrade_live')
## 系统会自动在qeserver上找到test这个用户home目录下的csvtrade_live.ipynb文件并执行
def startTrade(user, filename):
global qeserver
cmd = f'/bin/bash /srv/monitor/runipynb.sh /home/{user}/{filename}'
print(qeserver.exec_run(cmd,detach=True))
###此函数可用于在host系统控制杀掉用startTrade启动的模拟或实盘交易进程####
## i.e.
## stopTrade('test','csvtrade_live')
## 系统会自动在qeserver上找到这个正在运行的进程并杀掉,终止相关交易
def stopTrade(user, filename):
global qeserver
cmd = f'cat /home/{user}/{filename}.pid'
output = qeserver.exec_run(cmd)
if output.exit_code == 0:
pid = output.output.decode('utf-8')
print('pid',pid)
cmd = f'kill -9 {pid}'
print(qeserver.exec_run(cmd))
else:
print(output)