3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 JoinQuant 的 R 语言环境中,通过 request 函数调用底层的 Python API 时,强烈建议使用显式的命名参数(Named Arguments),而不是依赖参数的位置顺序。
您运行的代码是:
df <- request('get_price',code='000001.XSHE','2019-01-01','2019-02-01','1d')
出现 [1] "error: unit错误" 的原因在于,R 语言在解析未命名的参数时,按照底层接口默认的参数顺序进行了错误匹配。它很可能把 '2019-01-01' 或者 '2019-02-01' 错误地传给了 unit(或 frequency)参数,导致底层引擎识别到无效的时间单位,从而抛出 unit错误。
在 R 中调用时,只需将 start_date 和 end_date 等参数显式命名即可。正确的写法如下:
# 显式指定 start_date, end_date 和 unit 参数
df <- request('get_price',
code='000001.XSHE',
start_date='2019-01-01',
end_date='2019-02-01',
unit='1d')
print(df)
对应 Python API 的 get_price,在 R 的 request 封装中常用的参数映射如下:
security): 标的代码,如 '000001.XSHE'。'2019-01-01'。'2019-02-01'。frequency): 数据频率,如 '1d'(天)或 '1m'(分钟)。count 和 start_date 通常只能二选一,不能同时使用)。只要把参数名写清楚,就可以完美解决参数错位导致的报错问题了。