【python】+tushare库+判断指定日期是否是交易日
is_holiday方法:若是交易日 返回false;若不是交易日 返回true
https://www.zhihu.com/question/35835021
1 import tushare 2 import datetime 3 4 5 class AIOldData: 6 def ai_trading_day(self): 7 """ 8 功能1:判断自然日是否是交易日(YES:返回此自然日;NO:从此自然日依次往前推至交易日 并返回) 9 缺点:要计算10秒左右才出结果 10 :return: 11 """ 12 date_str = "{}-{}-{}".format(self[0:4], self[4:6], self[6:8]) 13 y, m, d = date_str.split("-") 14 my_date = datetime.date(int(y), int(m), int(d)) 15 16 # 判断日期是否是交易日 17 while True: 18 if tushare.is_holiday(datetime.date.strftime(my_date, "%Y-%m-%d")): 19 # 不是交易日 则此日期减一天 再次循环判断 20 my_date = my_date + datetime.timedelta(days=-1) 21 else: 22 # 是交易日 23 break 24 print("离{}最近的一个历史交易日为:{}".format(date_str, my_date)) 25 return my_date 26 27 28 if __name__ == "__main__": 29 ai_old_data = AIOldData 30 ai_old_data.ai_trading_day("20191007") 31 ai_old_data.ai_trading_day("20191008")
输出:
离2019-10-07最近的一个历史交易日为:2019-09-30
离2019-10-08最近的一个历史交易日为:2019-10-08
如果忍耐算是坚强 我选择抵抗 如果妥协算是努力 我选择争取
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步