'Write the metadata to a JSON file in the rootdir.
Values contained in the metadata are:
version : int
The value of FORMAT_VERSION of this class.
ohlc_ratio : int
The default ratio by which to multiply the pricing data to
convert the floats from floats to an integer to fit within
the np.uint32. If ohlc_ratios_per_sid is None or does not
contain a mapping for a given sid, this ratio is used.
ohlc_ratios_per_sid : dict
A dict mapping each sid in the output to the factor by
which the pricing data is multiplied so that the float data
can be stored as an integer.
minutes_per_day : int
The number of minutes per each period.
calendar_name : str
The name of the TradingCalendar on which the minute bars are
based.
start_session : datetime
\'YYYY-MM-DD\' formatted representation of the first trading
session in the data set.
end_session : datetime
\'YYYY-MM-DD\' formatted representation of the last trading
session in the data set.
Deprecated, but included for backwards compatibility:
first_trading_day : string
\'YYYY-MM-DD\' formatted representation of the first trading day
available in the dataset.
market_opens : list
List of int64 values representing UTC market opens as
minutes since epoch.
market_closes : list
List of int64 values representing UTC market closes as
minutes since epoch.'

def write(self, rootdir):

    calendar = self.calendar
    slicer = calendar.schedule.index.slice_indexer(self.start_session, self.end_session)
    schedule = calendar.schedule[slicer]
    market_opens = schedule.market_open
    market_closes = schedule.market_close
    metadata = {'version': self.version, 'ohlc_ratio': self.default_ohlc_ratio, 'ohlc_ratios_per_sid': self.ohlc_ratios_per_sid, 'minutes_per_day': self.minutes_per_day, 'calendar_name': self.calendar.name, 'start_session': str(self.start_session.date()), 'end_session': str(self.end_session.date()), 'first_trading_day': str(self.start_session.date()), 'market_opens': market_opens.values.astype('datetime64[m]').astype(np.int64).tolist(), 'market_closes': market_closes.values.astype('datetime64[m]').astype(np.int64).tolist()}
    with open(self.metadata_path(rootdir), 'w+') as fp:
        json.dump(metadata, fp)
