def METHOD_NAME(self):
    cids = ['AUD', 'USD', 'GBP', 'CAD']
    xcat = ['FXXR_NSA']
    timestamps = 1000
    sequence = 20
    n_cids = len(cids)
    value = [int(round(random.random())) for i in range(timestamps - sequence)]
    value = [1 for i in range(sequence)] + value
    n_vals = len(value)
    cids_ = np.empty(n_vals, dtype=object)
    cids_ = self.dataframe_concatenation(cids_, cids, n_vals, n_cids)
    # Itertools groubpy Class is a heavily optimised algorithm written in
    # high-performance C code by Enthought.
    cids_list = [len(list(v)) for k, v in groupby(cids_)]
    dates_l = []
    for no in cids_list:
        dates_l += self.dates_generator("2000-01-01", no)
    category = np.repeat(xcat[0], timestamps)
    data = np.column_stack((cids_, category, np.array(dates_l), value))
    cols = ['cid', 'xcat', 'real_date', 'value']
    self.df = pd.DataFrame(data=data, columns=cols)