A financial analysis program includes an object oriented architecture having a number of abstract classes associated with performing financial calculations. The abstract classes include an instruments class that defines a number of financial instruments in a hierarchical manner. The abstract classes also include a models class that defines a number of objects or functions used to perform financial calculations. The program also includes an interface to allow a user to pass instrument parameters to the objects or functions and execute the object or function using the instrument parameters.
展开▼