PricingLab

Basket option: two assets

PricingLab by Raganel Consulting, powered by MatLogica AADC

What it values

A basket option pays out on the combined value of several assets rather than one. This model prices a call on an equally weighted basket of two assets: at expiry it pays the amount by which half of asset 1 plus half of asset 2 ends above the strike. Because the two assets do not always move together, the basket swings less than the average of the two, so the option costs less than half a call on each asset. How much less depends on the correlation between them. The model returns the price and how it moves with each asset’s price (delta 1 and delta 2), with asset 1’s volatility (vega 1) and with the interest rate (rho).

Who uses this kind of number

Equity and multi-asset derivatives desks, structurers who build notes on baskets of shares or indices, investors hedging a portfolio with one option instead of several, and risk and validation teams checking dealer quotes.

Inputs

NameUnitDefaultMeaning
spot_1price100Current price of asset 1
spot_2price100Current price of asset 2
strikeprice100Strike on the basket (0.5 × asset 1 + 0.5 × asset 2)
vol_1fraction/yr0.20Volatility of asset 1
vol_2fraction/yr0.25Volatility of asset 2
correlationfraction0.5Correlation between the two assets
ratefraction/yr0.05Risk-free rate, continuously compounded
maturityyears1.0Time to expiry
n_pathscount262,144Monte Carlo paths (262,144 at most on the free hosted service)

Every input has a supported range; describe_model lists it. Any input you leave out takes its default.

Outputs

How the sensitivities are computed

The model simulates the two asset prices together, day by day, with the chosen correlation, and pays the call on the basket at expiry. All four sensitivities come from that same run, in one forward pass and one backward pass over the calculation (adjoint algorithmic differentiation).

How they are checked

Against bump-and-revalue. The check_against_bumping tool nudges each input up and down, re-prices on the same random paths, and reports the gaps. Measured on 5 November 2026 at the default inputs, 262,144 paths, on two cores of an Intel Xeon 8280L:

SensitivityOne passBump-and-revalueGap (relative to the largest sensitivity)
delta_10.3131710.3131710.000001%
delta_20.3235260.3235260.000001%
vega_115.8882615.888240.00005%
rho53.410053.41030.0005%

All agree within the 2% tolerance the check applies. The one-pass calculation took 975 ms; bump-and-revalue needed 8 valuations and took 4,797 ms.

Against an independent pricer. There is no exact formula for a basket option, so the price is compared with QuantLib, the open-source pricing library. Its Monte Carlo basket engine (400,000 samples) gives 10.2737 ± 0.0228 for the default option; this model gives 10.2596 with 262,144 paths, inside that band.

What the model includes

It is designed to price two-asset basket calls and their hedge sensitivities, with every number checkable against bumping and against an independent pricer.

Worked example (default inputs)

A one-year at-the-money basket call: both assets at 100, strike 100, volatilities 20% and 25%, correlation 0.5, rate 5%. Run on 5 November 2026 with 262,144 paths:

OutputResult
Price10.2596
delta_10.3132
delta_20.3235
vega_115.89 per 1.00 of volatility (about 0.159 per volatility point)
rho53.41 per 1.00 of rate (about 0.534 per percentage point)

This is the same run as the QuantLib comparison above. The value with all four sensitivities took 966 ms.

Three ways to use it

1. From an AI tool, through the hosted MCP endpoint. In any MCP client, add a remote server with this address and no authentication:

https://mypricinglab.com/lab/mcp

Then ask, for example: “Price the basket option with correlation 0.2 and with correlation 0.8, and compare the prices.” The tools are list_models, describe_model, price_model, check_against_bumping and run_model_function. The hosted service is free, needs no login, and caps the number of paths.

2. In Excel. Install the PricingLab add-in and open the workbook PricingLab_BasketOption.xlsx. Instructions and downloads: https://mypricinglab.com/excel

3. On your own machine. The local install runs the same tools with no size caps, and your inputs never leave your machine. It is sent on request (Linux x86-64 today; ask about Mac and Windows): write to info@mypricinglab.com. Once installed:

pricinglab mcp      # MCP server for a local MCP client
pricinglab serve    # local web server for the Excel workbook

Details: https://mypricinglab.com/install

With login

A private hosted service, with your own trades and larger runs, is available. Contact us.

Contact

PricingLab by Raganel Consulting, powered by MatLogica AADC. To run this on your own book, inside your own network, write to info@mypricinglab.com.

This page as Markdown · All models