vn.py官网
开源量化社区
Member
avatar
加入于:
帖子: 19
声望: 0

1、在非高频(如:1分钟级别)的策略里,一个合约对应一个策略的情况下,可不可以在ctp_gateway的onRspQryTradingAccount函数下,将这里面的数据如:available可用资金存放到一个CSV文件里,然后再在策略内实时访问这个文件从而达到查询账户资金的目的?
description

2、onRspQryTradingAccount函数是不是像底层持仓和CTP柜台一样6秒执行一次同步?如果这个函数6秒查询一次的话不会影响6秒频率以上的策略吧,这样才能实时将里面的数据存放到CSV里面。

Member
avatar
加入于:
帖子: 140
声望: 13

1、策略中,可通过self.main_engine.get_account(vt_accountid)来获取账户的资金信息,该信息由gateway接口定时事件轮询维护。
2、不会影响。你啥策略啊,6秒变1次权益都会有影响,很多第三方的账户交易端你老刷资金,还会有时间间隔的限制呢。

Member
avatar
加入于:
帖子: 19
声望: 0

kingmo888 wrote:

1、策略中,可通过self.main_engine.get_account(vt_accountid)来获取账户的资金信息,该信息由gateway接口定时事件轮询维护。
2、不会影响。你啥策略啊,6秒变1次权益都会有影响,很多第三方的账户交易端你老刷资金,还会有时间间隔的限制呢。
谢谢啊,不过关于第一个问题,我的vnstation 是2.5.6,代码结构有点和以前不一样,对于这个方法的实现,是不是要导入Trader的engine文件里的OmsEngine类再用get_account()函数呀?而其中的vt_accountid就是实盘的期货账号?

Member
avatar
加入于:
帖子: 19
声望: 0

kingmo888 wrote:

1、策略中,可通过self.main_engine.get_account(vt_accountid)来获取账户的资金信息,该信息由gateway接口定时事件轮询维护。
2、不会影响。你啥策略啊,6秒变1次权益都会有影响,很多第三方的账户交易端你老刷资金,还会有时间间隔的限制呢。

description

Member
avatar
加入于:
帖子: 470
声望: 25

get_account函数在MainEngine里定义,具体怎么调用可模仿vnpy/app/cta_strategty/engine下面的get_contract函数的调用方法。

Member
avatar
加入于:
帖子: 19
声望: 0

青青子荆 wrote:

get_account函数在MainEngine里定义,具体怎么调用可模仿vnpy/app/cta_strategty/engine下面的get_contract函数的调用方法。
感谢感谢,解决了

© 2015-2019 上海韦纳软件科技有限公司
备案服务号:沪ICP备18006526号-3

沪公网安备 31011502017034号