history和attribute_history两者都是获取一段时间历史数据的API,但看着好像啊,是有什么区别呢?
有疑问的朋友往下看吧。
history和attribute_history的不同
history
可以同时获得多个股票的数据,但只能获得相同的一个数据字段。如获得 平安银行,建设银行,农业银行这3只股票,前3天的交易额。
默认不跳过停牌日期。因为获取了多只股票的数据, 可能有的股票停牌有的没有, 为了保持时间轴的一致, 默认没有跳过停牌的日期, 停牌时使用停牌前的数据填充。可选择跳过,如果跳过, 则行索引不再是日期。
attribute_history
只能获取单独一个股票的数据,但可以同时获得多个字段的数据。如获得 平安银行这一只股票,前3天的交易额,交易量,最高价,最低价等。
默认跳过停牌日期。可以选择是否跳过跳过停牌的日期, 选不跳过,则停牌时使用停牌前的数据填充。
可见关键的区别在于,history是多个股票一个字段,attribute_history 是单个股票多个字段。
那么问题来了,想要一次获取多个股票多个字段怎么办呢?——用 get_price
get_price 的特点
在策略与研究中都能使用。
可以获得任意指定时间段的数据,因此,使用不当会发生未来函数问题,使策略回测严重失真。即,能在历史上某天取用这天之后的未来数据。
可以同时获得多个股票的数据,相同的多个字段数据。如获得 平安银行,建设银行,农业银行这3只股票,20120112-20121212的交易额,交易量,最高价,最低价。
默认不跳过停牌日期。但当选择跳过时, 只能取一只股票的信息。
返回的只能是pandas.DataFrame对象,不熟悉的话,具体请到量化课堂中学习基本用法。
参考了社区帖子JoinQuant 心得——股票行情数据 感谢作者@庸俗神父
点击『阅读原文』,到JoinQuant社区浏览。

长按指纹,关注JoinQuant

