api 使用说明书
基础模版
from zltquant import *
def initialize(context):
# 设置基准收益:沪深300指数
set_benchmark('sh000300')
# 打印日志
print('策略开始运行,初始化函数全局只运行一次')
# 股票类每笔交易时的手续费是:买入时佣金万分之三,卖出时佣金万分之三加千分之一印花税,每笔交易佣金最低扣5块钱
set_order_cost(OrderCost(open_tax=0,close_tax=0.001,open_commission=0.0003,close_commission=0.0003,close_today_commission=0,min_commission=5),type='stock')
# 为股票设定滑点为百分比滑点
set_slippage(FixedPercent(0.00246),type='stock')
# 设置要操作的股票池
g.security=[]
# 回测区间、初始资金、运行频率请在下方设置
# 每日开盘前9:00被调用一次,用于储存自定义参数、全局变量,执行盘前选股等
def before_trading(context):
# 获取日期
date=context.current_dt
# 打印日期
print('{} 盘前运行'.format(date))
def handle_data(context):
# 获取时间
time=context.current_dt
# 打印时间
print('{} 盘中运行'.format(time))
# 收盘后运行函数,用于储存自定义参数、全局变量,执行盘后选股等
def after_trading(context):
# 获取时间
time=context.current_dt
# 打印时间
print('{} 盘后运行'.format(time))
print('一天结束')
if __name__=='__main__':
run_main()
策略运行时对象
Context
属性
- portfolio:总账户(Portfolio 对象)
- run_params:运行参数(Run_params 对象)
- universe:股票池(list[str]),和 set_universe 一起使用
- previous_date:上一个交易日(datetime.date 对象)
- current_dt:策略运行时的当前时间(datetime.datetime 对象)
举例
print('上个交易日为',context.previous_date)
注意为了保证策略的效率,在 context 中的持仓和资产信息,并不会自动更新.需要手动调用 update_cash_info()方法来更新.
Portfolio
属性
- inout_cash:出入金
- available_cash:可用资金
- locked_cash:冻结资金
- margin:保证金
- positions:持仓 dict{security:Position 对象},等同于 long_positions
- long_positions:持多仓 dict{security:Position 对象}
- short_positions:持空仓 dict{security:Position 对象}
- total_value:总资产, 资金余额 + 当日持仓市值
- returns:总权益的累计收益,(当前总资产 + 今日出入金 - 昨日总资产) / 昨日总资产;
- starting_cash:初始资金
- positions_value:持仓价值
注:使用 update_cash_info 更新后可获取 Portfolio 对象最新值
order(stock,-amount)
update_cash_info()
print('最新可用资金为',context.portfolio.available_cash)
Run_params
属性
- start_date:回测起始时间,datetime.date 对象
- end_date:回测结束时间,datetime.date 对象
- type:回测类型,默认:'simple_backtest'
- frequency:回测频率,默认'day',支持'day','min','tick'
print('策略周期的开始时间',context.run_params.start_date)
Position
- security:标的代码
- price:最新行情价格
- acc_avg_cost:累计的持仓成本 在清仓/减合时也会更新,该持仓累积的收益都会用于计算成本(一开始 acc_avg_cost 为 0,amount 也为 0), 加仓:new_acc_avg_cost=(acc_avg_cost amount + trade_value + commission)/(amount + trade_amount); 减仓:new_acc_avg_cost=(acc_avg_cost amount - trade_value + commission)/(amount - trade_amount) 说明:commission 是本次买入或者卖出的手续费
- avg_cost:当前持仓成本 只有在开仓/加仓时会更新:new_avg_cost=(position_value + trade_value + commission)/(position_amount + trade_amount) 每次买入后会调整 avg_cost,卖出时 avg_cost 不变.这个值也会被用来计算浮动盈亏.
- hold_cost:当日持仓成本 计算方法: 当日无收益:hold_cost=前收价 (清算后), 加仓:hold_cost=(hold_cost amount + trade_value)/(amount + trade_amount), 减仓:hold_cost=(hold_cost amount - trade_value)/(amount - trade_amount); trade_value=trade_price * trade_amount
- locked_amount:挂单冻结仓位
- total_amount:总仓位,但不包括挂单冻结仓位( 如果要获取当前持仓的仓位,需要将 locked_amount 和 total_amount 相加)
- closeable_amount:可卖出的仓位
- today_amount:今天开的仓位
- value:标的价值 计算方法是:price total_amount multiplier,其中股票、基金的 multiplier 为 1,期货为相应的合约乘数
- side:多/空,'long' or 'short
举例
Position(security=sz000001,price=14.0,avg_cost=14.09000015258789,locked_amount=0,total_amount=6400,closeable_amount=6400,today_amount=0,value=89600.0,side=long,pindex=0)
Order
- order_id: order_id
- status: 状态, 一个 OrderStatus 值
- add_time: 订单添加时间, [datetime.datetime]对象
- security: 股票代码
- amount: 下单数量, 不管是买还是卖, 都是正数
- filled: 已经成交的股票数量, 正数
- side: 多/空,'long'/'short'
- action: 开/平, 'open'/'close'
- price: 平均成交价格, 已经成交的股票的平均成交价格(一个订单可能分多次成交)
- commission:交易费用(佣金、税费等)
- style:OrderStyle 对象
- profit:平仓盈亏
示例
# UserOrder({'order_id':ZLT-0000000--sz000001,'status':9,'add_time':2024-09-25 09:30:00,'security':sz000001,'amount':87500,'filled':87500,'side':long,'action':open,'price':10.63,'commission':279.04,'style':MarketOrderStyle: _limit_price=0.0,'profit':0.0})
Trade
订单的一次交易记录,一个订单可能分多次交易
- time: 交易时间, [datetime.datetime]对象
- security:标的代码
- amount: 交易数量
- price: 交易价格
- trade_id: 交易记录 id
- order_id: 对应的 order_id
示例
# {'ZLT-0000000--sz000001': Trade({'trade_id': ZLT-0000000--sz000001-1, 'order_id': ZLT-0000000--sz000001, 'time': 2024-09-25 09:30:00, 'amount': 87500, 'price': 10.63)}}
OrderStatus
**class** **OrderStatus**():
# 待申报
prepare = 1
# 已申报
already = 2
# 废单
cancel = 3
# 送转股
share = 4
# 未成交
unfilled = 5
# 部分成交
partially_filled = 6
# 部成部撤
partially_cancelled = 7
# 全部撤单
cancelled = 8
# 全部成交
filled = 9
OrderStyle
# 限价
class LimitOrderStyle(OrderStyle):**
** def __init__(self, limit_price):**
** self.limit_price = limit_price
# 市价 交易科创板时,limit_price为保护限价
class MarketOrderStyle(OrderStyle):
def __init__(self, limit_price):
self.limit_price = limit_price
设置函数
set_benchmark-设置需要作为判断的基准
仅初始化时设置有效,默认是沪深 300
set_benchmark(security)
参数
- security:指数/股票/etf 等标的代码.
返回
None
举例
def initialize(context):
set_benchmark('sh000300')
注:如果没有调用 set_benchmark 函数,系统默认使用 set_benchmark('sh000300')作为基准.
set_option-设置策略参数
仅初始化时设置有效
set_option(mode,value)
参数
- mode:设置参数
返回
None
举例
def initialize(context):
# 设定成交量比例,根据实际行情限制每个订单的成交量.value:value 是一个 float 值,默认为1.0,根据实际行情限制每个订单的成交量.
set_option('order_volume_ratio',1)
# 设定是否使用盘口撮合模式.此选项只对模拟盘生效,默认关闭 value:true|false
set_option('match_with_order_book',false)
# 如果策略里设置的账户数多于界面上添加的账户数,设定超出的账户模式.value: 是一个int值.填1时,使用超出范围的账户下单会直接报错.填2时,使用超出范围的账户会改成用第一个账户下单.默认是1
set_option('excess_account',1)
set_order_cost-设置佣金印花税等交易费率
仅初始化时设置有效
set_order_cost(cost,type,ref=None)
参数
cost:OrderCost 对象
- open_tax:买入时印花税(只股票类标的收取,基金与期货不收)
- close_tax:卖出时印花税(只股票类标的收取,基金与期货不收)
- open_commission:买入时佣金,按照成交额计算手续费时设置该值
- open_fixed_commission:买入时佣金,按照固定手续费计算时设置该值,仅期货有效,和'open_commission'不能同时设置
- close_commission:卖出时佣金,按照成交额计算手续费时设置该值
- close_fixed_commission:卖出时佣金,按照固定手续费计算时设置该值,仅期货有效,和'close_commission'不能同时设置
- close_today_commission:平今仓佣金,按照成交额计算手续费时设置该值
- close_fixed_today_commission:平今时佣金,按照固定手续费计算时设置该值,仅期货有效,和'close_today_commission'不能同时设置
- min_commission:最低佣金,不包含印花税
- type:股票 'stock'/基金 'fund'/债券 'bond'/期货 'futures',暂时只支持股票
- ref(暂不支持):参考代码
返回
None
举例
def initialize(context):
# 股票类每笔交易时的手续费是:买入时佣金万分之三,卖出时佣金万分之三加千分之一印花税,每笔交易佣金最低扣5块钱
set_order_cost(OrderCost(open_tax=0,close_tax=0.001,open_commission=0.0003,close_commission=0.0003,close_today_commission=0,min_commission=5),type='stock')
# 期货类每笔交易时的手续费是:买入时万分之0.23,卖出时万分之0.23,平今仓为万分之23
set_order_cost(OrderCost(open_tax=0,close_tax=0,open_commission=0.000023,close_commission=0.000023,close_today_commission=0.0023,min_commission=0),type='futures')
set_slippage-设置滑点
仅初始化时设置有效
set_slippage(object,type=None,ref=None)
参数
object:滑点对象
- 固定值:这个价差可以是一个固定的值(比如 0.02 元,交易时加减 0.01 元),设定方式为:FixedSlippage(0.02)
- 百分比:这个价差可以是是当时价格的一个百分比(比如 0.2%,交易时加减当时价格的 0.1%),设定方式为:FixedPercent(0.002)
- type:交易品种 股票 'stock'/基金 'fund'/债券 'bond'/期货 'futures',暂时只支持股票
- ref(暂不支持):标的代码.如要为特定交易标的单独设置滑点,必须同时设置 type 为交易标的的交易品种.
返回
None
举例
def initialize(context):
# 为全部交易品种设定固定值滑点
set_slippage(FixedSlippage(0.02))
# 为股票设定滑点为百分比滑点
set_slippage(FixedPercent(0.00246),type='stock')
set_universe-设置或者更新此策略要操作的股票池
set_universe(security_list)
设置或者更新此策略要操作的股票池;可以通过 context.universe 来获取设置后的值.设置 get_price 默认 security 参数
参数
- security_list:str/list[str],股票列表
返回
None
举例
set_universe(['sz000001','sh600000'])
print(context.universe)
update_cash_info-更新账户信息
order(stock,-amount)
update_cash_info()
运行函数
注意只有在使用相同的参照标的时,定时运行函数的优先级别为:run_monthly>run_weekly>run_daily 且与函数被注册的顺序无关;handle_data 的执行顺序与前述函数无关.用户策略不应该依赖于这些计划任务执行的顺序.
run_daily-每天的某一个时刻执行策略函数
每天的某一个时刻执行策略函数
run_daily(func,time,reference_security='sz000001')
参数
- func :自定义函数,此函数必须接受 context 参数
time :运行时间,'hh:mm',有以下方式:
- 24 小时内的任意时间,例如'10:00','01:00';在 tick 频率的策略中,可以精确到秒.指定为具体时间时,不可设置 reference_security 参数.
- time='every_bar',只能在 run_daily 中调用,运行时间和您设置的频率一致,按天会在交易日的开盘时调用一次,按分钟会在交易时间每分钟运行.
- time='open'或 'open+5m'或'open-10m' 这种形式:代表在 reference_security 对应标的开盘时间(或加减 X 分钟)运行一次.期货有夜盘,开盘时间点不定.注:以参考'sz000001'为例,'open'指的是 9:30,'open+5m'指的是 9:35.
- reference_security :参考标的,str,默认为'sz000001'. 如参照 'sz000001',交易时间为 9:30-15:00;如参照'dsAL8',因为有夜盘,因此开始时间为 21:00,结束时间为 15:00.期货策略一定要修改参考标的,建议修改为对应的主力合约.当 time 为具体时间时请勿设置此参数
举例
def initialize(context):
...
# 每个交易日的09:30分执行
run_daily(algo,time='09:30')
...
def algo(context):
# 编写自己的代码
pass
run_weekly-每周的某个交易日的某个时刻执行策略函数
每周的第 weekday 个交易日的某个时刻执行策略函数
run_weekly(func,time,weekday,reference_security='sz000001',force=True)
参数
- func :自定义函数,此函数必须接受 context 参数
time :运行时间,'hh:mm',有以下方式:
- 24 小时内的任意时间,例如'10:00','01:00';在 tick 频率的策略中,可以精确到秒.指定为具体时间时,不可设置 reference_security 参数.
- time='open'或 'open+5m'或'open-10m' 这种形式:代表在 reference_security 对应标的开盘时间(或加减 X 分钟)运行一次.期货有夜盘,开盘时间点不定.注:以参考'sz000001'为例,'open'指的是 9:30,'open+5m'指的是 9:35.
- weekday :第几个交易日,仅正数.force=True 时如果超出每周总交易日个数,则取临近的交易日执行;force=False,不会就近执行.
- reference_security :参考标的,str,默认为'sz000001'. 如参照 'sz000001',交易时间为 9:30-15:00;如参照'dsA2503',因为有夜盘,因此开始时间为 21:00,结束时间为 15:00.期货策略一定要修改参考标的,建议修改为对应的主力合约.当 time 为具体时间时请勿设置此参数
- force :run_weekly 和 run_monthly 中使用,run_daily 不可使用;表示若注册回调函数的时间不在第一次回调的执行时间范围内是否就近执行;默认为 True,建议使用 False
举例
def initialize(context):
...
# 每周的第一个交易日的09:30分执行
run_weekly(algo,1,time='09:30')
...
def algo(context):
# 编写自己的代码
pass
run_monthly-每月的某个交易日的某个时刻执行策略函数
每月的第 monthday 个交易日的某个时刻执行策略函数,默认 09:30
run_monthly(func,time,monthday,reference_security='sz000001',force=True)
参数
- func :自定义函数,此函数必须接受 context 参数
time :运行时间,'hh:mm',有以下方式:
- 24 小时内的任意时间,例如'10:00','01:00';在 tick 频率的策略中,可以精确到秒.指定为具体时间时,不可设置 reference_security 参数.
- time='open'或 'open+5m'或'open-10m' 这种形式:代表在 reference_security 对应标的开盘时间(或加减 X 分钟)运行一次.期货有夜盘,开盘时间点不定.注:以参考'sz000001'为例,'open'指的是 9:30,'open+5m'指的是 9:35.
- monthday :第几个交易日,仅正数.force=True 时如果超出每月总交易日个数,则取临近的交易日执行;force=False,不会就近执行.
- reference_security :参考标的,str,默认为'sz000001'. 如参照 'sz000001',交易时间为 9:30-15:00;如参照'dsA2503',因为有夜盘,因此开始时间为 21:00,结束时间为 15:00.期货策略一定要修改参考标的,建议修改为对应的主力合约.当 time 为具体时间时请勿设置此参数
- force :run_weekly 和 run_monthly 中使用,run_daily 不可使用;表示若注册回调函数的时间不在第一次回调的执行时间范围内是否就近执行;默认为 True,建议使用 False
举例
def initialize(context):
...
# 每个月的第一个交易日的09:30分执行
run_monthly(algo,1,time='09:30')
...
def algo(context):
# 编写自己的代码
pass
handle_data-根据执行频率触发的函数
handle_data(context)
根据执行策略时,选择的频率触发的函数.函数依据的时间是股票的交易时间,默认:
- min:每分钟触发一次;周期:09:30~15:00.
- day:每天的 09:30 触发一次.
参数
- context:全局上下文对象
举例
def initialize(context):
# 设置sh000300为基准
set_benchmark('sh000300')
pass
def handle_data(context):
# 编写每一个频率要处理的事件
pass
before_trading_start-每日开盘前运行
每日开盘前运行,该函数参考股票交易时段,启动时间为'09:00'.(注:期货因为有夜盘,开盘时间点不定,若有开盘任务请使用定时任务触发.)
def before_trading_start(context):
# 编写开盘前要做的逻辑
pass
def initialize(context):
pass
after_trading_end-每日收盘后运行
每日收盘后运行,该函数参考股票交易时段,启动时间为'15:30'.(注:期货因为有夜盘,开盘时间点不定,若有开盘任务请使用定时任务触发.)
def after_trading_end(context):
# 编写收盘时要做的逻辑
pass
def initialize(context):
pass
on_strategy_end-策略正常结束时执行
def on_strategy_end(context):
print("on_strategy_end")
交易函数
order-买卖标的
order(security,amount,style=None,side='long',close_today=false,account)
参数
- security:标的代码,支持股票、期货、ETF、可转债
- amount:交易数量(股),正数表示买入,负数表示卖出
- style:OrderStyle 对象,MarketOrderStyle(limit_price)/LimitOrderStyle(limit_price),市价/限价.默认是 MarketOrderStyle(0).
- side:'long'/'short',操作多单还是空单.默认为多单,股票、ETF 暂不支持开空单
close_today:平今/平昨字段,期货专用.不管 close_today 是 true 还是 false,此函数只会产生一个订单,区别在于平仓时的手续费计算,平昨仓使用 close_commission 对应手续费率,平今仓使用 close_today_commission 手续费率.
- close_today=true,只平今仓,今仓不足的时候,订单将会被废单.
- close_today=false,优先平昨仓,昨仓不足部分平今仓
account:int,指定第几个账户,1 是第一个,2 是第二个...按顺序.
- 回测时,只有一个账户,这个参数无效.仿真和实盘时,和界面上添加的账户顺序对应.
- 注意:如果策略里设置的账户数多于界面上添加的账户数,默认使用超出范围的账户会直接报错.如果想修改,参考设置函数 set_option().
返回
- 成功:str,order_id
- 失败:None
order_target-买卖标的使最终标的的数量达到指定的数量
order_target(security,amount,style=None,side='long',close_today=false,account)
注意使用此接口下单时若指定的标的有未完成的订单,则先前未完成的订单将会被取消
参数
- security:标的代码,支持股票、期货、ETF、可转债
- amount:期望的最终数量
- style:OrderStyle 对象,MarketOrderStyle(limit_price)/LimitOrderStyle(limit_price),市价/限价.默认是 MarketOrderStyle(0)
- side:'long'/'short',操作多单还是空单.默认为多单,股票、ETF 暂不支持开空单.
close_today:平今/平昨字段,期货专用.不管 close_today 是 true 还是 false,此函数只会产生一个订单,区别在于平仓时的手续费计算,平昨仓使用 close_commission 对应手续费率,平今仓使用 close_today_commission 手续费率.
- close_today=true,只平今仓,今仓不足的时候,订单将会被废单.
- close_today=false,优先平昨仓,昨仓不足部分平今仓
account:int,指定第几个账户,1 是第一个,2 是第二个...按顺序.
- 回测时,只有一个账户,这个参数无效.仿真和实盘时,和界面上添加的账户顺序对应.
- 注意:如果策略里设置的账户数多于界面上添加的账户数,默认使用超出范围的账户会直接报错.如果想修改,参考设置函数 set_option().
返回
- 成功:str,order_id
- 失败:None
order_target_value-调整标的仓位到指定价值
order_target_value(security,value,style=None,side='long',close_today=false,account)
注意使用此接口下单时若指定的标的有未完成的订单,则先前未完成的订单将会被取消
参数
- security:标的代码,支持股票、期货、ETF、可转债
- value:期望的标的最终价值,value=最新价 手数 保证金率(股票为 1) * 乘数(股票为 100)
- style:OrderStyle 对象,MarketOrderStyle(limit_price)/LimitOrderStyle(limit_price),市价/限价.默认是 MarketOrderStyle(0)
- side:'long'/'short',操作多单还是空单.默认为多单,股票、ETF 暂不支持开空单.
close_today:平今/平昨字段,期货专用.不管 close_today 是 true 还是 false,此函数只会产生一个订单,区别在于平仓时的手续费计算,平昨仓使用 close_commission 对应手续费率,平今仓使用 close_today_commission 手续费率.
- close_today=true,只平今仓,今仓不足的时候,订单将会被废单.
- close_today=false,优先平昨仓,昨仓不足部分平今仓
account:int,指定第几个账户,1 是第一个,2 是第二个...按顺序.
- 回测时,只有一个账户,这个参数无效.仿真和实盘时,和界面上添加的账户顺序对应.
- 注意:如果策略里设置的账户数多于界面上添加的账户数,默认使用超出范围的账户会直接报错.如果想修改,参考设置函数 set_option().
返回
- 成功:str,order_id
- 失败:None
order_value-买卖价值为指定价值的标的
order_value(security,value,style=None,side='long',close_today=false,account)
参数
- security:标的代码,支持股票、期货、ETF、可转债
- value:股票价值,value=最新价 手数 保证金率(股票为 1) * 乘数(股票为 100)
- style:OrderStyle 对象,MarketOrderStyle(limit_price)/LimitOrderStyle(limit_price),市价/限价.默认是 MarketOrderStyle(0)
- side:'long'/'short',操作多单还是空单.默认为多单,股票、ETF 暂不支持开空单.
close_today:平今/平昨字段,期货专用.不管 close_today 是 true 还是 false,此函数只会产生一个订单,区别在于平仓时的手续费计算,平昨仓使用 close_commission 对应手续费率,平今仓使用 close_today_commission 手续费率.
- close_today=true,只平今仓,今仓不足的时候,订单将会被废单.
- close_today=false,优先平昨仓,昨仓不足部分平今仓
account:int,指定第几个账户,1 是第一个,2 是第二个...按顺序.
- 回测时,只有一个账户,这个参数无效.仿真和实盘时,和界面上添加的账户顺序对应.
- 注意:如果策略里设置的账户数多于界面上添加的账户数,默认使用超出范围的账户会直接报错.如果想修改,参考设置函数 set_option().
返回
- 成功:str,order_id
- 失败:None
order_etf-etf 实物申赎
order_etf(etf_code, amount,trade_type,cash_list,stock_list,account)
参数
- etf_code:etf代码,str
- amount:申购数量,int
- trade_type:'esg' 申购,'ehh'赎回
- cash_list:仅申购使用,需要现金替代的金额列表,list[str]
- stock_list:仅申购使用,需要现金替代的代码列表,list[str]
account:int,指定第几个账户,1是第一个,2是第二个...按顺序.
- 回测时,只有一个账户,这个参数无效.仿真和实盘时,和界面上添加的账户顺序对应.
- 注意:如果策略里设置的账户数多于界面上添加的账户数,默认使用超出范围的账户会直接报错.如果想修改,参考设置函数 set_option().
返回
- 成功:str,order_id
- 失败:None
get_open_orders-获取当天的所有未完成的委托详情
get_open_orders()
get_orders-获取委托详情
获取指定订单对象/当天的所有订单委托详情
get_orders(order_id=None)
参数
- order_id:订单编号,由下单函数返回.不传参数时,返回当天所有委托订单
返回
返回一个[Order]对象或一个 dict, key 是 order_id, value 是[Order]对象
示例
a = order_target_value(stock, cash)
print(get_orders()[a])
# UserOrder({'order_id':ZLT-0000000--sz300418,'status':filled,'add_time':2023-02-20 09:30:00,'security':sz300418,'amount':36200,'filled':36200,'side':long,'action':open,'price':23.2200,'commission':252.1691,'style':MarketOrderStyle: _limit_price=0.0})
get_trades-获取当天成交详情
get_trades()
返回
返回一个 dict, key 是 trade_id, value 是[Trade]对象
cancel_order-撤单
cancel_order(order)
参数
- order:[Order]对象或者 order_id
inout_cash-账户转入或转出资金
inout_cash(cash)
账户转入或转出资金,当日的出入金从当日开始记入成本,用于计算收益,即当日结束计算收益时的本金是包含当日出入金金额的(暂不支持)
参数
- cash:可正可负,正为入金,负为出金.
事件通知
on_position_warning-当仓位到达指定位置时触发
当仓位到达指定位置时触发(默认 70%)
on_position_warning(context,msg)
参数
- context:上下文对象
- msg:当前仓位,百分比
on_order-当订单撮合成功后触发
on_order(context,msg)
参数
- context:上下文对象
- msg:当前成交的订单信息
工具函数
log-日志log信息
分级别打 log,输出到终端和日志文件,有四个等级 'debug','info','warning','error',级别:debug < info < warning < error .类似 print,但是 print 不会输出到日志文件中
举例
log.debug("user logged in successfully.")
log.info("user logged in successfully.")
log.warning("user logged in successfully.")
log.error("user logged in successfully.")
set_level-设置日志级别
设置 log 的级别,低于这个级别的 log 不会输出.默认级别是 info.
函数原型
log.set_level(level)
参数
- level:日志级别,string,必须是 'debug','info','warning','error','off' 中的一个,级别:debug < info < warning < error < off.
- debug: 调试信息,细粒度信息,对调试应用程序非常有帮助.
- info:信息级别,描述应用程序的运行过程.log.info()输出的日志也输入 info 级别
- warn:警告信息,指明潜在的危险状况.
- error:错误事件,但应用程序可能继续运行.
- off:用于关闭所有日志记录.
举例
log.set_level('debug')
时间函数
fromopen-当前离开盘分钟数
当前离开盘分钟数(股票大盘),例如:9.30 返回 0,9:30 返回 1...
fromopen()
period-周期类型
取得当前周期类型
period()
返回
结果从 0 到 13,
- 1 分钟:0
- 5 分钟:1
- 15 分钟:2
- 30 分钟:3
- 60 分钟:4
- 日线:5
- 周线:6
- 月线:7
- 10 分钟:8
- 45 日:9
- 季线:10
- 年线:11
- 5 秒钟:12
- 15 秒:13
weekofyear-计算当前周是年内第几个周
weekofyear()
get_trade_date-查询指定日期所属交易日
get_trade_date(security,date=None)
查询指定日期所属交易日,指定日期未上市或退市则返回空.
参数
- security:证券代码,str
- date:指定日期,str/时间戳/datetime.支持到分钟
注意
- 如果传入的 date 在两个交易日之间,返回上一个交易日;
- 如果传入的 date 处于停牌(不包括当日临停),返回上一个交易日;
- 对于有夜盘的交易标的:若传入时刻处于夜盘,则返回下一个交易日的日期;
- 对于未上市或退市标的也返回 None ;
交易日的定义:
- 对于无夜盘品种,以每日 0 点作为一个交易日的开始,至下一个交易日 0 点结束;
- 对于有夜盘品种,以夜盘集合竞价开始时作为一个交易日开始,至下一个交易日夜盘集合竞价开始时结束;
返回一个 dataframe
- trade_date:交易日,datetime.date
示例
get_trade_date(security=['sh600000','sz000001'],date='2020-07-01')
'''
--- trade_date
sh600000 2020-06-21
sz000001 2020-06-21
'''
count_diff_trade_days-计算指定时间区间内的交易日天数
count_diff_trade_days(security='sh000001',start_date='1990-01-01',end_date=None,day_type=TRADE)
计算指定时间区间内的交易日天数.count_diff_trade_days()默认求所有交易日的天数.
参数
- security:标的,str/list[str],默认'sh000001',上证指数
- start_date:区间开始日期,str/时间戳/datetime
/list/ndarray/dataframe,截取到日期.默认'1990-01-01' - end_date:区间结束日期,str/时间戳/datetime
/list/ndarray/dataframe,截取到日期.默认回测时间 - day_type:日期类型,可选填枚举 DAY_TYPE 常量 DAY_TYPE.TRADE、DAY_TYPE.NORMAL、
work,默认填 trade 交易日
返回一个 dataframe
示例
count_diff_trade_days(security=['sh600000','sz000001'],start_date=['1999-11-10','1999-11-11'],end_date='1999-11-20')
'''
--- diff_trade_days
sh600000 4
sz000001 5
'''
get_offset_days-计算指定日期偏移交易日的日期
get_offset_days(security='sh000001',date=None,ndays,day_type=DAY_TYPE.TRADE)
计算指定日期偏移 n 个交易日的日期.0 是指定日期当天(指定日期为非交易日则传入上一个最近的交易日)
参数
- security:标的,str/list[str].默认'sh000001'
- date:指定日期,str/时间戳/datetime
/list/ndarray/dataframe,截取到日期.默认回测时间 - ndays:偏移天数,int.为正是向过去偏移,为负是向未来偏移,0 时输出传入的指定日期(指定日期为非交易日则传入上一个最近的交易日)
- day_type:日期类型,可选填枚举 DAY_TYPE 常量 DAY_TYPE.TRADE、DAY_TYPE.NORMAL、work,默认填 trade 交易日
返回一个 dataframe
- offset_days:日期,datetime.date
示例
get_offset_days(security=['sh600000','sz000001'],date='2020-07-01',ndays=10)
'''
--- offset_days
sh600000 2020-06-21
sz000001 2020-06-21
'''
基本数据
get_sectype-获取多个标的证券类型
get_sectype(security)
获取多个标的的证券类型
参数
- security:证券代码,str 或 list[str]
返回一个 dataframe
- type:类型,int
序号 | 种类 |
13 | 上海主板 |
14 | 深证主板 |
18 | 科创版 |
19 | 创业板 |
20 | b股 |
32 | 债券 |
48 | 基金 |
64 | 指数 |
80 | 期货 |
224 | 其他 |
225 | 未知 |
示例
data=get_sectype(['sh600000','sz000001'])
print(data)
'''
type
sh600000 13
sz000001 14
'''
get_all_trade_days-获取所有交易日列表
get_all_trade_days()
获取所有交易日
返回获取交易日 list[datetime.date]
示例
data=get_all_trade_days()
print(data)
'''
[datetime.date(1990, 1, 1), datetime.date(1990, 1, 2), datetime.date(1990, 1, 3), datetime.date(1990, 1, 4)]
'''
get_trade_days-获取指定范围的所有交易日
get_trade_days(start_date=None,end_date=None,count=None)
获取指定范围的所有交易日
参数
- start_date:开始时间,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期
- end_date:结束时间,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
- count:获取数量,int,和 start_date 不可同时使用
返回获取交易日 list[datetime.date]
示例
data=get_trade_days(start_date='2023-10-10',end_date='2023-11-10')
print(data)
'''
[datetime.date(2023, 10, 25), datetime.date(2023, 10, 26), datetime.date(2023, 10, 27), datetime.date(2023, 10, 30), datetime.date(2023, 10, 31), datetime.date(2023, 11, 1), datetime.date(2023, 11, 2), datetime.date(2023, 11, 3), datetime.date(2023, 11, 6), datetime.date(2023, 11, 7), datetime.date(2023, 11, 8), datetime.date(2023, 11, 9), datetime.date(2023, 11, 10)]
'''
data1=get_trade_days(end_date='2023-11-10',count=10)
print(data1)
'''
[datetime.date(2023, 10, 30), datetime.date(2023, 10, 31), datetime.date(2023, 11, 1), datetime.date(2023, 11, 2), datetime.date(2023, 11, 3), datetime.date(2023, 11, 6), datetime.date(2023, 11, 7), datetime.date(2023, 11, 8), datetime.date(2023, 11, 9), datetime.date(2023, 11, 10)]
'''
get_trade_day-根据标的获取指定时间范围内的交易日
get_trade_day(security,start_date,end_date=None,count)
根据标的获取指定时间范围内的交易日
参数
- security:标的代码,str/list
- start_date:开始时间,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期
- end_date:截止时间,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
- count:表示取 end_date 往前的 count 个交易日,int,和 start_date 不可同时使用
单股返回 list[datetime.date],多股返回 dict
- key:股票代码,str
- value:交易日列表 list[datetime.date]
示例
data=get_trade_day('sh688318',start_date='2023-10-10',end_date='2023-11-10')
print(data)
'''
{'sh688318':[2023-10-10 2023-10-11 2023-10-12 2023-10-13 2023-10-16 2023-10-17 2023-10-18 2023-10-19
2023-10-20 2023-10-23 2023-10-24 2023-10-25 2023-10-26 2023-10-27 2023-10-30 2023-10-31
2023-11-01 2023-11-02 2023-11-03 2023-11-06 2023-11-07 2023-11-08 2023-11-09 2023-11-10]}
'''
规则数据
get_price_limit-查询证券在某天的涨跌幅限制
函数原型
get_price_limit(security,date)
参数
- security:标的代码;str/list[str]
- date:指定的基准日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测当前时间
返回一个 dataframe
- security:标的代码(索引)
- up:涨幅限制.
- down:跌幅限制.
示例
get_price_limit(security='sh501000','2024-01-02')
输出
--- up down
sh501000 10 10
行情数据
get_price-获取指定日期范围内的历史行情
get_price(security,start_date=None,end_date=None,frequency='daily',fields=None,skip_paused=false,fq='pre',fq_ref_date=None,count=0,fill_suspend=true,df=false,include_now=true,call_auction=true)
获取指定日期范围内的历史行情,可查询多个标的多个字段.
参数
- security:标的代码;str/list[str]
- start_date:开始时间,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,不能与 count 同时使用,如果只传入日期, 则日内时间是当日的 00:00:00
- end_date:截止时间,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,如果只传入日期, 则日内时间是当日的 00:00:00,默认回测时间
- frequency:k 线频率,str,
'xd','xm','daily'(等同于'1d'),'minute'(等同于'1m'),x 是一个正整数,分别表示x 天和 x 分钟,默认'daily' - fields: 支持以下字段 ['open', 'close', 'low', 'high', 'volume', 'money', 'avg', 'time'],其中 'time' 是以毫秒为单位的 Unix 时间戳(例如: 1675062000000)
- skip_paused:是否跳过不交易日期(包括停牌,未上市或者退市后的日期),bool,默认为 false,不跳过
- fq:'pre'/None 或'none'/'post',前复权/不复权/后复权,默认为'pre'
- fq_ref_date:复权基准日期.影响前复权数据:对这一天之前的每次除权进行连续的前复权处理,对这一天之后每次除权进行连续的后复权处理.默认 current.dt,回测当前日期
- count:获取 k 线的数量,即表示获取 end_date 之前几个 frequency 的数据,int,与 start_date 二选一,不可同时使用
- fill_suspend:对于停牌股票的价格处理,bool,默认为 true;true 表示用 pre_close 价格填充;false 表示使用 nan 填充停牌的数据
- df:返回的数据格式,bool.true 表示返回 dataframe 格式
- include_now:是否包含截止时间的 bar,bool,默认为 true,最后一根 bar 为用截止时间合成的一根 bar;为 false 时,最后一根 bar 为截止时间的上一根 bar
- call_auction:每日第一根 k 线是否包含早盘集合竞价数据,默认为 true,包括;false,不包括
返回
- time:bar 时间,timestamp
- open:开盘价
- close:收盘价
- high:最高价
- low:最低价
- volume:成交量
- money:成交额
- avg:均价,仅日线有数据
注意 1.当查询多个时,推荐使用 dict,这样可以提高回测速度.2.当查询多只标的时,为保持数据的一致性,对于停牌的数据不支持跳过,默认填充.
示例
data=get_price('sz000001',end_date='2024-06-04 11:00:00',frequency='1m',fields=['high','low'],count=5)
print(data)
'''
high low
2024-06-04 10:56:00 10.07 10.06
2024-06-04 10:57:00 10.07 10.06
2024-06-04 10:58:00 10.07 10.06
2024-06-04 10:59:00 10.07 10.06
2024-06-04 11:00:00 10.07 10.07
'''
# 单个正序查询
data=get_price('sz000001',start_date='2024-06-04',end_date='2024-06-05',frequency='1d')
print(data)
'''
open close high low volume money
2024-06-04 10.00 10.07 10.09 9.96 107406616.0 1.079357e+09
'''
# 多个倒序查询
data=get_price(['sz000001','sz000002'],end_date='2024-06-04',frequency='1m',fields=['high','low'],count=1)
print(data)
'''
time security high low
0 2024-06-03 15:00:00 sz000001 10.02 10.01
1 2024-06-03 15:00:00 sz000002 10.03 10.03
'''
# 多个正序查询
data=get_price(['sz000001','sz000002'],start_date='20230101',end_date='2023-09-30',frequency='1d',df=true)
print(data)
'''
time security high low
0 2024-06-04 sz000001 10.09 9.96
1 2024-06-04 sz000002 8.47 7.97
'''
get_current_data-获取当前单位时间的涨停价等
get_current_data()
获取当前单位时间(当天/当前分钟)的涨跌停价,是否停牌,当天的开盘价等.
返回一个 dict
- key:股票代码,str
value:是一个拥有下列属性的对象
{
last_price:最新价; high_limit:涨停价; low_limit:跌停价; paused:是否停止或者暂停了交易,当停牌、未上市或者退市后返回true; is_st:是否是 st(包括st, * st),是则返回true,否则返回false; day_open:当天开盘价; name:股票现在的名称,可以用这个来判断股票当天是否是 st, * st,是否快要退市;
~~ iopv:基金份额参考净值,只适用于基金;~~
}
示例
data=get_current_data()
print(data['sh600000'].last_price)
财务数据
get_fundamentals-获取报告期财务数据
查询指定日期区间,股票所属上市公司的财务数据
get_fundamentals(security,fields,start_quarter=None,end_quarter=None,report_type=0, data_type=2)
获取基本财务数据
参数
- security:标的代码,str/list[str]
- fields:字段,list[str]
- start_quarter:str,财报回溯查询的起始报告期,例如'2015q2'代表 2015 年半年报
- end_quarter:str,财报回溯查询的结束报告期,例如'2015q2'代表 2015 年半年报
report_type:报表类型,int,默认 0 为不限类型,按报告期查询可指定以下报表类型:
- 0-不限,最近一个报告期累计值
- 3-第一季度
- 6-中报
- 9-前三季报
- 12-年报
- data_type:int,返回数据的数据类型:1-合并原始,2-合并调整,默认 2
返回
dataframe
- security:代码,str
- pub_date:发布日期,datetime.date
- report_period:报告期,str
包含要查询的字段
"""
security pub_date report_period total_net_cf div_ttm
0 sz000001 2014-04-24 2015q2 77155000.0 1.523319e+05
"""
fields 支持的字段见下表.部分字段来源于核心财务数据,部分字段来源于专业财务数据
资产负债表
**ZLT字段名称** | ** 中文** | **分类细分** | 核心/专业 | 量纲 |
bs_cash | 货币资金 | 流动资产 | 核心 | 元 |
bs_trading_assets | 交易性金融资产 | 流动资产 | 核心 | 元 |
bs_recv_notes | 其中:应收票据-应收票据及应收账款 | 流动资产 | 核心 | 元 |
bs_recv_acct | 其中:应收账款-应收票据及应收账款 | 流动资产 | 核心 | 元 |
bs_prepay | 预付款项 | 流动资产 | 核心 | 元 |
bs_other_recv | 其他应收款 | 流动资产 | 核心 | 元 |
bs_recv_affil | 应收关联公司款 | 流动资产 | 专业 | 元 |
bs_recv_int | 其中:应收利息-其他应收款 | 流动资产 | 专业 | 元 |
bs_recv_div | 其中:应收股利-其他应收款 | 流动资产 | 专业 | 元 |
bs_inventory | 存货 | 流动资产 | 核心 | 元 |
bs_consum_bio | 其中:消耗性生物资产 | 流动资产 | 专业 | 元 |
bs_due_1y_assets | 一年内到期的非流动资产 | 流动资产 | 核心 | 元 |
bs_other_cur_assets | 其他流动资产 | 流动资产 | 核心 | 元 |
bs_total_cur_assets | 流动资产合计 | 流动资产 | 核心 | 元 |
bs_afs_assets | 可供出售金融资产 | 非流动资产 | 专业 | 元 |
bs_htm_invest | 持有至到期投资 | 非流动资产 | 专业 | 元 |
bs_lt_recv | 长期应收款 | 非流动资产 | 核心 | 元 |
bs_lt_equity | 长期股权投资 | 非流动资产 | 核心 | 元 |
bs_invest_re | 投资性房地产 | 非流动资产 | 专业 | 元 |
bs_fixed_assets | 固定资产 | 非流动资产 | 核心 | 元 |
bs_cip | 在建工程 | 非流动资产 | 核心 | 元 |
bs_eng_mat | 工程物资 | 非流动资产 | 核心 | 元 |
bs_fixed_dispose | 固定资产清理 | 非流动资产 | 专业 | 元 |
bs_prod_bio | 生产性生物资产 | 非流动资产 | 专业 | 元 |
bs_oil_gas | 油气资产 | 非流动资产 | 专业 | 元 |
bs_intang_assets | 无形资产 | 非流动资产 | 核心 | 元 |
bs_dev_exp | 开发支出 | 非流动资产 | 核心 | 元 |
bs_goodwill | 商誉 | 非流动资产 | 核心 | 元 |
bs_lt_defer_exp | 长期待摊费用 | 非流动资产 | 核心 | 元 |
bs_defer_tax_assets | 递延所得税资产 | 非流动资产 | 核心 | 元 |
bs_other_noncur_assets | 其他非流动资产 | 非流动资产 | 专业 | 元 |
bs_total_noncur_assets | 非流动资产合计 | 非流动资产 | 核心 | 元 |
bs_total_assets | 资产总计 | 非流动资产 | 核心 | 元 |
bs_st_borrow | 短期借款 | 流动负债 | 核心 | 元 |
bs_trading_liabs | 交易性金融负债 | 流动负债 | 核心 | 元 |
bs_pay_notes | 其中:应付票据-应付票据及应付账款 | 流动负债 | 核心 | 元 |
bs_pay_acct | 其中:应付账款-应付票据及应付账款 | 流动负债 | 核心 | 元 |
bs_adv_recv | 预收款项 | 流动负债 | 核心 | 元 |
bs_pay_staff | 应付职工薪酬 | 流动负债 | 核心 | 元 |
bs_pay_tax | 应交税费 | 流动负债 | 核心 | 元 |
bs_pay_int | 其中:应付利息-其他应付款 | 流动负债 | 专业 | 元 |
bs_pay_div | 其中:应付股利-其他应付款 | 流动负债 | 专业 | 元 |
bs_other_pay | 其他应付款 | 流动负债 | 核心 | 元 |
bs_pay_affil | 应付关联公司款 | 流动负债 | 专业 | 元 |
bs_due_1y_liabs | 一年内到期的非流动负债 | 流动负债 | 核心 | 元 |
bs_other_cur_liabs | 其他流动负债 | 流动负债 | 核心 | 元 |
bs_total_cur_liabs | 流动负债合计 | 流动负债 | 核心 | 元 |
bs_lt_borrow | 长期借款 | 非流动负债 | 核心 | 元 |
bs_pay_bond | 应付债券 | 非流动负债 | 核心 | 元 |
bs_lt_pay | 长期应付款 | 非流动负债 | 专业 | 元 |
bs_spec_pay | 专项应付款 | 非流动负债 | 专业 | 元 |
bs_provision | 预计负债 | 非流动负债 | 专业 | 元 |
bs_defer_tax_liabs | 递延所得税负债 | 非流动负债 | 核心 | 元 |
bs_other_noncur_liabs | 其他非流动负债 | 非流动负债 | 专业 | 元 |
bs_total_noncur_liabs | 非流动负债合计 | 非流动负债 | 核心 | 元 |
bs_total_liabs | 负债合计 | 非流动负债 | 核心 | 元 |
bs_paid_cap | 实收资本(或股本) | 所有者权益 | 核心 | 元 |
bs_cap_reserve | 资本公积 | 所有者权益 | 核心 | 元 |
bs_surplus_reserve | 盈余公积 | 所有者权益 | 核心 | 元 |
bs_less_treasury | 减:库存股 | 所有者权益 | 专业 | 元 |
bs_retain_earn | 未分配利润 | 所有者权益 | 核心 | 元 |
bs_minority | 少数股东权益 | 所有者权益 | 专业 | 元 |
bs_fx_trans_diff | 外币报表折算价差 | 所有者权益 | 专业 | 元 |
bs_nonoper_adj | 非正常经营项目收益调整 | 所有者权益 | 专业 | 元 |
bs_total_equity | 所有者权益(或股东权益)合计 | 所有者权益 | 核心 | 元 |
bs_total_liabs_equity | 负债和所有者(或股东权益)合计 | 所有者权益 | 专业 | 元 |
bs_spec_reserve | 专项储备 | 所有者权益 | 专业 | 元 |
bs_parent_equity | 归属于母公司所有者权益 | 所有者权益 | 核心 | 元 |
bs_gen_risk_reserve | 一般风险准备 | 所有者权益 | 专业 | 元 |
bs_other_ci | 其他综合收益 | 所有者权益 | 专业 | 元 |
bs_defer_income_noncur | 递延收益-非流动负债 | 非流动负债 | 专业 | 元 |
bs_settle_reserve | 结算备付金 | 流动资产 | 专业 | 元 |
bs_place_out | 拆出资金 | 流动资产 | 专业 | 元 |
bs_loan_adv_cur | 发放贷款及垫款-流动资产 | 流动资产 | 专业 | 元 |
bs_deriv_assets | 衍生金融资产 | 流动资产 | 专业 | 元 |
bs_recv_premium | 应收保费 | 流动资产 | 专业 | 元 |
bs_recv_reins | 应收分保账款 | 流动资产 | 专业 | 元 |
bs_recv_reins_rsv | 应收分保合同准备金 | 流动资产 | 专业 | 元 |
bs_buy_resell_assets | 买入返售金融资产 | 流动资产 | 专业 | 元 |
bs_assets_hfs | 划分为持有待售的资产 | 流动资产 | 专业 | 元 |
bs_loan_adv_noncur | 发放贷款及垫款-非流动资产 | 非流动资产 | 专业 | 元 |
bs_borrow_cb | 向中央银行借款 | 流动负债 | 专业 | 元 |
bs_deposit_interbank | 吸收存款及同业存放 | 流动负债 | 专业 | 元 |
bs_place_in | 拆入资金 | 流动负债 | 专业 | 元 |
bs_deriv_liabs | 衍生金融负债 | 流动负债 | 专业 | 元 |
bs_sell_repo_assets | 卖出回购金融资产款 | 流动负债 | 专业 | 元 |
bs_pay_fee_comm | 应付手续费及佣金 | 流动负债 | 专业 | 元 |
bs_pay_reins | 应付分保账款 | 流动负债 | 专业 | 元 |
bs_insurance_rsv | 保险合同准备金 | 非流动负债 | 专业 | 元 |
bs_agent_trade_sec | 代理买卖证券款 | 流动负债 | 专业 | 元 |
bs_agent_uw_sec | 代理承销证券款 | 流动负债 | 专业 | 元 |
bs_liabs_hfs | 划分为持有待售的负债 | 流动负债 | 专业 | 元 |
bs_provision_cur | 预计负债-流动负债 | 流动负债 | 专业 | 元 |
bs_defer_income_cur | 递延收益-流动负债 | 流动负债 | 核心 | 元 |
bs_pref_shares_noncur | 其中:优先股-非流动负债 | 非流动负债 | 专业 | 元 |
bs_perp_bond_noncur | 永续债-非流动负债 | 非流动负债 | 专业 | 元 |
bs_lt_pay_staff | 长期应付职工薪酬 | 非流动负债 | 专业 | 元 |
bs_other_equity_instr | 其他权益工具 | 所有者权益 | 专业 | 元 |
bs_pref_shares_equity | 其中:优先股-所有者权益 | 所有者权益 | 专业 | 元 |
bs_perp_bond_equity | 永续债-所有者权益 | 所有者权益 | 专业 | 元 |
bs_debt_invest_noncur | 债权投资-非流动资产 | 非流动资产 | 专业 | 元 |
bs_other_debt_invest | 其他债权投资-非流动资产 | 非流动资产 | 专业 | 元 |
bs_other_equity_invest | 其他权益工具投资-非流动资产 | 非流动资产 | 专业 | 元 |
bs_other_noncur_fin_assets | 其他非流动金融资产-非流动资产 | 所有者权益 | 专业 | 元 |
bs_trading_liabs_cur | *交易性金融负债-流动负债 | 流动负债 | 专业 | 元 |
bs_pay_notes_acct_cur | 应付票据及应付账款-流动负债 | 流动负债 | 专业 | 元 |
bs_contract_liabs_cur | 合同负债-流动负债 | 流动负债 | 核心 | 元 |
bs_recv_notes_acct_cur | 应收票据及应收账款-流动资产 | 流动资产 | 专业 | 元 |
bs_contract_assets_cur | 合同资产-流动资产 | 流动资产 | 核心 | 元 |
bs_recv_finance | 应收款项融资 | 流动资产 | 专业 | 元 |
bs_right_use_assets | 使用权资产 | 非流动资产 | 专业 | 元 |
bs_lease_liabs | 租赁负债 | 流动负债 | 专业 | 元 |
bs_cur_assets_balance | 流动资产平衡科目 | 流动资产 | 专业 | 元 |
bs_noncur_assets_balance | 非流动资产平衡科目 | 非流动资产 | 专业 | 元 |
bs_cur_liabs_balance | 流动负债平衡科目 | 流动负债 | 专业 | 元 |
bs_noncur_liabs_balance | 非流动负债平衡科目 | 非流动负债 | 专业 | 元 |
bs_parent_equity_balance | 归属于母公司股东权益平衡科目 | 所有者权益 | 专业 | 元 |
bs_total_equity_balance | 所有者权益平衡科目 | 所有者权益 | 专业 | 元 |
现金流量表
**ZLT字段名称** | ** 中文** | **分类细分** | 核心/专业 | **量纲** |
cf_cash_sales | 销售商品、提供劳务收到的现金 | 经营活动产生的现金流量 | 专业 | 元 |
cf_tax_refund | 收到的税费返还 | 经营活动产生的现金流量 | 专业 | 元 |
cf_op_cash_in | 收到其他与经营活动有关的现金 | 经营活动产生的现金流量 | 专业 | 元 |
cf_op_in_total | 经营活动现金流入小计 | 经营活动产生的现金流量 | 专业 | 元 |
cf_cash_paid_goods | 购买商品、接受劳务支付的现金 | 经营活动产生的现金流量 | 专业 | 元 |
cf_cash_to_emps | 支付给职工以及为职工支付的现金 | 经营活动产生的现金流量 | 专业 | 元 |
cf_tax_paid | 支付的各项税费 | 经营活动产生的现金流量 | 专业 | 元 |
cf_op_cash_out | 支付其他与经营活动有关的现金 | 经营活动产生的现金流量 | 专业 | 元 |
cf_op_out_total | 经营活动现金流出小计 | 经营活动产生的现金流量 | 专业 | 元 |
cf_op_net_cash | 经营活动产生的现金流量净额 | 经营活动产生的现金流量 | 核心 | 元 |
cf_invest_recovery | 收回投资收到的现金 | 投资活动产生的现金流量 | 专业 | 元 |
cf_invest_income | 取得投资收益收到的现金 | 投资活动产生的现金流量 | 专业 | 元 |
cf_asset_disposal | 处置固定资产、无形资产和其他长期资产收回的现金净额 | 投资活动产生的现金流量 | 专业 | 元 |
cf_sub_disposal | 处置子公司及其他营业单位收到的现金净额 | 投资活动产生的现金流量 | 专业 | 元 |
cf_recv_other_invest | 收到其他与投资活动有关的现金 | 投资活动产生的现金流量 | 专业 | 元 |
cf_invest_in_total | 投资活动现金流入小计 | 投资活动产生的现金流量 | 专业 | 元 |
cf_asset_purchase | 购建固定资产、无形资产和其他长期资产支付的现金 | 投资活动产生的现金流量 | 专业 | 元 |
cf_invest_payment | 投资支付的现金 | 投资活动产生的现金流量 | 专业 | 元 |
cf_sub_acquisition | 取得子公司及其他营业单位支付的现金净额 | 投资活动产生的现金流量 | 专业 | 元 |
cf_pay_other_invest | 支付其他与投资活动有关的现金 | 投资活动产生的现金流量 | 专业 | 元 |
cf_invest_out_total | 投资活动现金流出小计 | 投资活动产生的现金流量 | 专业 | 元 |
cf_invest_net_cash | 投资活动产生的现金流量净额 | 投资活动产生的现金流量 | 核心 | 元 |
cf_invest_inflows | 吸收投资收到的现金 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_borrowing_in | 取得借款收到的现金 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_fin_inflows | 收到其他与筹资活动有关的现金 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_fin_in_total | 筹资活动现金流入小计 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_debt_payment | 偿还债务支付的现金 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_div_interest | 分配股利、利润或偿付利息支付的现金 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_pay_other_fin | 支付其他与筹资活动有关的现金 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_fin_out_total | 筹资活动现金流出小计 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_fin_net_cash | 筹资活动产生的现金流量净额 | 筹资活动产生的现金流量 | 核心 | 元 |
cf_exchange_rate | 四、汇率变动对现金的影响 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_other_reasons | 四(2)、其他原因对现金的影响 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_net_cash_increase | 五、现金及现金等价物净增加额 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_cash_begin | 期初现金及现金等价物余额 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_cash_end | 期末现金及现金等价物余额 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_net_profit | 净利润(现金流量表) | 补充资料 | 专业 | 元 |
cf_asset_impairment | 加:资产减值准备 | 补充资料 | 核心 | 元 |
cf_dep_fix_assets | 固定资产折旧、油气资产折耗、生产性生物资产折旧 | 补充资料 | 核心 | 元 |
cf_amort_intangible | 无形资产摊销 | 补充资料 | 核心 | 元 |
cf_amort_deferred | 长期待摊费用摊销 | 补充资料 | 核心 | 元 |
cf_asset_disposal_loss | 处置固定资产、无形资产和其他长期资产的损失 | 补充资料 | 专业 | 元 |
cf_asset_scrap_loss | 固定资产报废损失 | 补充资料 | 专业 | 元 |
cf_fair_value_loss | 公允价值变动损失 | 补充资料 | 专业 | 元 |
cf_fin_expenses | 财务费用(现金流量表) | 补充资料 | 专业 | 元 |
cf_invest_loss | 投资损失 | 补充资料 | 专业 | 元 |
cf_def_tax_asset_decrease | 递延所得税资产减少 | 补充资料 | 专业 | 元 |
cf_def_tax_liab_increase | 递延所得税负债增加 | 补充资料 | 专业 | 元 |
cf_inventory_decrease | 存货的减少 | 补充资料 | 专业 | 元 |
cf_op_recv_decrease | 经营性应收项目的减少 | 补充资料 | 专业 | 元 |
cf_op_pay_increase | 经营性应付项目的增加 | 补充资料 | 专业 | 元 |
cf_other_adjustments | 其他 | 补充资料 | 专业 | 元 |
cf_op_net_cash_two | 经营活动产生的现金流量净额2 | 补充资料 | 专业 | 元 |
cf_debt_to_equity | 债务转为资本 | 补充资料 | 专业 | 元 |
cf_convertible_bonds | 一年内到期的可转换公司债券 | 补充资料 | 专业 | 元 |
cf_lease_asset_in | 融资租入固定资产 | 补充资料 | 专业 | 元 |
cf_cash_end_balance | 现金的期末余额 | 补充资料 | 专业 | 元 |
cf_cash_begin_balance | 减:现金的期初余额 | 补充资料 | 专业 | 元 |
cf_cash_equiv_end_balance | 加:现金等价物的期末余额 | 补充资料 | 专业 | 元 |
cf_cash_equiv_begin_balance | 减:现金等价物的期初余额 | 补充资料 | 专业 | 元 |
cf_other_reasons_two | 加:其他原因对现金的影响2 | 补充资料 | 专业 | 元 |
cf_net_cash_increase_two | 现金及现金等价物净增加额 | 补充资料 | 专业 | 元 |
cf_pledged_loan_increase | 质押贷款净增加额 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_bond_issue_cash | 发行债券收到的现金 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_cust_deposit_increase | 客户存款和同业存放款项净增加额 | 经营活动产生的现金流量 | 专业 | 元 |
cf_cb_loan_increase | 向中央银行借款净增加额 | 经营活动产生的现金流量 | 专业 | 元 |
cf_other_finance_increase | 向其他金融机构拆入资金净增加额 | 经营活动产生的现金流量 | 专业 | 元 |
cf_insurance_premium_cash | 收到原保险合同保费取得的现金 | 经营活动产生的现金流量 | 专业 | 元 |
cf_reinsurance_cash_in | 收到再保险业务现金净额 | 经营活动产生的现金流量 | 专业 | 元 |
cf_policyholder_deposit_increase | 保户储金及投资款净增加额 | 经营活动产生的现金流量 | 专业 | 元 |
cf_fair_value_disposal | 处置以公允价值计量且其变动计入当期损益的金融资产净增加额 | 经营活动产生的现金流量 | 专业 | 元 |
cf_fee_interest_cash | 收取利息、手续费及佣金的现金 | 经营活动产生的现金流量 | 专业 | 元 |
cf_borrowed_funds_increase | 拆入资金净增加额 | 经营活动产生的现金流量 | 专业 | 元 |
cf_repo_funds_increase | 回购业务资金净增加额 | 经营活动产生的现金流量 | 专业 | 元 |
cf_customer_loans_increase | 客户贷款及垫款净增加额 | 经营活动产生的现金流量 | 专业 | 元 |
cf_central_bank_deposit_increase | 存放中央银行和同业款项净增加额 | 经营活动产生的现金流量 | 专业 | 元 |
cf_insurance_claim_cash | 支付原保险合同赔付款项的现金 | 经营活动产生的现金流量 | 专业 | 元 |
cf_fee_interest_cash_out | 支付利息、手续费及佣金的现金 | 经营活动产生的现金流量 | 专业 | 元 |
cf_policy_dividends | 支付保单红利的现金 | 经营活动产生的现金流量 | 专业 | 元 |
cf_sub_minority_invest | 其中:子公司吸收少数股东投资收到的现金 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_sub_minority_dividends | 其中:子公司支付给少数股东的股利、利润 | 筹资活动产生的现金流量 | 专业 | 元 |
cf_invest_property_depreciation | 投资性房地产的折旧及摊销 | 经营活动产生的现金流量 | 专业 | 元 |
cf_credit_impairment | 信用减值损失 | 经营活动产生的现金流量 | 专业 | 元 |
cf_op_in_balance | 经营活动现金流入平衡科目 | 补充资料 | 专业 | 元 |
cf_op_out_balance | 经营活动现金流出平衡科目 | 补充资料 | 专业 | 元 |
cf_invest_in_balance | 投资活动现金流入平衡科目 | 补充资料 | 专业 | 元 |
cf_invest_out_balance | 投资活动现金流出平衡科目 | 补充资料 | 专业 | 元 |
cf_fin_in_balance | 筹资活动现金流入平衡科目 | 补充资料 | 专业 | 元 |
cf_fin_out_balance | 筹资活动现金流出平衡科目 | 补充资料 | 专业 | 元 |
cf_op_cash_adjust | 将净利润调节为经营活动现金流量平衡科目 | 补充资料 | 专业 | 元 |
cf_non_cash_invest_finance | 不涉及现金收支的重大投资和筹资活动平衡科目 | 补充资料 | 专业 | 元 |
cf_cash_equiv_balance | 现金及现金等价物净变动情况平衡科目 | 补充资料 | 专业 | 元 |
cf_lease_asset_depreciation | 使用权资产折旧-经营活动产生的现金流量净额2 | 补充资料 | 专业 | 元 |
利润表
**ZLT字段名称** | ** 中文** | 核心/专业 | **量纲** |
is_total_rev | 一、营业总收入 | 核心 | 元 |
is_op_rev | 其中:营业收入 | 核心 | 元 |
is_op_cost | 其中:营业成本 | 核心 | 元 |
is_bus_tax | 营业税金及附加 | 核心 | 元 |
is_sales_exp | 销售费用 | 核心 | 元 |
is_admin_exp | 管理费用 | 核心 | 元 |
is_exp_exp | 勘探费用 | 专业 | 元 |
is_fin_exp | 财务费用(利润表) | 核心 | 元 |
is_asset_imp_loss | 资产减值损失 | 核心 | 元 |
is_fair_value_gain | 加:公允价值变动净收益 | 专业 | 元 |
is_invest_inc | 投资收益 | 核心 | 元 |
is_equity_inv_inc | 其中:对联营企业和合营企业的投资收益 | 专业 | 元 |
is_other_op_inc | 影响营业利润的其他科目 | 专业 | 元 |
is_op_profit | 三、营业利润 | 核心 | 元 |
is_sub_inc | 加:补贴收入 | 专业 | 元 |
is_non_op_inc | 营业外收入 | 核心 | 元 |
is_non_op_exp | 减:营业外支出 | 核心 | 元 |
is_noncur_asset_loss | 其中:非流动资产处置净损失 | 专业 | 元 |
is_other_profit_items | 加:影响利润总额的其他科目 | 专业 | 元 |
is_total_profit | 四、利润总额 | 核心 | 元 |
is_inc_tax | 减:所得税 | 核心 | 元 |
is_other_net_profit_items | 加:影响净利润的其他科目 | 专业 | 元 |
is_net_profit | 五、净利润 | 核心 | 元 |
is_parent_net_profit | 归属于母公司所有者的净利润 | 核心 | 元 |
is_minority_net_profit | 少数股东损益 | 专业 | 元 |
is_basic_eps | (一)基本每股收益 | 核心 | 元 |
is_diluted_eps | (二)稀释每股收益 | 核心 | 元 |
is_forex_gain | 汇兑收益 | 专业 | 元 |
is_other_comprehensive | 七、其他综合收益 | 专业 | 元 |
is_total_comprehensive | 八、综合收益总额 | 专业 | 元 |
is_parent_comprehensive | 其中:归属于母公司 | 专业 | 元 |
is_minority_comprehensive | 其中:归属于少数股东 | 专业 | 元 |
is_int_inc | 利息收入 | 核心 | 元 |
is_earned_prem | 已赚保费 | 专业 | 元 |
is_fee_comm_inc | 手续费及佣金收入 | 专业 | 元 |
is_int_exp | 利息支出 | 核心 | 元 |
is_fee_comm_exp | 手续费及佣金支出 | 专业 | 元 |
is_policy_refund | 退保金 | 专业 | 元 |
is_claims_exp | 赔付支出净额 | 专业 | 元 |
is_ins_rsv_exp | 提取保险合同准备金净额 | 专业 | 元 |
is_policy_dividend_exp | 保单红利支出 | 专业 | 元 |
is_reins_exp | 分保费用 | 专业 | 元 |
is_noncur_asset_gain | 其中:非流动资产处置利得 | 专业 | 元 |
is_other_income | 其他收益 | 专业 | 元 |
is_asset_disposal_inc | 资产处置收益 | 专业 | 元 |
is_ongoing_profit | 持续经营净利润 | 专业 | 元 |
is_discontinued_profit | 终止经营净利润 | 专业 | 元 |
is_r_and_d_exp | 研发费用 | 核心 | 元 |
is_credit_imp_loss | 信用减值损失 | 专业 | 元 |
is_hedging_net_profit | 净敞口套期收益 | 专业 | 元 |
is_total_op_cost | 二、营业总成本 | 核心 | 元 |
is_int_exp_fin | 其中:利息费用-财务费用 | 专业 | 元 |
is_int_inc_fin | 其中:利息收入-财务费用 | 专业 | 元 |
is_credit_imp_loss_2019style | 信用减值损失(2019格式) | 专业 | 元 |
is_asset_imp_loss_2019style | 资产减值损失(2019格式) | 专业 | 元 |
is_total_rev_balance | 营业总收入平衡科目 | 专业 | 元 |
is_total_cost_balance | 营业总成本平衡科目 | 专业 | 元 |
is_other_income_balance | 其他收益项平衡科目 | 专业 | 元 |
is_net_profit_balance | 净利润平衡科目(按所有权归属) | 专业 | 元 |
is_total_comp_balance | 综合收益总额平衡科目 | 专业 | 元 |
is_op_profit_balance | 营业利润平衡科目 | 专业 | 元 |
is_total_profit_balance | 利润总额平衡科目 | 专业 | 元 |
get_fundamentals_pit-获取点时间财务数据
查询指定日期,股票所属上市公司的财务数据
get_fundamentals_pit(security,fields,date=None,report_type,data_type)
参数
- security:标的代码,str/list[str]
- fields:list[str],支持的字段同 get_fundamentals
- date:查询日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测当前时间
report_type:报表类型,int,默认 0 为不限类型,按报告期查询可指定以下报表类型:
- 0-不限,最近一个报告期累计值
- 1-第一季度报
- 2-第二季度
- 3-第三季度
- 4-第四季度
- 6-中报
- 9-前三季报
- 12-年报
- data_type:int,返回数据的数据类型:1-合并原始,2-合并调整,默认 2
返回
dataframe
- security:标的代码,str
- pub_date:发布日期,datetime.date
- report_date:报告日期,datetime.date
"""
security pub_date report_date total_net_cf div_ttm
0 sz000001 2014-04-24 2014-04-24 77155000.0 1.523319e+05
"""
get_valuation_indicators-获取点时间估值衍生指标
查询指定日期,股票所属上市公司的估值衍生指标数据
get_valuation_indicators(security,fields=None,date=None)
参数
- security:标的代码,str/list[str]
- fields:list[str]
- date:查询日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测当前时间
返回
dataframe
- security:代码,str
- date:日期,datetime.date
示例
"""
security date pcf_ttm_ncf ps_ttm
0 sz000001 2014-04-24 77155000.0 1.523319e+05
1 sz000001 2014-04-25 77155000.0 1.523319e+05
2 sz000002 2014-04-24 77155000.0 1.523319e+05
3 sz000002 2014-04-25 77155000.0 1.523319e+05
"""
fields 支持的字段如下表
字段名 | 中文名称 | 说明 |
total_shares_cir | 流通股本 | |
total_shares | 总股本 | |
market_cap | 总市值 | 未复权收盘价 * 总股本 |
market_cap_cir | 流通市值 | 未复权收盘价 * 流通股本 |
turnover_ratio | 换手率 | 换手率=成交量/流通股本 |
pe_ratio_lyr | 市盈率lyr | 总市值 / 归属母公司净利润lyr |
pe_ratio_ttm | 市盈率ttm | 总市值 / 归属母公司净利润ttm |
ep_ratio_lyr | 盈市率lyr | 归属母公司净利润lyr / 总市值 |
ep_ratio_ttm | 盈市率ttm | 归属母公司净利润ttm/ 总市值 |
pcf_ratio_total_lyr | 市现率_总现金流lyr | 总市值 /(经营活动产生的现金流量净额lyr + 投资活动产生的现金流量净额lyr + 筹资活动产生的现金流量净额lyr) |
pcf_ratio_total_ttm | 市现率_总现金流ttm | 总市值 /(经营活动产生的现金流量净额ttm + 投资活动产生的现金流量净额ttm + 筹资活动产生的现金流量净额ttm) |
pcf_ratio_lyr | 市现率_经营lyr | 总市值 / 经营活动产生的现金流量净额lyr |
pcf_ratio_ttm | 市现率_经营 ttm | 总市值 / 经营活动产生的现金流量净额ttm |
cfp_ratio_lyr | 现金收益率lyr | 现金收益率 =(经营活动产生的现金流量净额lyr + 投资活动产生的现金流量净额lyr + 筹资活动产生的现金流量净额lyr)/ 总市值 |
cfp_ratio_ttm | 现金收益率ttm | 现金收益率 = (经营活动产生的现金流量净额ttm + 投资活动产生的现金流量净额ttm + 筹资活动产生的现金流量净额ttm)/ 总市值 |
pb_ratio_lyr | 市净率lyr | 总市值 / 归属母公司股东权益合计lyr |
pb_ratio_ttm | 市净率ttm | 总市值 / 归属母公司股东权益合计ttm |
book_to_market_ratio_lyr | 账面市值比lyr | 归属母公司股东权益合计lyr / 总市值 |
book_to_market_ratio_ttm | 账面市值比 ttm | 归属母公司股东权益合计ttm / 总市值 |
ps_ratio_lyr | 市销率lyr | 总市值 / 营业总收入lyr |
ps_ratio_ttm | 市销率ttm | 总市值 / 营业总收入ttm |
sp_ratio_lyr | 销售收益率lyr | 营业总收入lyr / 总市值 |
sp_ratio_ttm | 销售收益率ttm | 营业总收入ttm / 总市值 |
ev_lyr | 企业价值lyr | 总市值 + 负债合计lyr |
ev_ttm | 企业价值ttm | 总市值 + 负债合计ttm |
ev_no_cash_lyr | 企业价值(不含货币资金)lyr | 总市值 + 负债合计lyr - 货币资金lyr |
ev_no_cash_ttm | 企业价值(不含货币资金)ttm | 总市值 + 负债合计ttm - 货币资金ttm |
get_efficiency_indicators-获取点时间经营衍生指标
查询指定日期,股票所属上市公司的经营衍生指标数据
get_efficiency_indicators(security,fields=None,date=None)
参数
- security:标的代码,str/list[str]
- fields:list[str]
- date:查询日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测当前时间
返回
dataframe
- security:代码,str
- date:日期,datetime.date
示例
"""
security date pcf_ttm_ncf ps_ttm
0 sz000001 2014-04-24 77155000.0 1.523319e+05
1 sz000001 2014-04-25 77155000.0 1.523319e+05
2 sz000002 2014-04-24 77155000.0 1.523319e+05
3 sz000002 2014-04-25 77155000.0 1.523319e+05
"""
fields 支持的字段如下表
字段名 | 中文名称 | 说明 |
diluted_earnings_per_share_lyr | 摊薄每股收益lyr | 归属母公司净利润lyr / 该报告期末普通股总股本 |
diluted_earnings_per_share_ttm | 摊薄每股收益ttm | 归属母公司净利润ttm / 该报告期末普通股总股本 |
weighted_common_stock_lyr | 普通股加权股本lyr | 归属于母公司所有者的净利润lyr / 基本每股收益lyr |
diluted_common_stock_lyr | 稀释普通股lyr | 归属于母公司所有者的净利润lyr / 稀释每股收益lyr |
operating_total_revenue_per_share_lyr | 每股营业总收入lyr | 营业总收入lyr / 总股本 |
operating_total_revenue_per_share_ttm | 每股营业总收入ttm | 营业总收入ttm / 总股本 |
operating_revenue_per_share_lyr | 每股营业收入lyr | 营业收入lyr / 总股本 |
operating_revenue_per_share_ttm | 每股营业收入ttm | 营业收入ttm / 总股本 |
ebit_lyr | 息税前利润lyr | 利润总额lyr + 利息支出lyr - 利息收入lyr |
ebit_ttm | 息税前利润ttm | 利润总额ttm + 利息支出ttm - 利息收入ttm |
ebitda_lyr | 息税折旧摊销前利润lyr | 息税前利润lyr + 固定资产折旧lyr + 无形资产摊销lyr + 长期待摊费用摊销lyr |
ebitda_ttm | 息税折旧摊销前利润 ttm | 息税前利润ttm + 固定资产折旧ttm + 无形资产摊销ttm + 长期待摊费用摊销ttm |
ebit_per_share_lyr | 每股息税前利润lyr | 息税前利润lyr / 总股本 |
ebit_per_share_ttm | 每股息税前利润ttm | 息税前利润ttm / 总股本 |
return_on_equity_lyr | 净资产收益率lyr | 归属母公司净利润lyr * 2 /(母公司股东权益合计lyr + 上期报表披露归属母公司股东权益合计lyr) |
return_on_equity_ttm | 净资产收益率ttm | 归属母公司净利润ttm * 2 / (母公司股东权益合计ttm + 上期报表披露归属母公司的股东权益合计ttm) |
return_on_equity_diluted_lyr | 摊薄净资产收益率lyr | 归属母公司净利润lyr / 归属母公司股东权益合计lyr |
return_on_equity_diluted_ttm | 摊薄净资产收益率ttm | 归属母公司净利润ttm / 归属母公司股东权益合计ttm |
return_on_asset_lyr | 总资产报酬率lyr | 息税前利润lyr / 总资产lyr |
return_on_asset_ttm | 总资产报酬率ttm | 息税前利润ttm/总资产ttm |
return_on_asset_net_profit_lyr | 总资产净利率lyr | 净利润lyr / 总资产lyr |
return_on_asset_net_profit_ttm | 总资产净利率ttm | 净利润ttm / 总资产ttm |
return_on_invested_capital_lyr | 投入资本回报率lyr | (净利润lyr + 财务费用lyr)/(资产总计lyr - 流动负债lyr + 应付票据lyr + 短期借款lyr + 一年内到期的非流动负债lyr) |
return_on_invested_capital_ttm | 投入资本回报率ttm | (净利润ttm + 财务费用ttm)/(资产总计ttm - 流动负债ttm + 应付票据ttm + 短期借款ttm + 一年内到期的非流动负债ttm) |
net_profit_margin_lyr | 销售净利率lyr | 净利润lyr / 营业收入lyr |
net_profit_margin_ttm | 销售净利率ttm | 净利润ttm / 营业收入ttm |
gross_profit_margin_lyr | 销售毛利率lyr | (营业收入lyr - 营业成本lyr)/ 营业收入lyr |
gross_profit_margin_ttm | 销售毛利率ttm | (营业收入ttm - 营业成本ttm)/ 营业收入ttm |
cost_to_sales_lyr | 销售成本率lyr | 营业成本lyr / 营业收入lyr |
cost_to_sales_ttm | 销售成本率ttm | 营业成本ttm / 营业收入ttm |
net_profit_to_revenue_lyr | 经营净利率lyr | 净利润lyr / 营业总收入lyr |
net_profit_to_revenue_ttm | 经营净利率ttm | 净利润ttm / 营业总收入ttm |
profit_from_operation_to_revenue_lyr | 营业利润率lyr | 营业利润lyr / 营业总收入lyr |
profit_from_operation_to_revenue_ttm | 营业利润率ttm | 营业利润ttm / 营业总收入ttm |
ebit_to_revenue_lyr | 税前收益率lyr | 息税前利润lyr / 营业总收入lyr |
ebit_to_revenue_ttm | 税前收益率ttm | 息税前利润ttm / 营业总收入ttm |
expense_to_revenue_lyr | 经营成本率lyr | 营业总成本lyr / 营业总收入lyr |
expense_to_revenue_ttm | 经营成本率ttm | 营业总成本ttm / 营业总收入ttm |
operating_profit_to_profit_before_tax_lyr | 经营活动净收益与利润总额之比lyr | (营业总收入lyr-营业总成本lyr) / 利润总额lyr |
operating_profit_to_profit_before_tax_ttm | 经营活动净收益与利润总额之比ttm | (营业总收入ttm-营业总成本ttm) / 利润总额ttm |
non_operating_profit_to_profit_before_tax_lyr | 营业外收支净额与利润总额之比lyr | 营业外收支净额lyr/利润总额lyr |
non_operating_profit_to_profit_before_tax_ttm | 营业外收支净额与利润总额之比ttm | 营业外收支净额ttm/利润总额ttm |
income_tax_to_profit_before_tax_lyr | 所得税与利润总额之比lyr | 所得税lyr / 利润总额lyr |
income_tax_to_profit_before_tax_ttm | 所得税与利润总额之比ttm | 所得税ttm / 利润总额ttm |
ebitda_to_debt_lyr | 息税折旧摊销前利润/负债总计lyr | 息税折旧摊销前利润lyr / 负债总计lyr |
ebitda_to_debt_ttm | 息税折旧摊销前利润/负债总计ttm | 息税折旧摊销前利润ttm / 负债总计ttm |
account_payable_turnover_rate_lyr | 应付账款周转率lyr | 营业成本lyr / 应付账款lyr |
account_payable_turnover_rate_ttm | 应付账款周转率ttm | 营业成本ttm / 应付账款ttm |
account_payable_turnover_days_lyr | 应付账款周转天数lyr | 360 / 应付账款周转率lyr |
account_payable_turnover_days_ttm | 应付账款周转天数ttm | 360 / 应付账款周转率ttm |
account_receivable_turnover_rate_lyr | 应收账款周转率lyr | 营业收入lyr / 应收账款lyr |
account_receivable_turnover_rate_ttm | 应收账款周转率ttm | 营业收入ttm / 应收账款ttm |
account_receivable_turnover_days_lyr | 应收账款周转天数lyr | 360 / 应收账款周转率lyr |
account_receivable_turnover_days_ttm | 应收账款周转天数ttm | 360 / 应收账款周转率ttm |
inventory_turnover_lyr | 存货周转率lyr | 营业成本lyr / 存货lyr |
inventory_turnover_ttm | 存货周转率ttm | 营业成本ttm / 存货ttm |
current_asset_turnover_lyr | 流动资产周转率lyr | 营业收入lyr /资产总计lyr |
current_asset_turnover_ttm | 流动资产周转率ttm | 营业收入ttm / 资产总计ttm |
fixed_asset_turnover_lyr | 固定资产周转率lyr | 营业收入lyr /固定资产总计lyr |
fixed_asset_turnover_ttm | 固定资产周转率ttm | 营业收入ttm / 固定资产总计ttm |
total_asset_turnover_lyr | 总资产周转率lyr | 营业收入lyr /总资产lyr |
total_asset_turnover_ttm | 总资产周转率ttm | 营业收入ttm /总资产ttm |
du_profit_margin_lyr | 净利率(杜邦分析)lyr | 净利润lyr / 利润总额lyr |
du_profit_margin_ttm | 净利率(杜邦分析)ttm | 净利润ttm / 利润总额ttm |
du_return_on_equity_lyr | 净资产收益率ROE(杜邦分析)lyr | 净利率(杜邦分析)lyr * 总资产周转率lyr * 权益乘数(杜邦分析)lyr |
du_return_on_equity_ttm | 净资产收益率ROE(杜邦分析)ttm | 净利率(杜邦分析)ttm * 总资产周转率ttm * 权益乘数(杜邦分析)ttm |
du_return_on_sales_lyr | 息税前利润/营业总收入lyr | 息税前利润lyr / 营业总收入lyr |
du_return_on_sales_ttm | 息税前利润/营业总收入ttm | 息税前利润ttm / 营业总收入ttm |
income_from_main_operations_lyr | 主营业务利润lyr | 营业收入lyr - 营业成本lyr - 营业税金及附加lyr |
income_from_main_operations_ttm | 主营业务利润ttm | 营业收入ttm - 营业成本ttm - 营业税金及附加ttm |
time_interest_earned_ratio_lyr | 利息保障倍数lyr | 息税前利润lyr / (利息支出(财务费用)lyr - 利息收入(财务费用)lyr) |
time_interest_earned_ratio_ttm | 利息保障倍数ttm | 息税前利润ttm / (利息支出(财务费用)ttm - 利息收入(财务费用)ttm) |
equity_turnover_ratio_lyr | 股东权益周转率lyr | 营业收入lyr / 归属母公司股东权益合计lyr |
equity_turnover_ratio_ttm | 股东权益周转率ttm | 营业收入ttm / 归属母公司股东权益合计ttm |
operating_cycle_lyr | 营业周期lyr | 应收账款周转天数lyr + 存货周转天数lyr |
operating_cycle_ttm | 营业周期ttm | 应收账款周转天数ttm + 存货周转天数ttm |
average_payment_period_lyr | 应付账款付款期lyr | 应付账款lyr / 营业成本lyr / 360 |
average_payment_period_ttm | 应付账款付款期ttm | 应付账款ttm / 营业成本ttm / 360 |
cash_conversion_cycle_lyr | 现金转换周期lyr | 营业周期lyr - 应付账款付款期lyr |
cash_conversion_cycle_ttm | 现金转换周期ttm | 营业周期ttm - 应付账款付款期ttm |
get_cash_flow_indicators-获取点时间现金流衍生指标
查询指定日期,股票所属上市公司的现金流衍生指标数据
get_cash_flow_indicators(security,fields=None,date=None)
参数
- security:标的代码,str/list[str]
- fields:list[str]
- date:查询日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测当前时间
返回
dataframe
- security:代码,str
- date:日期,datetime.date
示例
"""
security date pcf_ttm_ncf ps_ttm
0 sz000001 2014-04-24 77155000.0 1.523319e+05
1 sz000001 2014-04-25 77155000.0 1.523319e+05
2 sz000002 2014-04-24 77155000.0 1.523319e+05
3 sz000002 2014-04-25 77155000.0 1.523319e+05
"""
fields 支持的字段如下表
字段名 | 中文名称 | 说明 |
cash_flow_per_share_lyr | 每股现金流lyr | (经营活动产生的现金流量净额lyr + 投资活动产生的现金流量净额lyr + 筹资活动产生的现金流量净额lyr)/ 总股本 |
cash_flow_per_share_ttm | 每股现金流ttm | (经营活动产生的现金流量净额ttm + 投资活动产生的现金流量净额ttm + 筹资活动产生的现金流量净额ttm)/ 总股本 |
operating_cash_flow_per_share_lyr | 每股经营现金流lyr | 经营活动产生的现金流量净额lyr / 总股本 |
operating_cash_flow_per_share_ttm | 每股经营现金流ttm | 经营活动产生的现金流量净额ttm / 总股本 |
fcff_lyr | 企业自由现金流量lyr | 归属于母公司所有者的净利润lyr + 资产减值准备lyr + 固定资产折旧lyr + 无形资产摊销lyr + 长期待摊费用摊销lyr + 利息费用lyr *(1 - 所得税lyr / 利润总额lyr)-(本期固定资产合计lyr-上期固定资产合计lyr + 固定资产折旧lyr)-营运资本变动额lyr 其中:利息费用=利息支出(财务费用)-利息收入(财务费用),如果企业未披露利息收入(财务费用)和利息支出(财务费用),则“利息费用=财务费用”;营运资本变动额=期末[(流动资产合计-货币资金)-(流动负债合计-应付票据-一年内到期的非流动负债)]-期初[(流动资产合计-货币资金)-(流动负债合计-应付票据-一年内到期的非流动负债) |
fcff_ttm | 企业自由现金流量ttm | 归属于母公司所有者的净利润ttm + 资产减值准备ttm + 固定资产折旧ttm + 无形资产摊销ttm + 长期待摊费用摊销ttm + 利息费用ttm *(1 - 所得税ttm / 利润总额ttm)-(本期固定资产合计ttm-上期固定资产合计ttm + 固定资产折旧ttm)-营运资本变动额ttm 其中:利息费用=利息支出(财务费用)-利息收入(财务费用),如果企业未披露利息收入(财务费用)和利息支出(财务费用),则“利息费用=财务费用”;营运资本变动额=期末[(流动资产合计-货币资金)-(流动负债合计-应付票据-一年内到期的非流动负债)]-期初[(流动资产合计-货币资金)-(流动负债合计-应付票据-一年内到期的非流动负债) |
fcfe_lyr | 股权自由现金流量lyr | 归属于母公司所有者的净利润lyr + 资产减值准备lyr + 固定资产折旧lyr + 无形资产摊销lyr + 长期待摊费用摊销lyr -(本期固定资产合计lyr - 上期固定资产合计lyr + 固定资产折旧lyr)- 营运资本变动额lyr + 净债务增加lyr 其中:营运资本变动额=期末[(流动资产合计-货币资金)-(流动负债合计-应付票据-一年内到期的非流动负债)]-期初[(流动资产合计-货币资金)-(流动负债合计-应付票据-一年内到期的非流动负债)];净债务增加=期末(短期借款+长期借款+应付债券)-期初(短期借款+长期借款+应付债券) |
fcfe_ttm | 股权自由现金流量ttm | 归属于母公司所有者的净利润ttm + 资产减值准备ttm + 固定资产折旧ttm + 无形资产摊销ttm + 长期待摊费用摊销ttm -(本期固定资产合计ttm - 上期固定资产合计ttm + 固定资产折旧ttm)- 营运资本变动额ttm + 净债务增加ttm 其中:营运资本变动额=期末[(流动资产合计-货币资金)-(流动负债合计-应付票据-一年内到期的非流动负债)]-期初[(流动资产合计-货币资金)-(流动负债合计-应付票据-一年内到期的非流动负债)];净债务增加=期末(短期借款+长期借款+应付债券)-期初(短期借款+长期借款+应付债券) |
free_cash_flow_company_per_share_lyr | 每股企业自由现金流lyr | 企业自由现金流量lyr / 总股本 |
free_cash_flow_company_per_share_ttm | 每股企业自由现金流ttm | 企业自由现金流量ttm / 总股本 |
free_cash_flow_equity_per_share_lyr | 每股股东自由现金流lyr | 股东自由现金流量lyr / 总股本 |
free_cash_flow_equity_per_share_ttm | 每股股东自由现金流ttm | 股东自由现金流量ttm / 总股本 |
ocf_to_debt_lyr | 经营活动产生的现金流量净额/负债合计lyr | 经营活动产生的现金流量净额lyr / 负债合计lyr |
ocf_to_debt_ttm | 经营活动产生的现金流量净额/负债合计ttm | 经营活动产生的现金流量净额ttm / 负债合计ttm |
surplus_cash_protection_multiples_lyr | 盈余现金保障倍数lyr | 经营活动产生的现金流量净额lyr/净利润lyr*100% |
surplus_cash_protection_multiples_ttm | 盈余现金保障倍数ttm | 经营活动产生的现金流量净额ttm/净利润ttm *100% |
ocf_to_interest_bearing_debt_lyr | 经营活动产生的现金流量净额/带息债务lyr | 经营活动产生的现金流量净额lyr / 带息债务lyr |
ocf_to_interest_bearing_debt_ttm | 经营活动产生的现金流量净额/带息债务ttm | 经营活动产生的现金流量净额ttm / 带息债务ttm |
ocf_to_current_ratio_lyr | 经营活动产生的现金流量净额/流动负债 | 经营活动产生的现金流量净额lyr/流动负债lyr |
ocf_to_current_ratio_ttm | 经营活动产生的现金流量净额/流动负债ttm | 经营活动产生的现金流量净额ttm / 流动负债ttm |
ocf_to_net_debt_lyr | 经营活动产生的现金流量净额/净债务lyr | 经营活动产生的现金流量净额lyr / 净债务lyr |
ocf_to_net_debt_ttm | 经营活动产生的现金流量净额/净债务ttm | 经营活动产生的现金流量净额ttm / 净债务ttm |
depreciation_and_amortization_lyr | 当期计提折旧与摊销lyr | 固定资产折旧lyr + 无形资产摊销lyr + 长期待摊费用摊销lyr |
depreciation_and_amortization_ttm | 当期计提折旧与摊销ttm | 固定资产折旧ttm + 无形资产摊销ttm + 长期待摊费用摊销ttm |
cash_flow_ratio_lyr | 现金流量比率lyr | 息税折旧摊销前利润lyr / 利息支出lyr |
cash_flow_ratio_ttm | 现金流量比率ttm | 息税折旧摊销前利润ttm / 利息支出 ttm |
get_asset_indicators-获取点时间财务衍生指标
查询指定日期,股票所属上市公司的财务衍生指标数据
get_asset_indicators(security,fields=None,date=None)
参数
- security:标的代码,str/list[str]
- fields:list[str]
- date:查询日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测当前时间
返回
dataframe
- security:代码,str
- date:日期,datetime.date
示例
"""
security date pcf_ttm_ncf ps_ttm
0 sz000001 2014-04-24 77155000.0 1.523319e+05
1 sz000001 2014-04-25 77155000.0 1.523319e+05
2 sz000002 2014-04-24 77155000.0 1.523319e+05
3 sz000002 2014-04-25 77155000.0 1.523319e+05
"""
fields 支持的字段如下表
字段名 | 中文名称 | 说明 |
non_interest_bearing_current_debt_lyr | 无息流动负债lyr | 应付帐款lyr + 预收帐款lyr + 应付职工薪酬lyr + 应交税费lyr + 其他应付款lyr + 预提费用lyr + 递延收益lyr + 其他流动负债lyr |
non_interest_bearing_current_debt_ttm | 无息流动负债ttm | 应付帐款ttm + 预收帐款ttm + 应付职工薪酬ttm + 应交税费ttm + 其他应付款ttm + 预提费用ttm + 递延收益ttm + 其他流动负债ttm |
non_interest_bearing_non_current_debt_lyr | 无息非流动负债lyr | 非流动负债合计lyr - 长期借款lyr - 应付债券lyr |
non_interest_bearing_non_current_debt_ttm | 无息非流动负债ttm | 非流动负债合计ttm - 长期借款ttm - 应付债券ttm |
interest_bearing_debt_lyr | 带息债务lyr | 负债合计lyr - 无息流动负债lyr - 无息非流动负债lyr |
interest_bearing_debt_ttm | 带息债务ttm | 负债合计ttm - 无息流动负债ttm - 无息非流动负债ttm |
capital_reserve_per_share_lyr | 每股资本公积金lyr | 资本公积金lyr / 总股本 |
capital_reserve_per_share_ttm | 每股资本公积金ttm | 资本公积金ttm / 总股本 |
earned_reserve_per_share_lyr | 每股盈余公积金lyr | 盈余公积金lyr / 总股本 |
earned_reserve_per_share_ttm | 每股盈余公积金ttm | 盈余公积金ttm / 总股本 |
undistributed_profit_per_share_lyr | 每股未分配利润lyr | 未分配利润总额lyr / 总股本 |
undistributed_profit_per_share_ttm | 每股未分配利润ttm | 未分配利润总额ttm / 总股本 |
retained_earnings_lyr | 留存收益 lyr | 盈余公积金lyr + 未分配利润lyr |
retained_earnings_ttm | 留存收益ttm | 盈余公积金ttm + 未分配利润ttm |
debt_to_asset_ratio_lyr | 资产负债率lyr | 负债合计lyr / 总资产 |
debt_to_asset_ratio_ttm | 资产负债率ttm | 负债合计ttm / 总资产 |
equity_multiplier_lyr | 权益乘数lyr | 总资产lyr / 股东权益合计lyr |
equity_multiplier_ttm | 权益乘数ttm | 总资产ttm / 股东权益合计ttm |
capital_to_equity_ratio_lyr | 长期资本固定比率lyr | (资产总计lyr-流动资产lyr)/所有者权益平均余额lyr×100% |
capital_to_equity_ratio_ttm | 长期资本固定比率ttm | (资产总计ttm-流动资产ttm)/所有者权益平均余额ttm×100% |
non_current_asset_to_total_asset_lyr | 非流动资产比率lyr | 非流动资产合计lyr / 总资产lyr |
non_current_asset_to_total_asset_ttm | 非流动资产比率ttm | 非流动资产合计ttm / 总资产ttm |
invested_capital_lyr | 全部投入资本lyr | 归属于母公司所有者权益合计lyr + 带息债务lyr |
invested_capital_ttm | 全部投入资本ttm | 归属于母公司所有者权益合计ttm + 带息债务ttm |
interest_bearing_debt_to_capital_lyr | 带息债务占企业全部投入成本的比重lyr | 带息债务lyr / 全部投入资本lyr |
interest_bearing_debt_to_capital_ttm | 带息债务占企业全部投入成本的比重ttm | 带息债务ttm / 全部投入资本ttm |
current_debt_to_total_debt_lyr | 流动负债率lyr | 流动负债合计lyr / 负债合计lyr |
current_debt_to_total_debt_ttm | 流动负债率ttm | 流动负债合计ttm / 负债合计ttm |
non_current_debt_to_total_debt_lyr | 非流动负债率lyr | 非流动负债合计lyr / 负债合计lyr |
non_current_debt_to_total_debt_ttm | 非流动负债率ttm | 非流动负债合计ttm / 负债合计ttm |
current_ratio_lyr | 流动比率lyr | 流动资产合计lyr / 流动负债合计lyr |
current_ratio_ttm | 流动比率ttm | 流动资产合计ttm / 流动负债合计ttm |
super_quick_ratio_lyr | 超速动比率lyr | (货币资金lyr + 交易性金融资产lyr + 应收票据lyr + 应收账款lyr + 其他应收款lyr)/ 流动负债合计lyr |
super_quick_ratio_ttm | 超速动比率ttm | (货币资金ttm + 交易性金融资产ttm + 应收票据ttm + 应收账款ttm + 其他应收款ttm)/ 流动负债合计ttm |
debt_to_equity_ratio_lyr | 产权比率lyr | 负债合计lyr / 股东权益合计lyr |
debt_to_equity_ratio_ttm | 产权比率ttm | 负债合计ttm / 股东权益合计ttm |
equity_to_debt_ratio_lyr | 权益负债比率lyr | 归属于母公司所有者权益合计lyr / 负债合计lyr |
equity_to_debt_ratio_ttm | 权益负债比率ttm | 归属于母公司所有者权益合计ttm / 负债合计ttm |
equity_to_interest_bearing_debt_lyr | 权益带息负债比率 lyr | 归属于母公司所有者权益合计lyr / 带息债务lyr |
equity_to_interest_bearing_debt_ttm | 权益带息负债比率 ttm | 归属于母公司所有者权益合计ttm / 带息债务ttm |
net_debt_lyr | 净债务lyr | 带息债务lyr - 货币资金lyr |
net_debt_ttm | 净债务ttm | 带息债务ttm - 货币资金ttm |
working_capital_lyr | 营运资本lyr | 流动资产合计lyr - 流动负债合计lyr |
working_capital_ttm | 营运资本ttm | 流动资产合计ttm - 流动负债合计ttm |
net_working_capital_lyr | 净营运资本lyr | 流动资产合计lyr - 货币资金lyr - 无息流动负债lyr |
net_working_capital_ttm | 净营运资本ttm | 流动资产合计ttm - 货币资金ttm - 无息流动负债ttm |
long_term_debt_to_working_capital_lyr | 长期债务与营运资金比率lyr | 非流动负债lyr/营运资本lyr |
long_term_debt_to_working_capital_ttm | 长期债务与营运资金比率ttm | 非流动负债ttm/营运资本ttm |
book_value_per_share_lyr | 每股净资产lyr | 归属母公司股东权益合计lyr / 总股本 |
book_value_per_share_ttm | 每股净资产ttm | 归属母公司股东权益合计ttm / 总股本 |
du_equity_multiplier_lyr | 权益乘数(杜邦分析)lyr | (本期总资产lyr + 上年总资产lyr)/ (本期股东权益合计lyr + 上年股东权益合计lyr) |
du_equity_multiplier_ttm | 权益乘数(杜邦分析)ttm | (本期总资产ttm + 上期总资产ttm)/ (本期股东权益合计ttm + 上期股东权益合计ttm) |
book_leverage_lyr | 账面杠杆lyr | 非流动复债合计lyr / 归母公司股东权益合计lyr |
book_leverage_ttm | 账面杠杆ttm | 非流动复债合计ttm / 归母公司股东权益合计ttm |
market_leverage_lyr | 市场杠杆lyr | 非流动负债合计lyr / (非流动负债合计lyr + 总市值) |
market_leverage_ttm | 市场杠杆ttm | 非流动负债合计ttm / (非流动负债合计ttm + 总市值) |
equity_ratio_lyr | 股东权益比率lyr | 归属母公司股东权益总计lyr / 资产总计lyr |
equity_ratio_ttm | 股东权益比率ttm | 归属母公司股东权益总计ttm / 资产总计ttm |
fixed_asset_ratio_lyr | 固定资产比率lyr | (固定资产lyr + 工程物资lyr + 在建工程合计lyr) / 资产总计lyr |
fixed_asset_ratio_ttm | 固定资产比率ttm | (固定资产ttm + 工程物资ttm + 在建工程合计ttm) / 资产总计ttm |
intangible_asset_ratio_lyr | 无形资产比率lyr | (无形资产lyr + 开发支出lyr + 商誉lyr) / 资产总计lyr |
intangible_asset_ratio_ttm | 无形资产比率ttm | (无形资产ttm + 开发支出ttm + 商誉ttm) / 资产总计ttm |
equity_fixed_asset_ratio_lyr | 股东权益与固定资产比率lyr | 归属母公司股东权益合计lyr / (固定资产合计lyr + 工程物资lyr + 在建工程合计lyr) |
equity_fixed_asset_ratio_ttm | 股东权益与固定资产比率ttm | 归属母公司股东权益合计ttm / (固定资产合计ttm + 工程物资ttm + 在建工程合计ttm) |
tangible_asset_per_share_lyr | 每股有形资产lyr | (资产总计lyr - 无形资产lyr - 商誉lyr)/ 总股本 |
tangible_asset_per_share_ttm | 每股有形资产ttm | (资产总计ttm - 无形资产ttm - 商誉ttm)/ 总股本 |
liabilities_per_share_lyr | 每股负债lyr | 负债合计lyr / 总股本 |
liabilities_per_share_ttm | 每股负债ttm | 负债合计ttm / 总股本 |
depreciation_per_share_lyr | 每股折旧和摊销lyr | (固定资产折旧lyr + 无形资产摊销lyr + 长期待摊费用摊销lyr)/ 总股本 |
depreciation_per_share_ttm | 每股折旧和摊销ttm | (固定资产折旧ttm + 无形资产摊销ttm + 长期待摊费用摊销ttm)/ 总股本 |
cash_ratio_lyr | 现金比率lyr | 货币资金lyr / 流动负债合计lyr |
cash_ratio_ttm | 现金比率ttm | 货币资金ttm / 流动负债合计ttm |
cash_equivalent_per_share_lyr | 每股货币资金lyr | 货币资金lyr / 总股本 |
cash_equivalent_per_share_ttm | 每股货币资金ttm | 货币资金ttm / 总股本 |
get_growth_indicators-获取点时间增长衍生指标
查询指定日期,股票所属上市公司的增长衍生指标数据
get_growth_indicators(security,fields=None,date=None)
参数
- security:标的代码,str/list[str]
- fields:list[str]
- date:查询日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测当前时间
返回
dataframe
- security:代码,str
- date:日期,datetime.date
示例
"""
security date pcf_ttm_ncf ps_ttm
0 sz000001 2014-04-24 77155000.0 1.523319e+05
1 sz000001 2014-04-25 77155000.0 1.523319e+05
2 sz000002 2014-04-24 77155000.0 1.523319e+05
3 sz000002 2014-04-25 77155000.0 1.523319e+05
"""
fields 支持的字段如下表
字段名 | 中文名称 | 说明 |
inc_revenue_lyr | 营业总收入同比增长率lyr | 营业总收入lyr / 上年营业总收入lyr - 1 |
inc_revenue_ttm | 营业总收入同比增长率ttm | 营业总收入ttm / 上年营业总收入ttm - 1 |
inc_return_on_equity_lyr | 净资产收益率(摊薄)同比增长率lyr | 摊薄净资产收益率lyr / 去年摊薄净资产收益率lyr - 1 |
inc_return_on_equity_ttm | 净资产收益率(摊薄)同比增长率ttm | 摊薄净资产收益率ttm / 去年摊薄净资产收益率ttm - 1 |
inc_book_per_share_lyr | 每股净资产同比增长率lyr | 每股净资产lyr / 去年每股净资产lyr - 1 |
inc_book_per_share_ttm | 每股净资产同比增长率ttm | 每股净资产ttm / 去年每股净资产ttm - 1 |
operating_profit_growth_ratio_lyr | 营业利润同比增长率lyr | (营业利润lyr - 去年营业利润lyr) / 去年营业利润lyr |
operating_profit_growth_ratio_ttm | 营业利润同比增长率ttm | (营业利润ttm - 去年营业利润ttm) / 去年营业利润ttm |
net_profit_growth_ratio_lyr | 净利润同比增长率lyr | (净利润lyr - 去年净利润lyr) / 去年净利润lyr |
net_profit_growth_ratio_ttm | 净利润同比增长率ttm | (净利润ttm - 去年净利润ttm) / 去年净利润ttm |
profit_growth_ratio_lyr | 利润总额同比增长率lyr | (利润总额lyr - 去年利润总额lyr) / 去年利润总额lyr |
profit_growth_ratio_ttm | 利润总额同比增长率ttm | (利润总额ttm - 去年利润总额ttm) / 去年利润总额ttm |
gross_profit_growth_ratio_lyr | 毛利润同比增长率lyr | (营业收入lyr - 营业总成本lyr) / (去年营业收入lyr - 去年营业总成本lyr) - 1 |
gross_profit_growth_ratio_ttm | 毛利润同比增长率ttm | (营业收入ttm - 营业成本ttm) / (去年营业收入ttm - 去年营业成本ttm) - 1 |
operating_revenue_growth_ratio_lyr | 营业收入同比增长率lyr | (营业收入lyr - 去年营业收入lyr) / 去年营业收入lyr |
operating_revenue_growth_ratio_ttm | 营业收入同比增长率ttm | (营业收入ttm - 去年营业收入ttm) / 去年营业收入ttm |
net_asset_growth_ratio_lyr | 净资产同比增长率lyr | 归属于母公司所有者权益合计lyr / 去年归属于母公司所有者权益合计lyr - 1 |
net_asset_growth_ratio_ttm | 净资产同比增长率ttm | 归属于母公司所有者权益合计ttm / 去年归属于母公司所有者权益合计ttm - 1 |
total_asset_growth_ratio_lyr | 总资产同比增长率lyr | (总资产lyr - 去年总资产lyr) / 去年总资产lyr |
total_asset_growth_ratio_ttm | 总资产同比增长率ttm | (总资产ttm - 去年总资产ttm) / 去年总资产ttm |
net_profit_parent_company_growth_ratio_lyr | 归属母公司所有者的净利润同比增长率lyr | 归属于母公司所有者的净利润lyr / 去年归属于母公司所有者的净利润lyr - 1 |
net_profit_parent_company_growth_ratio_ttm | 归属母公司所有者的净利润同比增长率ttm | 归属于母公司所有者的净利润ttm / 去年归属于母公司所有者的净利润ttm - 1 |
net_operate_cash_flow_growth_ratio_lyr | 经营现金流量净额同比增长率lyr | 经营活动产生的现金流量净额lyr / 去年经营活动产生的现金流量净额lyr - 1 |
net_operate_cash_flow_growth_ratio_ttm | 经营现金流量净额同比增长率ttm | 经营活动产生的现金流量净额ttm / 去年经营活动产生的现金流量净额ttm - 1 |
net_investing_cash_flow_growth_ratio_lyr | 投资现金流量净额同比增长率lyr | 投资活动产生的现金流量净额lyr / 去年投资活动产生的现金流量净额lyr - 1 |
net_investing_cash_flow_growth_ratio_ttm | 投资现金流量净额同比增长率ttm | 投资活动产生的现金流量净额ttm / 去年投资活动产生的现金流量净额ttm - 1 |
net_financing_cash_flow_growth_ratio_lyr | 筹资现金流量净额同比增长率lyr | 筹资活动产生的现金流量净额lyr / 去年筹资活动产生的现金流量净额lyr - 1 |
net_financing_cash_flow_growth_ratio_ttm | 筹资现金流量净额同比增长率ttm | 筹资活动产生的现金流量净额ttm / 去年筹资活动产生的现金流量净额ttm - 1 |
状态数据
get_ipo_date-获取标的上市日期
get_ipo_date(security)
获取标的上市时间.如果当前处于上市状态,则返回这次上市日期.否则返回 null.security 品种支持股票、基金、期权、债券.
参数
- security:标的,str/list[str]
返回
get_ipo_date(['sh600000','sz000001'])
示例
--- ipo_date
sz000001 1991-04-03
sh600000 1999-11-10
get_latest_status_time-获取标的在指定日期 st、停牌、退市整理期、退市状态开始时间
get_latest_status_time(security,date=None,status_type=STATUS_TYPE.ST)
获取标的在指定日期 st/ st/停牌/退市整理期/退市状态开始时间.如果在指定日期处于 st/ st/停牌/退市整理期/退市状态,则返回这次状态开始时间.否则返回 null.status_type 传不同值时支持不同品种.默认判断 st.
参数
- security:标的,str/list[str]
- date:指定日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
- status_type:状态类型,可选填枚举常量 STATUS_TYPE.ST、STATUS_TYPE.STX、STATUS_TYPE.SUSPEND、STATUS_TYPE.PREDELIST、STATUS_TYPE.DELISTED.默认 st
返回
get_latest_status_time(['sh600000','sz000001'])
示例
--- latest_status_time
sz000001 1991-04-03
sh600000 1999-11-10
is_listing-判断标的在指定日期是否上市
is_listing(security,date=None,change=false)
判断标的在指定日期是否上市.change 传不同值时可判断是否在指定日期新变化的状态.日期默认当天,security 品种支持股票、基金、期权、债券
参数
- security:标的,str/list[str]
- date:指定日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
- change:是否在指定日期新变化的状态.true 表示判断是否在指定日期新变化的状态.false 表示判断当前是否是此状态,但不一定是新变化的状态.默认是 false
返回
is_listing(security=['sh688888','sh688599'],date='1999-11-10')
示例
--- is_listing
sh688888 1
sh688599 0
is_status-判断标的在指定日期是否处于 st、停牌、退市整理期、退市状态
is_status(security,date=None,change=false,status_type=STATUS_TYPE.ST)
判断标的在指定日期是否处于 st/* st/停牌/退市整理期状态.status_type 传不同值时支持不同品种,change 传不同值时可判断是否在指定日期新变化的状态.默认判断 st.
参数
- security:标的,str/list[str]
- date:指定日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
- change:是否在指定日期新变化的状态.true 表示判断是否在指定日期新变化的状态.false 表示判断当前是否是此状态,但不一定是新变化的状态.默认是 false
- status_type:状态类型,可选填枚举常量 STATUS_TYPE.ST、STATUS_TYPE.STX、STATUS_TYPE.SUSPEND、STATUS_TYPE.PREDELIST、STATUS_TYPE.DELISTED.默认 STATUS_TYPE.S1
返回
is_status(security=['sh600000','sh600011','sz000001'],date='1999-11-10')
示例
--- is_status
sh600000 0
sh600011 1
sz000001 0
get_listing_days-计算标的截止到指定日期的上市天数
get_listing_days(security,date=None,day_type=DAY_TYPE.NORMAL)
计算标的截止到指定日期的上市天数.如果指定日期处于上市状态,则返回这次上市天数.否则返回 0.天数类型默认为自然日,security 品种支持股票、基金、期权、债券
参数
- security:标的,str/list[str]
- date:指定日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
- day_type:日期类型,可选填枚举常量 DAY_TYPE.TRADE、DAY_TYPE.NORMAL.默认填 normal 自然日
返回
get_listing_days(security=['sh600000','sz000001'],day_type=DAY_TYPE.TRADE)
示例
--- listing_days
sz000001 10022
sh600000 12033
get_latest_status_days-计算标的截止到指定日期最近一次 st、停牌、退市整理期状态持续天数
get_latest_status_days(security,date=None,day_type=DAY_TYPE.TRADE,status_type=STATUS_TYPE.ST)
计算标的截止到指定日期最近一次 st/ st/停牌/退市整理期状态持续天数.如果当前处于 s/ st/停牌/退市整理期状态,则返回这次状态持续天数.否则返回 0.status_type 传不同值时支持不同品种.默认截止到当前,天数类型默认为交易日,默认判断 st.
参数
- security:标的,str/list[str]
- date:指定日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
- day_type:日期类型,可选填枚举常量 DAY_TYPE.TRADE、DAY_TYPE.NORMAL.默认填 trade 交易日
- status_type:状态类型,可选填枚举常量 STATUS_TYPE.ST、STATUS_TYPE.STX、STATUS_TYPE.SUSPEND、STATUS_TYPE.PREDELIST .默认 st
返回
get_latest_status_days(security=['sh600000','sz000001'],day_type=DAY_TYPE.TRADE)
示例
--- latest_status_days
sz000001 10022
sh600000 12033
count_status_days-计算标的在设定的时间区间内处于 st、停牌、退市整理期的天数
count_status_days(security,start_date,end_date=None,day_type=DAY_TYPE.TRADE,status_type=STATUS_TYPE.ST)
计算标的在设定的时间区间内处于 st/* st/停牌的天数.status_type 传不同值时支持不同品种.天数类型默认为交易日,默认判断 st.
参数
- security:标的,str/list[str]
- start_date:区间开始日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期
- end_date:区间结束日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
- day_type:日期类型,可选填枚举常量 DAY_TYPE.TRADE、DAY_TYPE.NORMAL.默认填 trade 交易日
- status_type:状态类型,可选填枚举常量 STATUS_TYPE.ST、STATUS_TYPE.STX、STATUS_TYPE.SUSPEND、STATUS_TYPE.PREDELIST .默认 st
返回
count_status_days(security=['sh600000','sh600011','sz000001'],start_date='1999-11-10',end_date='1999-11-20',day_type=DAY_TYPE.TRADE,status_type=STATUS_TYPE.ST)
示例
--- status_days
sh600000 4
sh600011 3
sz000001 0
count_status_change-计算股票在设定的时间区间内 st 的次数
count_status_change(security,start_date,end_date=None
)
计算股票在设定的时间区间内转变成 st/ * st 的次数.security 品种仅对股票有效.默认判断 st.如果传入的开始时间股票状态为 st,则记为 1 次。
参数
- security:标的,str/list[str]
- start_date:区间开始日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期
- end_date:区间结束日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
- status_type:状态类型,可选填枚举常量 STATUS_TYPE.ST、STATUS_TYPE.STX.默认 st
返回
count_status_change(security=['sh600000','sh600011','sz000001'],start_date='1999-11-10',end_date='1999-11-20')
示例
--- status_change
sh600000 4
sh600011 3
sz000001 0
基金数据
get_etf_stocks-查询 etf 成分股
查询某只 etf 在最新交易日的成分股持有情况和现金替代信息
get_etf_stocks(etf_code,date=None)
参数
- etf_code:证券代码,str
- date:指定日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
返回
一个 dataframe
- security:证券代码,str
- date:日期,datetime.date
- amount:股票数量,int.T 日内容中最小申购赎回单位所对应的各成分股数量
cash_subs_type:现金替代标志
- 基金管理人对于每一只成分股使用现金替代情况的态度 1-禁止 2-允许 3-必须 4-退补
- cash_subs_sum:固定替代金额
- cash_premium_rate:现金替代溢价比例
示例
'''
security date amount cash_subs_type cash_subs_sum cash_premium_rate
0 SH601688 2022-10-20 2100.0 1 0.0 10.0
1 SH600809 2022-10-20 200.0 1 0.0 10.0
2 SH600893 2022-10-20 500.0 1 0.0 10.0
'''
指数数据
get_all_index-查询指数列表
函数原型
get_all_index(date=None)
参数
- date:指定的基准日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
返回一个 dataframe,索引是指数代码.
- index_name:指数名称.
- start_date:上市日期(暂不支持)
- end_date:退市日期,如果没有退市则为 None(暂不支持)
示例
get_all_index()
'''
index_name start_date end_date
007001 军工
007003 煤化工
007004 新能源
007005 节能环保
007007 ab股
... ...
007499 存储芯片
007500 液冷概念
'''
get_index_stocks-查询指数成分股
函数原型
get_index_stocks(index_code,date=None)
参数
- index_code:指数代码,str,仅可查询下列指数:
代码 | 名称 |
sh000001 | 上证指数 |
sz399001 | 深证成指 |
sz399006 | 创业板指 |
sh000688 | 科创50 |
sz399106 | 深证综指 |
sz399102 | 创业板综 |
sz399850 | 深证50 |
sz399330 | 深证100 |
sz399750 | 深主板50 |
sz399673 | 创业板50 |
sh000016 | 上证50 |
sh000010 | 上证180 |
sh000009 | 上证380 |
sh000698 | 科创100 |
sh000300 | 沪深300 |
sh000903 | 中证100 |
sh000905 | 中证500 |
sh000906 | 中证800 |
sh000852 | 中证1000 |
sz399303 | 国证2000 |
- date:指定日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
返回一个 list[str]
示例
get_index_stocks('sh000300')
行业数据
get_all_industry-查询行业列表
函数原型
get_all_industry(industry_class,date=None)
参数
- industry_class:见枚举类型(只有申万和中信行业分类)
枚举代码 | 行业分类 |
sw_l1 | 申万一级行业 |
sw_l2 | 申万二级行业 |
sw_l3 | 申万三级行业 |
zx_l1 | 中信一级行业 |
zx_l2 | 中信二级行业 |
zx_l3 | 中信三级行业 |
- date:指定的基准日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
返回一个 dataframe,索引是行业代码,str
- industry_name:行业名称.
- start_date:开始日期
示例
get_all_industry(industry_class='sw_l1')
'''
industry_name start_date
100773396 种植业
100773496 渔业
100773596 林业
100773696 饲料
100773796 农产品加工
'''
get_industry-查询证券所属的行业
函数原型
get_industry(security,date=None)
参数
- security:标的代码,str/list[str]
- date:指定日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
返回一个 dict, key 是标的代码
示例
get_industry(security=['sz000001','sz000002'],date='2024-01-02')
'''
{'sz000001': {'sw_l1': {'industry_code': '101143296', 'industry_name': '银行'}, 'sw_l2': {'industry_code': '101143596', 'industry_name': '股份制银行'}, 'sw_l3': {'industry_code': '101143597', 'industry_name': '股份制银行'}, 'zx_l1': {'industry_code': '151394944', 'industry_name': '银行'}, 'zx_l2': {'industry_code': '151396944', 'industry_name': '全国性股份制银行Ⅱ'}, 'zx_l3': {'industry_code': '151396954', 'industry_name': '全国性股份制银行Ⅲ'}}, 'sz000002': {'sw_l1': {'industry_code': '101093296', 'industry_name': '房地产'}, 'sw_l2': {'industry_code': '101093396', 'industry_name': '房地产开发'}, 'sw_l3': {'industry_code': '101093397', 'industry_name': '住宅开发'}, 'zx_l1': {'industry_code': '151414944', 'industry_name': '房地产'}, 'zx_l2': {'industry_code': '151415944', 'industry_name': '房地产开发和运营'}, 'zx_l3': {'industry_code': '151415954', 'industry_name': '住宅物业开发'}}}
'''
get_industry_stocks-查询行业成分股
函数原型
get_industry_stocks(industry_code,date=None)
参数
- industry_code:行业代码指数,str
- date:指定日期,datetime.date/datetime.datetime/'yyyy-mm-dd'/'yyyy-mm-dd hh:mm:ss'/时间戳,截取到日期,默认回测时间
返回一个 list[str]
示例
get_industry_stocks(industry_code='100773396',date='2023-06-01')
'''
['sh600313', 'sh600354', 'sh600371', 'sz000713', 'sz000998', 'sz002041', 'sz300087', 'sz300189', 'sh600598', 'sh600762', 'sh601952', 'sz300972', 'sh600108', 'sh600359', 'sh600540', 'sh601118', 'sh603336', 'sh600883', 'sz002772', 'sz300511', 'sz300970', 'sz300972']
'''