I'd like to create a monthly date range within Pandas taking in consideration of business days.
such as: dt_range = pd.date_range(start='2017-12-20', periods=5, freq='M')
Meaning: starting on 2017-12-20, roll on every 20th for 5 months, if such roll date is not a business day, take the following roll date (but keep the 20th for next observation).
Likewise: ending on a date, roll backwards, each 20th for 5 months. such as:
dt_range = pd.date_range(end='2018-05-20', periods=5, freq='M')
I have been consulting Pandas offset aliases however, it seems my way of thinking does not sync with theirs, as they are focused on month end, month start and I cannot find a simple monthly roll. It is a bit of information overload, and I am sure it exist an easy way, and therefore I would like to ask for some help/guidance to find the answer.