Financial Model Validation Consulting and Advisory Services

Are you looking for model validation consulting or advisory services? Our PhD quants have you covered! We provide model validation and model creation consulting services to the financial services industry including banks, hedge funds and trading firms. Contact us to learn more.

Mathematicians have an ability to think clearly and precisely that is rare among finance professionals. We’re excellently placed to provide model validation consulting services. Learn how I found a critical conceptual error in risk modelling work by one of the largest financial consulting firms in the world.

There are two main kinds of models that quantitative analysts are called on to validate in the financial services: derivative pricing models, and risk models. And of particular interest currently is finding the right balance between automated and manual model validation.

Validating derivative pricing models

Much of derivative pricing theory is now pretty standard and well-worn. However, there are some choices to be made when validating the appropriateness of the choice of model.

Firstly, there’s the choice of whether to use a computationally slower but more accurate numerical model (such as Monte Carlo, local volatility or stochastic volatility), vs a fast but approximate analytical model. This choice arises with Asian option, where a fast analytic method is known (method of moments), but makes the assumption that the sum of lognormal distributions is lognormal (which is not actually true). Similarly, there exist analytic Black-Scholes formulae for pricing barrier options. However, these models assume that volatility and interest rates are constant. Since volatility term structure has a huge impact on the valuation of barrier options, these models sacrifice a lot of accuracy for speed and simplicity. Whether the trade off is worth it can depend on whether the model is being used to risk purposes (such as a market risk VaR calculation), or front office pricing.

Another issue that arises is the choice of volatility input. Since exotic options are typically not liquid enough to allow for the construction of an implied volatility surface, the use of the European volatility surface must be justified somehow.

Once a model is chosen, there is often no question, in principle, of how to price the derivative. Validating derivative pricing models is thus often mainly about checking the correctness of the coding implementation. A standard way to do this is to build a second, independent model against which to compare the output of the original model. Since it’s impossible to run the two models with all possible inputs, usually one would try to generate a set of test parameters which cover every significant discrete case, such as each possible ordering of date parameters and date coincidence. Another important step is to compare the behaviour of the model to the product description, as just because the two models agree does not necessarily mean they are correctly implementing the intent in the product description. Another important step is to check boundary cases, such as pricing very close to a barrier, very far from a barrier, or after knock-out/knock-in (in the case of barrier options).

An important step is checking the model under stressed scenarios, including very low or very high volatility, and near-zero or negative rates.

However, not all derivatives can be priced with a well-known and standard method. Monte Carlo and other numerical models can require careful work to ensure the model is converging correctly under all circumstances. Custom derivatives can arise which require some ingenuity to price. Examples like high-dimensional derivatives with a large number of underlying assets can require novel mathematics to price, as standard methods are simply not fast enough on current computer hardware. In some cases, pricing early exercise optionality is mathematically non-trivial and/or computationally challenging. As mathematicians, we’re excellently placed to help you price these bespoke derivatives.

See also our derivative pricing consulting services.

Validating risk models

We can build and validate financial risk models including operational risk, market risk and credit risk.

In some cases such as market risk, there are industry standard methodologies (see also our market risk consulting services). However, there are still key choices to be made such as whether to use filtered historical simulation, where data may be weighted by recentness, or adjusted for volatility. One must also decide whether to use absolute or relative shifts, what historical period to use for shift generation, and what time horizon to use for shifts (eg 1 day or 10 day).

For market risk calculations for fixed income products, conceptual pitfalls can arise around calculating shifts in credit spreads (eg bond Z spread). These kinds of subtleties are often missed by the major financial consulting firms, who lack the rigorous mathematical thinking required to detect these errors.

In other cases, such as operational risk, there is no standard approach and much more room for creativity.

Looking for an external model validation consultant? Please get in touch to discuss how we can meet your needs.

Derivative Pricing Consulting and Advisory Services

Financial derivative valuation requires advanced mathematical skills, coding ability, and financial experience.

Whether you’re looking for a single algorithm or sizable software development, we offer professional cloud-based PhD derivative pricing consulting and advisory services, including

  • Equity derivatives
  • FX / Forex derivatives
  • Interest rate derivatives
  • Convexity corrections for swaps and FRAs
  • Asian options, barrier options, local volatility models and exotic derivatives
  • Bitcoin and cryptocurrency derivatives
  • Calculation of equity and interest rate volatility surfaces from market data
  • Calculation of greeks including delta, gamma, vega and theta.
  • Adjoint algorithmic differentiation for fast Monte Carlo greeks

We write code scripts or design derivative valuation software to price everything from vanilla options to the exotic derivatives, including:

We use a variety of derivative pricing methods including Monte Carlo, Black-Scholes, Finite Difference, and Longstaff-Schwartz. For interest rate derivatives, see the SABR volatility model.

Also check out our article on converting volatility surfaces from moneyness to delta using an iterative procedure.

Need a cloud-based PhD quant to solve all of your derivative pricing problems? Contact us today!

Algorithmic Trading Consulting Services

Use the power of Mathematics and Statistics to backtest and optimize your trading strategies against historical data.

Automate your trading strategies with C++/python code to interact directly with the exchange

Ask us how our PhD consultants can help you utilize AI and machine learning in your trading strategies.

Do you have an idea for a trading strategy, but want to prove that it will work through backtesting against historical data? Or do you have a successful trading strategy but want to optimize the parameters of the strategy to maximise returns?

Or perhaps you’ve heard about machine learning and would like to find out how you could incorporate it into your trading. Machine learning can be used to trawl through large amounts of data looking for statistically significant signals to use in your trading. It can also be used to determine the optimal way to combine a number of possible signals or ideas into a single algorithm.

We provide cloud-based PhD quant support for traders. We offer trading algorithm development services for equity and FX markets on all major exchanges. We also offer bitcoin and cryptocurrency algorithmic trading services on major exchanges like Binance and Bitmex.

Our consulting services for algorithmic trading include:

  • Backtesting of strategies, strategy optimization and statistical analysis
  • Automating algorithms (trading bots) in languages like C++ and python
  • Applying machine learning techniques like neural networks to trading
  • Developing statistical arbitrage strategies
  • Processing and analysis of large amounts of data to search for trading signals.
  • Pricing of vanilla and exotic derivatives
  • Mathematical and statistical research projects
  • General quantitative analysis – see our main page Quant Consulting.

For some more examples of applications of mathematical algorithms to trading, see this page.

Individual traders and smaller financial institutions may lack the quantitative expertise to design or implement trading algorithms, which involves elements of coding, mathematics, statistics and data analysis. Quantitative finance is a field where complex mathematics thrives, so that even sizable firms may wish to undertake projects which are beyond their in-house mathematical expertise. In particular, many firms are interested in dipping their feet into machine learning trading techniques, but lack the necessary internal resources.

Our staff of experienced mathematical researchers can solve sophisticated quantitative problems efficiently, and communicate the results clearly to professionals of all backgrounds. We specialize in advanced mathematical and statistical analysis, and we love a challenge! We can explain and implement the results of sophisticated academic papers and turn them into practical outcomes for your business.

Want to learn more about how cloud-based quant support can supercharge your trading? Contact us today for a frank discussion about the merits of quantitative (or algorithmic) trading.

For examples of the applications of algorithms to trading, see our article on optimal execution algorithms, our article on market making, or our article on algorithms to take advantage of order imbalances.

If you’re just getting started with algorithmic trading, check out our introductory guides to algo trading on various exchanges.

For some examples of backtesting and optimizing trading strategies, take a look at the following articles.

Optimal Execution in Algorithmic Trading

Our PhD quant consulting service can canvass the academic literature on trade execution modelling for you, and help you design, backtest and optimize your execution strategy. Contact us to let us know how we can supercharge your trading.

Individual investors who only trade in small volumes may not need to consider an execution strategy. But institutional investors who wish to trade a large number of shares, such as investment banks, hedge funds and mutual funds, encounter the issue that large trades cause adverse price movements. If they attempt to trade the whole amount in one go, liquidity will thin out and they’ll quickly move through less and less favorable bid/ask levels in the limit order book. For this reason, traders will often attempt to split large orders into a series of smaller trades over a period of time. But there are trade offs to a more passive execution strategy. Firstly, there is the opportunity risk that prices will move unfavorably before you liquidate the whole order. Secondly, other traders may notice what you are doing and react accordingly.

Electronic exchanges typically make available not just the best bid and ask prices for a given security, but several layers of bid and ask prices along with the corresponding volumes. This data, known as “market microstructure”, is exactly what we need to inform algorithmic trading algorithms which attempt to optimize execution.

In this article, we’ll explore some of the mathematics around algorithms which optimize execution strategies.

Simple execution models

We first discuss two simple and well-known approaches to order execution, before examining more sophisticated approaches.

TWAP, or Time Weighted Average Price, involves splitting an order into equally sized pieces that are equally spaced in time. When breaking the order into N pieces to be executed over a time T, a fraction 1/N of the order is executed every 1/T seconds. The idea is that the liquidity in the market has time to recover in between orders, avoiding slippage. The price achieved is simply the average of the N prices at each execution.

VWAP, or Volume Weighted Average Price, also breaks the order up into multiple orders spaced at regular time intervals. It differs from TWAP in that the amount transacted at each time step is weighted according to the relative trading volume. Relative trading volume must be judged by using an average over many days in the historical data, and one must assume that the daily trading pattern is persistent. The price achieved is then a weighted average of the N prices at each execution.

POV, or Percentage of Volume, is similar to VWAP except that instead of using historical average volume, the volume over the last say, ten minutes is used. This has a clear advantage if today’s volume could differ substantially from the historical average.

One could improve on both VWAP and POV by both making use of today’s volume data, while still incorporating the historical volume trend to allow you to forecast volume later in the day. More precisely, at each time step the amount remaining to be traded would be apportioned using the most recent volume data for that time step, and the historical forecasted volume for the future timesteps. To get even more fancy, you could try to adjust the historical forecast based on the actual volume traded thus far today – a machine learning algorithm would be great here.

However, the main advantage of these three models is in their simplicity. They are not generally optimal, and their application can potentially be detected by other market participants.

More complex models

A good place to start in exploring more sophisticated execution models is the Almgren-Chriss model. While the model relies on some data that may be difficult to know in practice, it illustrate some of the key issues that should be understood when developing your own personal strategy. See our article on optimal liquidation using the Almgren-Chriss model.

Optimal execution as an optimal stopping problem

The problem of optimally executing a large trade can be cast as one of a familiar class of problems in mathematics – optimal stopping problems.

  • Optimal stopping problems in mathematics are are a category of problems where, at any time \(t\), you can choose to “stop”, and receive a certain reward which changes with time. The trouble is you only know what the reward is for the current time and earlier times. You do not know what the reward will be in the future. Should you “cash in your chips” now, or wait, and hope the reward will be better in the future?

The relevance to finance here is obvious. Choosing when to execute trades or exercise an American option are both examples of optimal stopping problems.

Optimal execution using stochastic control theory

In the book Algorithmic and High Frequency Trading by Cartea et al., the authors describe the use of stochastic optimal control and stopping methods to attack this problem.

  • Control theory is a field of mathematics that has applications to a wide range of engineering problems. Abstractly, the concept is to find a given “input” to a dynamical system to achieve a desired “output” from the system. A simple example is cruise control, in which the throttle (system input) must be dynamically adjusted to achieve the desired constant speed (system output), for example, when the car begins going uphill. In the case of finance, the dynamical system is typically a stock price \(S(t)\) (typically assumed to follow geometric Brownian motion) or other market information, the system input is the choice of trading strategy, and the system output is the profit of the market participant. The goal is to choose the strategy or “input” which maximises profit.
  • Stochastic control theory is a subfield of control theory in which the time evolution of the dynamical system is not completely determined by the system input, but also contains a stochastic or probabilistic element. Financial applications of control theory obviously fall squarely into this category, since market behaviour such as stock prices are not determined solely by the actions of a single market participant, but have a very significant random element.

Finding an optimal strategy or algorithm for market interaction is a problem the arises across a wide range of trading and investing problems. Many of these problems can be cast as stochastic control problems.

Optimal execution using machine learning

Another possible approach to the optimal execution problem is to put to one side attempts to find an optimal theoretical solution, and allow algorithms to trawl through the vast quantities of freely available data and try to determine an effective strategy empirically.

The primary function of such an algorithm would be in estimating the likely shape of the order book. Optimal execution strategies depend critically on how trade volume is distributed among different bid/ask levels. This is because it is this that determines how fast the price will move as you liquidate increasing amounts of inventory. Since the order book data may often be unknown or partial, various machine learning approaches could be effective in developing an empirical model of the order book. The algorithm would analyse how past trades of various sizes affected the top of the order book (taking into account, of course, how closely spaced the trades were in time).

Machine learning is increasingly in vogue in a wide range of fields, including finance. See this useful summary of a report issued by J.P.Morgan about the future of data science and big data in the financial services industry.

In their paper Reinforcement Learning for Optimized Trade Execution, Nevmyvaka et al. examine the effectiveness of machine learning in finding effective execution strategies. See also the more recent paper Double Deept Q-Learning for Optimal Execution by Ning et al.

The execution strategy to be optimized will take as input, at regular time intervals \(t_i\) for \(i=0,\ldots,n\) , a set of observable market variables (principally market microstructure). It produces as output a limit order, or ask price, at which we are willing to execute all remaining inventory. The algorithm may not wait around forever for the best possible price – so it is reasonable to assume that there is a maximum time \(t_n = T\) at which all remaining inventory must be executed regardless of market prices.

By taking a large number of different stocks, and by considering the same stock at different times, we have a large number of data sets of the form \(S(t_i)\) for \(i=0,\ldots,n\). Our execution strategy must depend on time, because as we near the end of the interval, we are running out of time to transact the remaining inventory. As mentioned in the paper by Nevmyvaka, it’s reasonable to make the Markovian assumption that the optimal strategy depends only on market microstructre at the current time step, and not on what it may have been at previous time steps. Thus, whether proceeding by machine learning or by some other method, determining the optimal execution strategy for each step can be done by working backwards from the final time step, in a similar manner to how one prices an American option using Monte Carlo. At time \(t_n = T\) we already know what the strategy is – we must execute all remaining shares regardless of market prices. At time \(t_{n-1}\), for each individual data set we would like to execute at time \(t_{n-1}\) any shares that can be executed at a price equal or better than they could be at time \( T \). The machine learning algorithm must determine, on average after considering all the data sets, what is the optimal map from the market microstructure (bid/ask levels and volumes) to a price at which we are willing to transact at that time step. Continuing to work backwards, we eventually come up with an optimal strategy at each step.

The question remains – what kind of relationship should we assume between the market microstructure and the optimal transaction price at the same time step? We might, with some careful thought, make a guess as to the form of the mathematical function, so that the machine learning algorithm can optimize the parameters. Another option is to use a neural network which may succeed in finding the form of the relationship by itself. Experience shows that making little effort and expecting a machine learning algorithm to work magic is not always successful. Guiding the process using human theoretical insight and human empirical observation, and then using machine learning techniques to merely to optimize, will often yield the best results.

3D Reconstruction of Faces and Objects

3D reconstruction is the process of capturing the 3D shape of a real world object. The algorithm may take as input one or more depth maps of the object, possibly from different angles. Alternatively, the algorithm may be provided only with 2D images or 2D video and asked to infer the depth coordinate. The algorithm must then generate a smooth and accurate representation of the 3D object. 3D facial reconstruction is especially difficult because humans have evolved to detect even very slight differences in facial structure.

3D reconstruction is an active field of research with many applications in computer graphics and animation, medical imaging, robotics, landscape and vegetation scanning (including LiDAR), facial recognition and cybersecurity.

Many difficult and interesting mathematical problems arise when trying to capture digital representions of 3D objects. Firstly, the process of 3D scanning itself gives rise to a number of issues including dealing with sensor accuracy limitations and noise, including reflective or transparent surfaces. Some existing solutions require very expensive scanners, and thus there is scope for researching solutions that use only inexpensive and widely available equipment, such as a smartphone.

Once a depth map has been captured there is the problem of deciding how to combine multiple depth maps or images into a single coherent representation, and how to interpolate between data points in the point cloud to yield a smooth and accurate representation of the original object. Furthermore, algorithms are often computationally intensive which renders them useless for real time applications. Designing efficient yet effective algorithms for real time 3D reconstruction is therefore an even more difficult problem.

Computer vision researchers at the University of Nottingham have developed an algorithm which uses machine learning / AI (in this case, a neural network) to reconstruct a 3D face model from a single 2D photograph.

Another research team have created accurate facial reconstruction technology using video captured from a smart phone.

Interested in developing 3D reconstruction technology for your industry? Our research consultants are excited to collaborate with you to develop 3D vision algorithms for all your applications.

Financial Algorithm Consulting Services

Are you a financial services firm interested in developing algorithms to take your business into the 21st century?

We’re a cloud-based consulting firm who develop custom-built financial algorithms in languages like C++, python and VBA.

What is an algorithm?

Broadly speaking, an algorithm is a process that can be carried out by a computer, usually with efficiency, accuracy and comprehensiveness that cannot be matched by a manual process. Algorithms typically take in a set of inputs or data sources, perform calculations, and output useful business information.

What kinds of financial services firms can benefit from algorithm tech?

Algorithms and automation are now touching all corners of the finance ecosystem including banking, investing, trading and insurance.

What are the benefits of algorithms in finance?

Algorithms allow businesses to

  • Automate calculations and processes so they can be carried out much more quickly and without costly human labour
  • Carry out sophisticated calculations involving large amounts of data from multiple sources that are unmanageable for humans
  • Succeed at time-sensitive applications where human analysis and decision making is too slow, such as trading, and especially high frequency trading of course
  • Provide online calculators to generate customer quotes and assessments on-demand
  • Analyse data to provide valuable business insights and drive decisions

What are the applications of algorithms in finance?

  • Calculating risk
  • Pricing insurance
  • Making investment decisions
  • Trading and execution

A significant example is a volatility smoothing algorithm.

Algorithmic trading

For information and services relating to algorithmic trading, see our main article Algorithmic Trading Consulting Services.

What’s all this about machine learning?

Machine learning, a subcategory of data science, represents an exciting range of techniques where an algorithm can use data to optimize it’s behaviour. This includes:

  • When is the best time to buy/sell stock
  • Which customers are most likely to default on loans or make insurance claims
  • Which transactions should be flagged as suspicious
  • Which economic variables impact profitability

Interested in taking your business up a technological notch with financial algorithms? It’s as easy as Contacting Us.

In fact, financial algorithms are only one of a wide range of quantitative services we provide to the financial services industry. Be sure to check out our main page Quant Consulting.

Hire a Freelance Quantitative Analyst

Looking to hire a freelance quantitative analyst to augment your team? Interested in learning about the benefits of working with freelancers?

We offer sophisticated cloud-based quant services including:

Learn how I bested one of the top four financial firms at risk modelling.

Do you require the skills of a quantitative analyst in your team, but not permanently or not full time? In the modern interconnected world, our cloud-based quant consulting service is the ideal solution.

We provide sophisticated, on-demand quantitative analysis to trading firms, banks, and managed funds, big or small.

Contact us to learn how our expert quantitative skills can augment your business.

Learn more about our quant consulting services.

Hire a Freelance Algorithm Developer

Looking to hire a freelancer to work on your next algorithm development project? Interested in learning about the benefits of working with freelancers?

We combine PhD level mathematics expertise with expert coding skills in a wide range of languages. Furthermore, we have solid industry experience in mathematical algorithm development. We’re perfectly positioned to assist professionals in a wide range of industries as their fields become increasingly technical from a mathematical and computational perspective.

Global internet communications, the explosion of knowledge in the 21st century and the ever increasing specialization it entails means freelance consultants are a powerful new way to augment your business. According to Morgan Stanley, the freelance economy could represent more than 50% of the US working population within ten years. And as mentioned by the Financial Review, freelancers can increase a firm’s talent agility while reducing costs.

We can design all kinds of mathematical algorithms including:

Learn more about our algorithm consulting services.

Derivative Pricing Consulting – the Longstaff-Schwartz Method using Machine Learning and Optimization Techniques

Interested in pricing callable or early exercise derivatives using the Longstaff-Schwartz method? Our consulting service can design and implement a Longstaff-Schwartz algorithm to meet your specific needs, in languages like C++ and python. Learn more about our derivative pricing consulting services.

\(\)In this article we’ll make some interesting observations concerning the well-known Longstaff-Schwarz method for pricing derivatives. Specifically, we’ll look at how to determine an optimal function fitting or regression approach. Most interestingly, we’ll see that one can actually do away with function fitting altogether (!) and apply machine learning and optimization techniques in its place.

In the famous paper of Longstaff and Schwarz, the authors introduced an approach for pricing derivatives that allow for early exercise using Monte Carlo. This includes a vanilla American option and also more complicated exotic options. Their method dramatically reduces the number of paths required by assuming that the relationship between the value of the underlying (or underlyings) and the expected value of continuing (that is, not exercising yet) can be described by a smooth function. In their original paper, they illustrated their method by fitting a quadratic polynomial. This raises the question of what function fitting method should actually be used. What order polynomial should be chosen? Should a more sophisticated non-parametric fitting method be chosen which doesn’t require knowing in advance what kind of function to choose?

We’ll start with a brief recap of the Longstaff-Schwarz method.

Consider pricing an a American call option with expiry \(T\). At any earlier time \(t_0\), the value of exercising the option depends on the current underlying asset price as shown in the following graph.

This graph also gives you the fair price of the option at expiry \(T\). We consider that the option can be exercised at a set of time steps \(t_0, t_1, t_2,…,t_n = T\).

Since Longstaff-Schwartz is a Monte Carlo method, we begin by generating a large number of possible future paths for the underlying asset. We can price the option by finding the average payoff over all the asset paths. The complexity comes from the possibility of early exercise, which requires that we determine where it is optimal to exercise for each path. Once we know at which time step a given path will be exercised, the payoff for that path is simply the exercise value at the time step where it is exercised.

  • Assuming a given path reaches time \(t_n = T\) without being exercised, it is trivial to determine whether we will exercise based on whether the price is above the strike price or not.
  • At \(t_{n-1}\), we assume the option has not yet been exercised, and we have to determine whether to exercise at this step for each path. To do this we compare the value of exercising at this step with the expected value of not exercising
  • We can iterate the procedure to determine whether we will exercise earlier at time \(t_{n-2}\). Continuing to iterate, we eventually get back to \(t_0\), having determined for each path the earliest time step where it is optimal to exercise.

So pricing a derivative with early exercise comes down to determining, for each path, the expected value of continuing at each time step.

In the graph below, each blue dot represents one of the paths at some given time step \(t_i\). The horizontal axis shows the payoff from exercising at this time step, and the vertical axis shows the value of continuing based on the known future trajectory of the path. This is the value of exercising at the earliest future time step where we have determined that it is optimal to exercise. But since we wouldn’t normally know the asset path at future time steps, we need to work out the expected value of continuing.

An obvious way to do this would be to generate, for each path above, a large number of future trajectories for that path to find the expected value of continuing. But then the number of paths would grow exponentially at each time step.

The insight of Longstaff and Schwartz was that we can assume that the expected value of continuing is a smooth function of the asset price. This function can be found using some kind of function fitting or regression technique on the data in the above graph. It turns out that the least squares fitting of a set of vertical points is exactly their average. This means that regression can be viewed as a kind of average which is able to utilize paths at nearby x-values, so we do not need an inordinate number of points vertically above every asset value. The graph below shows a function fitted to the data above.

In their original paper, Longstaff and Schwartz considered using least squares to fit a simple polynomial to the data. However, the literature on function fitting is vast, and a practitioner needs to consider which method to adopt. Since a function must be fitting at each of a potentially large number of time steps, the computational efficiency of the method becomes important. This becomes even more critical when one considers the multidimensional case for basket options with more than one underlying. In this case, we must fit a function of multiple variables. Of course, one also then encounters the curse of dimensionality.

Polynomial fitting has a number of drawbacks. Firstly, a polynomial may not be the appropriate choice for some data sets. Second, you have to decide in advance what order polynomial to choose. If the order is too low, the function will not be able to fit the data. If the order is too high, it suffer from overfitting.

Another approach is to use non-parametric regression methods. For example, local linear regression fits a polynomial only locally, using only points within some “bandwidth” to do the fitting. The fitting can also be weighted so that points further away have less contribution. This is the method used to generate the graph above. However, determining an appropriate bandwidth does give rise to a similar issue to the polynomial case. If the bandwidth is too large, you will miss important function features. Too small, and you will overfit.

The efficacy of different function fitting techniques, particularly non-parametric techniques, is an interesting question. And in considering this question one would examine both the accuracy and the computation time of these methods. But as we’ll see in this article, in considering this one is lead to an even more interesting question – do we need to fit a function at all? Can we simply use optimization and machine learning techniques to determine when it is optimal to exercise?

To see why, let’s start by placing the value of exercising and the our fitting function representing the value of continuing on the same graph.

Remember that the only piece of information used in pricing is whether we are going to exercise at this time step. This in turn depends only on whether the fitted function, representing the expected value of continuing, is above or below the exercise value. In the above graph, if the asset has price around 100, it is optimal to continue (not exercise). But once the asset price passes about 122, a slightly higher average payoff comes from exercising now rather than continuing. Thus, if we know that the value of continuing is above the value of exercising on the left hand side, and “crosses over” at about 122, then we have all the information we need to price the option. The exact shape of the blue fitted function is entirely irrelevant beyond that.

This raises a very interesting question. Do we need to fit a function at all?

In the graph below, we introduce a new function labelled “linear fit”. This is a straight line that has been determined using an optimization method. Precisely, for our candidate function \(f(x)\), we have maximised the sum over all paths \(p_i = (x_i,y_i)\) of the following:

\[V(f) = \left\{\begin{array}{lr} y_i, & \text{if } f(x_i) > E(x_i)\\ E(x_i), & \text{if } f(x_i) \leq E(x_i) \end{array}\right\} \]

Here, \(E(x)\) is the function representing the value of exercising for asset price \(x\).

Actually, we first did a linear regression to come up with a rough initial approximation to use as a rough initial point for the optimization procedure. But this line has been fitted by optimization, not by regression. Note that the optimization procedure has succeeded in finding the exact crossover point at 122 of the much more sophisticated non-parametric fitting. And although a poor fit for the data, the linear fit is above and below the exercise value in exactly the right regions, so it makes exercise decisions perfectly.

So it seems like we can dispense with function fitting! The only piece of information we need are the places where the value of continuing “crosses over” the value of exercising (combined with knowing whether it is above or below in at least one region)

It’s clear that our optimization procedure will work splendidly whenever there is only one crossover point. What is there are many crossover points? One option is to use an optimization procedure to find a higher order polynomial to serve as our decision surface, as in the below illustration. We would need a polynomial of order equal to the number of crossovers.

But do we need to bother with a function at all? It does offer one advantage – the ability to use a polynomial regression to generate a rough initial point for the optimization procedure. But the astute reader will notice that what we are looking at here is really a classification problem, not a function fitting problem at all. The information we are really trying to extract is the following:

In the higher dimensional case where there is more than one underlying, the cross-over points are not points, but hypersurfaces. In the case of two underlyings for example, the cross-over boundary consists of one or more curves in the plane. Let’s consider what this would look like in the two dimensional case where there are two underlying assets to the derivative:

Here, each red “x” represents a data point where the value of exercising is greater than the value of continuing. Each blue “o” represents a data point where the reverse is true. Our task is to come up with the decision boundary which most accurately “classifies” the points into exercise vs continue. But this is looking exactly like a classification problem from machine learning! In particular, this problem is looking exactly like the sort of problem one can solve using a support vector machine (SVM)!

For the moment, we’ll leave this exploration there. Hopefully the reader has become convinced that there are some exciting possibilities for applying machine learning and optimization methods to the pricing of derivatives using the Longstaff-Schwartz method. Except, since we have dispensed with function fitting entirely, I’m not sure we can call this the Longstaff-Schwartz method anymore! Whatever it’s called, it’s an intriguing new approach to pricing derivatives with early exercise using Monte-Carlo. It would be interesting to conduct a study of these new methods and how they compare to a more conventional Longstaff-Schwartz approach.

Interested in developing code to price derivatives with early exercise? We offer derivative pricing consulting services, and a wide range of general quantitative analysis consulting services.

Monte Carlo Risk Model Development

Looking for PhD level Monte Carlo risk models for your business? We design and develop high quality Monte Carlo models in languages like python, C++ and VBA. Contact us to learn how we can help your business.

The key concept behind the Monte Carlo method is to model risk or profit by generating a very large number of future paths or outcomes. It is a conceptually simple, flexible and very powerful approach to solving mathematics which would otherwise be very difficult or impossible. And with the power of modern computers, it’s pragmatic as well.

In the financial services industry, Monte Carlo risk models have extensive applications including:

  • Market risk simulation of value at risk, calibrated to historical market data
  • Operational risk calculations, in particular aggregating lognormal distributions to calculate diversification benefit
  • Modelling and optimizing portfolio returns
  • Pricing exotic financial products and derivatives

However, risk is something that must be estimated and managed across a wide range of industries. Monte Carlo risk models are also used in a range of other industries including telecommunications, electric, and oil.

When dealing with distributions, there typically is no manageable formula to describe their many combinations. This situation frequently arises when trying to aggregate multiple risks which are not normally distributed. In other situations, the relevant distributions are not known at all and must be entirely simulated. Monte Carlo risk models are the ideal approach all but the simplest models.

In addition to developing custom-build Monte Carlo risk models, we provide a wide range of cloud-based quant consulting services, market risk advisory, and more generally, diverse mathematical modelling, research and software development services.

Are you interested in developing a Monte Carlo model to estimate risk for your business? Our mathematicians will provide you with an industry-leading solution. Contact us today.