'Given a session label, returns the label of the previous session.
Parameters
session_label: pd.Timestamp
A session whose previous session is desired.
Returns
pd.Timestamp
The previous session label (midnight UTC).
Notes
Raises ValueError if the given session is the first session in this
calendar.'

def previous_session_label(self, session_label):

    idx = self.schedule.index.get_loc(session_label)
    if (idx == 0):
        raise ValueError('There    is    no    previous    session    as    this    is    the    beginning    of    the    exchange    calendar.')
    return self.schedule.index[(idx - 1)]
