VeighNa量化社区
你的开源社区量化交易平台
vnpy0755's Avatar
Member
离线
21 帖子
声望: 1

description

vnpy文档:
用户名username:111111 (6位纯数字账号)

密码password:1111111 (需要修改一次密码用于盘后测试)

经纪商编号brokerid:9999 (SimNow默认经纪商编号)

交易服务器地址td_address:218.202.237.33 :10102 (盘中测试)

行情服务器地址md_address:218.202.237.33 :10112 (盘中测试)

授权码auth_code:0000000000000000(16个0)

名称app_id:simnow_client_test

username:换成 自己注册的simnow的也是一样
description

我看论坛里面说是写在on_trade里面, 但是demo策略 BollChannelStrategy 是写在on_bar上面. 目前遇到两个问题,请大神不吝赐教!

  1. buy,sell,cover,short 这些函数的第三个参数 stop 是不是专门用做止盈止损这种条件单的?
  2. 我的停止单即使价格达到了也没有触发, 不知道是不是代码逻辑写的有问题,代码如下:
    # 使用bar.close_price 作为当前市价最新价
    def on_5min_bar():
     self.cancel_all()
     if 达到开多条件:
         # 计算多单止损和止盈价格, 开多之后下停止委托单
         self.long_stop_lose = 开多止损价格
         self.long_stop_win =  开多止盈价格
         if self.pos == 0:
             self.buy(bar.close_price, self.fixed_size)
         elif self.pos > 0:
             # 开多之后下止盈,止损停止委托单
             self.sell(self.long_stop_lose, abs(self.pos), True)
             self.sell(self.long_stop_win, abs(self.pos), True)
         elif self.pos < 0 :
             # 平掉空单
             self.cover(bar.close_price, abs(self.pos))
             # 开多单
             self.buy(self.close_price, self.fixed_size)
     if 达到开空条件:
         # 计算空单止损和止盈价格, 开空之后下停止委托单
         self.short_stop_lose = 空单止损价格
         self.short_stop_win =  空单止盈价格
         if self.pos == 0:
             self.short(bar.close_price, self.fixed_size)
         elif self.pos < 0:
             # 开空之后下止盈,止损停止委托单
             self.cover(self.short_stop_lose, abs(self.pos), True)
             self.cover(self.short_stop_win, abs(self.pos), True)
         elif self.pos > 0 :
             # 平掉多单
             self.sell(bar.close_price, abs(self.pos))
             # 开空单
             self.short(self.close_price, self.fixed_size)

如图所示:
description

CTPTEST 下市价单的时候 ,提示 交易委托失败,代码:147 ,信息: CTP: 缺少ExchangeID字段, 请填入ExchangeID
订单状态为 拒单
请教各位大神,这个是什么原因呢?

如题, 在使用simnow账号 连接CTPTEST 一切正常
enter image description here
但是 使用正式账号和仿真账号 连接CTP 的时候 没有任何反应, 也没有日志输出 . 期货公司那边已经开通了CTP 程序化交易 也拿到了 行情服务器, 交易服务器, 授权编码 brokerid 等信息 , 求助一下各位大神!

确认期货公司使用的 版本是6.3.15
enter image description here

df = rq.get_price('RB88', frequency='1m', fields=['open', 'high', 'low', 'close', 'volume'],end_date=datetime.now())

2019-07-15 14:52:00  3985.0  3989.0  3985.0  3987.0   10290.0
2019-07-15 14:53:00  3987.0  3988.0  3987.0  3987.0    4412.0
2019-07-15 14:54:00  3987.0  3992.0  3986.0  3992.0   14592.0
2019-07-15 14:55:00  3991.0  3997.0  3990.0  3996.0   34794.0
2019-07-15 14:56:00  3996.0  4006.0  3996.0  4004.0   78092.0
2019-07-15 14:57:00  4005.0  4009.0  4003.0  4008.0   48942.0
2019-07-15 14:58:00  4008.0  4014.0  4007.0  4013.0   49984.0
2019-07-15 14:59:00  4013.0  4019.0  4013.0  4018.0   46804.0
2019-07-15 15:00:00  4019.0  4031.0  4017.0  4030.0  102240.0

现在是是7月16日16:13分 ,调用以上代码,只能获取到7月15日及以前的数据,如何才能获取 7月16日 16:13分之前的数据?

回测1h k线数据, 为什么 委托记录 时间是06-06 21:00 ,成交记录的时间是06-06 22:00 , 而且每一笔订单 成交记录都比委托记录 晚一个小时 , 请问这个是在哪里设置的?

下载vnpy-2.0.5 解压到 c:\vnpy-2.0.5 , 运行 install.bat 安装后, 运行程序 run.py, 进行回测的时候发现实际运行的是

python安装目录 C:\Python\Python37\Lib\site-packages\vnpy....\strategies 下面的 策略文件, 而不是 c:\vnpy-2.0.5...\strategies 下面的文件, 请问如何能够运行c:\vnpy-2.0.5这个目录下的策略, 因为策略文件是需要经常改动的, 放在这个目录 C:\Python\Python37\Lib\site-packages\vnpy....\strategies 不方便git管理!

日志如下:
11:23:35 开始加载历史数据
11:23:35 加载进度:########## [100%]
11:23:35 历史数据加载完成,数据量:11520
11:23:37 策略初始化完成
11:23:37 开始回放历史数据
11:23:37 历史数据回放结束
11:23:37 开始计算逐日盯市盈亏
11:23:37 成交记录为空,无法计算
11:23:37 开始计算策略统计指标

debug后发现 是在回测1分钟K时, template.py 的self.trading 字段一直都是False 导致一直无法下单
同样的double_ma_strategy.py 策略 回测1h K线数据 一切正常.

© 2015-2022 微信 18391752892
备案服务号:沪ICP备18006526号

沪公网安备 31011502017034号

【用户协议】
【隐私政策】
【免责条款】