def bizDatesList(holidayCenter, fromDate, toDate): cal = Calendar(holidayCenter) fromDate = check_date(fromDate) toDate = check_date(toDate) assert fromDate <= toDate, "from date ({0} must be earlier than to date {1}".format( fromDate, toDate) return [d.toDateTime() for d in cal.bizDatesList(fromDate, toDate)]
def testDatesList(self): fromDate = Date(2014, 1, 31) toDate = Date(2014, 2, 28) sseCal = Calendar('China.SSE') ibCal = Calendar('China.IB') benchmarkHol = [Date(2014, 1, 31), Date(2014, 2, 3), Date(2014, 2, 4), Date(2014, 2, 5), Date(2014, 2, 6)] sseHolList = sseCal.holDatesList(fromDate, toDate, False) self.assertEqual(sseHolList, benchmarkHol) ibHolList = ibCal.holDatesList(fromDate, toDate, False) self.assertEqual(ibHolList, benchmarkHol) sseHolList = sseCal.holDatesList(fromDate, toDate, True) benchmarkHol = [Date(2014, 1, 31), Date(2014, 2, 1), Date(2014, 2, 2), Date(2014, 2, 3), Date(2014, 2, 4), Date(2014, 2, 5), Date(2014, 2, 6), Date(2014, 2, 8), Date(2014, 2, 9), Date(2014, 2, 15), Date(2014, 2, 16), Date(2014, 2, 22), Date(2014, 2, 23)] self.assertEqual(sseHolList, benchmarkHol) ibHolList = ibCal.holDatesList(fromDate, toDate, True) benchmarkHol = [Date(2014, 1, 31), Date(2014, 2, 1), Date(2014, 2, 2), Date(2014, 2, 3), Date(2014, 2, 4), Date(2014, 2, 5), Date(2014, 2, 6), Date(2014, 2, 9), Date(2014, 2, 15), Date(2014, 2, 16), Date(2014, 2, 22), Date(2014, 2, 23)] self.assertEqual(ibHolList, benchmarkHol) sseWorkingDayList = sseCal.bizDatesList(fromDate, toDate) d = fromDate while d <= toDate: if sseCal.isBizDay(d): self.assertTrue(d in sseWorkingDayList and d not in sseHolList) d += 1 ibWorkingDayList = ibCal.bizDatesList(fromDate, toDate) d = fromDate while d <= toDate: if ibCal.isBizDay(d): self.assertTrue(d in ibWorkingDayList and d not in ibHolList) d += 1
def bizDatesList(holidayCenter, fromDate, toDate): cal = Calendar(holidayCenter) fromDate = check_date(fromDate) toDate = check_date(toDate) assert fromDate <= toDate, "from date ({0} must be earlier than to date {1}".format(fromDate, toDate) return [d.toDateTime() for d in cal.bizDatesList(fromDate, toDate)]
def bizDatesList(holidayCenter, fromDate, toDate): cal = Calendar(holidayCenter) fromDate = check_date(fromDate) toDate = check_date(toDate) return [d.toDateTime() for d in cal.bizDatesList(fromDate, toDate)]