使用Python获取股票数据

下面是两种获取股票数据的方法,使用的编程语言是python。

1.  方法一

从“yahoo”获取“海通证券”(600837)的股票数据,时间从2020.1.1到今天(2020.8.21),代码如下。

import pandas as pd
import pandas_datareader.data as web
import datetime
from matplotlib import pyplot as plt

# 获取海通证券(600837)2020.1.1到今天(2020.8.21)的股票数据
data_csvsave = web.DataReader('600837.ss', 'yahoo', datetime.datetime(2020,1,1), datetime.date.today())
# 将数据保存到本地
data_csvsave.to_csv(r'C:\Users\飘逸\Desktop\600837.csv', columns= data_csvsave.columns, index=True)
# 打印数据
print(data_csvsave)

从下面的打印可以看出,使用这种方法获取的数据行索引是日期。一共有6列,包含了最基本的信息:最高价、最低价、开盘价、收盘价、成交量、调整后的价格。

                     High    Low   Open  Close     Volume     Adj Close
Date                                                        
2020-01-02  15.97  15.55  15.75  15.63  143434282      15.63
2020-01-03  15.85  15.56  15.63  15.72   80840727      15.72
2020-01-06  15.97  15.50  15.55  15.80  104710832      15.80
2020-01-07  15.86  15.52  15.82  15.75   93989873      15.75
2020-01-08  15.20  15.20  15.20  15.20  104484186      15.20
...           ...    ...    ...    ...        ...        ...
2020-08-17  16.49  15.43  15.59  15.80  274110233      15.80
2020-08-18  15.88  15.51  15.82  15.61  128322856      15.61
2020-08-19  15.68  15.15  15.60  15.16  117824830      15.16
2020-08-20  15.16  14.90  15.05  14.98   78215581      14.98
2020-08-21  15.34  15.05  15.11  15.32   80749013      15.32

[155 rows x 6 columns]

2.  方法二

使用tushare模块获取“海通证券”(600837)的股票数据,时间从2020.1.1到2020.8.21。

import tushare as ts
import pandas as pd
# 设置最大列数,避免只显示部分列
pd.set_option('display.max_columns', 1000)
# 设置最大行数,避免只显示部分行数据
# pd.set_option('display.max_rows', 1000)
pd.set_option('display.width', 1000)
# 设置每列最大宽度,避免属性值或列名显示不全
pd.set_option('display.max_colwidth',1000)


token = '' # 设置tocken
pro = ts.pro_api(token) # 初始化pro接口
# 获取数据
df_gldq = pro.daily(ts_code='000651.sz', start_date='20190101', end_date='20200821')
# 打印数据
print(df_gldq)

下面是打印的结果,与方法一相比,行索引是以0开始的序号。

       ts_code     trade_date   open   high     low    close  pre_close change pct_chg     vol           amount
0    000651.SZ   20200821  54.95  54.96  54.01  54.22      54.13    0.09   0.1663  382465.03  2074844.917
1    000651.SZ   20200820  54.96  54.96  54.02  54.13      55.19   -1.06  -1.9206  626313.31  3399987.120
2    000651.SZ   20200819  55.85  55.85  55.18  55.19      56.02   -0.83  -1.4816  500984.71  2777352.512
3    000651.SZ   20200818  56.59  56.77  55.90  56.02      56.80   -0.78  -1.3732  618494.50  3474057.691
4    000651.SZ   20200817  56.25  57.18  56.00  56.80      56.25    0.55   0.9778  677724.12  3845816.957
..         ...        ...    ...    ...    ...    ...        ...     ...      ...        ...          ...
150  000651.SZ   20200108  66.60  69.67  66.60  68.80      67.32    1.48   2.1985  487808.96  3335825.897
151  000651.SZ   20200107  66.17  67.55  66.00  67.32      65.88    1.44   2.1858  410765.95  2759986.206
152  000651.SZ   20200106  66.80  67.07  65.00  65.88      67.10   -1.22  -1.8182  467802.55  3092810.584
153  000651.SZ   20200103  68.38  68.70  66.90  67.10      67.90   -0.80  -1.1782  368703.73  2494833.314
154  000651.SZ   20200102  65.99  68.09  65.90  67.90      65.58    2.32   3.5377  463614.43  3119667.657

[155 rows x 11 columns]

 

  • 4
    点赞
  • 81
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值