setar(x, m, d=1, steps=d, series, mL=m, mH=m, thDelay=0, th,
trace=FALSE,include = c( "const", "trend","none", "both"),
common=FALSE, model=c("TAR", "MTAR"), ML=seq_len(mL), MH=seq_len(mH),nthresh=1,trim=0.15,
type=c("level", "diff", "ADF"), restriction=c("none","OuterSymAll","OuterSymTh") )setar(x, m, d=1, steps=d, series, mL=m, mH=m, mTh, th,
trace=FALSE,include = c( "const", "trend","none", "both"),
common=FALSE, model=c("TAR", "MTAR"), ML=seq_len(mL), MH=seq_len(mH),nthresh=1,trim=0.15,
type=c("level", "diff", "ADF"), restriction=c("none","OuterSymAll","OuterSymTh") )
setar(x, m, d=1, steps=d, series, mL=m, mH=m, thVar, th,
trace=FALSE,include = c( "const", "trend","none", "both"),
common=FALSE, model=c("TAR", "MTAR"), ML=seq_len(mL), MH=seq_len(mH),nthresh=1,trim=0.15,
type=c("level", "diff", "ADF"), restriction=c("none","OuterSymAll","OuterSymTh") )
ML=m.>
include
variables, the lags or bothOuterSymAll
will take a symmetric threshold and symmetric coefficients for outer regimes. OuterSymTh currently unavailablenlar
nlar
, subclass setar
$$X_{t+s} = x_{t+s} = ( \phi_{1,0} + \phi_{1,1} x_t + \phi_{1,2} x_{t-d} + \dots + \phi_{1,mL} x_{t - (mL-1)d} ) I( z_t \leq th) + ( \phi_{2,0} + \phi_{2,1} x_t + \phi_{2,2} x_{t-d} + \dots + \phi_{2,mH} x_{t - (mH-1)d} ) I(z_t > th) + \epsilon_{t+steps}$$
with z the treshold variable. The threshold variable can alternatively be specified by (in that order):
[object Object],[object Object],[object Object]
For fixed th
and threshold variable, the model is linear, so
phi1
and phi2
estimation can be done directly by CLS
(Conditional Least Squares).
Standard errors for phi1 and phi2 coefficients provided by the
summary
method for this model are taken from the linear
regression theory, and are to be considered asymptoticals.
Non-Linear Time Series: A Dynamical Systems Approach, Tong, H., Oxford: Oxford University Press (1990).
plot.setar
for details on plots produced for this model from the plot
generic.#fit a SETAR model, with threshold as suggested in Tong(1990, p 377)
mod.setar <- setar(log10(lynx), m=2, thDelay=1, th=3.25)
mod.setar
summary(mod.setar)
if(require(FinTS)) {
data(m.unrate)
setar(diff(m.unrate), ML=c(2,3,4,12), MH=c(2,4,12), th=0.1, include="none")
}
Run the code above in your browser using DataLab