def METHOD_NAME():
    # Create the data and datasource objects
    # In order for the date axis to work, the index data points need to
    # be in units of seconds since the epoch.  This is because we are using
    # the CalendarScaleSystem, whose formatters interpret the numerical values
    # as seconds since the epoch.
    high = 1.0
    numpoints = 5000
    random.seed(1000)
    index = create_dates(numpoints)
    price = 100 * cumprod(random.lognormal(0.0, 0.04, size=numpoints))
    changes = price / price[0] - 1.0
    index_ds = ArrayDataSource(index)
    value_ds = ArrayDataSource(changes, sort_order="none")
    value_range = DataRange1D(value_ds, low=-high, high=high)
    index_mapper = LinearMapper(
        range=DataRange1D(index_ds), stretch_data=False
    )
    horizon = HorizonPlot(
        bands=4,
        index=index_ds,
        value=value_ds,
        index_mapper=index_mapper,
        value_mapper=BandedMapper(range=DataRange1D(low=0, high=high)),
        color_mapper=cmap(range=value_range),
    )
    horizon.tools.append(
        PanTool(horizon, constrain=True, constrain_direction="x")
    )
    axis = PlotAxis(
        mapper=horizon.value_mapper,
        component=horizon,
        orientation="left",
        tick_label_position="outside",
    )
    horizon.overlays.append(axis)
    bottom_axis = PlotAxis(
        horizon,
        orientation="bottom",
        tick_generator=ScalesTickGenerator(scale=CalendarScaleSystem()),
    )
    horizon.overlays.append(bottom_axis)
    filled = FilledLinePlot(
        index=index_ds,
        value=value_ds,
        index_mapper=index_mapper,
        value_mapper=LinearMapper(range=value_range, stretch_data=False),
        fill_color=(0.81960784, 0.89803922, 0.94117647),
        edge_color="transparent",
    )
    filled.tools.append(
        PanTool(filled, constrain=True, constrain_direction="x")
    )
    axis = PlotAxis(
        mapper=filled.value_mapper,
        component=filled,
        orientation="left",
        tick_label_position="outside",
    )
    filled.overlays.append(axis)
    grid = PlotGrid(
        mapper=filled.value_mapper,
        component=filled,
        orientation="horizontal",
        line_color="lightgray",
        line_style="dot",
    )
    filled.underlays.append(grid)
    colormap = horizon.color_mapper
    colorbar = ColorBar(
        index_mapper=LinearMapper(range=colormap.range),
        color_mapper=colormap,
        orientation="v",
        resizable="v",
        width=20,
        padding=20,
    )
    padding = (40, 20, 0, 0)
    over1 = HPlotContainer(
        use_backbuffer=True, padding=padding, padding_top=20
    )
    over1.add(filled)
    over1.add(colorbar)
    over2 = OverlayPlotContainer(padding=padding, padding_bottom=40)
    over2.add(horizon)
    return over1, over2