ubuntu18安装vnpyv1.9.2之二

上一个篇文章已经安装好了,但是未配置账号.这篇继续

配置账号的参考这篇文章就行了

地址:https://github.com/vnpy/vnpy/tree/v1.9.2-LTS

quick start部分。

  1. SimNow注册CTP仿真账号,记下你的账号、密码、经纪商编号,然后下载快期查询你的交易和行情服务器地址BrokerID统一为:9999
    标准CTP:
        第一组:Trade Front:180.168.146.187:10000,Market Front:180.168.146.187:10010;【电信】
        第二组:Trade Front:180.168.146.187:10001,Market Front:180.168.146.187:10011;【电信】
        第三组:Trade Front:218.202.237.33 :10002,Market Front:218.202.237.33 :10012;【移动】

  2. 找到vn.py应用示例目录examples,打开examples\VN Trader\CTP_connect.json,修改账号、密码、服务器等为上一步注册完成后你的信息(注意使用专门的编程编辑器,如Sublime Text等,防止json编码出错)

  3. 找到VN Trader的启动入口run.py,并双击运行(若无法双击,则在当前目录按住Shift点鼠标右键,打开cmd输入python run.py运行),run.py内容如下:

# encoding: UTF-8

import sys
reload(sys)

# vn.trader模块
from vnpy.event import EventEngine
from vnpy.trader.vtEngine import MainEngine
from vnpy.trader.uiQt import createQApp
from vnpy.trader.uiMainWindow import MainWindow

# 加载底层接口
from vnpy.trader.gateway import ctpGateway, ibGateway

# 加载上层应用
from vnpy.trader.app import (riskManager, ctaStrategy, 
                             spreadTrading, algoTrading)


#----------------------------------------------------------------------
def main():
    """主程序入口"""
    # 创建Qt应用对象
    qApp = createQApp()

    # 创建事件引擎
    ee = EventEngine()

    # 创建主引擎
    me = MainEngine(ee)

    # 添加交易接口
    me.addGateway(ctpGateway)
    me.addGateway(ibGateway)

    # 添加上层应用
    me.addApp(riskManager)
    me.addApp(ctaStrategy)
    me.addApp(spreadTrading)
    me.addApp(algoTrading)

    # 创建主窗口
    mw = MainWindow(me, ee)
    mw.showMaximized()

    # 在主线程中启动Qt事件循环
    sys.exit(qApp.exec_())


if __name__ == '__main__':
    main()

如果出现错误:

2019-03-23 19:16:56,273  INFO: MAIN_ENGINE    MongoDB连接成功
Traceback (most recent call last):
  File "/home/john/anaconda3/envs/vnpy27/lib/python2.7/site-packages/vnpy-1.9.2-py2.7.egg/vnpy/trader/uiBasicWidget.py", line 298, in updateEvent
    self.updateData(data)
  File "/home/john/anaconda3/envs/vnpy27/lib/python2.7/site-packages/vnpy-1.9.2-py2.7.egg/vnpy/trader/uiBasicWidget.py", line 496, in updateData
    super(LogMonitor, self).updateData(data)
  File "/home/john/anaconda3/envs/vnpy27/lib/python2.7/site-packages/vnpy-1.9.2-py2.7.egg/vnpy/trader/uiBasicWidget.py", line 342, in updateData
    content = safeUnicode(data.__getattribute__(header))
  File "/home/john/anaconda3/envs/vnpy27/lib/python2.7/site-packages/vnpy-1.9.2-py2.7.egg/vnpy/trader/vtFunction.py", line 31, in safeUnicode
    return text_type(value)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 2: ordinal not in range(128)

就说明文件编码可能有问题,在代码的

reload(sys)下一行加上sys.setdefaultencoding('utf8'),再保存就行了

 

做完这些之后发现,登录后还是没有行情,在vntrade的日志部分,可以看到提示“首次CTP登录需要修改密码”

那就去修改呗。

但simnow和vntrade终端都没有修改的入口,网上查了查可以重置,那就重置下,重置后在登录就好了

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值