今天想试一下股票回测,但报open_interest
字段非法的错误。想提问的是vnpy自带的回测平台只支持期货回测吗?是否可以支持股票回测?
过程是这样的:回测图形界面里填写的本地代码是688166.SSE
。
然后点下载数据,就报错了:
意思是rqdata返回说open_interest
字段非法。
查看了一下回测引擎从rqdata获取数据的代码。发现vnpy.trader.rqdata.RqdataClient
的query_history()
方法里,从rqdata请求的字段是写死的:
# vnpy.trader.rqdata.RqdataClient query_history()
# ...
df = rqdata_get_price(
rq_symbol,
frequency=rq_interval,
fields=["open", "high", "low", "close", "volume", "open_interest"],
start_date=start,
end_date=end,
adjust_type="none"
)
固定请求["open", "high", "low", "close", "volume", "open_interest"]
。
查看rqdata的官方文档,open_interest
字段是一个期货专用的字段:
单独测试rqdata的代码,不请求open_interest
字段,数据是能正常返回不报错的,但带上就会报同样的错误:
import rqdatac as rq
from rqdatac import *
rq.init()
# 下面这句代码不报错
rq.get_price('688166.XSHG', frequency='1m', fields=["open", "high", "low", "close", "volume"],start_date='2020-01-01', end_date='2020-02-25', adjust_type='none')
# 下面这句代码报错
rq.get_price('688166.XSHG', frequency='1m', fields=["open", "high", "low", "close", "volume", "open_interest"], start_date='2020-01-01', end_date='2020-02-25', adjust_type='none')
所以想提问的是vnpy自带的回测平台只支持期货回测吗?是否可以支持股票回测?