The following function generates a time series which switches from a martingale to a mildly explosive process and then back to a martingale.
sim_psy1(n, te = 0.4 * n, tf = 0.15 * n + te, c = 1, alpha = 0.6,
sigma = 6.79, seed = NULL)
A strictly positive integer specifying the length of the simulated output series.
A scalar in (0, tf) specifying the observation in which the bubble originates.
A scalar in (te, n) specifying the observation in which the bubble collapses.
A positive scalar determining the autoregressive coefficient in the explosive regime.
A positive scalar in (0, 1) determining the value of the expansion rate in the autoregressive coefficient.
A positive scalar indicating the standard deviation of the innovations.
An object specifying if and how the random number generator(rng)
should be initialized. Either NULL or an integer will be used in a call to
set.seed
before simulation. If set, the value is save as "seed" attribute
of the returned value. The default, NULL will note change the rng state, and
return .Random.seed as the "seed" attribute.
A numeric vector of length n.
The data generating process is described by the following equation:
where the autoregressive coefficient
with
For further details the user can refer to Phillips et al. (2015) p. 1054.
Phillips, P. C. B., Shi, S., & Yu, J. (2015). Testing for Multiple Bubbles: Historical Episodes of Exuberance and Collapse in the S&P 500. International Economic Review, 5 6(4), 1043-1078.
# NOT RUN {
# 100 periods with bubble origination date 40 and termination date 55
sim_psy1(n = 100)
# 200 periods with bubble origination date 80 and termination date 110
sim_psy1(n = 200)
# 200 periods with bubble origination date 100 and termination date 150
sim_psy1(n = 200, te = 100, tf = 150)
# }
Run the code above in your browser using DataLab