class_docstr: Class capable of writing daily OHLCV data to disk in a format that can
  be read efficiently by BcolzDailyOHLCVReader.
  
  Parameters
  ----------
  filename : str
      The location at which we should write our output.
  calendar : zipline.utils.calendar.trading_calendar
      Calendar to use to compute asset calendar offsets.
  start_session: pd.Timestamp
      Midnight UTC session label.
  end_session: pd.Timestamp
      Midnight UTC session label.
  
  See Also
  --------
  zipline.data.bcolz_daily_bars.BcolzDailyBarReader
class_docstr_tok: ["Class","capable","of","writing","daily","OHLCV","data","to","disk","in","a","format","that","can","be","read","efficiently","by","BcolzDailyOHLCVReader",".","Parameters","--","--","--","--","--","filename",":","str","The","location","at","which","we","should","write","our","output",".","calendar",":","zipline.utils.calendar.trading_calendar","Calendar","to","use","to","compute","asset","calendar","offsets",".","start_session",":","pd.Timestamp","Midnight","UTC","session","label",".","end_session",":","pd.Timestamp","Midnight","UTC","session","label",".","See","Also","--","--","--","--","zipline.data.bcolz_daily_bars.BcolzDailyBarReader"]
code: def __init__(self, filename, calendar, start_session, end_session):
      self._filename = filename
  
      if start_session != end_session:
          if not calendar.is_session(start_session):
              raise ValueError(
                  "Start session %s is invalid!" % start_session
              )
          if not calendar.is_session(end_session):
              raise ValueError(
                  "End session %s is invalid!" % end_session
              )
  
      self._start_session = start_session
      self._end_session = end_session
  
      self._calendar = calendar
  
imports: from functools import partial
  import warnings
  from bcolz import carray, ctable
  import logbook
  import numpy
  from numpy import array, full, iinfo, nan
  from pandas import DatetimeIndex, NaT, read_csv, to_datetime, Timestamp
  from six import iteritems, viewkeys
  from toolz import compose
  from trading_calendars import get_calendar
  from zipline.data.session_bars import CurrencyAwareSessionBarReader
  from zipline.data.bar_reader import NoDataAfterDate, NoDataBeforeDate, NoDataOnDate
  from zipline.utils.functional import apply
  from zipline.utils.input_validation import expect_element
  from zipline.utils.numpy_utils import iNaT, float64_dtype, uint32_dtype
  from zipline.utils.memoize import lazyval
  from zipline.utils.cli import maybe_show_progress
  from ._equities import _compute_row_slices, _read_bcolz_data
label_desc: Use image node_id 1 to create a new BcolzDailyBarWriter object from inherited base classes: object with example: obj = BcolzDailyBarWriter(filename, calendar, start_session, end_session)