论坛里的大佬,你们好!
菜鸡我在研究阅读 vnpy_ctastrategy/engine.py 的 CtaEngine 类的 query_bar_from_datafeed() 函数时,
看到有这样的代码:
data = self.datafeed.query_history(req)
因为我有买 RQData,并且配置好了。
并且 CtpGateway 无法获得历史行情数据。
我的 trader/setting.py 的 "datafeed.name": "" 。
所以,这个 self.datafeed = vnpy_rqdata 。
但是为什么 vnpy_rqdata/rqdata_datafeed.py 里没有
def query_history(self, req: HistoryRequest) 函数呢?
这就会造成,我在 no_ui 的 run.py 中 运行 CatEngine.init_strategy(self, strategy_name: str) 函数
进一步调用 CatEngine.load_bar() 函数时,如下代码过不去。
data = self.datafeed.query_history(req)
我手动在 vnpy_rqdata/rqdata_datafeed.py 里添加如下函数后,用户策略正常在 simnow 跑了起来。
def query_history(self, req: HistoryRequest):
if req.interval == None:
return self.query_tick_history(req)
else:
return self.query_bar_history(req)
问题总结下:
我在尝试 VNPY 官方的 no_ui 的 run.py 时,
碰到 CtaEngine 类的 data = self.datafeed.query_history(req) ,找不到对应函数的问题。
我手动在 vnpy_rqdata/rqdata_datafeed.py 添加该函数后,用户策略正常运行。
想问,是不是,我调用的方式不对?
各位大佬,请喝冰可乐。
本人手上有自己从CTP柜台导出的成交记录,是Excel表格格式的,希望通过vnpy将成交记录反应在K线图上。请问如何实现呢?
我看到vnpy有k线图模块,并且可以在回测界面,将自己回测后的成交记录显示在k线图上。(通过点按钮实现(:τ」∠))
病情我找到有在examples中有candle_chart例子。但是,如何把自己的Excel表格成交记录导入呢?
我看了三天vnpy/chart目录下的代码,水平太差,看不懂。
我在 Oracle VM VirtualBox 上安装了VN Station ,但是每次微信扫码登录后,只要最小化下,就整个软件自动退出。要开起来,就得双击桌面的VN Station 再次微信扫码登录。这是为什么呢?
怎么解决呢?