Skip to content

时间函数

当前离开盘分钟数

fromopen-当前离开盘分钟数

fromopen 用于获取当前时间距离开盘的分钟数(股票大盘交易时间)。常用于做“开盘后第 N 分钟”的时间控制逻辑。

函数

fromopen()

返回

返回值类型说明
int距离开盘的分钟数。例:09:30 返回 0,09:31 返回 1,09:32 返回 2 ……

示例

python
print(fromopen())
# 输出:0
# (示例:当时间为 09:30 时)

m = fromopen()
print("距离开盘分钟数:", m)
# 输出:距离开盘分钟数: 1
# (示例:当时间为 09:31 时)

周期类型

period-周期类型

period 用于获取当前周期类型

函数

python
period()

返回值

返回结果为 int,范围 0 ~ 13,含义如下:

返回值周期含义
01 分钟
15 分钟
215 分钟
330 分钟
460 分钟
5日线
6周线
7月线
810 分钟
945 日
10季线
11年线
125 秒钟
1315 秒

举例

python
p = period()
print(p)
# 输出:5
# (示例:当当前周期为 日线 时)
python
p = period()

if p == 0:
    print("当前周期:1分钟")
elif p == 5:
    print("当前周期:日线")
elif p == 6:
    print("当前周期:周线")
else:
    print("当前周期类型代码:", p)

# 输出:当前周期:日线
# (示例:当 period() 返回 5 时)

计算当前周是年内的第几个周

weekofyear-计算当前周是年内第几个周

weekofyear 用于计算当前日期属于一年中的第几周

函数

python
weekofyear()

返回值

返回值类型说明
int当前周是年内第几个周(周序号)。

举例

python
w = weekofyear()
print(w)
# 输出:23
# (示例:当当前日期处于一年中的第 23 周时)
python
# 常见用法:每年第 N 周执行一次某逻辑(示例:第 1 周打印提示)
if weekofyear() == 1:
    print("进入新年第 1 周")
# 输出:进入新年第 1 周
# (示例:当 weekofyear() 返回 1 时)

查询指定日期所属交易日

get_trade_day-查询指定日期所属交易日

查询指定日期所属交易日;指定日期未上市或退市则返回空。

函数

python
get_trade_day(security="sh000001", date)

参数

参数名类型默认值说明
securitystr | list[str]"sh000001"证券代码。可传单个代码或代码列表。
datestr | datetime | 时间戳-指定日期,支持到分钟。

注意

  • 如果传入的 date 在两个交易日之间,返回上一个交易日;
  • 如果传入的 date 处于停牌(不包括当日临停),返回上一个交易日;
  • 对于有夜盘的交易标的:若传入时刻处于夜盘,则返回下一个交易日的日期;
  • 对于未上市或退市标的返回 None;
  • 交易日的定义:
    • 对于无夜盘品种,以每日 0 点作为一个交易日的开始,至下一个交易日 0 点结束;
    • 对于有夜盘品种,以夜盘集合竞价开始时作为一个交易日开始,至下一个交易日夜盘集合竞价开始时结束;

返回

返回类型说明
datetime.date单股返回所属交易日日期
dict[str, datetime.date]多股返回字典:key 为股票代码(str),value 为所属交易日日期(datetime.date)

举例

python
import datetime

get_trade_day(security=['sh600000','sz000001'], date='2020-06-21')
# 输出:
# {'sh600000': datetime.date(2020, 6, 21), 'sz000001': datetime.date(2020, 6, 21)}

count_diff_trade_days-计算指定时间区间内的交易日天数

python
count_diff_trade_days(security='sh000001',start_date=None,end_date=None,day_type=DAY_TYPE.TRADE)

计算指定时间区间内的交易日天数.默认求至回测当前时间(研究和仿真是现实时间)所有交易日的天数.

参数

  • security: 标的,str/list[str],默认'sh000001'
  • 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 常量 DAY_TYPE.TRADE、DAY_TYPE.NORMAL、DAY_TYPE.WORK(暂不支持),默认填 DAY_TYPE.TRADE 交易日

返回

单股返回 int,多股返回 dict

  • key: 股票代码,str
  • value: int

示例

python
count_diff_trade_days(security='sh600000',start_date='1999-11-10',end_date='1999-11-20')
'''
8
'''

文档版本: 1.0.0 | 发布于 2025-01-29