Package: qetrader
qetrader交易接口简介qetrader交易接口可以通过pip直接安装在用户本地，实现在任意python环境下进行策略开发、回测、模拟交易和实盘交易。安装说明首先，您的系统上必须已经安装了python环境（版本3.7或以上），推荐使用anaconda3. 然后，就可以按照如下步骤安装了。windows环境安装Microsoft C++ Build Tools下载链接：注：该工具版本号需要在14以上安装Redis-server数据库服务宽易提供了小工具InstallRedis.exe方便安装配套的redis-server服务。下载链接：下载后运行该工具即可qetrader使用的Redis端口号是6379。若需要修改为其他端口号，需要在qetrader安装完毕后修改qetrader的配置安装qetraderpipinstall-Uqetrader--timeout=60注： 若要加快安装速度，可以使用国内镜像站点linux环境配置安装Redislinux下安装Redis最简单快捷的方式是使用Docker安装首先用docker pull 下载redis最新版本sudo docker pull redis然后启动redis容器sudo docker run -itd --name redis-server -p 6379:6379 redis安装qetraderpipinstall-Uqetrader--timeout=60注： 若要加快安装速度，可以使用国内镜像站点使用说明启动网页服务写一个python文件命名为runWeb.pyfromqetrader.qewebimportrunWebpagerunWebpage()在Anaconda的命令行环境下进入runWeb.py所在目录，并运行如下命令pythonrunWeb.py运行后web网页服务将启动，用户可以实时查看订单委托，成交，持仓，权益和日志信息，并可以观察行情图。按键Ctrl+C或者关闭窗口可以终止该服务，网页将无法查看，重新运行上述命令后可恢复。编写策略文件并运行如下是一个python策略文件范例importqesdkfromdatetimeimportdatetime,timedeltafromqetraderimport*qesdk.auth('Your username','Your authcode')user_setting={'investorid':'000000','password':'XXXXXXXXXXXXXX','broker':'simnow'}user='myname'defgetLastToken(user):acclist=listSimuAccounts(user)iflen(acclist)>0:returnacclist[-1]else:returncreateSimuAccount(user,initCap=10000000)classmystrat(qeStratBase):def__init__(self):self.instid=['AG2306.SFE']self.datamode='minute'self.freq=1defcrossDay(self,context):passdefonBar(self,context):print(get_bar(context,1))defhandleData(self,context):passif__name__=='__main__':strat1=mystrat()token_code=getLastToken(user)runStrat(user,'real',[strat1],simu_token=token_code,real_account=user_setting)注：1.auth语句中授权码需要在https://quantease.cn上注册登录后点击主页右上角菜单'授权码'获取。2.user_setting中账户信息需要换成您自己的账户信息3.运行后复制给出的网页链接在浏览器中查看运行结果即可修改系统配置获取系统配置fromqetraderimportread_sysconfigread_sysconfig()获取结果为{'redis': {'host': '127.0.0.1', 'port': 6379, 'password': ''}, 'webpage': {'host': '127.0.0.1', 'port': 5814}}修改Redis配置接口函数为setRedisConfig(host='127.0.0.1',port=6379,password='')根据您本地Redis-server配置修改该接口，使得qetrader可以访问您的本地数据库。比如您本地Redis端口号为6380， 那么可以这么运行fromqetraderimportsetRedisConfigsetRedisConfig(port=6380)恢复默认出厂设置仅需要调用不带参数的setRedisConfig即可fromqetraderimportsetRedisConfigsetRedisConfig()修改网页配置接口函数为setWebConfig(host='127.0.0.1',port=5814)如果qetrader网页服务默认端口号5814和您本地端口冲突，您可以修改为其他端口号，比如修改为5008。fromqetraderimportsetWebConfigsetWebConfig(port=5008)恢复默认出厂设置仅需要调用不带参数的setWebConfig即可from qetrader import setWebConfig
setWebConfig()在浏览器测试一下输入网址http://127.0.0.1:5814, 出现如下文字代表启动成功qetrader网页展示服务已经成功启动如何编写策略​	请参照官方文档文档说明插件使用说明安装以“algoex“插件为例，下载插件代码如下：fromqesdkimportauthauth('your username','your authcode')fromqetrader.qepluginsimportinstallPlugininstallPlugin('algoex')运行代码后，出现如下提示代表安装成功：插件algoex下载成功
在策略文件中按如下格式import该插件:
from qetrader.plugins.qealgoex import plugin_algoex注;下载插件需要成为VIP付费客户，否则会下载失败。注册VIP请联系客户引用插件以'algoex'为例，根据按照的说明，在code中使用：fromqesdkimportauth##授权码auth('your username','your authcode')fromqetraderimportlistSimuAccounts,createSimuAccount,runStratfromqetrader.plugins.qealgoeximportplugin_algoex##实盘账户信息user_setting={'investorid':'xxxxxx','password':'xxxxxxxx','broker':'xxxxxx'}if__name__=='__main__':##换成自己的用户名user='myname'##如果有模拟账户，用第一个账户，没有新建一个tokenlist=listSimuAccounts(user)iflen(tokenlist)>0:token=tokenlist[0]else:token=createSimuAccount(user)##运行策略，algoex插件本身就是个策略实例，可以直接使用runStrat(user,'real',[plugin_algoex],simu_token=token,real_account=user_setting)