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

cta策略多了后,单合约很容易在相同时刻发生自成交问题,请问有大佬有解决方案吗

libiya2000 wrote:

我用楼主的代码加载tick数据到mysql的时候,500毫秒级的数据就存不到mysql, 就被忽略了,楼主的代码我用的没问题,但是感觉python 在处理mysql数据的datetime的时候,吧毫秒级别的处理没了。
mysql5.6 和 mysql8.0 我都试验过,都是这样的结果。

这块儿怎么改。有遇到过的吗?
按照您的修改了,tick的毫秒出现啦,牛

文华软件上的指标是从数据开始有的时候就开始迭代计算的,vnpy里边有ArrayManager(size=am_size),计算指标的数据的长度是有限的,你试着把am_size放大,结果就会越来越靠近文华了。

回测引擎里边是1分钟的,on_tick没有用

我采用datarecording记录tickdata数据,数据每秒钟一条,没有毫秒,id也是断断续续,明显数据有遗露,请问这是那一块出问题了?

description

@
张国平 wrote:

如果是VNPY 内部阻止单的话,只要不关VNPY就可以。
如果是直接开单的话,我个人觉得没必要重开,因为早上和晚上开盘时候价格一般都很跳,很容易吃套。
实在要做的话,可以做个判断,最后10秒发单没有成交返回的,记录价格方向品种信息放入存储,下次开盘发单
谢谢大神

14:59发出下单指定,但是被交易所拒绝而撤单,有什么方法能改到下一次开盘的时候再下单?

用Python的交易员 wrote:

vnpy.app.cta_strategy.ui里的UI组件中
谢谢谢谢!

我知道这个在cta_strategy/base.py中,我想问您的是这个事件对应的处理方法在哪能看到?一直没找到。

在cta_strategy/engine的CtaEngine类中,以下函数有一个事件 EVENT_CTA_STRATEGY,请问这个事件的register在哪?我没找到...

def put_strategy_event(self, strategy: CtaTemplate):
"""
Put an event to update strategy status.
"""
data = strategy.get_data()
event = Event(EVENT_CTA_STRATEGY, data)
self.event_engine.put(event)

那么在load_bar的时候是不是只加载 a2003.DCE的数据而不会加载 a2001.DCE的数据? 这一块该怎么处理?

各位大神好,我有一个问题,还请多多帮助,在此提前谢过啦!

vnpy 中的“行情记录” 模块记录的都是某个合约的一分钟数据。

假如我现在只记录主力合约的1分钟数据,比如当前主力合约代码为:a2001.DCE,那么插入数据库的时候,symbol字段为‘a2001’, exchange字段为 ‘DCE’。当主力合约变为:a2003.DCE的时候,我手动进行切换,那么插入数据库的时候,symbol字段为‘a2003’, exchange字段为 ‘DCE’,以此类推。这样就生成了一个商品的主连数据,但是symbol是不同的

那么如果我的策略只用到主力合约,策略作用在 a2003.DCE上,初始化需要前200天的主连数据, a2003.DCE的数据还不够,那么在load_bar的时候是不是只加载 a2006.DCE的数据而不会加载 a2001.DCE的数据? 这一块该怎么处理?

确实要 乘以2

ctp连接,使用simnow模拟账号,行情、交易连接成功,行情交易连接失败,并不断重复,弹出异常,请问这是什么问题?

“”“mainwindow has no attribuate widgets”

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

沪公网安备 31011502017034号

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