https://github.com/beliavsky/vector-error-correction
Simulate and fit from Vector Error Correction (VECM) models for cointegrated time series using the Johansen method
https://github.com/beliavsky/vector-error-correction
cointegration econometrics error-correction-model fortran multivariate-time-series multivariate-time-series-analysis simulation statistics time-series-analysis vecm vector-error-correction-model
Last synced: 29 days ago
JSON representation
Simulate and fit from Vector Error Correction (VECM) models for cointegrated time series using the Johansen method
- Host: GitHub
- URL: https://github.com/beliavsky/vector-error-correction
- Owner: Beliavsky
- License: mit
- Created: 2026-03-14T16:17:42.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-03-14T18:06:46.000Z (3 months ago)
- Last Synced: 2026-03-15T02:55:23.698Z (3 months ago)
- Topics: cointegration, econometrics, error-correction-model, fortran, multivariate-time-series, multivariate-time-series-analysis, simulation, statistics, time-series-analysis, vecm, vector-error-correction-model
- Language: Fortran
- Homepage:
- Size: 37.1 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Vector-Error-Correction
Simulate and fit from Vector Error Correction (VECM) models for cointegrated time series using the [Johansen method](https://academic.oup.com/book/27916). For
```fortran
program xvecm_rank_select
! Simulate a VECM, compute the Johansen trace and max-eigenvalue rank
! statistics, estimate critical values internally by Monte Carlo for
! ranks 0 through n-1, and report the estimated cointegration rank.
```
sample output is
```
#obs #col: 1500 4
number of Monte Carlo replications per null rank = 2000
critical-value quantile = 0.9500
johansen eigenvalues
0.287478 0.129449 0.001799 0.000222
Monte Carlo trace critical values for h0: rank <= 0, 1, ..., n-1
41.033639 24.300203 12.765328 158.320284
Monte Carlo max-eigenvalue critical values for h0: rank = 0, 1, ..., n-1
24.603392 17.420267 11.609917 158.320284
trace test decisions
r0 statistic crit_value decision
0 718.434880 41.033639 reject
1 210.695064 24.300203 reject
2 3.029339 12.765328 fail to reject
3 0.331884 158.320284 fail to reject
max-eigenvalue test decisions
r0 statistic crit_value decision
0 507.739816 24.603392 reject
1 207.665725 17.420267 reject
2 2.697455 11.609917 fail to reject
3 0.331884 158.320284 fail to reject
estimated rank by trace test = 2
estimated rank by max-eigenvalue test = 2
true rank used in simulation = 2
```