Skip to main content

2002 | Buch

Programming Languages and Systems in Computational Economics and Finance

herausgegeben von: Søren S. Nielsen

Verlag: Springer US

Buchreihe : Advances in Computational Economics

insite
SUCHEN

Über dieses Buch

The developments within the computationally and numerically oriented ar­ eas of Operations Research, Finance, Statistics and Economics have been sig­ nificant over the past few decades. Each area has been developing its own computer systems and languages that suit its needs, but there is relatively little cross-fertilization among them yet. This volume contains a collection of papers that each highlights a particular system, language, model or paradigm from one of the computational disciplines, aimed at researchers and practitioners from the other fields. The 15 papers cover a number of relevant topics: Models and Modelling in Operations Research and Economics, novel High-level and Object-Oriented approaches to programming, through advanced uses of Maple and MATLAB, and applications and solution of Differential Equations in Finance. It is hoped that the material in this volume will whet the reader's appetite for discovering and exploring new approaches to old problems, and in the longer run facilitate cross-fertilization among the fields. We would like to thank the contributing authors, the reviewers, the publisher, and last, but not least, Jesper Saxtorph, Anders Nielsen, and Thomas Stidsen for invaluable technical assistance.

Inhaltsverzeichnis

Frontmatter

Models and Modelling

Frontmatter
Chapter 1. Coin-Or: An Open-Source Library for Optimization
Abstract
Optimization models and algorithms are important tools for modeling and solving a wide variety of problems in finance and economics.
COIN-OR is an initiative to promote open-source software to the operations research community. One goal of the initiative is to provide open-source software tools for a variety of optimization problems. This paper describes the current components of the COIN-OR library, with particular attention to the integrated component collection for mixed-integer programming: the Open Solver Interface, the Cut Generator Library, and the Branch-Cut-Price Framework. An outline of the next generation of these components, currently under development, is also presented.
The open-source model of software distribution has recently been successfully applied in several segments of the software industry. Open source offers significant advantages for disseminating the results of algorithmic research and development. We describe the principal tenets of the open-source movement and explain the benefits of open development and community contribution to the evolution of the COIN-OR library.
Matthew J. Saltzman
Chapter 2. Macroeconomics: What can we Learn from the Dynamical Systems Literature?
Abstract
In this paper we emphasize the importance of dynamical systems in economics,especially in macroeconomics, because of the inherent presence of intertemporal decisions. Furthermore, we highlight how one can study different dynamical systems and economies by studying their associated invariant objects. These objects are theskeletonof the dynamical system, and they help us understand the evolution of the dynamical system Finally, we describe some features and limitations of one of the most widely used software that can be readily used with macroeconomic applications.
Pere Gomis-Porqueras, Àlex Haro
Chapter 3. The Rapid Implementation of Asset/Liability Models for Sovereign Risk Management
Abstract
Uncertainty makes economic and project management more difficult for any entity. This is especially true for sovereigns that have experienced substantial financial volatility and shocks in the last decade, especially those with substantial debt and commodity price exposures. Furthermore, the development of a strategic approach at the country level for the analysis of that uncertainty has lagged behind as most approaches exclude, for example, trade flows and fiscal dimensions. A World Bank research project undertook to rectify that situation. In this paper, we will focus on those aspects of that project related to the systems technology and its selection, development, and refinement for central banks and ministries of finance in developing countries. We will show how those selections make the transfer of the technology feasible and implementable in sovereign institutions.
Jerome L. Kreuser
Chapter 4. Human and Organization Challenges to the Use of Optimization
Abstract
Optimization tools often have human users and are applied within sizeable organizations. Even though the benefits of optimization are well establish, practitioners find that challenges still exist in getting people to use these tools. Many of these challenges come from aspects of human and organizational behavior. This paper uses a case study to illustrate how these behavioral factors affect the acceptance of optimization tools, and shows how they can be addressed. It closes with two real world examples of large optimization-based initiatives.
Donald E. Shobrys

High-Level and Object Oriented Approaches

Frontmatter
Chapter 5. Object-Oriented Programming in Econometrics and Statistics Using Ox: A Comparison with C++, Java and C#
Abstract
It is argued that object-oriented programming can bring important benefits when used in econometric, financial, and statistical computing. The Ox language is used to discuss the issues, and compared to C++, Java, and C#. A Monte Carlo experiment of a simple bootstrap problem illustrates the benefits.
Jurgen A. Doornik
Chapter 6. Design Patterns in Hierarchical Models
Abstract
This chapter outlines the design of a computational framework for the study of hierarchical models, particularly agent based economic models. The author has been influenced by the work of Kirman, see for example [11]to view markets as evolutionary networks of agents.. At the same time, we aim to exploit the recent computational cgp-v framework of John Holland, see [10]which in turn builds on Herbert Simon’s views on complexity and hierarchies, see [14]. In contrast to Holland, the author favours an object oriented approach to designing computational models. In the pursuit of software that is verifiable, robust and readily maintained the author aims to exploit object oriented design patterns, particularly those of the “Gang of Four”, see [6]. This latter work offers two guiding principles in software design: (1) Program to an interface, not an implementation; (2) Favor object composition over class inheritance. The second principle may come as a surprise to those exposed to traditional presentations on object-oriented programming and is the basis of much that is new in patterns. In this chapter, we focus on the use of the GoF patterns in designing a cgp-v-like computational framework to study networks of economic agents.
Chris R. Birchenhall
Chapter 7. Facilitating Applied Economic Research with Stata
Abstract
We describe the Stata software environment, and illustrate how it may be prof-itably employed for applied economic research. Stata stands between “point and click” statistical packages and matrix languages in terms of extensibility and ease of use, and provides web-accessible features that enhance collaborative research and instruction.
Christopher F. Baum
Chapter 8. Formulation of Linear Optimization Problems in C++
Abstract
A new C++ class library FLOPC, for formulating linear optimization problems is presented. Using this library, linear optimization models can be specified in a declarative style, similar to algebraic modelling languages such as GAMS and AMPL, within a C++ program. While preserving the traditional strengths of algebraic modelling languages, the integration of linear optimization models with other software components is facilitated. The class library implements a full-fledged algebraic modelling language with indexed variables and constraints, repeated sums, index arithmetic and conditional exceptions. Extensive use of operator overloading provides a natural syntax for defining model constraints.
Tim H. Hultberg

Maple and MATLAB

Frontmatter
Chapter 9. MAPLE and MATLAB for Stochastic Differential Equations in Finance
Abstract
This chapter describes the use of MAPLE and MATLAB for symbolic and floating point computations in stochastic calculus and stochastic differential equations (SDEs), with emphasis on models arising in finance. The MAPLE software package stochastic is introduced and it is shown how to solve certain SDEs, perform various operations in stochastic calculus and construct numerical methods in the MAPLE environment. MATLAB routines for simulating SDEs numerically are described and the importance of optimizing the code by vectorization is illustrated. The MAPLE and MATLAB routines described here can be downloaded from the www.
Desmond J. Higham, Peter E. Kloeden
Chapter 10. Computational Programming Environments
Solving Economic Models with MATLAB
Abstract
This paper examines the issue of computational languages and environments as software tools for the construction and analysis of economic models. Com­putational languages are intermediate level software tools that fit between the conventional commercial programming languages (such as C++ and Java) and the higher level applications packages (such as specific econometric packages). They try to blend the advantages of both the higher level and lower level tools. They are aimed at technical computing including mathematical computation, data analysis, equation solving, and visualization. In many ways they can be consider as a step up from a spreadsheet. This paper examines these languages for use in the construction of economic models. Specifically, it examines the issue of whether such a language is the appropriate software tool for an economic mod­eler. It uses the computational language MATLAB together with a number of illustrative examples to examine the use of these software tools with dynamic economic models.
Ric D. Herbert
Chapter 11. Statistics and Simulations with MAPLE
Abstract
The aim of this contribution is to demonstrate some useful facilities of MAPLE, the software made to assist researchers using mathematics in their everyday work. We will discuss examples of how MAPLE can be used in statistics and simulation: from very practical and simple problems to those more complex and of much more scientific meaning. We choose them being aware that there exist a lot of very good statistical packages like SAS, Statistica, Statgraphics, Stata, Gauss, and that commonly used spreadsheets like MS Office offer a collection of statistical routines. On the other hand, MAPLE and Maple-like programs have not gained enough attention from people doing statistics. We believe that the situation is about to change, so this article may be thought of as some kind of lobbying. The examples we will discuss could be handled in some way by some of the software mentioned above. Still, we
Jerzy Ombach, Jolanta Jarnicka
Chapter 12. MATLAB as a Flexible Tool for Data Analysis and Optimisation
Abstract
This chapter reviews the use of the software package MATLAB as a tool for data analysis and includes a description of a selection of its facilities for dealing with sparse data. The chapter also considers the ease of development of user-friendly environments for data analysis within MATLAB by exploiting the wide range of graphical facilities. The chapter will also include illustrations of how MATLAB may be used to implement specific optimisation methods such as the genetic algorithm and simulated annealing so that optimum choices on the basis of the available data may be made. MATLAB graphical facilities are used extensively to illustrate and demonstrate the functioning of the methods considered. A brief comparison with Mathematica is also given.
George R. Lindfield, John E. T. Penny

Options and Differential Equations

Frontmatter
Chapter 13. Option Pricing with Excel
Abstract
We use spreadsheets to illustrate the concepts and techniques of arbitrage-free option pricing. We show how to implement both discrete (binomial) models and continuous (Black-Scholes) models, discuss similarities and differences in the required computational methods, and investigate issues of a practical nature, such as parameter estimation/uncertainty and effects of less-than-perfect hedging.
Peter Honoré, Rolf Poulsen
Chapter 14. Numerical Solution of Boundary Value Problems in Computational Finance
Abstract
When solving partial differential equations and their boundary conditions with
numerical methods there are three important issues to consider: 1. The type of problem and method. Three general methods are available: Finite difference, Collocation and Finite Element methods. Each have their advantages and disadvantages which are described in this article. 2. The specific method. Having chosen the general method, the specifics of the method must be determined to obtain a solution which is of acceptable precision to the user. This step requires some knowledge of convergence and error estimation theory which is adressed in this article. 3. The programming environment. Today the user has the choice between many diverse programming environments among which are the standard, fast, compiled languages like C/C++ and Fortran, the symbolic, interpreted environments like Maple and Mathematica, the internet directed Java etc. Some of the many possibilities including the possibility of using existing software packages is discussed in this article.
Jens Hugger
Chapter 15. MAPLE for Jump—Diffusion Stochastic Differential Equations in Finance
Abstract
The occurrence of shocks in the financial market is well known and, since the 1976 paper of the Noble Prize laureate R.C. Merton, there have been numerous attempts to incorporated them into financial models. Such models often result in jump-diffusion stochastic differential equations. This chapter describes the use of MAPLE for such equations, in particular for the derivation of numerical schemes. It can be regarded as an addendum to the chapter in this book by [5], which can be referred to for general background and additional literature on stochastic differential equations and MAPLE. All the MAPLE code in this paper
Sasha Cyganowski, Lars Grüne, Peter E. Kloeden
Metadaten
Titel
Programming Languages and Systems in Computational Economics and Finance
herausgegeben von
Søren S. Nielsen
Copyright-Jahr
2002
Verlag
Springer US
Electronic ISBN
978-1-4615-1049-9
Print ISBN
978-1-4613-5369-0
DOI
https://doi.org/10.1007/978-1-4615-1049-9