zoukankan      html  css  js  c++  java
  • BaoStock:一个免费、开源的python证券数据接口包

    https://blog.csdn.net/dongdong2980/article/details/79059789

    如果需要获取历史行情数据,www.baostock.com是个很好的免费、开源的Python证券数据接口包。

    特点:使用方便、免费免费免费,返回的绝大部分的数据格式都是pandas DataFrame类型。

    入门代码如下:

    import baostock as bs
    import pandas as pd
     
    #### 登陆系统 ####
    lg = bs.login(user_id="anonymous", password="123456")
    # 显示登陆返回信息
    print('login respond error_code:'+lg.error_code)
    print('login respond  error_msg:'+lg.error_msg)
     
    #### 获取历史K线数据 ####
    # 详细指标参数,参见“历史行情指标参数”章节
    rs = bs.query_history_k_data("sh.600000",
        "date,code,open,high,low,close,preclose,volume,amount,adjustflag,turn,tradestatus,pctChg,peTTM,pbMRQ,psTTM,pcfNcfTTM,isST",
        start_date='2017-06-01', end_date='2017-12-31', 
        frequency="d", adjustflag="3") #frequency="d"取日k线,adjustflag="3"默认不复权
    print('query_history_k_data respond error_code:'+rs.error_code)
    print('query_history_k_data respond  error_msg:'+rs.error_msg)
     
    #### 打印结果集 ####
    data_list = []
    while (rs.error_code == '0') & rs.next():
        # 获取一条记录,将记录合并在一起
        data_list.append(rs.get_row_data())
    result = pd.DataFrame(data_list, columns=rs.fields)
    #### 结果集输出到csv文件 ####
    result.to_csv("D:/history_k_data.csv", encoding="gbk", index=False)
    print(result)
     
    #### 登出系统 ####
    bs.logout()

    各方法及含义如下:

    登录
    login()
    方法说明:登录系统。

    使用示例:lg = login(user_id="anonymous", password="123456")


    参数含义:

    user_id:用户id,默认为"anonymous";
    password:密码,默认为"123456"。

    返回信息:

    lg.error_code:错误代码,当为“0”时表示成功,当为非0时表示失败;
    lg.error_msg:错误信息,对错误的详细解释。
    登出
    logout()
    方法说明:登出系统

    使用示例:lg = logout(user_id="anonymous")


    参数含义:

    user_id:用户id,默认为"anonymous"。

    返回信息:

    lg.error_code:错误代码,当为“0”时表示成功,当为非0时表示失败;
    lg.error_msg:错误信息,对错误的详细解释。
    获取历史A股K线数据
    获取历史A股K线数据:query_history_k_data()
    方法说明:获取A股历史交易数据(包括均线数据),可以通过参数设置获取日k线、周k线、月k线,以及5分钟、15分钟、30分钟和60分钟k线数据,适合搭配均线数据进行选股和分析。

    返回类型:pandas的DataFrame类型。

    V0.5版本只能获取近3年的数据(2015-01-01至当前时间);

    可查询不复权、前复权、后复权数据。

    参数含义:

    code:股票代码,sh或sz.+6位数字代码,或者指数代码,如:sh.601398。sh:上海;sz:深圳。此参数不可为空;
    fields:指示简称,支持多指标输入,以半角逗号分隔,填写内容作为返回类型的列。详细指标列表见历史行情指标参数章节。此参数不可为空;
    start:开始日期(包含),格式“YYYY-MM-DD”,为空时取2015-01-01;
    end:结束日期(不包含),格式“YYYY-MM-DD”,为空时取最近一个交易日;
    frequency:数据类型,默认为d,日k线;d=日k线、w=周、m=月、5=5分钟、15=15分钟、30=30分钟、60=60分钟k线数据,不区分大小写;周线每周最后一个交易日才可以获取,月线第月最后一个交易日才可以获取。
    adjustflag:复权类型,默认不复权:3;1:后复权;2:前复权。已支持日k线、分钟线前后复权;暂不支持周k线、月k线前后复权。

  • 相关阅读:
    命令拷屏之网络工具
    PHP 设计模式 笔记与总结(1)命名空间 与 类的自动载入
    Java实现 计蒜客 1251 仙岛求药
    Java实现 计蒜客 1251 仙岛求药
    Java实现 计蒜客 1251 仙岛求药
    Java实现 蓝桥杯 算法训练 字符串合并
    Java实现 蓝桥杯 算法训练 字符串合并
    Java实现 蓝桥杯 算法训练 字符串合并
    Java实现 LeetCode 143 重排链表
    Java实现 LeetCode 143 重排链表
  • 原文地址:https://www.cnblogs.com/xinmomoyan/p/15764948.html
Copyright © 2011-2022 走看看