@BAIPERRON is a procedure for the Bai-Perron structural break analysis. This has been substantially updated, and now includes a table with test statistics for different numbers of breaks (TESTS option), and a full table of the final regression (PRINT option). This now includes 95% confidence interval on the break dates. Note that the CI's on the break dates can be very sensitive to the methods used for calculating long-run variances, particularly since partitions can be fairly (or even very) short.

In May 2011, we corrected an error in the calculation of the BIC which could affect close decisions in the number of breaks.

Detailed description

For an example, see Bai-Perron JAE 2003.

A related procedure which uses the same basic algorithm to handle multiple breaks in a variable other than "time" is @MultipleBreaks.

In May 2011, we corrected an error in the calculation of the BIC which could affect close decisions in the number of breaks.

Detailed description

For an example, see Bai-Perron JAE 2003.

A related procedure which uses the same basic algorithm to handle multiple breaks in a variable other than "time" is @MultipleBreaks.

Last edited by TomDoan on Thu Mar 29, 2018 4:17 pm, edited 14 times in total.

**Reason:** *Change to reference help*

- TomDoan
**Posts:**6685**Joined:**Wed Nov 01, 2006 5:36 pm

Hi Tom:

Can the test of Kejriwal, M. and P. Perron (2009). "Testing for Multiple Structural Changes in Cointegrated Regression Models." Journal of Business and Economic Statistics be implemented by the code of Bai-Perron JAE 2003?

Regards,

Terence

Can the test of Kejriwal, M. and P. Perron (2009). "Testing for Multiple Structural Changes in Cointegrated Regression Models." Journal of Business and Economic Statistics be implemented by the code of Bai-Perron JAE 2003?

Regards,

Terence

- nacrointfin
**Posts:**12**Joined:**Fri Sep 14, 2007 2:43 am

nacrointfin wrote:Hi Tom:

Can the test of Kejriwal, M. and P. Perron (2009). "Testing for Multiple Structural Changes in Cointegrated Regression Models." Journal of Business and Economic Statistics be implemented by the code of Bai-Perron JAE 2003?

Regards,

Terence

That's correct. The number crunching is the same as is done by the BaiPerron procedure. The 2009 paper derives the asymptotic distribution of the break test statistics under assumptions allowing for cointegration.

- TomDoan
**Posts:**6685**Joined:**Wed Nov 01, 2006 5:36 pm

TomDoan wrote:Both. The results in the paper use F statistics computed with HAC covariance matrices using a very specific procedure for estimating the long-run variance. Computing that requires a great deal of number-crunching that the dynamic programming algorithm is trying to avoid, but which is feasible here with a relatively small data set. RATS is using the simpler standard F. They both give the same results asymptotically.

Apologies for digging up an old post but my query is directly related to this answer.

In @baiperron is it possible to obtain HAC adjusted F statistics by changing the robust part of this code to 1:

line 274-285

- Code: Select all
`procedure BPBreakRanges startr endr eqnshift limits`

type integer startr endr

type equation eqnshift

type rect[int] *limits

*

option vect[int] breaks

option integer maxbreaks

option integer nfix

option integer nshift

option switch robust 0

option switch qhet 0

option switch omegahet 0

When i trim my data the sample is relatively small at 50 observations and i would like to compute the HAC covariance matrices as per original paper

This is probably too simplistic a solution to this complex calc!!

thanks

- Barry Quinn
**Posts:**7**Joined:**Thu Oct 13, 2011 9:29 am

Hello,

Is the procedure shaped for testing no break versus one break?

i find a supF(1|0) very high (1640) for a sample of 444 obs. (pure structural change model). Given the number of observations and the shape of my serie (REER between 1975 to 2010), a high probability of rejected the null (zero break) should be normal... but 1600 is maybe too high no? (even if critical value is near to 30).

Thank you very much

Is the procedure shaped for testing no break versus one break?

i find a supF(1|0) very high (1640) for a sample of 444 obs. (pure structural change model). Given the number of observations and the shape of my serie (REER between 1975 to 2010), a high probability of rejected the null (zero break) should be normal... but 1600 is maybe too high no? (even if critical value is near to 30).

Thank you very much

- Aktar
**Posts:**36**Joined:**Thu Apr 16, 2009 8:12 am

It can be used for 0 vs 1, though @APBREAKTEST would give you greater information on that. Bai-Perron is a more efficient way to search for two or more breaks---at one break, it's basically the same calculation as in @APBREAKTEST and similar procedures.

Regarding the observed statistic, that's high but certainly not unreasonable. However, a break statistic that large would probably be associated with an obvious (to the eye) break in the data.

Regarding the observed statistic, that's high but certainly not unreasonable. However, a break statistic that large would probably be associated with an obvious (to the eye) break in the data.

- TomDoan
**Posts:**6685**Joined:**Wed Nov 01, 2006 5:36 pm

Hello

Is it possible to apply this test to panel data and enforce the same break dates across a series of models?

Is it possible to apply this test to panel data and enforce the same break dates across a series of models?

- letonre
**Posts:**2**Joined:**Mon Sep 30, 2013 3:58 am

letonre wrote:Hello

Is it possible to apply this test to panel data and enforce the same break dates across a series of models?

Not @BAIPERRON. What's the application? Do you need multiple breaks or just a single common break?

- TomDoan
**Posts:**6685**Joined:**Wed Nov 01, 2006 5:36 pm

TomDoan wrote:letonre wrote:Hello

Is it possible to apply this test to panel data and enforce the same break dates across a series of models?

Not @BAIPERRON. What's the application? Do you need multiple breaks or just a single common break?

thank you for a quick reply Tom

ideally I'm looking for multiple common breaks in a series of 24 OLS regressions.

for each regression the RHS variables remain the same along with a common time period

if the sequential use of a single break identifier existed i may also be able to use that.

- letonre
**Posts:**2**Joined:**Mon Sep 30, 2013 3:58 am

Something like

y(i,t)=X(t)b(i)+u(i,t)

where i=1,...,24; then checking for multiple common time period breaks in the b(i)'s? Would you use the log likelihood to pick the breaks?

y(i,t)=X(t)b(i)+u(i,t)

where i=1,...,24; then checking for multiple common time period breaks in the b(i)'s? Would you use the log likelihood to pick the breaks?

- TomDoan
**Posts:**6685**Joined:**Wed Nov 01, 2006 5:36 pm

I am working on a linear regression with two independent variables.

1) One of the two regressors is trend stationary after taking into account one breakpoint by applying the Zivot-Andrews test.

2) I considered applying the Bai-Perron procedure to estimate the regression.

3) Bai and Perron in "Computation and Analysis of multiple structural models", Journal of Applied Econometrics, Jan/Feb 2003, state on page 11 that the distribution of the error term can be "consistently estimated using standard kernel methods".

4) Also what if the error terms are heteroscedastic?

5) I don't think the procedure automatically adjusts for the two effects.

6) If so, is there a solution to this problem?

7) I am considering using the Bai Perron procedure to estimate the break dates and then using a dummy variable approach to estimate the coefficients and standard errors using LINREG, which allows for a correction for heteroscedasticity.

1) One of the two regressors is trend stationary after taking into account one breakpoint by applying the Zivot-Andrews test.

2) I considered applying the Bai-Perron procedure to estimate the regression.

3) Bai and Perron in "Computation and Analysis of multiple structural models", Journal of Applied Econometrics, Jan/Feb 2003, state on page 11 that the distribution of the error term can be "consistently estimated using standard kernel methods".

4) Also what if the error terms are heteroscedastic?

5) I don't think the procedure automatically adjusts for the two effects.

6) If so, is there a solution to this problem?

7) I am considering using the Bai Perron procedure to estimate the break dates and then using a dummy variable approach to estimate the coefficients and standard errors using LINREG, which allows for a correction for heteroscedasticity.

- pls
**Posts:**19**Joined:**Sat Mar 22, 2014 2:24 pm

You said that one of the regressors has a break. That has nothing to do with whether the regression has a break which is what Bai-Perron is designed to handle.

Bai-Perron is really designed for multiple (more than one) breaks. It has no computational advantage in dealing with just a single break.

Bai-Perron is really designed for multiple (more than one) breaks. It has no computational advantage in dealing with just a single break.

- TomDoan
**Posts:**6685**Joined:**Wed Nov 01, 2006 5:36 pm

Hi Tom:

I also conducted the regression using the Bai-Perron procedure and found that there are breaks.

However, I would like to correct for heteroscedasticity and autocorrelation.

Perhaps I could make a change to the procedure in the linreg statement and add "robust" as an option.

I also conducted the regression using the Bai-Perron procedure and found that there are breaks.

However, I would like to correct for heteroscedasticity and autocorrelation.

Perhaps I could make a change to the procedure in the linreg statement and add "robust" as an option.

- pls
**Posts:**19**Joined:**Sat Mar 22, 2014 2:24 pm

pls wrote:Hi Tom:

I also conducted the regression using the Bai-Perron procedure and found that there are breaks.

However, I would like to correct for heteroscedasticity and autocorrelation.

Perhaps I could make a change to the procedure in the linreg statement and add "robust" as an option.

The Bai-Perron algorithm picks the break based upon homoscedastic errors, but allows for some HAC errors in doing some other calculations. However, if you want to choose breaks allowing for HAC errors, you can use the calculations from the ONEBREAK.RPF example file.

- TomDoan
**Posts:**6685**Joined:**Wed Nov 01, 2006 5:36 pm

TomDoan wrote:nacrointfin wrote:Hi Tom:

Can the test of Kejriwal, M. and P. Perron (2009). "Testing for Multiple Structural Changes in Cointegrated Regression Models." Journal of Business and Economic Statistics be implemented by the code of Bai-Perron JAE 2003?

Regards,

Terence

That's correct. The number crunching is the same as is done by the BaiPerron procedure. The 2009 paper derives the asymptotic distribution of the break test statistics under assumptions allowing for cointegration.

So, one can calculate the F statistics with @BaiPerron and use the critical values from Kejriwal and Perron (2010), right?

Thanks.

- alexecon
**Posts:**72**Joined:**Fri Oct 30, 2015 12:16 pm

36 posts
• Page **1** of **3** • **1**, 2, 3

Users browsing this forum: No registered users and 1 guest