Verification of Risk Algorithm Implementations in a Clearing System Using a Random Testing Framework

Detta är en Master-uppsats från Umeå universitet/Institutionen för matematik och matematisk statistik

Författare: Mikael Vahlberg; [2017]

Nyckelord: ;

Sammanfattning: Clearing is keeping track of transactions until they are settled. Standardized derivatives such as options and futures can be cleared through a clearinghouse if you are a clearing member. The clearinghouse step in as an intermediary between trades and manages all occurring counterparty risk. To be able to keep track of all transactions and also monitor members risk exposure a clearinghouse use advanced clearing software. Counterparty risk is mainly handled by collecting collateral from each clearing member, the initial collateral that a clearinghouse require from a member trading with derivatives, is called initial margin. Initial margin is calculated by a risk algorithm incorporated in the clearing software. Cinnober Financial Technology delivers clearing solutions to clearinghouses world wide, software providers to the _nancial industry have high demands on software quality. Ensuring high software quality can be done by performing various types of software testing. The goal of this thesis is to implement an extendable random testing framework that can test risk algorithm implementations that are part of a clearing system under development by Cinnober. By using the implemented framework, we aim to verify if the risk algorithm SPAN calculates fair initial margin amount. We also intend to increase the quality assurance of the risk domain that is responsible for all risk calculations. In this thesis we implement a random testing framework suitable for testing risk algorithms. Furthermore, we implement a framework extension for SPAN that is used to test the SPAN algorithm's initial margin calculations. The implementation consist of two main parts, the _rst being a random generation entity that feeds the clearing system with randomized input data. The second part is a veri_cation entity called test oracle, it is responsible for verifying the SPAN algorithm's calculation results. The random testing framework for risk algorithms was successfully implemented. By running the SPAN extension of the framework, we managed to _nd four issues related to the accuracy of the SPAN algorithm. This discovery led to the conclusion that the current SPAN algorithm implementation does not calculate fair initial margin. It also led to an immediate increase of quality assurance because the issues will be corrected. As a result of the frameworks extensible characteristics, long term quality also increases.

  HÄR KAN DU HÄMTA UPPSATSEN I FULLTEXT. (följ länken till nästa sida)