Rocode >> Contracting >> Fundamental Indexation
The Fundamental Indexation program suite was written for the Department of Finance and Banking at Monash University. It has been used to model the Dow Jones Industrial Average, the Russell 1000 Index, S&P 500 Index and the ASX 200 Index.
The suite consists of separate Quasi Index, Breadth Study, Rebalance Costs, Industry Sampling and Index Premiums pre-processor and post-processor applications.
A set of PowerPoint slides were made during 2011 detailing the FI systems and maybe found via this link.
The Fundamental Indexation research was financed between 2009 - 2012 by an Australian Research Council Linkage Fund grant.
Publications from this work include:
- Is Fundamental Indexation Able to Time the Market? Evidence from the Dow Jones Industrial Average & the Russell 1000
Doris Chen & Michael Dempsey & Paul Lajbcygier, Journal of International Financial Markets, Institutions and Money, Volume 37, Pages 162-177, July 2015
- The Viability of Alternative Indexation When Including All Costs
Paul Lajbcygier & Jeremy Sojka, International Review of Financial Analysis, Volume 38, Pages 109-141, March 2015
A utility program AggRo was built to aggregate the rows generated by our research software in to publishable tables.
Dow Jones Industrial Average
The following is a video about using the Fundamental Indexation suite to simulate the Dow Jones Industrial Average (DJIA).
Watch the screencast showing how to use the application to graph the Dow Jones Industrial Average between 1962 and 2009.
The stock history for the Dow Jones is stored in a standalone file formatted using a Microsoft Windows configuration file format.
The C++ application expects a job file to be passed as the first argument to the executable application. This may be achieved using a drag and drop action or via the command prompt.
Our replication of the DJIA uses stock and price data from The Center for Research in Security Prices (CRSP) database. Comma separated variable files are extracted from CRSP and used in the above screencast. Example fields include the Number of Shares Outstanding, Closing Price and Holding Returns.
A Quasi 1000 Index is created using the top 1000 stocks of the US market ranked by Market Capitalisation. This is similar but not exactly the same as the Russell 1000 Index.
An additional 7 indexes where also created using the top 1000 stocks as ranked using the weights of different fundamental variables.
These 7 monthly stock lists are separately passed, one by one, to the Fundamental Indexation application. The example of the Arnott Composite stock list is shown below.
A monthly stock composition and monthly composite weighted return reports are generated. The weighted return report is then loaded in to Excel. A cumulative total is generated and then graphed.
Over 40 outputs maybe generated via the application suite. The documentation for two example outputs have been shown below.
This source code of the suite is written using Microsoft Visual Studio and the C++ low level language.
GNU Scientific Library
The GNU Scientific Library has been included because of its ability to perform Linear Regression analysis.
The GSL has been integrated to the application as a Win32 dll.
The C++ source code for the project was written with included embedded comments that are used with Doc-o-Matic to document the various C++ components.