def drift(data, n=3, **kwargs):
    """The drift forecast for the next point is a linear extrapolation from the previous ``n`` 
    points in the series.

    Args:
        data (np.array): Observed data, presumed to be ordered in time.
        n (int): period over which to calculate linear model for extrapolation 

    Returns: 
        float: a single-valued forecast for the next value in the series.
    """
    yi = data[-n]
    yf = data[-1]
    slope = (yf - yi) / (n - 1)
    forecast = yf + slope
    return forecast
