python - 使用熊猫市场日历获取下一个交易日
问题描述
我想修改下面的代码,以便我可以得到 n 天后或 n 天前的交易日:
import pandas_market_calendars as mcal
holidays = nyse.holidays()
mydate = pd.to_datetime("12/24/2019")
holidays(mydate)
Timestamp('2019-12-26 00:00:00')
有没有办法提供天数作为假期()的参数?
我可以像这样在联邦假期中使用它:
from pandas.tseries.holiday import USFederalHolidayCalendar
bday_us1 = CustomBusinessDay(calendar=USFederalHolidayCalendar(), n=2)
mydate + bday_us1
Timestamp('2019-12-27 00:00:00')
解决方案
我会假设你已经在某处有这条线:
nyse = mcal.get_calendar('NYSE')
您可能正在寻找的是这样的:
nyse.valid_days(start_date='2016-12-20', end_date='2017-01-10')
这将返回包含开始日期和结束日期的所有有效日期(非节假日)的列表。要获取此日期范围:
mydate = pd.to_datetime("12/24/2019")
d = datetime.timedelta(days = 10)
start_date = mydate - d
end_date = mydate + d
推荐阅读
- python - 关于python for循环
- azure - 使用 Azure Key Vault 证书解密会返回错误
- python - 一个现有的连接被远程主机beautifulsoup抓取强行关闭
- python - 错误:无法将 NumPy 数组转换为张量(不支持的对象类型 numpy.ndarray)
- python - 将 Datetime 从 int 转换为实际日期
- unity3d - 如何在这个 splat 贴图着色器 (Unity3D) 中为每个通道添加单独的凹凸贴图?
- security - Seldon:如何使用 GCP IAP 或 JWT 启用身份验证?
- reactjs - 无法单击以移动光标或突出显示 Material UI TextField 内的文本
- dataweave - 如何在 Mulesoft 中使用 Dataweve 使用 groupBy 函数
- postgresql - 如何在 postgres 更新之前创建存储过程以保存特定列的历史记录