VeighNa量化社区
你的开源社区量化交易平台 | vn.py | vnpy
Member
avatar
加入于:
帖子: 42
声望: 1

BarGenerator.update_bar_minute_window() 关于窗口的数据计算

        # Check if window bar completed
        if not (bar.datetime.minute + 1) % self.window:
            if self.on_window_bar:
                self.on_window_bar(self.window_bar)

            self.window_bar = None

以5M的K线来看,21:45:00 的计算窗口不是应该从 21:41:00 - 21:45:00 吗?这里的逻辑变成了从 21:40:00 - 21:44:00。

Member
加入于:
帖子: 6137
声望: 382

VeighNa框架的时间戳是取的K线开始时间


Member
avatar
加入于:
帖子: 42
声望: 1

感谢,回复解决了我两个疑问。

另外,还想请教下,CtpTemplate除了self.pos,还有什么其它现成的方式可以记录或者查询具体的仓位(时间、成交价格等等)。我理解从策略开发的角度来说,确实只关注self.pos就应该能做自动化交易了,但报单不一定会立即成交,而我本地另外存了一份开仓平仓的记录。是否有一些更好的 best practice?CTP接口我还不太熟,但从CTP展示来看也能从柜台拿到当前持仓明细的。

Member
加入于:
帖子: 6137
声望: 382

你是想自己缓存策略的委托成交还是想查询实际持仓


Member
avatar
加入于:
帖子: 42
声望: 1

xiaohe wrote:

你是想自己缓存策略的委托成交还是想查询实际持仓
缓存策略我本地已经有的,就是基于本地策略在vnpy里进行开平仓。
主要是想查询实际持仓。

Member
加入于:
帖子: 6137
声望: 382

main_engine.get_all_positions()


Member
avatar
加入于:
帖子: 42
声望: 1

xiaohe wrote:

main_engine.get_all_positions()

感谢大佬!我还在看CtpGateway里的TdApi。

Member
avatar
加入于:
帖子: 42
声望: 1

xiaohe wrote:

VeighNa框架的时间戳是取的K线开始时间

为了解决这个问题,我加了两个 converter,从 BarData 转到 KLine,从 KLine 转到 BarData.