获取金融数据使用说明,可自行运行python,也可直接获取csv文件
批量获取金融数据的目的是为了批量处理对比数据,甚至是为了量化交易。所以,不要说一些“我打开行情软件要什么数据没有”的风凉话——内容与你的需求无关。
使用说明
python代码免费提供,文件可下载——达则兼济天下,赏杯咖啡,好熬夜。
代码中有详细的注释,只要你稍懂python便可运行。
若不懂python或不想折腾,可通过csv文件获得相关数据,但需要注意只提供收盘数据,同时并非免费(需要维护,以及有些端口需付费)。
当然,可能你在使用中会遇到一些问题,或需要定制一些数据(包括定制获取的 csv 文件)——提供付费咨询和技术支持(30、50、100、300,具体看问题的难易程度)。
获取方式
分享名称:获取金融数据.zip
分享链接: https://kdy.sanrenjz.com/#s/9H5fwK5Q
访问密码:zmkm888888
或公众号回复:zmkm888888,亦可获得链接
使用方法
压缩包解压后有三个文件,分别是"_init_.py"、"finance_data.py"和"imput_req.py"三个文件。
_init_.py:是一个 Python 包的特殊文件,它用于将一个文件夹变成一个 Python 模块——是一个空文件,不要理它。
finance_data.py:是自定义函数文件,里面需不需要修改看自己的需求,比如”licence“对接的是麦蕊的数据,要自己去获取(付费),若你不使用就不用理它。而”os.chdir(r'输入存放文件的路径')“是数据导出保持的地方,按需求修改路径,若选择不要这行代码,则默认保存到 py 文件所在的文件夹中。
imput_req.py:是调取自定义函数的文件,需要调取什么数据可通过这个文件修改。若是文件现有的数据,只需将代码前的”#“去掉便可——注意:集思录可转债需填入自己的 cookie。
数据来源
代码中的获取数据途径主要包括:
- akshare:免费开源金融数据库,大多数金融数据都可从中获取。
- 东方财富 api:该 api 是我向他人要的,能使用多久未知
- 麦蕊 api:该 api 是第三方收费 api ,提供基本的技术分析数据,比如均线、kdj、macd 和 boll。当然,如果你愿折腾,还是建议自己折腾,毕竟这些数据只是通过收盘价和成交额较简单的计算(加工成本较低)。
- 价值大师网:通过爬虫爬取价值大师网的数据,而价值大师是通过各种模型计算其价值的,个人认为具有一定的参考价值。
- 问财:通过询问条件获取问财的数据。当前问财的 python 包出现问题,不能获取数据,待优化后提供。
代码或 csv 文件数据内容
python 代码获取的数据,可以根据自定义函数自行调取。
而提供的 csv 文件数据包含两部分:一部分是下面的包含的数据;另一部分由用户定制后提供的数据。
现有的数据包含:
1、指数估值:韭圈儿的指数估值数据(目前 256 只指数),主要包括 PE、PE 百分位、PB、PB 百分位、股息率和股息率百分位。若你有乌龟数据会员,可定制获取乌龟指数估值数据,由于我的会员快到期,而我不打算继续订阅,所以这里就不提供了。
2、可转债:集思录的可转债数据,由于我没会员,所以有关会员的数据是无法获取的。若你有会员,支持定制,但需要说明的是集思录定期更新其 session ID,即 cookie 会定期更新,必须向我提供账号和密码,才能获取更新后的 cookie,从而维护数据更新。
3、沪深 300 成分股技术数据:该数据由麦蕊 api 提供,为付费 api,不提供 api。而 csv 文件数据的话,提供沪深 300 成分股 5 方面的数据 (共调取 1500 次 api),包括最新交易数据(这里只提供收盘后的前复权数据,下同),KDJ、MACD、MA 和 BOLL,共 37 列,基本可以满足对沪深 300 成分股的技术分析。
当然,可以定制自选数据(不要超过 50 只),或者定制进一步处理的数据。而懂 python 的可以看说明,通过 fd.get_stock_data 自定义函数进行调取特定股票数据。
索引对应的字段含义请参考“使用说明.xlsx”文件,如下图
4、历史数据:可以定制指数、股票和场内基金的历史数据,以股票 000001 为例。
数据是从上市到最新日期,可用于回测等使用。
股票数据包括 5 部分,而场内基金和指数请看下图的说明。
5、沪深300指数成分股价值大师:该数据从价值大师网中爬取,但由于爬取的是沪深 300 成分股,每次爬取需要访问 600 次网页,恐 IP 被封,以及其数据评估数据基本都是报表之后,更新并不是很频繁。因此,该 csv 文件数据每 10 天更新一次。当然,同样接受自选定制(自选最好不要超过 20 只)。
6、excel 指数自选线性回归:该自选是个人从基金跟踪规模中挑选出的头部 100 只指数,然后分别通过 7 年 、3 年和 1 年,计算出它们的线性回归期望值、残差标准差、斜率、相关截距、系数、P 值、标准误差(字段对应的含义,参考“使用说明.xlsx”中的线性回归表)——支持定制,比较获取的是股票、场内基金,以及期限等。
投资者可以根据“线性回归期望值”加或减“残差标准差”,以及相关系数等来判断买卖点。
而跟踪指数的基金,请参考“自选.xlsx”自选中“指数”表中对应的基金,跟踪基金的筛选是规模和场内交易流动性。
东方财富 api 参数说明
上面网址获得的内容如下:
{"rc":0,"rt":17,"svr":181216957,"lt":1,"full":0,"dlmkts":"","data":{"code":"000001","market":0,"name":"平安银行","decimal":2,"dktotal":7628,"preKPrice":14.29,"prePrice":13.05,"qtMiscType":7,"klines":\["2023-03-06,14.30,13.85,14.30,13.72,1455824,2023954547.20,4.06,-3.08,-0.44,0.75","2023-03-07,13.85,13.69,14.10,13.65,1279266,1773654737.03,3.25,-1.16,-0.16,0.66","2023-03-08,13.63,13.53,13.64,13.40,1096898,1479838980.07,1.75,-1.17,-0.16,0.57","2023-03-09,13.54,13.20,13.58,13.13,1736065,2305765842.21,3.33,-2.44,-0.33,0.89","2023-03-10,13.00,13.14,13.27,13.00,856996,1128558359.50,2.05,-0.45,-0.06,0.44","2023-03-13,13.12,13.05,13.29,13.00,1000635,1309490079.38,2.21,-0.68,-0.09,0.52","2023-03-14,12.99,12.87,13.00,12.73,1149076,1474124198.86,2.07,-1.38,-0.18,0.59"\]}}
secid
:股票代码(以 0 开头的 6 位数字字符串),多个股票代码之间用逗号分隔——点前面的1表示市场,1表示沪市,0表示深市,116表示香港,106表示纳斯达克(参考东方财富,将鼠标放到美股中,左下角会出现该代码),点后面是股票代码,例如1.501012fields1
:K 线数据中的基本字段,可选值包括f1
(代码)、f2
(市场)、f3
(名称)、f4
(保留小数点位数)、f5
(上市到如今交易日总数)、f6
(K 线的前 1 日收盘价,即开始日期的前 1日收盘价)、f7
(昨日收盘价,即结束日期的前 1 日收盘价)、f8
(杂项,比如 4 是指 ETF 基金,7 是 A 股)fields2
:K 线数据,可选值包括f51
(日期时间)、f52
(开盘价)、f53
(收盘价)、f54
(最高价)、f55
(最低价)、f56
(成交量)、f57
(成交额)、f58
(振幅%)、f59
(涨跌幅%)、f60
(涨跌额)、f61
(换手率%)klt
:K 线周期,可选值包括 5(5 分钟 K 线)、15(15 分钟 K 线)、30(30 分钟 K 线)、60(60 分钟 K 线)、101(日 K 线)、102(周 K 线)、103(月 K 线)等。fqt
:复权类型,可选值包括 0(不复权)、1(前复权)、2(后复权)。beg
:开始日期(格式为 YYYYMMDD),默认值为 19900101(beg、end 和 lmt ,3 选 2)。end
:结束日期(格式为 YYYYMMDD),默认值为当前日期(beg、end 和 lmt ,3 选 2)。lmt
:返回的数据条数,默认值为 120,最大值为 3000(beg、end 和 lmt ,3 选 2)。