Difference between revisions of "Main Page"
(→Basic Programming) |
(→Special Econometric Topics) |
||
Line 98: | Line 98: | ||
! scope="col"| Instrumental Variables | ! scope="col"| Instrumental Variables | ||
|- | |- | ||
− | | | + | | [[RobInf|Discussion]] |
| [[MaxLik|Discussion]]<br>[[MaxLikCode|Example Code]] | | [[MaxLik|Discussion]]<br>[[MaxLikCode|Example Code]] | ||
| coming soon | | coming soon |
Revision as of 11:52, 1 November 2012
Contents
Econometric Computing Learning Resource (ECLR)
This is the home of the ECLR. It is the purpose of this resource to facilitate the learning of MATLAB as an Econometric software.
Why do you need to learn MATLAB? It is a widely used programming environment for Economists and many academics write and publish code in MATLAB. If you just want to run a simple regression in MATLAB it will (initially) take you longer to get to the results than in other menu driven software packages such as EVIEWS. However, if you want to achieve nonstandard things (and working on a PhD or even a MSc you are bound to want to do non-standard things) the picture is very different. A menu driven software package may do some related things but often not exactly what you want. Even if the software package has a "button" to do what you want to do, it is often badly documented what exactly happens underneath the hood. But most importantly, many nonstandard things just cannot be done in menu driven software. This is were MATLAB (or other software packages like GAUSS or OX) comes to the rescue. At the core it has nothing to do with econometrics. It is a matrix algebra maths programme in which you can do with data (stored in matrices) whatever you want. When we say whatever, then this is to be understood almost literally. And that is the point. There are a number of great advantages once you are familiar with MATLAB:
- You can easily repeat the same analysis with another dataset.
- For some analysis there are some very repetitive things you got to do. In some cases, writing a program will eliminate the need to do essentially the same thing many times. You instruct the software to do the repetitive work for you.
- By writing a MATLAB program (or script) you essentially also create a record of what you do. This is extremely useful when it comes to understanding previous work and to identify mistakes. This is possibly the most important advantage of writing your own programs.
If you did any programming in any other programming language, such as Visual Basic, C, C++, GAUSS, etc. you will recognise a lot of common patterns. Learning how to use MATLAB to do econometrics is 100% a trial and error process and hence this wiki will provide guidance but you will have to practice yourself.
A similar page exists for the following softwares:
The Essential MATLAB Programming Techniques
In this section we will introduce a number of basic and intermediate programming techniques. Whatever language you program in you will encounter these techniques, although the details will, of course, vary. We recommend that you ensure that you are familiar with these before you progress to Special Econometric Topics .
Basic Programming
Basics and Matrices | Loading Data and Date Formats | Program Flow & Logicals | Functions | Saving Data & Screen Output |
---|---|---|---|---|
Discussion Example Clip |
Discussion ExampleClip |
Discussion | Discussion Example Code OLSexample.xls Example Clip |
Discussion |
After having gone through these basic techniques you may want to test your newly acquired skills with the following examples.
Example 1 | Example 2 |
---|---|
Example 1 | Example2a Example2b |
Intermediate Programming
Statistical Functions | Arrays and Structures | Debugging | Graphing Data | Function Handlers Anonymous Functions |
---|---|---|---|---|
Discussion | Discussion | coming soon | coming soon | Discussion |
Advanced Programming
Sorry, but this cannot be taught! It will come with experience. Find someone who has experience in MATLAB programming and let him or her look over your code.
Nonlinear Optimisation
The optimal parameters in a linear econometric model (assuming certain assumptions) can be found analytically. We call them the Ordinary Least Squares (OLS) estimates and they are easily calculated with a certain formula (see the OLSest.m function). When econometric models do not have such an analytical solution, an alternative parameter estimation strategy is required. In essence it is a clever "trial and error" strategy. This is often called nonlinear optimisation.
Nonlinear optimisation is a very important, but also a very tricky area of econometric computing. It certainly helps to understand some of the underlying theory and therefore we have below separate sections on the theory and implementation.
Theory | Implementation | Constrained Optimisation |
---|---|---|
Discussion | Discussion | Discussion |
Special Econometric Topics
Topics in this Section will assume that you have mastered all the techniques covered in the Essential Programming Section
Robust standard errors | Maximum Likelihood | Generalized Methods of Moments | Instrumental Variables |
---|---|---|---|
Discussion | Discussion Example Code |
coming soon | coming soon |
Monte-Carlo/Simulation Techniques | Binary Response Models | Handling High Frequency Data |
---|---|---|
coming soon | coming soon | coming soon |
Authors, Maintenance and Contributions
This wiki was created by Ralf Becker and Arthur Sinko with the financial support of a University of Manchester Investing in Success grant. If you have any suggestions please contact us by email. Contributions to this wiki are encouraged. Please contact us for details.
Other useful MATLAB resources
Freely available toolboxes
The following toolboxes are freely available and contain extremely useful procedures
- Spatial Econometrics by James P. LeSage [1]. This toolbox contains a wide variety of useful econometrics functions. It also contains an excellent documentation. In addition to quite general econometric functions you will, as the name suggests, find a huge list of functions relevant if you are working with spatial data.
- Oxford MFE toolbox by Kevin Sheppard [2]. This toolbox contains many useful functions for uni- and multivariate volatility models.
You need to copy these toolboxes into your MATLAB toolbox folder and add the respective path to the MATLAB list of folders it searches for functions. (In the main menu select FILE and then SET PATH where you can add the folders you added.)
Literature and other learning resources
- : Kevin Sheppard's MATLAB introduction
- : Eric Jondeau and Michael Rockinger's webpage with MATLAB codes
- Martin V., Hurn S. and Harris D. (2012) Econometric Modelling with Time Series: Specification, Estimation and Testing (Themes in Modern Econometrics) [3]
- Higham, D.J. and Higham, N.J. (2005) MATLAB Guide, Society for Industrial and Applied Mathematics [4]