15.01.2015 Views

4th International Conference on Principles and Practices ... - MADOC

4th International Conference on Principles and Practices ... - MADOC

4th International Conference on Principles and Practices ... - MADOC

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Provided Services<br />

Glue Code<br />

Start Macro<br />

Market Data<br />

Payment Dates<br />

Product-specific Parameters<br />

Figure 1: An Excel-based pricing sheet for defaultable zero coup<strong>on</strong> b<strong>on</strong>ds (ZCB) <strong>and</strong> credit default swaps<br />

(CDS). The sheet’s embedded butt<strong>on</strong>s trigger VBA code executi<strong>on</strong>.<br />

3.2 Prototypes as final products<br />

The pressure of short release cycles h<strong>and</strong> in h<strong>and</strong> with<br />

m<strong>on</strong>etary c<strong>on</strong>straints favour the acceptance of prototypes<br />

instead of mature implementati<strong>on</strong>s. What first started as a<br />

prototype often becomes an everyday soluti<strong>on</strong> 4 . Prototypeinherent<br />

problems c<strong>on</strong>tinue to exist for the whole life cycle.<br />

Inflexibility reduces productivity – Prototypes are almost<br />

always inflexible, hard-wired implementati<strong>on</strong>s of<br />

the underlying mathematical descripti<strong>on</strong> <strong>and</strong> models.<br />

Missing the benefits of modern software technology,<br />

even small variati<strong>on</strong>s in the financial products portfolio<br />

induce huge reimplementati<strong>on</strong> efforts. Instead of<br />

c<strong>on</strong>centrating <strong>on</strong> the creative aspects of c<strong>on</strong>tract design<br />

<strong>and</strong> supporting trading & sales, financial engineers<br />

have to struggle with hard-to-modify implementati<strong>on</strong>s<br />

that decrease overall productivity.<br />

Maintainability, extensi<strong>on</strong>s <strong>and</strong> debugging – Because<br />

of high cohesi<strong>on</strong> <strong>and</strong> str<strong>on</strong>g coupling caused by interwoven<br />

layers, the maintenance effort is huge. Local<br />

modificati<strong>on</strong>s trigger changes in the sheet, the glue<br />

code <strong>and</strong> in the underlying DLLs. Proprietary APIs<br />

<strong>and</strong> complex architectures cause time c<strong>on</strong>suming debugging<br />

cycles.<br />

Archaic Design – In the past, spreadsheet soluti<strong>on</strong>s were<br />

tied to plain C/C++ DLL functi<strong>on</strong>s. Besides design issues,<br />

a large amount of time was spent <strong>on</strong> low level programming<br />

aspects like pointers, arrays, <strong>and</strong> garbage<br />

collecti<strong>on</strong>. While the underlying C++ code may obey<br />

the c<strong>on</strong>cepts of object-orientati<strong>on</strong>, most implementati<strong>on</strong>s<br />

stayed close to an inflexible procedural design<br />

because of limitati<strong>on</strong>s in the wrapper code. Even today,<br />

design patterns (see e.g. [8]), modular design, <strong>and</strong><br />

comp<strong>on</strong>ent-orientati<strong>on</strong> are still uncomm<strong>on</strong>.<br />

Captured in proprietary soluti<strong>on</strong>s – Even without using<br />

COM or .NET, typical spreadsheet soluti<strong>on</strong>s are intrinsically<br />

tied to the Excel applicati<strong>on</strong> platform. Migrati<strong>on</strong><br />

or cross platform usage is at least limited <strong>and</strong><br />

often illusory. Although many financial instituti<strong>on</strong>s<br />

are using the Windows platform, there is a tendency<br />

4 Excepti<strong>on</strong>s of this rule exist, e.g. [7].<br />

towards open systems like Linux in combinati<strong>on</strong> with<br />

OpenOffice. The importance of cross platform soluti<strong>on</strong>s<br />

will grow in the future, making a closed-source<br />

ecosystem more <strong>and</strong> more uninviting.<br />

4. COMDECO<br />

Decreasing time to market cycles <strong>and</strong> the permanent dem<strong>and</strong><br />

for all new products increases the pressure <strong>on</strong> financial<br />

engineers. To assure a company’s market positi<strong>on</strong>, design<br />

<strong>and</strong> valuati<strong>on</strong> of derivative c<strong>on</strong>tracts have to be carried<br />

out as optimal as possible. A newcomer’s market share is<br />

enlarged when using improved workflows <strong>and</strong> already established<br />

market players are able to strengthen their share of<br />

the market. In fact, financial engineers have to face similar<br />

problems as their colleagues in the software development<br />

domain.<br />

ComDeCo [9] aims at providing techniques <strong>and</strong> c<strong>on</strong>cepts<br />

which offer a high degree of scalability, so the increasing<br />

complexity of c<strong>on</strong>tract design <strong>and</strong> valuati<strong>on</strong> can be tackled<br />

efficiently. Albeit not being a silver bullet for all kinds of<br />

problems in this domain, comp<strong>on</strong>ent-orientati<strong>on</strong> is able to<br />

provide the foundati<strong>on</strong> for optimised design <strong>and</strong> valuati<strong>on</strong><br />

frameworks. A derivative c<strong>on</strong>tract is modeled as an Active<br />

Document which is manipulable by using visual compositi<strong>on</strong><br />

gestures, e.g. drag <strong>and</strong> drop. The domain-specific<br />

framework of ComDeCo provides end-user compatible compositi<strong>on</strong><br />

facilities tailored to the dem<strong>and</strong>s of financial engineering<br />

<strong>and</strong> an adaptable valuati<strong>on</strong> architecture that is able<br />

to price almost arbitrary c<strong>on</strong>tracts. In ComDeCo’s c<strong>on</strong>text,<br />

the term “active” 5 refers to<br />

• the ability to check <strong>and</strong> enforce c<strong>on</strong>sistency c<strong>on</strong>straints<br />

for derivative c<strong>on</strong>tracts, i.e. avoid meaningless design<br />

attempts.<br />

• the ability to automatically perform c<strong>on</strong>text-specific<br />

adaptati<strong>on</strong>s, e.g. selecti<strong>on</strong> of the best-fitting valuati<strong>on</strong><br />

algorithm <strong>and</strong> model.<br />

The possibility to describe derivative c<strong>on</strong>tracts using functi<strong>on</strong>al<br />

programming languages [10] is a hint indicating the<br />

5 However, in the c<strong>on</strong>text of the generic general-purpose Active<br />

Document framework Omnia, dynamicity is discussed<br />

in a more abstract way based <strong>on</strong> the comp<strong>on</strong>ent <strong>and</strong> compositi<strong>on</strong><br />

model.<br />

155

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!