[ptrade交易实战] 第十一篇 股票信息获取函数(1)

前言

今天要讲的主要是获取股票信息的函数主要有股票基础信息获取,etf成分的获取,指数的成分获取等等!还是老规矩,分为几个部分来讲讲!

一、get_stock_name ——获取股票名称

这个函数是比较鸡肋的!主要是用来获取股票、可转债、ETF等名称。

示例

def initialize(context):
    g.security = ['600570.SS', '600571.SS']
    set_universe(g.security)

def handle_data(context, data):
    #获取600570.SS股票名称
    stock_name = get_stock_name(g.security[0])
    log.info(stock_name)
    #获取股票池所有的股票名称
    stock_names = get_stock_name(g.security)
    log.info(stock_names)

二、get_stock_info ——获取股票基础信息

并不是大家所想的财务信息之类的,只是上一个函数的加强版

返回主要是返回股票代码对应的公司名,上市日期、退市日期三个信息,退市日期如果没有退市的话返回的是2900-01-01(str:str)

示例

def initialize(context):
    g.security = ['600570.SS', '600571.SS']
    set_universe(g.security)

def handle_data(context, data):
    #获取单支股票的基础信息
    stock_info = get_stock_info(g.security[0])
    log.info(stock_info)
    #获取多支股票的基础信息
    stock_infos = get_stock_info(g.security, ['stock_name','listed_date','de_listed_date'])
    log.info(stock_infos)

三、get_stock_status —— 获取股票状态信息

get_stock_status(stocks, query_type='ST', query_date=None)

主要用于获取指定日期股票的ST、停牌、退市属性。

stocks: 例如 ['000001.SZ','000003.SZ']。该字段必须输入,否则返回None(list[str]/str);

query_type: 支持以下三种类型属性的查询,默认为'ST'(str);

具体支持输入的字段包括 :

1、'ST' – 查询是否属于ST股票

2、'HALT' – 查询是否停牌

3、'DELISTING' – 查询是否退市

query_date: 格式为YYYYmmdd,默认为None,表示当前日期(回测为回测当前周期,研究与交易则取系统当前时间)(str);

示例

def initialize(context):
    g.security = ['600397.SS', '600701.SS', '000001.SZ']
    set_universe(g.security)

def handle_data(context, data):
    stocks_list = g.security
    filter_stocks = []
    # 判断股票是否为ST、停牌或者退市的股票
    st_status = get_stock_status(stocks_list, 'ST')
    # 将不是ST的股票筛选出来
    for i in stocks_list:
        if st_status[i] is not True:
            filter_stocks.append(i)
    # 获取股票停牌信息
    # halt_status = get_stock_status(stocks_list, 'HALT')
    # 获取指定日期的对应属性
    # halt_status = get_stock_status(stocks_list, 'HALT', '20180312')
    # 获取股票退市信息
    # delist_status = get_stock_status(stocks_list, 'DELISTING')
    log.info('筛选不是ST的股票列表: %s' % filter_stocks)

四、get_stock_exrights —— 获取股票除权除息信息

get_stock_exrights(stock_code, date=None)

返回字段介绍

1、date -- 日期(索引列,类型为int64);

2、allotted_ps -- 每股送股(str:numpy.float64);

3、rationed_ps -- 每股配股(str:numpy.float64);

4、rationed_px -- 配股价(str:numpy.float64);

5、bonus_ps -- 每股分红(str:numpy.float64);

6、exer_forward_a -- 前复权除权因子A;用于计算前复权价格(前复权价格=A*价格+B)(str:numpy.float64)

7、exer_forward_b -- 前复权除权因子B;用于计算前复权价格(前复权价格=A*价格+B)(str:numpy.float64)

8、exer_backward_a -- 后复权除权因子A;用于计算后复权价格(后复权价格=A*价格+B)(str:numpy.float64)

9、exer_backward_b -- 后复权除权因子B;用于计算后复权价格(后复权价格=A*价格+B)(str:numpy.float64)

示例

def initialize(context):
    g.security = '600570.SS'
    set_universe(g.security)

def handle_data(context, data):
    stock_exrights = get_stock_exrights(g.security)
    log.info('the stock exrights info of security %s:\n%s' % (g.security, stock_exrights))

结语

ptrade的渠道可以通过《ptrade开通详则》来获取,感谢看到这里,如果有更多疑问欢迎在评论区支出!

  • 22
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值