Confidence Intervals for Breaks between Exchange Rate Regimes

Description

Confidence intervals for estimated changes/breaks between exchange rate regimes.

Usage

## S3 method for class 'fxregimes'
confint(object, parm = NULL, level = 0.95, breaks = NULL, meat. = NULL, ...)

Arguments

object An object of class “fxregimes” as fitted by fxregimes.
parm integer. Either parm or breaks may be set, see below.
level numeric. The confidence level to be used.
breaks integer. The number of breaks to be extracted from object for which confidence intervals should be computed.
meat. function. A function for extracting the meat of a sandwich estimator from a fxlm object. By default, the inverse of bread is used, i.e., a correctly specified model is assumed.
currently not used.

Details

As the breakpoints are integers (observation numbers) the corresponding confidence intervals are also rounded to integers. The algorithm used is essentially the same as described for confint.breakpointsfull. The same distribution function is used, just the variance components are computed differently. Here, bread and meat (or some of its HC/HAC counterparts) are used. See Zeileis, Shah, Patnaik (2008) for more details.

Value

An object of class “confint.fxregimes”.

References

Zeileis A., Kleiber C., Krämer W., Hornik K. (2003), Testing and Dating of Structural Changes in Practice, Computational Statistics and Data Analysis, 44, 109–123. doi:10.1016/S0167-9473(03)00030-6

Zeileis A., Shah A., Patnaik I. (2010), Testing, Monitoring, and Dating Structural Changes in Exchange Rate Regimes, Computational Statistics and Data Analysis, 54(6), 1696–1706. doi:10.1016/j.csda.2009.12.005.

See Also

fxregimes, refit, fxlm, confint.breakpointsfull

Examples

library("fxregime")

## load package and data
library("fxregime")
data("FXRatesCHF", package = "fxregime")

## compute returns for CNY (and explanatory currencies)
## for one year after abolishing fixed USD regime
cny <- fxreturns("CNY", frequency = "daily",
  start = as.Date("2005-07-25"), end = as.Date("2006-07-24"),
  other = c("USD", "JPY", "EUR", "GBP"))

## compute all segmented regression with minimal segment size of
## h = 20 and maximal number of breaks = 5.
reg <- fxregimes(CNY ~ USD + JPY + EUR + GBP,
  data = cny, h = 20, breaks = 5, ic = "BIC")
summary(reg)

     Optimal (m+1)-segment partition for `lm' : 

Call:
gbreakpoints(formula = formula, data = data, h = 20, breaks = 5, 
    order.by = time(data), ic = "BIC", hpc = hpc)

Breakpoints at observation number:
                          
m = 1          158        
m = 2          158     222
m = 3      114 158     222
m = 4   44 114 158     222
m = 5   44 114 152 207 227

Corresponding to breakdates:
                                                              
m = 1                         2006-03-14                      
m = 2                         2006-03-14            2006-06-13
m = 3              2006-01-09 2006-03-14            2006-06-13
m = 4   2005-09-26 2006-01-09 2006-03-14            2006-06-13
m = 5   2005-09-26 2006-01-09 2006-03-06 2006-05-22 2006-06-20

Fit:
                                                                   
m       0         1         2         3         4         5        
nlogLik -421.2743 -465.1825 -475.1995 -482.8384 -492.0179 -498.1210
BIC     -809.4197 -858.5861 -839.9699 -816.5973 -796.3061 -769.8621
LWZ     -777.6648 -789.7837 -734.1200 -673.7000 -616.3613 -552.8698
## minimum BIC is attained for 2-segment (1-break) model
plot(reg)

## two regimes
## 1: tight USD peg
## 2: slightly more relaxed USD peg
round(coef(reg), digits = 3)
                       (Intercept)   USD   JPY    EUR    GBP (Variance)
2005-07-26--2006-03-14      -0.005 0.999 0.005 -0.015  0.007      0.001
2006-03-15--2006-07-24      -0.010 1.004 0.016  0.000 -0.064      0.004
sqrt(coef(reg)[, "(Variance)"])
2005-07-26--2006-03-14 2006-03-15--2006-07-24 
            0.02795858             0.06272589 
## inspect associated confidence intervals
ci <- confint(reg, level = 0.9)
ci

     Confidence intervals for breakpoints
     of optimal 2-segment partition: 

Call:
confint.fxregimes(object = reg, level = 0.9)

Breakpoints at observation number:
  5 % breakpoints 95 %
1 138         158  159

Corresponding to breakdates:
         5 % breakpoints       95 %
1 2006-02-13  2006-03-14 2006-03-15
         5 % breakpoints       95 %
1 2006-02-13  2006-03-14 2006-03-15
## plot LM statistics along with confidence interval
fm <- fxlm(CNY ~ USD + JPY + EUR + GBP, data = cny)
scus <- gefp(fm, fit = NULL)
plot(scus, functional = supLM(0.1))
lines(ci)