股票接口有什么?
根据我的了解,目前市面上比较主流的股票接口大致可以分为以下四类: 部分金融大数据公司还会提供一些定制化的接口,如提供港美股交易的老虎证券就提供了ETF、债券、期权等产品的交易历史数据,而提供港股和美股实时行情的富途牛人榜也提供了港股通和美股通的选股功能。
虽然这些股票接口都可以从各个平台方的官方网站上进行获取,但直接使用平台方提供的免费接口必然存在各种问题——如数据延迟较高(一般在T+1或以后)、数据量较小或无法满足特定业务需求时无法使用等等。通过免费接口进行大规模的数据处理也有可能构成非法获取金融信息的刑事犯罪。寻找稳定、可灵活调用且数据准确的接入口,是每一个金融数据分析师都应该认真思考的问题。
接下来,我以一个实战案例为大家介绍一下如何使用第三方股票接口实现对股票数据的批量下载与处理。本次实战使用的数据来源于智德科技旗下的股管家平台( https://www.guguanjia.com/home ),该平台可提供全量的A股行情和历史交易数据,在注册成为用户后便可免费试用。
下面,我就以“招商蛇口”为例子,为大家演示如何从股管家平台上采集股票数据并使用python进行简单清洗。
第一步 提取股票数据 from pandas_datareader import DataReader as dr # 定义股票代码,此处可使用任意合法的字段作为key ds_code='000014.XSHE' with open('C:/data.csv','wb') as f: f.write(dr.get_data(ds_code)) 第二步 过滤时间日期 data=pd.read_csv('C:/data.csv',index_col=[0]) df = pd.DataFrame(data) del data 第三步 整理数据列名 df['open'] = df['Open'] df['high'] = df['High'] df['low'] = df['Low'] df['close'] = df['Close'] # 删除不相关的数据列 df.drop(['Time','TradeDate'],axis=1,inplace=True) # 转换为标准的日期格式 df['Time'] = pd.to_datetime(df['Time'],format='%Y-%m-%d %H:%M:%S') 第四步 去除时间序列中的空值 df = df.dropna() 我们所使用的股管家平台除了可以提供全市场的A股数据外,还可以自定义查询条件以获取个股的数据。在使用前,我们可以先看一下股管家平台的操作说明,以此作为参考来设置相应的参数。 在完成数据采集工作后,我们通常还需要对数据做进一步的清洗和处理,以便于之后的分析。以上介绍的只是对数据进行处理的一些基础步骤,如果大家在实际运用中遇到任何问题,都可以尝试使用这类接口来解决。