VeighNa量化社区
你的开源社区量化交易平台
Member
离线
12 帖子
声望: 0

description
大佬们这是怎么回事,明明有这么多笔成交,却没有资金曲线变化,连委托都没有。
按道理应该先有委托,成交了之后才有成交的啊。
求解惑。

写策略一般都是用if语句,满足条件就开仓。比如说
if bar.close_price > bar.low_price:
self.buy(...)
但是这样的话如果一直满足条件那岂不是会一直买入,最后买入无限多仓位。
会出现这种情况吗?如果会,怎么把第一次开仓之后的买入信号过滤掉不考虑?

xiaohe wrote:

应该是底层报错了,参考这个文档复现你的操作排查一下吧
https://github.com/vnpy/vnpy/blob/master/docs/error_debug.md

大佬,底层大概率是没问题的,系统自带的策略都能成功回测,就我自写的策略一点击就一条虚线卡住没反应。
代码从昨天到现在检查了很久都不知道问题所在,大佬能不能私信我把代码发给你检查看看,可有偿。

嗯嗯,照你说的去看了ArrayManager的源码,所以是改成下面这样吗:
if bar.close_price > self.am.high_array[-2]:
self.buy(bar.close_price, 1)

比如我要获取倒数第三根K线的收盘价,是写成bar.close_price[-3]吗?

郭易燔 wrote:

from typing import Any

大佬,请教下如果写当前K线价格大于前一根K线最高价做多一手,代码是这样吗:
if bar.close_price > bar.high_price[-1]:
self.buy(bar.close_price, 1)

description

好的谢谢,但为什么我的策略回测不了,一点击开始回测就像上面这样没响应了。一般回测不了是什么问题?
P.S.代码无语法错误,对照自带的策略看了很久都没有问题

description
使用文档在脚本加载那里说启动前需要添加两行代码,但是我看vnpy自带的策略(比如这里的布林带策略)都没有加这两行,不过一样可以回测成功。

description

这是为什么,难道那两行代码是加不加都可以吗

郭易燔 wrote:

from typing import Any

谢谢

郭易燔 wrote:

可以在全局变量中记录日k线数据,每次日线数据更新时修改全局变量中的日k线数据,小时k线直接调用全局变量中的日k线数据就行。
大佬,def init(self, cta_engine: Any, strategy_name: str, vt_symbol: str, setting: dict)这句在运行时显示cta_engine中的"Any" is not defined,这个怎么解决,是我import那里忘记引用了还是怎样。谢谢

谢谢,现在去试试 :D

请问如何实现跨周期的K线调用,比如当当日小时K线大于前日日线高点时做多,那么如何在小时K线周期上加载调用日K

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

沪公网安备 31011502017034号

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