Overview
Regressing one trending series on another can give a high R² and significant coefficients even when the series are unrelated, a problem known as spurious regression. The first job in any time series project is therefore to understand each series: its trend, seasonality, structural breaks and order of integration. Everything else — ARIMA, VAR, VECM or ARDL — follows from that.
We work through a transparent sequence: plots and descriptive statistics, unit-root and stationarity tests, lag selection, estimation, then residual diagnostics and stability checks. For multivariate systems we test for cointegration and choose between a VAR in differences, a VECM or an ARDL bounds approach depending on the integration orders involved. For financial returns we model volatility with ARCH-family models.
You receive the analysis with code in EViews, Stata, R or Python, tables and figures (impulse responses, forecasts, conditional volatility), and an explanation of what each result does and does not tell you.
Who it’s for and the problems it solves
This is for you if you are…
- Economics and finance students working with macroeconomic or market data
- Doctoral researchers testing long-run relationships such as money demand, trade or energy–growth links
- Researchers forecasting demand, prices or epidemiological series
- Authors asked by reviewers for structural-break tests, cointegration evidence or volatility modeling
Common problems we help with
- ADF and KPSS tests give conflicting results for the same series
- You are not sure whether to use VAR, VECM or ARDL
- The Johansen trace and maximum-eigenvalue tests suggest different numbers of cointegrating vectors
- Your residuals show autocorrelation or ARCH effects
- Impulse response functions change when you reorder the variables
- Your GARCH model will not converge or gives a persistence estimate above one
What’s included — and what isn’t
Included
- Data preparation: frequency alignment, seasonal adjustment, log transformations and structural-break inspection
- Unit-root and stationarity tests: ADF, Phillips–Perron, KPSS, and break-robust tests such as Zivot–Andrews
- Box–Jenkins ARIMA and SARIMA modeling with ACF/PACF, information criteria and out-of-sample forecast evaluation
- VAR estimation with lag selection, Granger causality tests, impulse responses and variance decompositions
- Johansen cointegration tests (trace and max-eigenvalue) and VECM estimation with error-correction interpretation
- Engle–Granger two-step tests and ARDL bounds testing for mixed I(0)/I(1) variables
- Volatility modeling: ARCH-LM tests, GARCH, GJR-GARCH and EGARCH, with distribution choices for fat tails
- Residual diagnostics: Ljung–Box, LM serial correlation, normality, heteroskedasticity and stability (CUSUM, AR roots)
- Forecast accuracy measures (RMSE, MAE, MAPE) and comparison against simple benchmarks
- Code and tables in EViews, Stata, R (forecast, fable, vars, urca, rugarch) or Python (statsmodels, arch)
Not included
- Trying lags and deterministic terms until a preferred result appears, without reporting the search
- Presenting Granger causality as proof of true causation
- Investment or trading advice based on forecasts
- Writing your chapters for you — we explain results so you can write them
What you receive
- Series profile
- Plots, descriptive statistics, unit-root and stationarity results for every series, with the integration order decided and justified.
- Model results
- Estimated ARIMA, VAR, VECM, ARDL or GARCH models with coefficients, standard errors and information criteria, in clean tables.
- Dynamic outputs
- Impulse response functions with confidence bands, variance decompositions, forecasts with intervals or conditional volatility plots as relevant.
- Diagnostics appendix
- Residual autocorrelation, ARCH, normality and stability tests, with notes on anything that needs to be mentioned as a limitation.
- Code
- Commented EViews program, Stata do-file, R script or Python notebook reproducing every result.
How it works
Understand the series
We review your question, variables, frequency, sample period and data sources, and flag breaks or definitional changes.
Test properties
We run unit-root and stationarity tests and decide the modeling framework with you.
Estimate
We select lags and deterministic terms, estimate the model and test for cointegration or volatility effects as needed.
Diagnose and refine
Residual and stability diagnostics are checked; any change to the model is justified and recorded.
Report and explain
You receive tables, figures and code, followed by a walkthrough session.
Models and tests we use
- Unit-root testing
- ADF and Phillips–Perron test a unit-root null; KPSS tests a stationarity null. Using both, and break-robust tests where shocks are visible, gives a more reliable picture.
- ARIMA / SARIMA
- Univariate models for forecasting and describing dynamics, identified from ACF/PACF and information criteria and checked with Ljung–Box tests on residuals.
- VAR
- Systems of stationary variables; lag length by AIC/BIC/HQ; impulse responses depend on identification, so Cholesky ordering or structural restrictions must be justified.
- Johansen and VECM
- For I(1) variables that share long-run relationships; the error-correction term shows how quickly deviations from equilibrium are corrected.
- ARDL bounds testing
- Pesaran–Shin–Smith approach for mixes of I(0) and I(1) regressors, but not I(2), with short- and long-run coefficients.
- ARCH / GARCH family
- Conditional variance models for returns; GJR and EGARCH capture asymmetric responses to negative shocks; Student-t or skewed distributions for fat tails.
Stationarity decides everything else
Whether a series is stationary, trend-stationary or has a unit root determines whether you model it in levels or differences and whether cointegration is possible. ADF and KPSS often disagree in short samples, and structural breaks can make a stationary series look non-stationary. We read the tests together with plots and economic reasoning, try break-robust tests where needed, and report the decision openly.
If any series is I(2), both VECM and ARDL bounds testing are unsuitable without further transformation, so we check this explicitly.
VAR, VECM or ARDL?
All variables stationary: a VAR in levels. All I(1) and cointegrated: a VECM, which keeps the long-run information that differencing would throw away. All I(1) but not cointegrated: a VAR in differences. A mix of I(0) and I(1) with one clear dependent variable: ARDL bounds testing is often the practical choice. We explain the logic so you can defend it in your methodology chapter.
For VECMs we check whether Johansen's trace and maximum-eigenvalue tests agree, choose the deterministic specification (intercept, trend) deliberately, and interpret normalized cointegrating vectors and adjustment coefficients.
Volatility, forecasts and their limits
Financial returns typically show volatility clustering. An ARCH-LM test on residuals tells us whether a GARCH-type model is needed; sum-of-coefficient checks tell us whether volatility is highly persistent. We report model choice by information criteria and diagnostics on standardized residuals.
Time series results are sensitive to sample period, lag choice and structural change. Granger causality means predictive precedence, not causation, and forecasts come with uncertainty that widens with the horizon. We make these limits explicit and compare forecasts with naive benchmarks so any claim of accuracy is meaningful.
What the work can look like
Illustrative example — fictional data
Sample excerpt: oil prices, exchange rate and inflation
A doctoral student studied long-run links between oil prices, the exchange rate and consumer prices for an oil-importing economy using monthly data, 2005–2024. All numbers are invented.
Integration order
ADF and KPSS agreed that all three series (in logs) were I(1). A Zivot–Andrews test identified a break in 2014 for oil prices but still did not reject a unit root.
Cointegration
With 3 lags chosen by HQ and an unrestricted intercept, both Johansen tests indicated one cointegrating vector (trace = 38.4 vs 5% critical value 29.8). The error-correction coefficient for prices was −0.06, implying about 6% of any disequilibrium is corrected each month.
Diagnostics
LM tests showed no serial correlation up to lag 12; all inverse roots lay inside the unit circle. Residuals were non-normal due to crisis months, noted as a limitation.
Illustrative example with invented numbers. It is not a real client case and not investment or policy advice.
What you’ll need to provide
- Research questions and the relationships you want to test
- The time series data or a description of sources and variable definitions
- The frequency and sample period, including any known policy changes or crises in the period
- Your software and any model required by your supervisor or reference papers
- Reporting requirements or reviewer comments
You don’t need everything ready to ask for a quote — tell us what you have and we’ll say what’s missing.
What affects price and turnaround
Price depends on
- Number of series, equations and models
- Frequency and length of the data and how much preparation is needed
- Whether structural breaks, cointegration or volatility modeling are involved
- Forecasting evaluation requirements (rolling windows, multiple horizons)
- Delivered analysis or guided sessions
Turnaround depends on
- Availability and consistency of data across sources
- Number of model specifications and robustness checks
- Time for decisions about integration orders and deterministic terms
Every project is quoted individually. How we price our work.
Questions people ask before starting
What if ADF and KPSS disagree?
It happens often, especially in short samples or with breaks. We look at plots, try alternative lag and trend specifications and break-robust tests, and explain the decision rather than choosing whichever test suits.
How much data do I need?
It depends on the model. ARIMA and small VARs need fewer observations than large VECMs or GARCH models. Annual data over 25–30 years gives limited power for cointegration tests, and we will be clear about that.
Can you do forecasting for my business or organization?
Yes, for research, planning or evaluation purposes. We report forecast uncertainty and benchmark comparisons, and we do not provide investment recommendations.
Do you use EViews?
Yes, along with Stata, R and Python. EViews is common in economics departments and we can provide program files as well as step-by-step menu instructions.
Will you write my results and discussion?
No. We deliver analysis, tables and explanations and can check your draft for technical accuracy; the writing remains yours.