Özge Tekin, M.Sc.
Department of Financial Mathematics
July 2015, 69 pages

Supervisor: Ömür Uğur (Institute of Applied Mathematics, Middle East Technical University, Ankara)
Co-supervisor: Yeliz Yolcu Okur (Institute of Applied Mathematics, Middle East Technical University, Ankara)


There are many applications in finance and investment that require the use of methods, which involve time-consuming and laborious iterative calculations. Although closed-form solutions are available for some specific instruments, the valuation methods used in financial engineering in many other situations require analytical methods, which compute approximate solutions on computing environments.

Option pricing is one of the most important and active topics in financial engineering, and there are many fundamental methods for numerous different type options in literature as well as in the derivative market. Close investigation of options shows, besides the underlying parameters, significant relation and similarities, even inheritance, such as options on options. On the other hand, investigation of the valuation methods reveals the use of similar fundamental algorithms, such as Monte Carlo technique or solving the corresponding partial differential equation.

Therefore, a software environment for pricing financial derivatives should be as flexible as possible to modify and extend the options as well as methods for pricing them. Object-oriented principles and modeling techniques, which contains analysis, design and implementation, have to be utilized for such a goal. After having analyzed options and pricing methods, the classes and subclasses to design a hierarchy that forms the structure of those options and methods are to be organized. As the relation between classes is so tight that each individual unit, objects, must be qualified to sending or receiving information to other objects while being responsible for their own work. Many modern object-oriented programming languages are transferable from one to another. Hence, \matlab{} is preferred in this study as it provides numerous built-in functions and is a very suitable platform to develop OOP based softwares.

Keywords: Object-Oriented Programming, Monte Carlo Methods, Option Pricing