Code Monkey home page Code Monkey logo

varsma's Introduction

Open In Colab

Vector Autoregressive with scalar Moving Average Model

Introduction.

This notebook explains the underlying idea of the the paper Vector Autoregressive with scalar Moving Average Model. The main ideas are the following

  • When the Autoregressive and the Moving Average polynomials commute with each other, there is a simple formula for the conditional likelihood function.
  • The formula is a Generalized Linear Regression type formula, with the inner product given by the Toeplitz matrix of the moving average process.
  • There is a simple inversion formula for the Toeplitz matrix using the Woodbury Matrix Identity. The inversion involves a convolution with the invert of the MA polynomial, and an inversion of a smaller matrix of size $k\times k$ ($k$ is the dimension of vector.)
  • This inversion formula is related to the Borodin-Okounkov formula in operator algebra.
  • Since the AR coefficients are given by GLS for a fixed MA polynomial, we have a close form of the likelihood function for each set of MA coefficients. We can optimize over the MA coefficients to estimate the model parameters.

We present the python code in our github directory. We also have R and C++ codes which we plan to make open source in the future.

The AR part of the model is dense. A reduced rank AR model will be presented in future work. This model is a simple extension of the Vector Autogressive Model widely use in Time Series Analysis. This model should be competitive versus the traditional VAR model if the real world data contains a moving average component, even if the MA component is not scalar.

TL;DR:

Anywhere we use a Vector Autoregressive Model, we should try VARsMA. At the cost of a few parameters it could deal with moving average effect. The package is open source and easy to use. Open the notebook https://github.com/dnguyend/VARsMA/blob/master/VARsMA.ipynb in colab for more details.

varsma's People

Contributors

dnguyend avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.