('A finance tool to get stock,fund and futures data base on eastmoney',)
Project description
Introduction
efinance 是由个人打造的用于获取股票、基金、期货数据的免费开源 Python 库,你可以使用它很方便地获取数据以便更好地服务于个人的交易系统需求。
Installation
- 通过
pip
安装
pip install efinance
- 通过
pip
更新
pip install efinance --upgrade
- 源码安装(用于开发)
git clone https://github.com/Micro-sheep/efinance
cd efinance
pip install -e .
Examples
Stock
- 获取股票历史日 K 线数据
>>> import efinance as ef
>>> # 股票代码
>>> stock_code = '600519'
>>> ef.stock.get_quote_history(stock_code)
股票名称 股票代码 日期 开盘 收盘 最高 最低 成交量 成交额 振幅 涨跌幅 涨跌额 换手率
0 贵州茅台 600519 2001-08-27 -89.74 -89.53 -89.08 -90.07 406318.0 1.410347e+09 -1.10 0.92 0.83 56.83
1 贵州茅台 600519 2001-08-28 -89.64 -89.27 -89.24 -89.72 129647.0 4.634630e+08 -0.54 0.29 0.26 18.13
2 贵州茅台 600519 2001-08-29 -89.24 -89.36 -89.24 -89.42 53252.0 1.946890e+08 -0.20 -0.10 -0.09 7.45
3 贵州茅台 600519 2001-08-30 -89.38 -89.22 -89.14 -89.44 48013.0 1.775580e+08 -0.34 0.16 0.14 6.72
4 贵州茅台 600519 2001-08-31 -89.21 -89.24 -89.12 -89.28 23231.0 8.623100e+07 -0.18 -0.02 -0.02 3.25
... ... ... ... ... ... ... ... ... ... ... ... ... ...
4756 贵州茅台 600519 2021-07-23 1937.82 1900.00 1937.82 1895.09 47585.0 9.057762e+09 2.20 -2.06 -40.01 0.38
4757 贵州茅台 600519 2021-07-26 1879.00 1804.11 1879.00 1780.00 98619.0 1.789436e+10 5.21 -5.05 -95.89 0.79
4758 贵州茅台 600519 2021-07-27 1803.00 1712.89 1810.00 1703.00 86577.0 1.523081e+10 5.93 -5.06 -91.22 0.69
4759 贵州茅台 600519 2021-07-28 1703.00 1768.90 1788.20 1682.12 85369.0 1.479247e+10 6.19 3.27 56.01 0.68
4760 贵州茅台 600519 2021-07-29 1810.01 1740.00 1823.00 1734.34 51035.0 9.067345e+09 5.01 -1.63 -28.90 0.41
[4761 rows x 13 columns]
- 获取非 A 股的股票 K 线数据(支持输入股票名称以及代码)
>>> import efinance as ef
>>> # 股票代码
>>> stock_code = 'AAPL'
>>> ef.stock.get_quote_history(stock_code)
股票名称 股票代码 日期 开盘 收盘 最高 最低 成交量 成交额 振幅 涨跌幅 涨跌额 换手率
0 苹果 AAPL 1984-09-07 -5.37 -5.37 -5.36 -5.37 2981600.0 0.000000e+00 0.00 0.00 0.00 0.02
1 苹果 AAPL 1984-09-10 -5.37 -5.37 -5.36 -5.37 2346400.0 0.000000e+00 -0.19 0.00 0.00 0.01
2 苹果 AAPL 1984-09-11 -5.36 -5.36 -5.36 -5.36 5444000.0 0.000000e+00 0.00 0.19 0.01 0.03
3 苹果 AAPL 1984-09-12 -5.36 -5.37 -5.36 -5.37 4773600.0 0.000000e+00 -0.19 -0.19 -0.01 0.03
4 苹果 AAPL 1984-09-13 -5.36 -5.36 -5.36 -5.36 7429600.0 0.000000e+00 0.00 0.19 0.01 0.04
... ... ... ... ... ... ... ... ... ... ... ... ... ...
8739 苹果 AAPL 2021-07-22 145.94 146.80 148.19 145.81 77338156.0 1.137623e+10 1.64 0.96 1.40 0.47
8740 苹果 AAPL 2021-07-23 147.55 148.56 148.72 146.92 71447416.0 1.058233e+10 1.23 1.20 1.76 0.43
8741 苹果 AAPL 2021-07-26 148.27 148.99 149.83 147.70 72434089.0 1.080774e+10 1.43 0.29 0.43 0.44
8742 苹果 AAPL 2021-07-27 149.12 146.77 149.21 145.55 104818578.0 1.540140e+10 2.46 -1.49 -2.22 0.63
8743 苹果 AAPL 2021-07-28 144.81 144.98 146.97 142.54 118931191.0 1.723188e+10 3.02 -1.22 -1.79 0.72
[8744 rows x 13 columns]
>>> # 股票名称
>>> stock_name = '微软'
>>> ef.stock.get_quote_history(stock_name)
股票名称 股票代码 日期 开盘 收盘 最高 最低 成交量 成交额 振幅 涨跌幅 涨跌额 换手率
0 微软 MSFT 1986-03-13 -20.74 -20.73 -20.73 -20.74 1.031789e+09 0.000000e+00 0.00 0.00 0.00 13.72
1 微软 MSFT 1986-03-14 -20.73 -20.73 -20.73 -20.73 3.081600e+08 0.000000e+00 0.00 0.00 0.00 4.10
2 微软 MSFT 1986-03-17 -20.73 -20.73 -20.73 -20.73 1.331712e+08 0.000000e+00 0.00 0.00 0.00 1.77
3 微软 MSFT 1986-03-18 -20.73 -20.73 -20.73 -20.73 6.776640e+07 0.000000e+00 0.00 0.00 0.00 0.90
4 微软 MSFT 1986-03-19 -20.73 -20.73 -20.73 -20.73 4.789440e+07 0.000000e+00 0.00 0.00 0.00 0.64
... ... ... ... ... ... ... ... ... ... ... ... ... ...
8357 微软 MSFT 2021-07-22 283.84 286.14 286.42 283.42 2.338406e+07 6.677062e+09 1.07 1.68 4.74 0.31
8358 微软 MSFT 2021-07-23 287.37 289.67 289.99 286.50 2.276807e+07 6.578686e+09 1.22 1.23 3.53 0.30
8359 微软 MSFT 2021-07-26 289.00 289.05 289.69 286.64 2.317607e+07 6.685868e+09 1.05 -0.21 -0.62 0.31
8360 微软 MSFT 2021-07-27 289.43 286.54 289.58 282.95 3.360407e+07 9.599993e+09 2.29 -0.87 -2.51 0.45
8361 微软 MSFT 2021-07-28 288.99 286.22 290.15 283.83 3.356685e+07 9.638499e+09 2.21 -0.11 -0.32 0.45
[8362 rows x 13 columns]
- 获取 ETF K 线数据
>>> import efinance as ef
>>> # ETF 代码(以中概互联网 ETF 为例)
>>> etf_code = '513050'
>>> ef.stock.get_quote_history(etf_code)
股票名称 股票代码 日期 开盘 收盘 最高 最低 成交量 成交额 振幅 涨跌幅 涨跌额 换手率
0 中概互联网ETF 513050 2017-01-18 0.989 0.977 0.989 0.969 345605.0 3.381795e+07 0.00 0.00 0.000 0.26
1 中概互联网ETF 513050 2017-01-19 0.978 0.989 0.990 0.978 257716.0 2.542553e+07 1.23 1.23 0.012 0.19
2 中概互联网ETF 513050 2017-01-20 0.989 0.988 0.990 0.986 50980.0 5.043289e+06 0.40 -0.10 -0.001 0.04
3 中概互联网ETF 513050 2017-01-23 0.988 0.988 0.989 0.986 13739.0 1.356129e+06 0.30 0.00 0.000 0.01
4 中概互联网ETF 513050 2017-01-24 0.989 0.989 0.992 0.987 17937.0 1.774398e+06 0.51 0.10 0.001 0.01
... ... ... ... ... ... ... ... ... ... ... ... ... ...
1097 中概互联网ETF 513050 2021-07-23 1.789 1.760 1.789 1.758 4427623.0 7.836530e+08 1.73 -1.51 -0.027 3.32
1098 中概互联网ETF 513050 2021-07-26 1.679 1.645 1.698 1.642 13035366.0 2.182816e+09 3.18 -6.53 -0.115 9.78
1099 中概互联网ETF 513050 2021-07-27 1.600 1.547 1.620 1.546 14269546.0 2.257610e+09 4.50 -5.96 -0.098 10.70
1100 中概互联网ETF 513050 2021-07-28 1.545 1.552 1.578 1.506 13141023.0 2.024106e+09 4.65 0.32 0.005 9.85
1101 中概互联网ETF 513050 2021-07-29 1.615 1.641 1.651 1.606 10658041.0 1.734404e+09 2.90 5.73 0.089 7.99
[1102 rows x 13 columns]
- 获取单只股票 5 分钟 K 线数据
>>> import efinance as ef
>>> # 股票代码
>>> stock_code = '600519'
>>> # 5 分钟
>>> frequency = 5
>>> ef.stock.get_quote_history(stock_code, klt=frequency)
股票名称 股票代码 日期 开盘 收盘 最高 最低 成交量 成交额 振幅 涨跌幅 涨跌额 换手率
0 贵州茅台 600519 2021-06-16 09:35 2172.71 2159.71 2175.71 2150.74 1885.0 411159309.0 1.15 -0.64 -14.00 0.02
1 贵州茅台 600519 2021-06-16 09:40 2156.69 2148.71 2160.48 2143.37 1238.0 268790684.0 0.79 -0.51 -11.00 0.01
2 贵州茅台 600519 2021-06-16 09:45 2149.79 2159.71 2160.69 2149.79 706.0 153631002.0 0.51 0.51 11.00 0.01
3 贵州茅台 600519 2021-06-16 09:50 2159.61 2148.87 2159.71 2148.87 586.0 127346502.0 0.50 -0.50 -10.84 0.00
4 贵州茅台 600519 2021-06-16 09:55 2148.87 2161.04 2163.71 2148.72 788.0 171491075.0 0.70 0.57 12.17 0.01
... ... ... ... ... ... ... ... ... ... ... ... ... ...
1521 贵州茅台 600519 2021-07-29 13:50 1746.51 1746.09 1748.95 1746.01 738.0 128889575.0 0.17 -0.09 -1.49 0.01
1522 贵州茅台 600519 2021-07-29 13:55 1746.08 1742.01 1746.09 1741.96 831.0 144968679.0 0.24 -0.23 -4.08 0.01
1523 贵州茅台 600519 2021-07-29 14:00 1742.00 1739.58 1742.00 1739.58 864.0 150446840.0 0.14 -0.14 -2.43 0.01
1524 贵州茅台 600519 2021-07-29 14:05 1741.87 1740.00 1745.00 1738.88 1083.0 188427970.0 0.35 0.02 0.42 0.01
1525 贵州茅台 600519 2021-07-29 14:10 1740.00 1740.02 1740.10 1740.00 59.0 10315488.0 0.01 0.00 0.02 0.00
[1526 rows x 13 columns]
- 沪深市场 A 股最新状况
>>> import efinance as ef
>>> ef.stock.get_realtime_quotes()
股票代码 股票名称 涨跌幅 最新价 涨跌额 换手率 动态市盈率 成交量 成交额 昨日收盘 总市值 流通市值 行情ID 市场类型
0 688071 N华依 207.43 50.0 28.48 67.12 -219.27 99544.0 418538896.0 13.73 3074777911.0 625999204.0 1.688071 沪A
1 301036 N双乐 118.14 54.47 27.62 54.87 28.73 130105.0 617950992.0 23.38 5100000000.0 1209212346.0 0.301036 深A
2 001210 N金房 43.98 40.33 12.32 0.98 8.8 2224.0 8925679.0 28.01 3659869945.0 915087700.0 0.001210 深A
3 688296 和达科技 21.63 33.96 5.69 43.55 -148.35 106311.0 332416720.0 26.31 3436581120.0 781185344.0 1.688296 沪A
4 300506 名家汇 20.07 7.36 1.23 11.21 23.52 557936.0 390061552.0 6.13 4821136911.0 3662128367.0 0.300506 深A
... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
4582 001209 洪兴股份 -6.62 38.3 -2.54 28.02 25.5 65819.0 236373218.0 38.34 3363223840.0 840816700.0 0.001209 深A
4583 600702 舍得酒业 -6.96 221.96 -14.97 5.27 55.65 174689.0 3610555488.0 214.98 67202499957.0 66306721170.0 1.600702 沪A
4584 601921 浙版传媒 -8.04 12.87 -1.06 22.1 23.05 491173.0 604604496.0 13.19 26955555565.0 2695555565.0 1.601921 沪A
4585 600260 凯乐科技 -9.91 5.09 -0.56 0.76 6.69 75947.0 38657023.0 5.65 5075652410.0 5063970035.0 1.600260 沪A
4586 301024 C霍普 -13.12 64.91 -9.49 28.79 72.65 30515.0 190081884.0 72.32 2663363700.0 665998000.0 0.301024 深A
Fund
- 获取基金历史净值信息
>>> import efinance as ef
>>> ef.fund.get_quote_history('161725')
日期 单位净值 累计净值 涨跌幅
0 2021-07-29 1.2726 2.9037 -1.52
1 2021-07-28 1.2922 2.9233 0.85
2 2021-07-27 1.2813 2.9124 -3.6
3 2021-07-26 1.3292 2.9603 -7.24
4 2021-07-23 1.4329 3.0640 -2.29
... ... ... ... ...
1502 2015-06-08 1.0380 1.0380 2.5692
1503 2015-06-05 1.0120 1.0120 1.5045
1504 2015-06-04 0.9970 0.9970 --
1505 2015-05-29 0.9950 0.9950 --
1506 2015-05-27 1.0000 1.0000 --
[1507 rows x 4 columns]
Bond
- 可转债整体行情
>>> import efinance as ef
>>> ef.bond.get_realtime_quotes()
债券代码 债券名称 涨跌幅 最新价 涨跌额 换手率 动态市盈率 成交量 成交额 昨日收盘 总市值 流通市值 行情ID 市场类型
0 128093 百川转债 22.73 308.0 53.9 1231.99 - 2027056 5443504896.0 237.1 478796559 478796559 0.128093 深A
1 110074 精达转债 17.36 259.0 38.04 93.64 - 530556 1312028976.0 219.16 1457252762 1457252762 1.110074 沪A
2 113047 旗滨转债 16.36 195.0 26.98 29.48 - 442252 820405952.0 164.93 2878650000 2878650000 1.113047 沪A
3 123089 九洲转2 15.38 156.0 20.698 186.2 - 677158 1019904000.0 134.58 564702298 564702298 0.123089 深A
4 123074 隆利转债 15.03 196.6 24.91 1144.2 - 2379653 4380623616.0 165.7 396422482 396422482 0.123074 深A
.. ... ... ... ... ... ... ... ... ... ... ... ... ... ...
383 128108 蓝帆转债 -1.43 122.199 -1.748 7.99 - 121936 146871594.0 121.82 1831785652 1831785652 0.128108 深A
384 110043 无锡转债 -1.5 119.0 -1.78 1.39 - 40634 47674406.0 118.7 3415662530 3415662530 1.110043 沪A
385 128026 众兴转债 -1.63 121.898 -1.956 47.21 - 193308 231279838.0 119.82 482576233 482576233 0.128026 深A
386 123065 宝莱转债 -1.7 112.35 -1.91 28.5 - 62381 69405273.0 112.6 242259344 242259344 0.123065 深A
387 128053 尚荣转债 -2.8 142.0 -4.0 327.41 - 623980 867909216.0 143.0 264907729 264907729 0.128053 深A
[388 rows x 14 columns]
- 指定可转债 K 线数据(与 stock 模块通用)
>>> import efinance as ef
>>> # 可转债代码(以 东财转3 为例)
>>> bond_code = '123111'
>>> ef.bond.get_quote_history(bond_code)
股票名称 股票代码 日期 开盘 收盘 最高 最低 成交量 成交额 振幅 涨跌幅 涨跌额 换手率
0 东财转3 123111 2021-04-23 130.000 130.000 130.000 130.000 1836427 2.387355e+09 0.00 30.00 30.000 11.62
1 东财转3 123111 2021-04-26 130.353 130.010 133.880 125.110 8610944 1.126033e+10 6.75 0.01 0.010 54.50
2 东财转3 123111 2021-04-27 129.000 129.600 130.846 128.400 1820766 2.357472e+09 1.88 -0.32 -0.410 11.52
3 东财转3 123111 2021-04-28 129.100 130.770 131.663 128.903 1467727 1.921641e+09 2.13 0.90 1.170 9.29
4 东财转3 123111 2021-04-29 130.690 131.208 133.150 130.560 1156934 1.525974e+09 1.98 0.33 0.438 7.32
.. ... ... ... ... ... ... ... ... ... ... ... ... ...
61 东财转3 123111 2021-07-23 160.000 157.100 166.200 156.660 749059 1.201969e+09 5.98 -1.47 -2.350 4.74
62 东财转3 123111 2021-07-26 157.980 154.011 160.200 153.610 620403 9.696688e+08 4.19 -1.97 -3.089 3.93
63 东财转3 123111 2021-07-27 155.240 150.810 156.509 150.250 569574 8.709329e+08 4.06 -2.08 -3.201 3.60
64 东财转3 123111 2021-07-28 150.410 148.790 152.910 147.220 911562 1.359813e+09 3.77 -1.34 -2.020 5.77
65 东财转3 123111 2021-07-29 152.000 158.210 159.600 151.400 1061348 1.655937e+09 5.51 6.33 9.420 6.72
[66 rows x 13 columns]
Futures
- 获取四大交易所期货基本信息
>>> import efinance as ef
>>> ef.futures.get_futures_base_info()
期货代码 期货名称 secid 归属交易所
0 jmm 焦煤主力 114.jmm 大商所
1 jm2109 焦煤2109 114.jm2109 大商所
2 ss2204 不锈钢2204 113.ss2204 上期所
3 jm2110 焦煤2110 114.jm2110 大商所
4 jm2111 焦煤2111 114.jm2111 大商所
.. ... ... ... ...
782 i2108 铁矿石2108 114.i2108 大商所
783 i2112 铁矿石2112 114.i2112 大商所
784 i2203 铁矿石2203 114.i2203 大商所
785 im 铁矿石主力 114.im 大商所
786 i2109 铁矿石2109 114.i2109 大商所
[787 rows x 4 columns]
- 获取期货历史行情
>>> import efinance as ef
>>> # 指定单个期货的 secid
>>> secid = '115.ZCM'
>>> ef.futures.get_quote_history(secid)
日期 开盘 收盘 最高 最低 成交量 成交额 振幅 涨跌幅 涨跌额 换手率
0 2015-05-18 440.0 437.6 440.2 437.6 64 2806300.0 0.00 0.00 0.0 0.00
1 2015-05-19 436.0 437.0 437.6 436.0 6 262100.0 0.36 -0.32 -1.4 0.00
2 2015-05-20 436.8 435.8 437.0 434.8 8 348750.0 0.50 -0.23 -1.0 0.00
3 2015-05-21 438.0 443.2 446.8 437.8 37 1631850.0 2.06 1.65 7.2 0.00
4 2015-05-22 439.2 441.4 443.8 439.2 34 1502500.0 1.04 0.09 0.4 0.00
... ... ... ... ... ... ... ... ... ... ... ...
1475 2021-06-08 800.2 819.2 821.0 791.0 201763 16270168320.0 3.72 1.56 12.6 0.00
1476 2021-06-09 822.4 818.2 832.2 816.0 193464 15925956608.0 2.01 1.46 11.8 0.00
1477 2021-06-10 818.0 803.4 828.4 801.2 168933 13805204736.0 3.30 -2.41 -19.8 0.00
1478 2021-06-11 807.0 827.2 833.0 805.8 207762 16999086848.0 3.33 1.22 10.0 0.00
1479 2021-06-15 847.0 849.2 853.6 830.0 140166 11827207168.0 2.88 3.79 31.0 0.00
>>> # 指定多个期货的 secid
>>> secids = ['115.ZCM','115.ZC109']
>>> futures_df = ef.futures.get_quote_history(secids)
>>> type(futures_df)
<class 'dict'>
>>> futures_df.keys()
dict_keys(['115.ZC109', '115.ZCM'])
>>> futures_df['115.ZC109']
日期 开盘 收盘 最高 最低 成交量 成交额 振幅 涨跌幅 涨跌额 换手率
0 2020-09-09 551.2 551.2 551.2 551.2 2 1.102400e+05 0.00 0.00 0.0 0.0
1 2020-09-10 548.6 545.0 549.8 545.0 6 3.289200e+05 0.87 -1.12 -6.2 0.0
2 2020-09-11 545.0 544.2 548.4 543.0 7 3.815000e+05 0.99 -0.73 -4.0 0.0
3 2020-09-14 546.0 550.4 550.4 546.0 7 3.843000e+05 0.81 0.99 5.4 0.0
4 2020-09-15 549.0 551.2 551.6 549.0 14 7.705600e+05 0.47 0.40 2.2 0.0
.. ... ... ... ... ... ... ... ... ... ... ...
211 2021-07-26 905.2 897.0 909.8 885.0 142890 1.282009e+10 2.72 -1.45 -13.2 0.0
212 2021-07-27 897.0 892.4 915.8 888.0 109033 9.802067e+09 3.10 -0.53 -4.8 0.0
213 2021-07-28 892.4 902.4 909.6 890.4 89853 8.086770e+09 2.14 0.38 3.4 0.0
214 2021-07-29 902.6 918.6 919.0 900.4 83106 7.562646e+09 2.07 2.07 18.6 0.0
215 2021-07-30 918.6 931.8 937.2 906.2 47749 4.432062e+09 3.41 2.40 21.8 0.0
Docs
Contact
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
efinance-0.2.6.tar.gz
(37.0 kB
view hashes)
Built Distribution
efinance-0.2.6-py3-none-any.whl
(38.5 kB
view hashes)