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

我的策略需要加载历史的K线作为与当前的对比,我已经下载好了历史数据,但是还是无法正确加载触发,请问一下,怎么才能正确加载历史数据呢?附代码
 def on_init(self):
        """策略初始化"""
        # 检查合约信息是否已加载
        for vt_symbol in self.vt_symbols:
            contract = self.strategy_engine.main_engine.get_contract(vt_symbol)
            if not contract:
                self.write_log(f"合约 {vt_symbol} 未找到,请检查合约代码格式")
                continue
           
            # 初始化 BarGenerator 和 ArrayManager
            self.bg_dict[vt_symbol] = BarGenerator(self.on_bars)
            self.am_dict[vt_symbol] = ArrayManager(30)
       
        # 加载历史 K 线数据
        self.load_bars(30, interval=Interval.MINUTE)  # 加载过去 30 根 1 分钟 K 线数据
        self.write_log("策略初始化完成")

Member
avatar
加入于:
帖子: 1823
声望: 138

PortfolioStrategy会优先从datafeed加载历史数据,加载失败才会从数据库获取

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

沪公网安备 31011502017034号

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