本地代码vt_symbol:由合约代码以及交易所代码共同组成,代表该合约在VN Trader内的唯一标识符,需要交易所代码是因为跨交易所的代码可能存在重复,比如000001在上交所代表的是上证指数,在深交所代表的则是平安银行; 价格跳动pricetick:意味着交易委托时价格的最小变动单位,如果精度不对则会造成委托失败 订阅行情 在上一...
首先我们要给策略实例一个名字,也就是strategy_name字段,注意每个实例的名称必须唯一,不能重复。 然后需要指定策略具体要交易的合约,通过本地代码vt_symbol来指定(合约代码 + 交易所名称)。注意在上一篇教程中我们回测使用的是RQData提供的股指连续合约数据IF88.CFFEX,该合约只是为了方便回测而人工合成的数据,在实盘交...
return strategy_symbol.split(".")[0] + "." + strategy_symbol.split(".")[1] @classmethod def __get_strategy_vt_symbols(cls, strategy_symbols): strategy_vt_symbols = [] for strategy_symbol in strategy_symbols: vt_symbol = cls.__get_vt_symbol(strategy_symbol=strategy_symbol) strategy_...
vt_symbol: str, setting: dict, ): super().init(cta_engine, strategy_name, vt_symbol, setting) self.bg05 = BarGenerator( self.on_bar, window = 5, on_window_bar = self.on_5min_bar, interval = Interval.MINUTE ) self.am = ArrayManager() 以下AI的回答: 在提供的Python代码...
vtSymbol] = tick 这个事件处理函数的作用就是,在某个地方触发了TICK事件,那么我们的事件引擎就会调用这个方法,来把event事件对象中的数据拿出来方法哦tickDict当中。至于TICK事件什么时候发生,那么就是后面会讨论的事情了。 那么DataEngine就可以讨论到这里了,后面碰到相应事件的时候我们再回来看这里的事件处理回调...
super().__init__(cta_engine, strategy_name, vt_symbol, setting) self.bg = BarGenerator(self.on_bar) self.am = ArrayManager() def on_init(self): """ Callback when strategy is inited. """ self.write_log("策略初始化") self.load_bar(10) ...
("编辑成功",message)else:infobar.error("编辑失败",message)defprocess_favorite_checked(self,state):check=self.sender()ifcheckisNone:returnrow=self.indexAt(check.pos()).row()symbol=self.item(row,1).text()name=self.item(row,2).text()exchange=self.item(row,3).text()vt_symbol=self.item(...
self.cta_engine.symbol_strategy_map[vt_symbol].append(self)# 未初始化ifnotself.inited:return# 状态标识self.inited=Falseself.trading=False# 初始化self.on_init()self.inited=True# 启动self.on_start()self.trading=Trueself.on_trading()defchange_trade_symbol(self,vt_symbol):"""CtaTemplate基类 ...
symbol=vt_symbol.split('.')[0], exchange=exchange, interval=interval, datetime=datetime.datetime.strptime(row["trade_date"], "%Y%m%d"), open_price=row["open"], high_price=row["high"], low_price=row["low"], close_price=row["close"], ...
- vtSymbol.json:这个是定义品种交易属性,回测时候从vtSymbol.json文档读取品种的交易属性,比如费率,交易每跳,比率,滑点;这样不用在回测时候维护。示例格式如下;有心的可以改成通配符,这样减少维护量。 1234567891011121314 { "MA2009.CZCE": { "rate": 0.0001, "slippage": 1, "size": 10, "pricetick": ...