Wind API 学习笔记五(TDays 日期函数)
页面跳转
5.1 返回区间内的日期序列w.tdays
定义
命令用来获取一个时间区间内的某种规则下的日期序列。
函数输入
函数名:TDays(startDate,endDate,[Optional argument])
||Element | Type| Description ||
| :------------- :|:-------------:| :-----:|
|起始日期(必选)| StartDate| String| 时间序列的起始日期| 范例1:"2015-01-01",支持日期宏|
|截止日期(必选)| EndDate | String |时间序列的截止日期,置空取当前最新日期| 范例1:"2015-06-30",支持日期宏|
|日期类型(可选)| Days| String| 所有工作日:Weekdays,所有日历日:Alldays,排除所有非交易日:Trading | 范例:’Days=Trading’,默认Days=Trading|
|变频参数(可选)| Period| String| 每天一值:D, 每周一值:W,每月一值M:,每季度一值:Q ,每半年一值:S ,每年一值:Y| 范例:'Period=D'|
|交易日历(可选)|
TradingCalendar| String||
TradingCalendar默认为上海证券交易所,当DAYS为日历日的时候,这个参数不起作用,只有当DAYS为交易日的时候,这个参数才起作用,默认“TradingCalendar=SSE”(上海证券交易所)|
示例
例11 取上交所2018年以来的交易日期序列,交易所为空默认为上交所
date_list=w.tdays("2018-05-13", "2018-06-13"," ") date_list
返回:
.ErrorCode=0 .RequestID=2071 .Codes=[] .Fields=[] .Times=[20180514,20180515,20180516,20180517,20180518,20180521,20180522,20180523,20180524,20180525,...] .Data=[[2018-05-14 00:00:00.005000,2018-05-15 00:00:00.005000,2018-05-16 00:00:00.005000,2018-05-17 00:00:00.005000,2018-05-18 00:00:00.005000,2018-05-21 00:00:00.005000,2018-05-22 00:00:00.005000,2018-05-23 00:00:00.005000,2018-05-24 00:00:00.005000,2018-05-25 00:00:00.005000,...]]
5.2 返回某个偏移值对应的日期w.tdaysoffset
定义
命令用来获取基于某个基准时间前推(<0) 或者后推(>0)指定天数的日期。命令原型为:data=w.tdaysoffset(偏移值,基准时间,可选参数)
函数输入
** 函数名:TDaysOffset(offset, refDate, [Optional argument])**
示例
例12 取从今天往前推10个月的日历日import datetime today = datetime.date.today() w.tdaysoffset(-10, today.isoformat(), "Period=M;Days=Alldays")
返回:
.ErrorCode=0 .RequestID=56 .Codes=[] .Fields=[] .Times=[20170820] .Data=[[2017-08-20 00:00:00.005000]]
5.3 返回某个区间内日期数量w.tdayscount
定义
命令用来获取两个时间区间内的某种规则下的日期序列个数命令原型为:data= w.tdayscount(开始时间,结束时间,可选参数)
函数输入
函数名:TDaysCount(startDate,endDate, [Optional argument])
||Element|Type| Description ||
| :------------- :|:-------------:| :-----:|
|起始日期(必选)| StartDate| String| 时间序列的起始日期| 范例1:"2017-01-01",支持日期宏|
|截止日期| EndDate| String| 时间序列的截止日期,置空取当前最新日期 |范例1:"2017-06-30",支持日期宏|
|日期类型(可选)| Days| String |所有工作日:Weekdays,所有日历日:Alldays,排除所有非交易日:Trading | 范例:’Days=Trading’,默认Days=Trading|
|交易日历(可选)| TradingCalendar | String| | TradingCalendar默认为上海证券交易所,当DAYS为日历日的时候,这个参数不起作用,只有当DAYS为交易日的时候,这个参数才起作用,默认“TradingCalendar=SSE”(上海证券交易所)|
例13 统计2017年交易日天数
days=w.tdayscount("2017-01-01", "2017-12-31", "").Data[0] days 结果: [244]