问题描述
通过get_price获取日线行情,其中pre_close是否自动进行前复权?无论fq参数是多少?
解决方案
在 JoinQuant 平台中,通过 get_price 函数获取日线行情时,pre_close(昨收价)并不是无论如何都自动前复权的,而是受 fq 参数的严格控制。
根据 JoinQuant API 文档的规定,fq 参数用于设置复权选项,并且该选项对股票/基金的价格字段、成交量字段及 factor 字段均生效。pre_close 作为价格字段之一,其复权状态完全取决于您传入的 fq 参数:
- 默认情况(前复权):如果您不传入
fq参数,或者显式设置fq='pre',get_price默认返回前复权数据。此时,pre_close会自动进行前复权处理。 - 不复权(真实价格):如果您设置
fq=None,则返回的是实际的、未复权的真实价格。此时,pre_close就是除权除息前的真实昨收价,不会进行前复权。 - 后复权:如果您设置
fq='post',则pre_close会返回后复权价格。
总结
pre_close 的复权状态与 open、close、high、low 等其他价格字段保持一致,完全由 fq 参数决定。如果您需要获取真实的、未复权的昨收价,请务必在调用 get_price 时设置 fq=None。