2020/08/21 by Samuel N. Cohen, Christoph Reisinger, Sheng Wang · 1 citation
Economics, Econometrics and Finance · #q-fin.PR #q-fin.CP #msc:91G20 #msc:90C90
paper · pdf · doi:10.1080/1350486x.2020.1846573
Our implementation of this algorithm in Python is available in the repository https://github.com/vicaws/arbitragerepair
arxiv created 2020/08/21 · arxiv updated 2021/08/24
Option price data are used as inputs for model calibration, risk-neutral density estimation and many other financial applications. The presence of arbitrage in option price data can lead to poor performance or even failure of these tasks, making pre-processing of the data to eliminate arbitrage necessary. Most attention in the relevant literature has been devoted to arbitrage-free smoothing and filtering (i.e. removing) of data. In contrast to smoothing, which typically changes nearly all data, or filtering, which truncates data, we propose to repair data by only necessary and minimal changes. We formulate the data repair as a linear programming (LP) problem, where the no-arbitrage relations are constraints, and the objective is to minimise prices' changes within their bid and ask price bounds. Through empirical studies, we show that the proposed arbitrage repair method gives sparse perturbations on data, and is fast when applied to real world large-scale problems due to the LP formulation. In addition, we show that removing arbitrage from prices data by our repair method can improve model calibration with enhanced robustness and reduced calibration error.