The clauses of convertible securities can be so complex that their accurate treatment not only necessitates pricing engines as evolved as ours, but also requires referring to the prospectus as the only reliable and complete source of information.
For this reason, we maintain a continuously evolving database schema for the terms and conditions of convertible securities. Each time we add a new feature to our pricing engine (after some newly released prospectus), we release the updates of both the pricing engine and the data model.
Terms and conditions can be edited through a graphical user interface, as shown in Figure 1, and stored in the database. The user can also create and define terms and conditions for new issues of convertible securities.
The data model of Opscore covers convertible bonds, mandatories, equity options and CB callable asset swaps as shown in Figure 2. Terms and conditions of credit default swaps (CDS) are also handled, as they are needed for the calibration of the default component of the equity-to-credit process.
This is the heart of Opscore and the core of our expertise. The pricing engine is the numerical solver of the equity-to-credit Partial Differential Equations (PDE) with the terms and conditions of the given derivative instrument acting as boundary conditions. Our implementation relies on the most advanced finite difference schemes. These schemes include computational grids that adapt in order to best capture the events, whether in time or space, that occur during the lifetime of the specific instrument.
Inputs to the pricing engine are the terms and conditions of the instruments involved in the pricing, market data (yield curves, stock spot price and FX rates), market assumptions (dividend forecast and recovery rates for each instrument involved on pricing and calibration) and the theoretical parameters (Brownian volatility, hazard rate) which are inferred from the calibration routines, themselves an integral part of the pricing engine.
Programmed in C++, the pricing engine can be exploited as a separate suite of DLLs (Dynamic-Link Libraries) which the user may wish to integrate into his/her exisiting system, independently of the database schema of Opscore or the Excel functionality. To this end, COM, Java and C++ interfaces are available. The DLL can also be called from Matlab. The client, therefore, can choose between integrating our DLLs into his/her system or relying on us to maintain the database schema.