Developer: OxMetrics Technologies

Latest Release: OxMetrics 8 (June 2018)

Operating System: Windows, Mac OS, Linux

OxMetrics is a family of software packages providing an integrated solution for the econometric analysis of time series, forecasting, financial econometric modelling and statistical analysis of cross-section and panel data. End User License Agreement

The core packages of the family are OxMetrics which provides the user interface, data handling and graphics, and Ox Professional, which provides the implementation language. The other elements of the family are interactive, easy-to-use and powerful tools that can help solve your specific modelling and forecasting needs.

OxMetrics 8, published and distributed by Timberlake Consultants is now shipping.

Find out more about the latest version of OxMetrics here


Please click here to visit's Oxmetrics pricing page

The new release of OxMetrics 8 contains upgraded versions of Ox ProfessionalPcGive andG@RCH.

The latest version includes CATS 3 (Cointegration of Time Series Analysis by Jurgen A Doornik and Katerina Juselius) and several improvements to the following modules:

OxMetrics Enterprise Edition Version 8.0

OxMetrics Enterprise Edition is a single product that includes and integrates all the important components for theoretical and empirical research in econometrics, time series analysis and forecasting, applied economics and financial time series: Ox Professional, PcGive, G@RCH and STAMP.

CATS 3 (Cointegration of Time Series Analysis) by Jurgen A Doornik and Katerina Juselius

CATS uses OxMetrics for data input and graphical and text output, and is part of the OxMetrics family.

The third generation of CATS is a complete rewrite in more than one way. It is now written in Ox for use within OxMetrics, either using the graphical user interface or programmatically. Furthermore, many algorithms have been improved or newly invented, in particular for I(2) models. The new CATs module with I(2) cointegration and many new I(1) cointegration features includes corrections and is considerably faster.

Ox Professional Version 8.0

An object-oriented matrix programming language. It is an important tool for statistical and econometric programming with a syntax similar to C++ and a comprehensive range of commands for matrix and statistical operations. Ox is at the core of OxMetrics. Most of the other modules of OxMetrics (such as PcGive, STAMP, G@RCH) are implemented with the Ox language. Ox Professional belongs to theOxMetrics Enterprise Edition.

PcGive Professional Version 15.0

An essential tool for modern econometric modelling. PcGive Professional is also part of OxMetrics Enterprise Edition. It provides the latest econometric techniques, from single equation methods to advanced cointegration, volatility models static and dynamic panel data models, discrete choice models and time-series models.

> Find out more about PcGive

PcGive Professional includes Autometrics

Autometrics is the automatic econometric model selection procedure that is available in PcGive. Autometrics is a revolutionary new approach to model building, based on recent advances in the understanding of model selection procedures. Experiments show that Autometrics outperforms even the most experienced econometrician. Starting from an initial model, Autometrics will find the best simplified model. Thus removing the drudgery of model selection, allowing you to concentrate on the variable choice and interpretation of the model(s).

G@RCH Version 8.0

G@RCH is an OxMetrics module dedicated to the estimation and forecast of univariate and multivariate ARCH-type models. It also allows the estimation of univariate and multivariate non-parametric estimators of the quadratic variation and the integrated volatility. G@RCH provides a menu-driven easy-to-use interface, as well as some graphical features. For repeating tasks, the models can be estimated via the Batch Editor of OxMetrics or using the Ox language together with the ‘Garch’, ‘MGarch’ and ‘Realized’ classes. Version 8.0 is a major update that features many improvements. G@RCH is also part of OxMetrics Enterprise Edition.

STAMP Version 8.3

Modelling and forecasting time series, based on structural time series models. These models use advanced techniques, such as Kalman filtering, but are set to be easy to use. The hard work is done by the program, leaving the user free to concentrate on formulating models, then using them to make forecasts. STAMP 8.3 includes both univariate and multivariate models and automatic outlier detection. STAMP is also part of OxMetrics Enterprise Edition.

SsfPack Version 3.0

SsfPack is a suite of C routines for carrying out computations involving the statistical analysis of univariate and multivariate models in state space form and requires Ox 4 or above to run. SsfPack is not a member of OxMetrics Enterprise Edition.

* OxMetrics 8 and SSfPack users please note: SSfPack 3.0 has been recompiled to be compatible with OxMetrics 8 and requires users to reinstall a new version of the software.


Developed by TSP International, TSP/OxMetrics is an econometric software package, with convenient input of commands and data, all the standard estimation methods (including non-linear), forecasting, and a flexible language for programming your own estimators. TSP can be installed as a module of OxMetrics – TSP/OxMetrics. This eases the use of the command-line environment by providing context sensitive help, syntax highlighting, and a dialog-driven command builder.

Individual or any combination of OxMetrics modules are available for purchase.

What’s New in OxMetrics 8

OxMetrics 8 (front end)

The following lists the new features and improvements made to the OxMetrics front end in version 8. Current users of OxMetrics 7 will find that the user experience remains familiar.

The most important new features are:

  • Windows: support for high resolution screens (HiDPI).
  • Windows: tabbed user interface.
  • All: interface refresh.
  • macOS: OxMetrics is now a 64-bit program, so client programs are now 64-bit as well.
  • maxOS: Find replace dialog can remain open while working elsewhere.
  • Graphs can be saved as SVG.

>Back to top

CATS 3 (Cointegration of Time Series Analysis) by Jurgen A Doornik and Katerina Juselius

CATS uses OxMetrics for data input and graphical and text output, and is part of the OxMetrics family.

The third generation of CATS is a complete rewrite in more than one way. It is now written in Ox for use within OxMetrics, either using the graphical user interface or programmatically. Furthermore, many algorithms have been improved or newly invented, in particular for I(2) models. The new CATs module with I(2) cointegration and many new I(1) cointegration features includes corrections and is considerably faster.

Here is a brief summary of new features in the I(1) part of CATS

  • Much more efficient computations (can be several orders of magnitude faster) in Bartlett correction and recursive estimation;
  • Bartlett correction always included when valid;
  • Improved beta-switching algorithm;
  • New alpha-beta-switching algorithm allowing linear restrictions on alpha and not requiring identification;
  • Bootstrap of rank test;
  • Bootstrap of restrictions;
  • More Monte Carlo facilities: draw from estimated model, either with estimated or with specified coefficients;
  • General-to-specific CATSmining;
  • Automatic generation of Ox code;
  • New convenient way to express restrictions;
  • Most algorithms QR based.

And for the I(2) part of CATS:

  • Improved tau-switching algorithm;
  • New delta-switching algorithm;
  • New triangular-switching algorithm allowing linear restrictions on alpha, beta, tau and not requiring identification;
  • Estimation with delta=0;
  • Bootstrap of rank test;
  • Simulation of asymptotic distribution of rank test;
  • Bootstrap of restrictions;
  • More Monte Carlo facilities: draw from estimated model, either with estimated or with specified coefficients;
  • Automatic tests of unit vectors and variables;
  • CATSmining;
  • Improved computation of standard errors;
  • Automatic generation of Ox code;
  • All algorithms QR based.

The Special Issue reprint book “Recent Developments in Cointegration” has been published online and is freely accessible on the MDPI Books platform here

>Back to top


Ox is an object-oriented matrix programming language with a comprehensive mathematical and statistical function library. Matrices can be used directly in expressions, for example to multiply two matrices, or to invert a matrix. The major features of Ox are its speed, extensive library, and well-designed syntax, which leads to programs which are easier to maintain.

Running Ox programs

There are two versions under Windows:

Ox Professional

oxl.exe for use in a command prompt (console) window, oxrun.exe for full graphical functionality in conjunction with OxMetrics. The oxrun and oxli programs have an interactive and debug mode. Executables are in oxbin.

Ox Console

oxl.exe for use in a command prompt window.

New Features and enhancements in Ox Version 8.0

  • Changes to Modelbase mean that oxo files of Modelbase derived classes need to be recompiled:
    • GetOx* functions have additional sClass argument; also introduced GetOxDecl,GetOxDatabase.
    • Y_VAR constants have been moved into the class (derived classes should do the same with their constants). This avoids clashes when using multiple classes in one project. So we need to write (e.g.)
      model.Select(Arfima::Y_VAR, ...

      instead of

      model.Select(Y_VAR, ...

      For convenience a mechanism has been added to use strings instead of constants:

      model.Select("Y", ...

      To support this, Modelbase has two new virtual functions FindGroup,FindMethod which rely on the new virtual functions GetGroupLabels,GetMethodLabels. The derived class should override GetGroupLabels,GetMethodLabels to return the correct array of strings.

  • Can save graphs as SVG file.
  • savesheet to save two-dimensional array as Excel file (counterpart to loadsheet)
  • Improved handling of array entries with no value (.Null):
    • when created using new, array elements will be .Null
    • can test .Null equality (only) using arr[i] == .Null
    • can assign arr[i] = .Null
    • but using a variable with a .Null value in an expression remains a run-time error.
    • The three dots in a function header, indicating variable number of arguments, can now be followed by a variable name. E.g:

decl a = 1;

      is convenient shorthand for

decl args = va_arglist();
decl a = 1;

      (Unless used in main, as in main(…args), in which case arglist is called to get the command line arguments.)


  • Three dots in a function call spreads an array, so func1(...a) equals func1(a[0], a[1], a[2]) if a is an array with three elements. The array cannot have more than 256 elements.
  • Read Stata 13 and 14 .dta files.
  • Can skip items in multiple assignment, as well as use it in decl, e.g.

    decl [a, b, c] = {1, 2, 3};
    [a,,c] = {1, 3};

  • %#v on array of strings: omit top level {} (useful for generating code)
  • fwrite/fread can have a filename as the first argument. E.g.,
  • fread("filename", &s, 's') reads an entire file into one string,
  • fwrite("filename", s) saves a string as a file.
  • diagcat(a, b, ...); to concatenate more than two matrices.
  • Added p-value format for printing: e.g. print("%9.3P", 1e-6) prints "[0.000]***". The format is three stars for significance below 0.001, two for below 0.01, one for below 0.05.
  • The default line length for output is now 1024 (was 80 before). This can be changed using the format function.
  • using G,E,F format to print . for .NaN.
  • Added %rs and %cs to matrix format to specify row and column separator

Fixed Problems in Ox version 8.0

  • confusion with norm: using ‘F’ on vector computes l_70 instead of l_2, now using l_2 for ‘F’ (assuming l_70 is never needed).
  • continue in switch can lead to stack overflow (missing a pop).
  • It is safe to redeclare constants within a class (provided they don’t change value), but that symbol was counted eventhough not added, resulting in NULL symbol at the end of the list of class symbols, which crashed.

>Back to top

G@RCH 8.0

  • The G@RCH book is now available in pdf accessed from within the software.
  • G@RCH 8.0 comes along with Ox Professional. This major change allows G@RCH users, who previously did not purchase OxMetrics Enterprise, to run ox programs and in particular the numerous example files provides with G@RCH as well as the codes generated with ‘ALT+o’ after the estimation of a model with the rolling menus.
  • A new option is available for the Lee and Mykland (2008) and Lee and Hannig (2010) tests for jumps. This option allows both tests to have better finite sample properties when the underlying process deviates from the random walk hypothesis (with and without jumps). The correction has been proposed by Laurent and Shi (2018).
  • Following the simulation method advocated by Blasques, Lasak, Koopman, and Lucas (2016), in-sample confidence bands for the conditional mean and conditional variance of univariate GARCH-type models are now available. This allows to visually investigate the precision of the estimates of the first two conditional moments.
  • The tool introduced in version 7.0 to convert a date of the format yyyymmdd, yyyyddmm, ddmmyyyy or mmddyyyy into a proper OxMetrics format is now also accessible via the rolling menus in Category ‘Other Models’ and Model Class ‘Convert Date using G@RCH’.
  • A bug has been corrected in MGarch on the inclusion of explanatory variables in the mean and variance of DCC-type of models.
  • The G@RCH classes (Garch, MGarch and Realized) uses enumerations, i.e., lists of integer constants like enum { HESS, CROSSPRODUCT, QMLE };. By default, the first member has value 0, and each successive member has a value of one plus that of the previous member. In order to avoid clashes with other classes imported in the same project, enumerations have been moved into the classes as public members. Therefore, they can still be accessed from outside of the class but using the following convention: mgarchobj.MLE(MGarch::HESS); (where MGarch is the class name) instead of mgarchobj.MLE(HESS); like in the previous versions. Note that this is equivalent to using mgarchobj.MLE(0); because HESS is the first element of the enumeration.
  • The test for additive jumps in AR-GARCH/GJR models proposed by Laurent, Lecourt, and Palm (2016) is available in Category ‘Other Models’ and Model Class ‘Descriptive Statistics using G@RCH’ and by calling the new class function Run Test Additive Jumps of the Garch class or the RGARCH class directly (which is available in the same folder as Garch.oxo). Several example files are also provided to estimate a BIP-AR-GARCH/GJR model and to extract the detected jumps in ox.
  • Several minor bugs have been corrected.

>Back to top

PcGive 15

Fixed and Improved in PcGive 15

  • Easier desktop layout with additional direct access to recursive graphs, forecasts and tests
  • Trend indicator saturation (TIS) (we have undertaken research using TIS on GPs speed of takeup of generics, which yielded useful results, but still in progress, as is the technical paper)—note this as PcGive being at the frontier implementing powerful new approaches
  • Recursive graphs can be implemented after conventional estimation rather than needing a separate implementation, and can be undertaken with or without indicator saturation (IS)
  • Additional diagnostic plots are available
  • Easy choice of form of estimated parameter standard errors (SEs) including HCSE and HACSE.
  • Multivariate robust Hedgehog plots had variables scrambled.
  • Hedgehog plots use a different color in the forecast period.
  • Hedgehog Levels forecasts beyond estimation sample: not integrated
  • Levels forecasts with gap: created cGap extra forecasts Also used wrong levels if cGap > 0.
  • Recursive hedgehog would omit early part when there are dummies
  • Fixed Ox issue with find, affecting forecasting

Unique to PcGive 15


  • Hedgehog graphs where a sequence of forecasts for say 1 through 8 steps ahead starting at successive horizons T, T+1, etc. are plotted against outcomes looking like the spins of a hedgehog.
  • Easily computed forecasts by a robust device as an additional choice to avoid that problem: an illustration is attached showing how much better the robust device is after a shift.


>Back to top


New Features

  • STAMP 8.3 works under OxMetrics 6.1.
  • The Ox code generator is introduced and fully supported by STAMP. This new facility can generate Ox code for the model that is estimated in STAMP. It complements the Batch code generator in STAMP. It is particularly useful for those who use Ox for time series analysis in a production environment.
  • The online help facility of STAMP is updated. In particular, the online help for the Batch language and the new Ox code generator are rewritten.

Solved problems

  • All weights and related computations in the Test/Weights dialog can be carried out, also for time series with missing data.
  • The Write forecasts option is combined with a Store forecasts option in the Test/Forecasting dialog. The observations forecasts are stored after confirmation as a new variable with the forecasts attached at the end of the sample. When necessary, the database sample is automatically extended such that the forecast window is included. The in-sample values of the new variable are the same as in the original series.
  • The Edit/Save forecasts option in the Test/Forecasting dialog is reactivated for model without explanatory variables.
  • The Batch code options for Forecasting is extended; see Batch documentation.
  • Variables and components in the Batch code need to be written between accolades. Specifically, in the setcmp batch command we have “level”, “slope”, “seasonal”, “cycle”, “ar” and “irregular”.
  • Inclusion of lagged dependent variables is discouraged. A new facility will be built in for the next version. In this version it is best to treat and to have it as an exogenous variable.

>Back to top

The current OxMetrics software family supports the latests versions of Microsoft Windows, Mac OS and Linux. See below to see if your machine is compliant with the latest version:

  • Microsoft Windows:
    • Windows 8, 7, Vista, XP, 2000 (32-bit)
    • Windows 8, 7, Vista (64-bit)
  • Mac OS:
    • OS X 10.4 (Tiger)
    • OS X 10.5 (Leopard)
    • OS X 10.6 (Snow Leopard)
    • OS X 10.7 (Lion)
    • OS X 10.8 (Mountain Lion)
  • Linux:
    • 32-bit
    • 64-bit

OxMetrics offers special prices to students. To be able to purchase OxMetrics modules at student prices, you need to present proof of student status.

Student copies are full versions of the software. However, they may not include all the documentation. For example, PcGive is distributed with the Introduction to OxMetrics book and PcGive Volume I manual only. Ox Professional is distributed with Introduction to OxMetrics book and the Introduction to Ox manual only. STAMP is distributed with the full documentation, Introduction to OxMetrics book and STAMP book. G@RCH is distributed with the full documentation, Introduction to OxMetrics book and G@RCH book. When purchasing more than one module only 1 Introduction to OxMetrics book will be included.


Single Module of PcGive / Ox Professional / STAMP / G@RCH
£85.00 (excluding VAT where applicable).

£95.00 (excluding VAT where applicable).

Any two modules from PcGive / Ox Professional / STAMP / G@RCH
£136.00 (excluding VAT where applicable).

Any three modules from PcGive / Ox Professional / STAMP / G@RCH
£204.00 (excluding VAT where applicable).

Any four modules from PcGive / Ox Professional / STAMP / G@RCH
£210.00 (excluding VAT where applicable).

A series of of webcasts delivered by OxMetrics developers: Dr. Jurgen A. Doornik, Prof. Siem Jan Koopman, Prof. Sebastién Laurent and Prof. Sir David F. Hendry are available to view on our YouTube Channel.

This series of short videos provide an introduction to the new software modules and highlight some of the key new features available within OxMetrics.