You are on page 1of 20

Option Pricing using Quantum Computers

Nikitas Stamatopoulos1 , Daniel J. Egger2 , Yue Sun1 , Christa Zoufal2,3 , Raban Iten2,3 , Ning Shen1 ,
and Stefan Woerner2
1 Quantitative Research, JPMorgan Chase & Co., New York, NY, 10017
2 IBM Quantum, IBM Research – Zurich
3 ETH Zurich

We present a methodology to price options ist for the simplest types of options [2], the simpli-
and portfolios of options on a gate-based quan- fying assumptions on the market dynamics required
tum computer using amplitude estimation, an for the models to provide closed-form solutions often
algorithm which provides a quadratic speedup limit their applicability [3]. Hence, more often than
compared to classical Monte Carlo methods. not, numerical methods have to be employed for op-
The options that we cover include vanilla op- tion pricing, with Monte Carlo being one of the most
arXiv:1905.02666v5 [quant-ph] 2 Jul 2020

tions, multi-asset options and path-dependent popular due to its flexibility and ability to generi-
options such as barrier options. We put an cally handle stochastic parameters [4, 5]. However,
emphasis on the implementation of the quan- despite their attractive features in option pricing, clas-
tum circuits required to build the input states sical Monte Carlo methods generally require extensive
and operators needed by amplitude estimation computational resources to provide accurate option
to price the different option types. Addition- price estimates, particularly for complex options. Be-
ally, we show simulation results to highlight cause of the widespread use of options in the finance
how the circuits that we implement price the industry, accelerating their convergence can have a
different option contracts. Finally, we exam- significant impact in the operations of a financial in-
ine the performance of option pricing circuits stitution.
on quantum hardware using the IBM Q Tokyo By leveraging the laws of quantum mechanics a
quantum device. We employ a simple, yet ef- quantum computer [6] may provide novel ways to
fective, error mitigation scheme that allows us solve computationally intensive problems such as
to significantly reduce the errors arising from quantum chemistry [7–10], solving linear systems of
noisy two-qubit gates. equations [11], and machine learning [12–14]. Quanti-
tative finance, a field with many computationally hard
problems, may benefit from quantum computing. Re-
1 Introduction cently developed applications of gate-based quantum
computing for use in finance [15] include portfolio op-
Options are financial derivative contracts that give timization [16], the calculation of risk measures [17]
the buyer the right, but not the obligation, to buy and pricing derivatives [18–20]. Several of these ap-
(call option) or sell (put option) an underlying asset plications are based on the Amplitude Estimation al-
at an agreed-upon price (strike) and timeframe (exer- gorithm [21] which can estimate a parameter with a
cise window). In their simplest form, the strike price convergence rate of 1/M , where M is the number of
is a fixed value and the timeframe is a single point in quantum samples used. This represents a theoreti-
time, but exotic variants may be defined on more than cal quadratic speed-up compared to classical Monte
one underlying asset, the strike price can be a func- Carlo methods.
tion of several market parameters and could allow for
multiple exercise dates. As well as providing investors In this paper we extend the pricing methodology
with a vehicle to profit by taking a view on the market presented in [17, 18] and place a strong emphasis on
or exploit arbitrage opportunities, options are core to the implementation of the algorithms in a gate-based
various hedging strategies and as such, understanding quantum computer. We first classify options accord-
their properties is a fundamental objective of financial ing to their features and show how to take the dif-
engineering. For an overview of option types, features ferent features into account in a quantum computing
and uses, we refer the reader to Ref. [1]. setting. In Sec. 3, we review the quantum method-
Due to the stochastic nature of the parameters op- ology to price options and discuss how to represent
tions are defined on, calculating their fair value can relevant probability distributions in a quantum com-
be an arduous task and while analytical models ex- puter. In Sec. 4, we show a framework to price vanilla
options and portfolios of vanilla options, options with
Nikitas Stamatopoulos: Current Address: Goldman Sachs & Co., path-dependent dynamics and options on several un-
New York, NY, 10282
derlying assets. In Sec. 5 we show results from eval-

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 1
uating our option circuits on quantum hardware, and We classify options according to two categories:
describe the error mitigation scheme we employ to in- path-independent vs path-dependent and options on
crease the accuracy of the estimated option prices. In a single asset or on multiple assets. Path-independent
particular, we employ the maximum likelihood esti- options have a payoff function that depends on an un-
mation method introduced in [22] to perform ampli- derlying asset at a single point in time. Therefore, the
tude estimation without phase estimation in option price of the asset up to the exercise date of the op-
pricing using three qubits of a real quantum device. tion is irrelevant for the option price. By contrast, the
payoff of path-dependent options depends on the evo-
lution of the price of the asset and its history up to the
2 Review of option types and their exercise date. Table 1 exemplifies this classification.
challenges Options that are path-independent and rely on a sin-
gle asset are the easiest to price, and in most cases
Option contracts are valid for a pre-determined pe- numerical calculation is straightforward and would
riod of time, and their value at the expiration date likely not benefit by the use of a quantum computer.
is called the payoff. The goal of option pricing is to Path-independent options on multiple assets are only
estimate the option payoff at the expiration date in slightly harder to price since more than one asset is
the future and then discount that value to determine now involved and the probability distributions must
its worth today. The discounted payoff is also called account for correlations between the assets, but usu-
the fair value and indicates the amount of money one ally these can be priced quite efficiently on classical
should pay to enter the option contract today, making computers as well. Path-dependent options on the
it worthwile receiving the payoff value at the expira- other hand are significantly harder to price than path-
tion date. independent options since they require an often ex-
In practice, we price complex options numerically pensive payoff calculation at multiple time points on
using Monte Carlo methods by following these steps: each path, therefore minimizing the number of paths
required for this step would lead to a significant bene-
1. Model the asset price of the option’s underly- fit in the pricing process. It is this last case where we
ing(s) and any other sources of uncertainty as envision the largest impact of quantum computing.
random variables X = {X1 , X2 , . . . , XN } follow-
ing a stochastic process.
3 Quantum Methodology
2. Generate a large number M of random price
paths {X1 , X2 , . . . , XM } for the underlying(s) Here we outline the building blocks needed to price
from the probability distribution P implied by options on a gate-based quantum computer. As dis-
the stochastic process. cussed in the previous section, the critical compo-
nents are 1) represent the probability distribution P
3. Calculate the option’s payoff f (Xi ) on each gen- describing the evolution of random variables X =
erated price path and compute an estimator for {X1 , X2 , . . . , XN } on the quantum computer, 2) con-
the expectation value of the payoff EP [f (X)] as struct the circuit which computes the payoff f (X)
an average across all paths and 3) calculate the expectation value of the payoff
EP [f (X)]. In Sec. 3.1 we show how to use Ampli-
M
1 X tude Estimation to calculate the expectation value of
ÊP [f (X)] = f (Xi ) a function of random variables. In Sec. 3.2 we de-
M i=1
scribe the process of loading the relevant probability
distributions to a quantum register, and in Sec. 3.3 we
By the Central Limit Theorem, the estimator ÊP
construct the circuits to compute the payoff and set
converges to the expectation value EP as the num-
up Amplitude Estimation to estimate the expectation
ber of paths
 goes to infinity, with convergence value of the payoff. We then have all the ingredients
O M −1/2 [23].
to price options on a quantum computer.
4. Discount the calculated expectation value to get
the option’s fair value. 3.1 Amplitude Estimation
The discounting process requires knowledge of in- The advantage of pricing options on a quantum com-
terest rates at future dates which is itself an impor- puter comes from the Amplitude Estimation (AE) al-
tant question from a financial modelling perspective. gorithm [21] which provides a quadratic speed-up over
However, for the types of options we consider, this classical Monte Carlo simulations [24, 25]. Suppose a
process is not computationally challenging and can unitary operator A acting on a register of (n + 1)
be performed classically after the payoff calculation. qubits such that
We therefore do not discount the expected payoff for √ √
simplicity. A |0in+1 = 1 − a |ψ0 in |0i + a |ψ1 in |1i (1)

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 2
Table 1: Example of the different option types.
Single-asset Multi-asset
Path-independent European put/call Basket option
Path-dependent Barrier & Asian options Multi-asset
barrier options

phase estimation while still maintaining a quadratic


(m − 1) |0i H •
speed-up [22]. To this extent, they exploit that
.. . ..
. .. .
(j) |0i • † Qk A |0in |0i = cos ((2k + 1)θa ) |ψ0 in |0i +
H Fm
.. . .. sin ((2k + 1)θa ) |ψ1 in |1i , (4)
. .. .
(0) |0i H • and by measuring Qk A |0i for k = 20 , ..., 2m−1 for a
given m and applying a maximum likelihood estima-
|0in
A Q2
0
Q2
j
Q2
m−1 tion, an approximation for θa (and hence a) can be
··· ···
|0i recovered. If we define M = 2m −1, i.e. the total num-
ber of Q-applications, and we consider N shots for
Figure 1: The quantum circuit of amplitude estimation, each experiment, it has been shown empirically √ that
where H denotes a Hadamard gate and F † the inverse QFT. the resulting estimation error scales as O(1/(M N )),
i.e., the algorithm achieves the quadratic speed-up in
terms of M . We will use this approach to demontrate
for some normalized states |ψ0 in and |ψ1 in , where results from real quantum hardware in Sec. 5.
a ∈ [0, 1] is unknown. AE allows the efficient esti- For the option contracts we consider, the random
mation of a, i.e., the probability of measuring |1i in variables involved represent the possible values Si
the last qubit. This estimation is obtained with an the underlying asset can take, and the corresponding
operator Q = AS0 A† Sψ0 , where S0 = 1 − 2 |0i h0| probabilities pi that those values will be realized. For
and Sψ0 = 1 − 2 |ψ0 i |0i hψ0 | h0|, which is a rotation an option with payoff f , the A operator will create
of angle 2θa in the two-dimensional space spanned the state
by |ψ0 in |0i and |ψ1 in |1i. From Eq. (1) we know
that a = sin2 (θa ). To obtain an approximation for n n
2X −1 p −1 p
2X
θa , AE applies Quantum Phase Estimation [26, 27] √ √
1 − f (Si ) pi |Si i |0i+ f (Si ) pi |Si i |1i .
to approximate certain eigenvalues of Q, which are
i=0 i=0
classically mapped to an estimator for a. The Quan- (5)
tum Phase Estimation uses m additional sampling Comparing Eq. (1) and Eq. (5), we can see that
qubits to represent result and M = 2m applications
of Q, i.e., M quantum samples. The m qubits, ini- n
2X −1
tialized to an equal superposition state by Hadamard a= f (Si )pi = E[f (S)], (6)
gates, are used to control different powers of Q. Af- i=0
ter applying an inverse Quantum Fourier Transform
meaning AE allows us to compute the undiscounted
(QFT), their state is measured resulting in an integer
price of an option given a way to represent the option’s
y ∈ {0, ..., M − 1}, which is classically mapped to the
payoff as a quantum circuit and create the state of
estimator for a, i.e.
Eq. (5). In the following sections, we describe the
necessary components to achieve that.
ã = sin2 (yπ/M ) ∈ [0, 1]. (2)

The full circuit for AE is shown in Fig. 1. The esti- 3.2 Distribution loading
mator ã satisfies
The first component of our option pricing model is
π π2 −1

|a − ã| ≤ M +M 2 = O M , (3) the circuit that takes a probability distribution im-
plied for possible asset prices in the future and loads
with probability of at least 8/π 2 . This represents a it into a quantum register such that each basis state
quadratic speedup compared to the O M −1/2 con-

represents a possible value and its amplitude the cor-
vergence rate of classical Monte Carlo methods [28]. responding probability. In other words, given an n-
To reduce the required number of qubits and the qubit register, asset prices {Si } for i ∈ {0, ..., 2n − 1}
resulting circuit depth, Suzuki et al. have shown and corresponding probabilities {pi }, the distribution
that AE can be performed without requiring quantum loading module creates the state:

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 3
n
data. We note that the outcomes of a random vari-
2X −1
√ able X can be mapped to the integer set {0, ..., 2n −1}
|ψin = pi |Si in . (7) using an affine mapping. Furthermore, the approach
i=0
can be easily extended to multivariate data, where we
The analytical formulas used to price options in the use a separate register of qubits for each dimension
Black-Scholes-Merton (BSM) model [2, 29] assume [19].
that the underlying stock prices at maturity follow Another useful feature in the use of qGANs for load-
a log-normal distribution with constant volatility. In ing probability distributions, is the fact that we can
[30], the authors show that log-concave probability tailor the qGAN variational form to construct short-
distributions (such as the log-normal distribution of depth circuits for an acceptable degree of accuracy.
the BSM model) can be efficiently loaded in a gate- This in turn allows us to evaluate the performance of
based quantum computer. The option types consid- option pricing quantum circuits in near-term quan-
ered in this paper are modeled using the underlying tum hardware where resources are still quite limited.
BSM dynamics and thus loading the relevant proba- The use of ANNs to represent probability distribu-
bility distributions onto quantum registers does not tions inevitably imposes a cost associated with the
require prohibitive complexity. training component, in both classical and quantum
However, in option models of practical interest, models. However, during common business practices
the simplified assumptions in the BSM model fail such as overnight risk assessment of large portfolios
to capture important market dynamics, limiting the which may consist of millions of option contracts, the
model’s applicability in real-life scenarios. As such, same probability distributions can be used across a
the market-implied probability distribution of the un- large number of pricing calls defined on the same un-
derlying needs to be captured properly in order for derlyings. For example, it is quite common during
valuation models to accurately estimate the intrinsic risk assessment valuations to require pricing of several
value of option contracts. To address these shortcom- thousands of option contracts defined on the same un-
ings, Artificial Neural Networks (ANN) are becoming derlying. As such, the effective training cost per pric-
increasingly more popular as a means to capture the ing call can be efficiently amortized to represent only
real-life dynamics of the relevant market parameters, a small fraction of the total individual option pricing
without the need to assume a simplified underlying cost.
model [31, 32]. It is thus important to be able to effi-
It is also noteworthy that the qGAN training per-
ciently represent distributions of financial parameters
forms better if the initial distribution is close to the
on a quantum computer which might not have explicit
target distribution [19]. Therefore, as new market
analytical representations.
data comes in which needs to be incorporated into
The loading of arbitrary states into quantum sys-
the probability distribution (e.g. for overnight risk, a
tems requires exponentially many gates [33], making
lot of the same options as the day before need to be
it inefficient to model arbitrary distributions as quan-
priced, but there is one more day’s worth of market
tum gates. Since the distributions of interest are of-
data) the previously trained qGAN can be used as the
ten of a special form, the limitation may be overcome
initial distribution, leading to faster convergence.
by using quantum Generative Adverserial Networks
(qGAN). These networks allow us to load a distri-
bution using a polynomial number of gates [19]. A 3.3 Computing the payoff
qGAN can learn the random distribution X under-
lying the observed data samples { x0 , . . . , xk−1 } and We obtain the expectation value of a linear function
load it directly into a quantum state. This generative f of a random variable X with AE by creating the
model employs the interplay of a classical discrimina- operator A such that a = E[f (X)], see Eq. (6). Once
tor, a neural network [34], and a quantum generator A is implemented we can prepare the state in Eq. (1),
(a parametrized quantum circuit). More specifically, and the Q operator, which only requires A and generic
the qGAN training consists of alternating optimiza- quantum operations [26, 27]. In this section, we show
tion steps of the discriminator’s parameters φ and the how to create a close relative of A and how to combine
generator’s parameters θ. After the training, the out- it with AE to calculate the expectation value of f .
put of the generator is a quantum state The payoff function for the option contracts of in-
n
terest is piece-wise linear and as such we only need
2X −1 p
to consider linear functions f : {0, ..., 2n − 1} → [0, 1]
|ψ(θ)in = pi (θ) |iin , (8)
which we write f (i) = f1 i + f0 . We can efficiently
i=0
create an operator that performs
that represents the target distribution. The n-qubit
state |iin = |in−1 ...i0 i encodes the integer i = |iin |0i → |iin (cos [f (i)] |0i + sin [f (i)] |1i) (9)
2n−1 in−1 +...+2i1 +i0 ∈ {0, ..., 2n −1} with ik ∈ {0, 1}
and k = 0, ..., n − 1. The probabilities pi (θ) approxi- using controlled Y-rotations [17]. To implement the
mate the random distribution underlying the training linear term of f (i) each qubit j (where j ∈ {0, . . . n −

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 4
|i2 i • O(M −2/3 ) when c is properly chosen which is already
|i1 i • |ii3 • faster than classical Monte Carlo methods [17]. We

|i0 i • can recover the O(M −1 ) convergence rate of AE by
|0i Ry (f0 ) Ry (f1 ) Ry (2f1 ) Ry (4f1 ) |0i Ry [f (i)] using higher orders implemented with quantum arith-
metic. The resulting circuits, however, have more
Figure 2: Quantum circuit that creates the state in Eq. (9). gates. This trade-off, discussed in Ref. [17], also gives
Here, the independent variable i = 4i2 + 2i1 + i0 ∈ {0, ..., 7} a formula that specifies which value of c to use to
is encoded by three qubits in the state |ii3 = |i2 i1 i0 i with minimize the estimation error made when using AE.
ik ∈ {0, 1}. Therefore, the linear function f (i) = f1 i + f0 is From Eq. (12) we can recover E[f (X)] since AE al-
given by 4f1 i2 + 2f1 i1 + f1 i0 + f0 . After applying this circuit lows us to efficiently retrieve P1 and because we know
the quantum state is |ii3 [cos(f1 i+f0 ) |0i+sin(f1 i+f0 ) |1i]. the values of fmin , fmax and c.
The circuit on the right shows an abbreviated notation.

1}) in the |iin register acts as a control for a Y- 4 Option pricing on a quantum com-
rotation with angle 2j f1 of the ancilla qubit. The con- puter
stant term f0 is implemented by a rotation of the an-
cilla qubit without any controls, see Fig. 2. The con- In this section we show how to price the different op-
trolled Y-rotations can be implemented with CNOT tions shown in Tab. 1. We put an emphasis on the
and single-qubit gates [35]. implementation of the quantum circuits that prepare
We now describe how to obtain E[f (X)] for a linear the states needed by AE. We use the different building
function f of a random variable X which is mapped blocks reviewed in Sec. 3.
to integer values i ∈ {0, ..., 2n − 1} that occur with
probability pi respectively. To do this we use the
procedure outlined immediately above to create the 4.1 Path-independent options
P √
operator that maps i pi |iin |0i to The price of path-independent vanilla options (e.g.
n
2X −1
European call and put options) depends only on the
√ h  π   π  i
pi |iin cos cf˜(i) + |0i + sin cf˜(i) + |1i , distribution of the underlying asset price ST at the op-
i=0
4 4 tion maturity T and the payoff function f (ST ) of the
(10) option. To encode the distribution of ST in a quan-
tum state, we truncate it to the range [ST,min , ST,max ]
˜
where f (i) is a scaled version of f (i) given by and discretize this interval to {0, ..., 2n − 1} using n
qubits. In the quantum computer, the distribution
˜ f (i) − fmin loading operator PX creates a state
f (i) = 2 − 1, (11)
fmax − fmin
n
2X −1
with fmin = mini f (i) and fmax = maxi f (i), and P √
|0in −−X→ |ψin = pi |iin , (14)
c ∈ [0, 1] is an additional scaling parameter. The re- i=0
lation in Eq. (11) is chosen so that f˜(i) ∈ [−1, 1].
Consequently, sin2 [cf˜(i) + π/4] is an anti-symmetric with i ∈ {0, ..., 2n −1} to represent ST . This state, ex-
function around f˜(i) = 0. With these definitions, emplified in Fig. 3, may be created using the methods
the probability to find the ancilla qubit in state |1i, discussed in Sec. 3.2.
namely We start by showing how to price vanilla call or put
n
2X −1
options, and then generalize our method to capture
2

˜ π the payoff structure of portfolios containing more than
P1 = pi sin cf (i) + ,
i=0
4 one vanilla option.

is well approximated by
4.1.1 Vanilla options
n
2X −1  
1 2E[f (X)] − fmin 1 Vanilla call options are structured so that if the un-
P1 ≈ pi cf˜(i) + =c −c+ .
i=0
2 fmax − fmin 2 derlying asset price is larger than a fixed value K
(12) (the strike price) at the expiration date, the contract
pays the difference between the realized price and the
To obtain this result we made use of the approxima- strike. As such, the call option payoff fC (ST ) can be
tion written as
 π 1
sin2 cf˜(i) + = cf˜(i) + + O(c3 f˜3 (i)) (13)
4 2 fC (ST ) = max(0, ST − K). (15)
which is valid for small values of cf˜(i). With this first Equivalently, the corresponding put option has a sim-
order approximation the convergence rate of AE is ilar payoff but it pays if the asset price at expiry is

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 5
0.35 through all n qubits from least to most significant,
|100i |iin will be greater or equal to the strike price, only
0.30
if there is a carry at the last (most significant) qubit.
|011i
0.25 This procedure along with the necessary gate opera-
Probability

|101i tions is illustrated in Fig. 4. An implementation for


0.20
K = 1.9 and a three-qubit register is shown in Fig. 6.
0.15 To represent the payoff function f (i), we add to
|010i
|110i
|φ1 i a second ancilla qubit, which corresponds to the
0.10
last qubit in Eq. (10). The payoff function of vanilla
0.05 |111i options is piece-wise linear
|001i
|000i
0.00
(
a< · i + b< i < K,
1.500

1.643

1.786

1.929

2.071

2.214

2.357

2.500
f (i) = (17)
a≥ · i + b≥ i ≥ K.
Spot Price at Maturity ST
We now focus on a European call option with payoff
Figure 3: Example price distribution at maturity loaded in a f (i) = max(0, i − K), i.e., a< = b< = 0, a≥ = 1, and
three-qubit register. In this example we followed the Black- b≥ = −K. To prepare the operator that calculates
Scholes-Merton model which implies a log-normal distribu- the payoff in the form of Eq. (10) for use with AE, we
tion of the asset price at maturityT with probability
 density set
2
ST −µ)
function P (ST ) = ST σ
1

2πT
exp − (ln 2σ 2T . σ is the (
2
 π g0 i < K,
volatility of the asset and µ = r − 0.5σ T + ln(S0 ), with cf˜(i) + =
r the risk-free market rate and S0 the asset’s spot at t = 0. 4 g0 + g(i) i ≥ K,
In this figure we used S0 = 2, σ = 10%, r = 4% and
T = 300/365. where g(i) is a linear function of i, and g0 is an angle
whose value we will carefully select. With this setup,
the payoff in Eq. (10) can be constructed, starting
smaller than the strike. That is, the put option payoff from the state |φ1 i |0i, by first initializing the last
is ancilla qubit to the state cos(g0 ) |0i + sin(g0 ) |1i, and
then performing a rotation of the last ancilla qubit
fP (ST ) = max(0, K − ST ). (16) controlled by the comparator qubit |ci and the qubits
The linear part of the payoff can be computed as in |ψin . This rotation operation, implemented by the
a quantum circuit with the approach outlined in quantum circuit in Fig. 7, applies a rotation with an
Sec. 3.3, but we need a way to express the max oper- angle g(i) only if i ≥ K. The state of the n + 2 qubits
ation as a quantum circuit as well. We show how to after this operation becomes
achieve that for both call and put option types by im- X√
pi |iin |0i [cos(g0 ) |0i + sin(g0 ) |1i] + (18)
plementing a comparison between the values encoded
i<K
in the basis states of Eq. (14) and K. X√
A quantum comparator circuit sets an ancilla qubit pi |iin |1i {cos[g0 + g(i)] |0i + sin[g0 + g(i)] |1i} .
|ci, initially in state |0i, to the state |1i if i ≥ K i≥K

and |0i otherwise. The state |ψin in the quantum


The probability to find the second ancilla in state |1i,
computer therefore undergoes the transformation
efficiently measurable using AE, is
X√ X√
|ψin |0i → |φ1 i = pi |iin |0i + pi |iin |1i . P1 =
X
pi sin2 (g0 ) +
X
pi sin2 [g0 + g(i)]. (19)
i<K i≥K
i<K i≥K

This operation can be implemented by a quantum Now, we must carefully choose the angle g0 and the
comparator [36] based on CNOT and Toffoli gates. function g(i) to recover the expected payoff E[f (X)]
Since we know the value of the strike, we can im- of the option from P1 using the approximation in
plement a circuit tailored to the specific strike price. Eq. (12). To reproduce f (i) = i − K for i ≥ K and
We use n ancilla qubits |a1 , ..., an i and compute the simultaneously satisfy cf˜(i) = g0 +g(i)−π/4 ∈ [−c, c]
two’s complement of the strike price K in binary us- (see Eq. (11)), we must set
ing n bits, storing the digits in a (classical) array
t[n]. For each qubit |ik i in the |iin register, with 2c(i − K)
g(i) = , (20)
k ∈ {0, ..., n − 1}, we compute the possible carry bit imax − K
of the bitwise addition of |ik i and t[k] into |ak i. If
t[k] = 0, there is a carry qubit at position k only if where imax = 2n − 1. This choice of g(i) forces us to
there is a carry at position k − 1 and |ik i = 1. If choose
t[k] = 1, there is a carry qubit at position k if there π
g0 = − c. (21)
is a carry at position k − 1 or |ik i = 1. After going 4

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 6
t[1] = 1
|i1 i •
|i2 i • •
.. .. t[n] = 0 t[n] = 1
. .
|in i • •
|a1 i • •
|a2 i OR
.. .. • •
. t[2] = 0 t[2] = 1 .
|an i OR •
|c i

Figure 4: Circuit that compares the value represented by an n-qubit register |iin , to a fixed value K. We use n ancilla qubits
|a1 , ..., an i, a classical array t[n] holding the precomputed binary
1 value of K’s two’s complement and a qubit |ci which will
hold the result of the comparison with |ci = 1 if |ii ≥ K. For each qubit |ik i, with k ∈ {1, ..., n}, we use a Toffoli gate to
compute the carry at position k if t[k] = 1 and a logical OR, see Fig. 5, if t[k] = 0. For k = 1, we only need to use a CNOT
on |i1 i if t[1] = 1. In the circuit above, only one of two unitaries in a dotted box needs to be added to the circuit, depending
on the value of t[k] at each qubit. The last carry qubit |an i is then used to compute the final result of the comparison in
qubit |ci.

|iin •
|ai X • X • |ci •
|bi X • X ≡ • |0i Ry [g0 ] Ry [g(i)]
|ci X OR
Figure 7: Circuit that creates the state in Eq. (18). We
apply this circuit directly after the comparator circuit shown
Figure 5: Circuit that computes the logical OR between in Fig. 6. The multi-controlled y-rotation is the gate shown
qubits |ai and |bi into qubit |ci. The circuit on the right in Fig. 2 controlled by the ancilla qubit |ci that contains the
shows the abbreviated notation used in Fig. 4. result of the comparison between i and K.

To see why, we substitute Eqs. (20) and (21) into


Eq. (19) and use the approximation in Eq. (13), which
leads to
X 1  X 
2c(i − K) 1

P1 ≈ pi −c + pi + −c
2 imax − K 2
i<K i≥K
 1 2c X
|0i
 • • = −c+
2 imax − K
pi (i − K), (22)
i≥K
|ii3 |0i PX • •

 P
where we have used i pi = 1 in the last equality.
|0i X • X Eq. (22) shows that by setting g0 = π/4 − c, we could
|ci : |0i X recover E[max(0, i−K)] from P1 up to a scaling factor
and a constant, from which we can subsequently re-
|ai : |0i X • X cover the expected payoff E[f (i)] of the option given
the probability distribution of the underlying asset.
Figure 6: Quantum circuit that sets a comparator qubit |ci We should note that the fair value of the option re-
to |1i if the value represented by |ii3 is larger than a strike quires appropriately discounting the expected payoff
K = 1.9, for the spot distribution in Fig. 3. The unitary PX of the option to today, but as the discounting can be
represents the set of gates that load the probability distribu- performed after the expectation value has been cal-
tion in Eq. (14). An ancilla qubit |ai is needed to perform culated, we omit it from our discussion for simplic-
the comparison. It is uncomputed at the end of the circuit. ity. We demonstrate the performance of our approach
by running amplitude estimation using Qiskit [37] on
the overall circuit produced by the elements described
in this section, and verifying the convergence to the

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 7
|iin • • •
1.0 m=3
|cm i •
.. ···
0.5 .
|c2 i •
|c1 i •
0.0
1.0 |0i Ry [g0 (i)] Ry [g1 (i)] Ry [g2 (i)] · · · Ry [gm (i)]
m=5

Figure 9: Quantum circuit that implements the multi-


0.5 controlled Y-rotations for a portfolio of options with m strike
prices.
Probability

0.0
1.0 m=7 rection of where the volatility may drive the asset’s
price, may choose to enter a straddle option strategy,
0.5 by buying both a call and a put option on the asset
with the same expiration date and strike. If the un-
derlying asset moves sharply up to expiration date,
0.0 the investor can make a profit regardless of whether
1.0 it moves higher or lower in value. Alternatively, the
m=9
investor may opt for a butterfly option strategy by en-
tering four appropriately structured option contracts
0.5 with different strikes simultaneously. Because these
option strategies give rise to piecewise linear payoff
functions, the methodology described in the previous
0.0
0.00 0.05 0.10 0.15 0.20 0.25 0.30 section can be extended to calculate the fair values of
Estimated Option Price these option portfolios.
In order to capture the structure of such option
Figure 8: Results from applying amplitude estimation strategies, we can think of the individual options as
(Sec. 3.1) on a European call option with spot price dis- defining one or more effective strike prices Kj and
tribution as given in Fig. 3 and a strike price K = 2.0, on add a linear function fj (S) = aj S +bj between each of
a simulated quantum device with m ∈ {3, 5, 7, 9} sampling these strikes. For example, to price an option strategy
qubits, i.e., M ∈ {8, 32, 128, 512} quantum samples. The with the payoff function
red dashed line corresponds to the (undiscounted) analyti-
cal value for this option, calculated using the Black-Scholes- fs (S) = max(0, S − K1 ) − max(0, S − K2 ), (23)
Merton model. We limit the range of possible option values
shown to [0, 0.3] to illustrate the convergence of the esti- which corresponds to a call spread (the option holder
mation, as the cumulative probability in the windows shown
has purchased a call with strike K1 and sold a call
exceeds 90% in each case.
with strike K2 ), we use functions f0 , f1 , and f2 such
that
analytically computed value or classical Monte Carlo 
estimate. An illustration of the convergence of a Eu- f0 (S)
 S < K1 ,
ropean call option with increasing evaluation qubits fs (S) = f0 (S) + f1 (S) K1 ≤ S < K2 ,

f0 (S) + f1 (S) + f2 (S) K2 ≤ S.

is shown in Fig. 8.
A straightforward extension of the analysis above (24)
yields a pricing model for a European put option,
whose payoff f (i) = max(0, K − i) is equivalent to To match Eq. (23) with Eq. (24), we set f0 (S) = 0,
Eq. (17) with a> = b> = 0, a≤ = −1, and b≤ = K. f1 (S) = S − K1 and f2 (S) = −S + K2 . In gen-
eral, to price a portfolio of options with m effective-
4.1.2 Portfolios of options strike prices K1 , ..., Km and m+1 functions f0 (S), ...,
fm (S), we need an ancilla qubit per strike to indicate
Various popular trading and hedging strategies rely if the underlying has reached the strike. This allows
on entering multiple option contracts at the same time us to generalize the discussion from Sec. 4.1.1. We
instead of individual call or put options and as such, apply a multi-controlled Y-rotation with angle gj (i) if
these strategies allow an investor to effectively con- i ≥ Kj for each strike Kj with j ∈ {1, ..., m}. The ro-
struct a payoff that is more complex than that of tation g0 (i) is always applied, see the circuit in Fig. 9.
vanilla options. For example, an investor who wants The functions gj (i) are determined using the same
to profit from a volatile asset without picking a di- procedure as in Sec. 4.1.1.

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 8
4.2 Multi-asset and path-dependent options
|i1 in1 •
In this section we show how to price options with
..
path-dependent payoffs as well as options on more . PX
than one underlying asset. In these cases, the pay-
|id ind •
off function depends on a multivariate distribution of
random variables {Sj } with j ∈ {1, ..., d}. The Sj ’s h i
|bin0 ~ · ~ii
S |w • •
may represent one or several assets at discrete mo-
ments in time or a basket of assets at the option ma- |ci1 C[b ≥ K] •
turity. In both cases, the probability distribution of
the random variables Sj are truncated to the inter- |pi1 Ry [f (b)]
val [Sj,min , Sj,max ] and discretized using 2nj points so
that they can be represented by d quantum registers Figure 10: Schematic of the circuit that encodes the pay-
where register j has nj qubits. Thus, the multivariate off of a basket call option of d underlying assets into the
distribution is represented by the probabilities pi1 ,...,id amplitude of a payoff qubit |pi. First, a unitary PX loads
that the underlying has taken the values i1 , ..., id with the multivariate distribution of Eq. (28) into d registers
ij ∈ {0, ..., 2nj − 1}. The quantum state that repre- |i1 in1 . . . |id ind using the methods described in Sec. 3.2. The
sents this probability distribution, a generalization of weighted sum operator S, see Appendix A, calculates the
Eq. (14), is weighted sum |w1 · i1 + . . . + wd · id i into a register |bin0
with n0 qubits, where n0 is large enough to hold the maximum
X √ possible sum. The comparator circuit C sets a comparator
|ψin = pi1 ,...,id |i1 in1 ⊗ ... ⊗ |id ind , (25) qubit |ci to |1i if b ≥ K. Lastly, controlled-Y rotations are
i1 ,...,id
used to encode the option payoff f (b) = max(0, b − K) into
P the payoff qubit using the method shown in Fig. 7, controlled
with n = j nj . Various types of options, such as by the comparator qubit |ci.
Asian options or basket options, require us to compute
the sum of the random variables Sj . The addition of
the values in two quantum registers |a, bi → |a, a + bi
may be calculated in quantum computers with adder exp − 21 (ln S − µ)T Σ−1 (ln S − µ)

circuits based on CNOT and Toffoli gates [38–40]. ~
P (S) = Qd , (28)
To this end we add an extra qubit register with n0 (2π)d/2 (detΣ)1/2 i=1 Si
qubits to serve as an accumulator. By recursively ap- where ln S = (ln S1 , ln S2 . . . , ln Sd )T and µ =
plying adder circuits we perform the transformation (µ1 , µ2 . . . µd )T , where each µi is the log-normal distri-
|ψin |0in0 → |φin+n0 where |φin+n0 is given by bution parameter for each asset defined in the caption
X √ of Fig. 3. Σ is the d × d positive-definite covariance
pi1 ,...,id |i1 in1 ⊗ ... ⊗ |id ind ⊗ |i1 + ... + id in0 . matrix of the d underlyings
i1 ,...,id  
(26) σ12 ρ12 σ1 σ2 . . . ρ1d σ1 σd
ρ21 σ2 σ1 σ22 . . . ρ2d σ2 σd 
 
Here circuit optimization may allow us to perform this Σ=T .. .. .. ..  (29)
.
 
computation in-place to minimize the number of qubit  . . . 
registers needed. Now, we use the methods discussed ρd1 σd σ1 ... ... σd2
in the previous section to encode the option payoffs
with σi the volatility of the ith asset, and −1 ≤ ρij ≤
into the quantum circuit.
1 the correlation between assets i and j and T the
time to maturity.
4.2.1 Basket Options The quantum circuit for pricing a European style
A European style basket option is an extension of the basket call option is analogous to the single asset case,
single asset European option discussed in Sec. 4.1, with an additional unitary to compute the weighted
only now the payoff depends on a weighted sum of sum of the uncertainty registers |i1 in1 . . . |id ind be-
d underlying assets. A call option on a basket has the fore applying the comparator and payoff circuits,
payoff profile controlled by the accumulator register |bin0 =
|i1 + ... + id in0 . A schematic of these components is
f (Sbasket ) = max(0, Sbasket − K) (27) shown in Fig. 10. The implementation details of the
circuit that performs the weighted sum operator is
where Sbasket = w ~ for basket weights w
~ · S, ~ = discussed in Appendix A.
[w1 , w2 , . . . , wd ], wi ∈ [0, 1], underlying asset prices We use a basket option to compare the estima-
at option maturity S ~ = [S1 , S2 , . . . Sd ] and strike K. tion accuracy between AE and classical Monte Carlo.
In the BSM model, the underlying asset prices are de- From Eq. (2), we know that for M applications of
scribed by a multivariate log-normal distribution with the Q operator (see Fig. 1), the possible values re-
probability density function [41] turned by AE will be of the form sin2 (yπ/M ) for

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 9
y ∈ {0, ..., M −1} and the maximum distance between ∆O
max
two consecutive values is −6 Amplitude Estimation
2 Monte Carlo

Estimation Error
2−7
   
2 π 2π 2 π 2π
∆max = sin + − sin − . (30)
4 4M 4 4M
2−8
This quantity determines how close M operations of Q
can get us to the amplitude which encodes the option 2−9
price. Using sin2 (π/4 + x) = x + 1/2 + O(x3 ) for
x  1, we get ∆max = π/M + O(M −3 ) for π/M  1. 2−10
From Eq. (3) and Eq. (22), we can determine that
with probability of at least 8/π 2 , our estimated option 27 28 29 210 211 212
price using AE will be within Number of Samples (M = 2m)

Figure 11: Comparison of the estimation error between Am-


π/M
∆O
max = × (imax − K) + O(M −3 ) (31) plitude Estimation and Monte Carlo at the 8/π 2 ≈ 81% con-
2c fidence interval for a basket option consisting of 3 identical,
of the exact option price, where c, imax and K are equally weighted assets with the parameters of Fig. 3, strike
the parameters used to encode the option payoff into price K = 2.0 and asset correlations ρ12 = ρ13 = ρ23 = 0.8.
our quantum circuit, discussed in Sec. 4.1.1. To com- The approximation error for amplitude estimation is plotted
against the maximum expected error given by Eq. (31), illus-
pare this estimation error to Monte Carlo, we use the
trating the O(M −1 ) convergence. We calculate the equiva-
same number of samples to price an option classically,
lent Monte Carlo error at the same 81% confidence interval
and determine the approximation error at the same over 10,000 simulations for each sample number 2m . The red
8/π 2 ≈ 81% confidence interval by repeated simula- dashed line shows a linear fit across the Monte Carlo errors,
tions. The comparison for a basket option on three displaying the expected O(M −1/2 ) scaling.
underlying assets shows that AE provides a quadratic
speed-up, see Fig. 11. It is worth noting that for typ-
ical business cases, the number of paths required for Eq. (28), with S ~ now a d-dimensional vector of as-
acceptable pricing accuracy goes from tens of thou- set prices at time points [t1 . . . td ], instead of dis-
sands to millions (depending on the option under- tinct underlying prices at maturity T . As we are
lyings) [42, 43], so they are well within the range not considering multiple underlying assets that could
where amplitude estimation becomes more efficient be correlated, the covariance matrix is diagonal Σ =
than Monte Carlo, as shown in Fig. 11. ∆t[diag(σ 2 , ..., σ 2 )]. An illustration of the probability
density function used for an asset defined on two time
4.2.2 Asian Options steps is shown in Fig. 12.
We now prepare the state |ψin , see Eq. (25), where
We now examine arithmetic average Asian options each register represents the asset price at each time
which are single-asset, path-dependent options whose step up to maturity. Using the weighted sum opera-
payoff depends on the price of the underlying asset tor of Appendix A with equal weights 1/d, we then
at multiple time points before the option’s expiration calculate the average value of the asset until maturity
date. Specifically, the payoff of an Asian call option T , see Eq. (33), into a register |S̄i
is given by

f (S̄) = max(0, S̄ − K) (32) d


1X
| i1 i2 ... id i 7→ |S̄i = | St i . (35)
where K is the strike price, S̄ is the arithmetic average |{z} |{z} |{z} dt=1
∆t 2∆t T
of the asset’s value over a pre-defined number of points
d between 0 and the option maturity T Finally, we use the same comparator and rotation cir-
d
cuits that we employed for the basket option illus-
1X trated in Fig. 10 to load the payoff of an arithmetic
S̄ = St . (33)
d t=1 average Asian option into the payoff qubit |pi.
The probability distribution of the asset price at
time t will again be log-normal with probability den- 4.2.3 Barrier Options
sity function Barrier options are another class of popular option
(ln S −µ )2
types whose payoff is similar to vanilla European op-
1 − 2σt2 ∆tt

P (St ) = e , (34) tions, but they become activated or extinguished if
St σ 2π∆t the underlying asset crosses a pre-determined level

with µt = r − 0.5σ 2 ∆t + ln(St−1 ) and ∆t = T /d. called the barrier. In their simplest form, there are
We can then use the multivariate distribution in two general categories of barrier options

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 10
3.5 # Single-qubit CX CCX Depth
m=3 2,091 2,056 90 3,927
3.0 m=5 12,768 9,078 378 17,332
m=7 52,275 37,132 1,530 70,916
2.5
S2·∆t

m=9 210,144 149,290 6,138 285,204


2.0
Table 2: Single-qubit, CNOT, Toffoli gate counts and over-
1.5 all circuit depth required for the full amplitude estimation
circuits for each instance in Fig. 8, as a function of the num-
1.0 ber of sampling qubits m. These figures assume all-to-all
1.0 1.5 2.0 2.5 3.0 3.5 connectivity across qubits.
S∆t

Figure 12: Probability density function of a multivariate log- This is computed with X (NOT) and Toffoli gates
normal distribution, see Eq. (28), for the asset shown in Fig. 3 and d − 2 ancilla qubits. The ancilla qubit |b| i is
defined on two time steps t = ∆t = T /2 and t = 2∆t = T then used as a control for the payoff rotation into the
payoff qubit, effectively knocking the option in. For
Knock-Out barrier options, we can follow the same
• Knock-Out The option expires worthless if the steps and apply an X gate to the ancilla barrier qubit
underlying asset crosses a certain price level be- before using it as control, in this manner knocking
fore the option’s maturity. the option out if the barrier level has been crossed. A
• Knock-In The option has no value unless the un- circuit displaying all the components required to price
derlying asset crosses a certain price level before a Knock-In barrier option is shown in Fig. 13. Results
maturity. from amplitude estimation on a barrier option circuit
using a quantum simulator are shown in Fig. 14.
If the required barrier event for the option to have Even though we have focused our attention on bar-
value at maturity occurs, the payoff then depends only rier options where the barrier event is the underlying
on the value of the underlying asset at maturity and asset crossing a barrier from below, we can use the
not on the path of the asset until then. If we consider same method to price barrier options where barrier
a Knock-In barrier option and label the barrier level events are defined as the asset crossing the value from
B, we can write the option’s payoff as above. This only requires changing the comparator
circuits to compute St ≤ B in the barrier register
( |bid .
max(0, ST − K) if ∃t s.t. St ≥ B For all path-dependent options, including the Asian
f (S) = (36)
0 otherwise and barrier options we have examined in this section,
we note that the choice of time intervals on which
where T is the time to maturity, St the asset price at we need to represent the probability distribution on
time t with 0 < t ≤ T and K the option strike. quantum registers depends on the type of option in
To construct a quantum circuit to price a Knock- question and the type of underlying(s). For instance,
In barrier option, we use the same method as for when pricing barrier options, we only need to repre-
the Asian option where T is divided into d equidis- sent the probability distribution at the barrier dates
tant time intervals with ∆t = T /d, and use regis- and at maturity. However, as the choice of which
ters |i1 in1 |i2 in2 . . . |id ind to represent the discretized time intervals need to be represented for option pric-
range of asset prices at time t ∈ {∆t, 2∆t, . . . , d · ∆t = ing is independent of whether we employ a quantum
T }. The probability distribution of Eq. (34) is used or a classical pricing model, a detailed analysis of this
again to create the state |ψin in Eq. (25). choice is beyond the scope of this work.
To capture the path dependence introduced by the
barrier, we use an additional d-qubit register |bid to
monitor if the barrier is crossed. Each qubit |bt i in 5 Quantum hardware results
|bid is set to |1i if |it int ≥ B. An ancilla qubit |b| i
is set to |1i if the barrier has been crossed in at least In this section we examine the performance of Euro-
one time step. This is done by computing the logical pean call option circuits evaluated on quantum hard-
OR, see Fig. 5, of every qubit in |bid and storing the ware. Quantum circuits based on standard amplitude
result in the ancilla estimation are not promising candidates for near-term
devices, given that they require extra qubits to control
the accuracy of the calculation, and multi-controlled
|b1 b2 . . . bd i |0i 7→ |b1 b2 . . . bd i |b1 || b2 . . . || bd i . gate operations. Tab. 2 lists the number of single and
(37) multi-qubit gates required for the European call op-

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 11
|i1 in1 •
..
. PX
|id ind • • •
|b1 i CB [i1 ≥ B] •
...
|bd i CB [id ≥ B] •
|b| i OR[b1 , ..., bd ] • •
|ci1 CK [id ≥ K] •
|pi1 Ry [f (ST )]

Figure 13: Circuit that encodes the payoff of a Knock-In barrier option in the state of an ancilla qubit |pi1 . The unitary
operator PX is used to initialize the state of Eq. (25). Comparator circuits CB are used to set a barrier qubit bj for all j ∈ [1, d]
if the asset price represented by |ij i crosses the barrier B. The logical OR of all bj qubits is computed into ancilla |b| i. The
strike comparator circuit CK sets the comparator qubit |ci1 to |1i if the asset price at maturity |id i ≥ K. Finally, Y-rotations
encode the payoff qubit |pi1 , controlled on |id i, the strike qubit |ci1 and the barrier qubit |b| i which is |1i only if the asset
price has crossed the barrier at least once before maturity.

tion examples in Fig. 8, all of which are far from the


1.00 Monte Carlo
m=7 reach of current and near-term quantum hardware.
However, a quadratic speed-up is also possible by
0.75
Probability

performing AE without quantum phase estimation


(see Sec. 3.1). Even though removing phase esti-
0.50 mation from amplitude estimation does not make
the overall algorithm immediately compatible with
0.25 noisy quantum computers, it does lead to significantly
shorter circuits than the original implementation of
AE, allowing us to examine how it performs on noisy
0.00 quantum hardware.
0.0 0.1 0.2 0.3 0.4
Estimated Option Price We hence focus on the circuits required to perform
AE without phase estimation and show results for a
Figure 14: Estimated option price for a barrier option using European call option, using three qubits, two of which
amplitude estimation on a quantum simulator. The option represent the uncertainty and one encodes the pay-
is defined on the asset of Fig. 3 with two timesteps T /2 and off. We consider a log-normal random distribution
T = 300/365 and 2 qubits used to represent the uncertainty with S0 = 2, σ = 40%, r = 5%, and T = 40/365,
per timestep. The option strike is K = 1.9 and a barrier see Fig. 3, and truncate the distribution to the inter-
was added at B = 2.0 on both timesteps. The red dotted val defined by three standard deviations around the
line is the (undiscounted) value of the option calculated with mean. With two qubits encoding this distribution,
classical Monte Carlo and 100, 000 paths and the blue bars
the possible values are [1.21, 1.74, 2.28, 2.81], repre-
show the estimated option values using amplitude estimation
sented by |00i , . . . , |11i, with corresponding probabil-
with m = 7 sampling qubits.
ities 0.1%, 55.4%, 42.5%, and 1.9%. We set the strike
price to K = 1.74.
To examine the behavior of the circuit for different
input probability distributions, we run eight experi-
ments that differ by the initial spot price S0 and all
other parameters are kept constant. The spot price
is varied from 1.8 to 2.5 in increments of 0.1. This
way we can use the same circuit for all experiments
and only vary the Y-rotation angles used to map the
initial probability distribution onto the qubit register.
This choice of input parameters allows us to evaluate
our circuits for expected option prices in the range
[0.0754, 0.7338].
Following the procedure detailed in Sec. 3.1, we con-
struct the circuits for A |0i3 and QA |0i3 , which corre-
spond to k = 0, 1 (i.e. m = 1) in Eq. (4), with n = 2.

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 12
We then perform repeated measurements of the cir- In the remainder of this section, we focus on
cuits, and by combining the measured probabilities for QA |0i3 , i.e., the outlined algorithm for m = 1, to
all k in a single likelihood function, we can perform a examine the reach of today’s quantum hardware in
maximum likelihood estimation for θa , hence obtain- evaluating AE option pricing circuits which do not
ing an estimate for a = E[f (S)] (see Eq. (6)), i.e. the require phase estimation. We note that this evalua-
expected payoff. Each experiment is evaluated on the tion is relevant to any quantum algorithm realizing
IBM Q Tokyo 20-qubit device with 8192 shots. We AE without phase estimation and is independent of
repeat each 8192-shot experiment 20 times and av- the approach described in [22] or any other particular
erage over the 20 measured probabilities in order to implementation.
limit the effect of any one-off issues with the device. After optimzing the gate count, the resulting circuit
The standard deviation of the measured probabilities for QA |0i3 consists of 18 CNOT gates and 33 single-
across the 20 runs was always < 2%. The connec- qubit gates. The detailed circuit diagram and applied
tivity of IBM Q Tokyo allows to choose three fully circuit optimization steps are provided in Appendix
connected qubits for the experiments, and thus, no B.
swaps are required to implement any two-qubit gate
in our circuits [37]. For all circuits described in the
following sections, we used qubits 6, 10 and 11. 5.2 Error mitigation and results
Note that even though we are only interested in the
We run the circuits for A |0i3 and QA |0i3 on noisy
result of a single qubit, we always measure all three
quantum hardware. The results are affected by read-
qubits to be able to apply readout error mitigation as
out errors and errors that occur during the execution
discussed later in Sec. 5.2.
of the circuits.
To mitigate readout errors we run a calibration se-
5.1 Algorithm and Operators quence in which we individually prepare and measure
We now show how to construct the operator A that is all eight basis states [37, 47]. The result is a 8 × 8
required for AE. The log-normal distribution on two readout-matrix R that holds the probability of mea-
qubits can be loaded using a single CNOT gate and suring each basis state as function of the basis state in
four single-qubit rotations [44]. To encode the payoff which the system was prepared. We use R to correct
function, we also exploit the small number of qubits all subsequent measurements. The error we measure
and apply a uniformly controlled Y-rotation instead on P1 for A |0i3 was reduced from ∼ 6% to ∼ 4%
of the generic construction using comparators intro- using readout error mitigation.
duced in Sec. 4. A uniformly controlled Y-rotation, Errors occuring during the quantum circuit can be
i.e. mitigated using Richardson extrapolation [48]. First,
the quantum circuit is run using a rescaled Hamil-
|iin |0i → |iin Ry (θi ) |0i , (38) tonian to amplify the effect of the noise. Second, a
implements a different rotation angle θi , i = 0, ..., 2n − Richardson extrapolation is used to extract the re-
1 for each state of the n-control qubits. For n = 2, sult of the quantum circuit at the zero noise limit.
this operation can be efficiently implemented using In hardware, error mitigation is done by stretching
four CNOT gates and four single qubit Y-rotations the duration of the gates. For each stretch factor the
[45, 46]. The resulting circuit implementing A is qubit gates need to be recalibrated [8]. Here, we use a
shown in Fig. 15. Note that in our setup, different simplified error mitigation protocol that circumvents
initial distributions only lead to different angles of the need to recalibrate the gates but still allows us to
the first four Y-rotations and do not affect the rest increase the accuracy of the quantum hardware [49].
of the circuit. Although we use a uniformly con- Since the single-qubit and CNOT gates have an aver-
trolled rotation, the rotation angles are constructed age randomized benchmarking fidelity of 99.7% and
in the same way described in Sec. 3.3. We use an ap- 97.8%, respectively, we restrict our error mitigation
proximation scaling of c = 0.25 and the resulting an- to the CNOT gates. Furthermore, because the opti-
gles are [θ0 , . . . , θ3 ] = [1.1781, 1.1781, 1.5708, 1.9635], mized circuit for A |0i3 contains only 4 CNOT gates,
which shows the piecewise linear structure of the pay- we employ the error mitigation protocol only when
off function. evaluating QA |0i3 which consists of 18 CNOT gates.
The total resulting circuit requires five CNOT gates We run the circuit for QA |0i3 three times. In each
and eight single-qubit Y-rotations, see Fig. 15. Since run we replace the CNOT gates of the original cir-
we use uniformly controlled rotations, we do not need cuit by one, three and five CNOT gates for a total
any ancilla qubit. Note that if we want to evaluate the of 18, 54, and 90 CNOT gates, respectively. Since
circuit for A alone, we can replace the last CNOT gate a pair of perfect CNOT gates simplifies to the iden-
in Fig. 15 by classical post-processing of the measure- tity these extra gates allow us to amplify the error
ment result: if q1 is measured as |1i, we flip q2 and of the CNOT gate without having to stretch the gate
otherwise we do nothing. This further reduces the duration, thus, avoiding the need to recalibrate the
overall CNOT gate count to four. gate parameters. As the number of CNOT gates is

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 13
Loading random distribution Evaluating payoff function
|q0 i Ry • Ry • •
1.43 1.10

|q1 i Ry Ry • •
2.90 -0.93

|q2 i Ry Ry Ry Ry
1.47 -0.10 0.10 -0.29

Figure 15: The A operator of the considered European call option: first, the 2-qubit approximation of a log-normal distribution
1
is loaded, and second, the piecewise linear payoff function is applied to last qubit controlled by the first two. This operator
can be used within amplitude estimation to evaluate the expected payoff of the corresponding option.

increased the probability of measuring |1i tends to- 7 Acknowledgments


wards 0.5 for all initial spot prices, see Fig. 16(b).
After applying a second-order Richardson extrapola-
tion, i.e quadratic extrapolation, we recover the same
behavior as the option price obtained from classical
simulations, see Fig. 16(c). Our simple error miti- The authors want to thank Abhinav Kandala for the
gation scheme dramatically increased the accuracy of very constructive discussions on error mitigation and
the calculated option price: it reduced the error, av- real quantum hardware experiments. C.Z. and R.I.
eraged over the initial spot price, from 62% to 21%. acknowledge the support of the National Centre of
Competence in Research Quantum Science and Tech-
nology (QSIT).

Opinions and estimates constitute our judgment as


6 Conclusion of the date of this Material, are for informational pur-
poses only and are subject to change without notice.
This Material is not the product of J.P. Morgan’s Re-
We have presented a methodology and the quantum search Department and therefore, has not been pre-
circuits to price options and option portfolios on a pared in accordance with legal requirements to pro-
gate-based quantum computer. We showed how to ac- mote the independence of research, including but not
count for some of the more complex features present limited to, the prohibition on the dealing ahead of
in exotic options such as path-dependency with bar- the dissemination of investment research. This Ma-
riers and averages. The results that we show are terial is not intended as research, a recommendation,
available in the finance module in Qiskit [37]. Fu- advice, offer or solicitation for the purchase or sale
ture work may involve calculating the price derivatives of any financial product or service, or to be used in
[50] with a quantum computer. Pricing options relies any way for evaluating the merits of participating in
on AE. This quantum algorithm allows a quadratic any transaction. It is not a research report and is not
speed-up compared to traditional Monte Carlo simu- intended as such. Past performance is not indicative
lations, but will most likely require a universal fault- of future results. Please consult your own advisors
tolerant quantum computer [51]. However, research regarding legal, tax, accounting or any other aspects
to improve the algorithms is ongoing [52–54]. Here including suitability implications for your particular
we have used a new algorithm [22] that retains the circumstances. J.P. Morgan disclaims any responsi-
AE speed-up but that uses less gates to measure the bility or liability whatsoever for the quality, accuracy
price of an option. Furthermore, we employed a sim- or completeness of the information herein, and for any
ple error mitigation scheme that allowed us to greatly reliance on, or use of this material in any way. Impor-
reduce the errors from the noisy quantum hardware. tant disclosures at: www.jpmorgan.com/disclosures
However, larger quantum hardware capable of run-
ning deeper quantum circuits with more qubits than
the currently available quantum computers is needed IBM, IBM Q, Qiskit are trademarks of Interna-
to price the typical portfolios seen in the financial tional Business Machines Corporation, registered in
industry. Future work could focus on reducing the many jurisdictions worldwide. Other product or ser-
number of quantum registers in our implementation vice names may be trademarks or service marks of
by performing some of the computation in-place. IBM or other companies.

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 14
(a) (b) (c)
Simulated Exact
Simulated 0.9 0.7 ML-estimate
Mitigated
0.55 Measured
ML-estimate (no mitigation)
1x

Option Price ($)


0.8 3x 0.6
5x
0.50

P1QA (%)
0.7 0.5
P1A (%)

0.45 0.6 0.4

0.5 0.3
0.40
0.4 0.2
0.35 0.1
0.3
1.8 1.9 2.0 2.1 2.2 2.3 2.4 2.5 1.8 1.9 2.0 2.1 2.2 2.3 2.4 2.5 1.8 1.9 2.0 2.1 2.2 2.3 2.4 2.5
S0 ($) S0 ($) S0 ($)

Figure 16: Error-mitigated hardware results for A |0i3 , QA |0i3 and the estimated option price after applying maximum
likelihood estimation as a function of the initial spot price S0 . (a) Probability of measuring |1i for the QA |0i3 circuit (see
Appendix B, Fig. 15) (b) Probability of measuring |1i for the QA |0i3 circuit (see Fig. 19). We show the measured probabilities
when replacing each CNOT by one, three and five CNOT gates (green, orange, red, respectively), the zero-noise limit calculated
using a second-order Richardson extrapolation method (purple), and the probability measured using the simulator (blue). (c)
Option price estimated with maximum likelihood estimation from measurements of QA |0i3 and A |0i3 with error mitigation
(purple) and without (green). The exact option price for each initial spot price S0 is shown in blue.

A Circuit implementation of weighted Based on the above setup, we build quantum cir-
cuits for the weighted sum operator using three el-
sum operator ementary gates: X (NOT), CNOT, and the Toffoli
gate (CCNOT). These three gates suffice to build any
A.1 Weighted sum of single qubits Boolean function [38]. Starting from the first column
In this appendix, we demonstrate an implementation in Ω, for each column j, we find all elements with
of the weighted sum operator on a quantum circuit. Ωi,j = 1 and add the corresponding state qubit |ai i
The weighted sum operator S computes the arith- to |sj i. The addition of two qubits involves three op-
metic sum of the values of n qubits |ain = |a1 . . . an i erations detailed in Fig. 17: (a) computation of the
weighted by n classically defined non-negative integer carry using a Toffoli gate (M), (b) computation of the
weights ω = (ω1 , ω2 , . . . , ωn ), and stores the result current digit using a CNOT (D), (c) reset of the carry
into another m-qubit register |sim = |s1 · · · sm i ini- computation using two X gates and one Toffoli gate
tialized to |0im . In other words, (M).
f When adding |ai i to the j-th qubit of the sum
n + register, the computation starts by applying M and
X then D to |ai i, |sj i and |cj i, which adds |ai i to |sj i
S |ain |0im = |ain ωi ai , (39)

and stores the carry into |cj i. Then, using the same
i=1 m two operations, it adds the carry |cj i to the next sum
where qubit |sj+1 i with carry recorded in |cj+1 i. The pro-
$ n
!%
X cess is iterated until all carries are handled. Finally,
m = log2 ωi + 1. (40) it resets the carry qubits by applying M f in reverse
i=0 order of the carry computation. We reset the carry
The choice of m ensures that the sum register |sim qubits in order to reuse them in later computations if
is large enough to hold the largest possible weighted necessary.
sum, i.e. the sum of all weights. Alternatively, we In general, we need max(k − 2, 0) carry qubits to
can write the weights in the form of a binary ma- compute the addition of |ai i on |sj i, where k ≥ 1 is
n×n∗ the smallest integer satisfying
trix Ω = (Ωi,j ) ∈ {0, 1} , where the i-th row
in Ω is the binary representation of weight ωi and s
k h1|ρj,j+k−1 |1ik = 0, (41)
n∗ = maxdi=1 ni . We use the convention that less sig-
nificant digits have smaller indices, so |s1 i and Ωi,1 where ρsj,j+k−1 is the density matrix corresponding to
are the least significant digits of the respective binary |sj · · · sj+k−1 i. In the k = 1 case, i.e. |sj i = 0, the
numbers. Using this binary matrix representation, S computation is reduced to “copying” |ai i to |sj i using
is to add the i-th qubit |ai i of the state register to the bit addition operator D, and no carries would be
the j-th qubit |sj i of the sum register if and only if produced. For k ≥ 2, Eq. (41) guarantees no carries
Ωi,j = 1. Depending on the values of the weights, an from |sj+k−1 i and beyond. Therefore we can directly
additional quantum register may be necessary to tem- compute the carry from |sj+k−2 i into |sj+k−1 i with-
porarily store the carries during addition operations. out worrying about additional carries. This eliminates
We use |cj i to denote the ancilla qubit used to store the need for an ancilla qubit |cj+k−2 i, and hence the
the carry from adding a digit to |sj i. These ancilla number of carry qubits needed is k − 2. To further
qubits are initialized to |0i and will be reset to their reduce the number of ancilla qubits, we can use any
initial states at the end of the computation. sum qubit |sj i = |0i during the computation. In our

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 15
|ai i or |cj−1 i • for k −2, since we may use some sum qubits as carries.
(a) |sj i M = • In other words, the number of ancilla qubits required
|sj+1 i or |cj i for S grows at most logarithmically with the number
of state qubits n.
|ai i or |cj i •
(b) D = A.2 Sum of multi-qubit integers
|sj i
The weighted sum operator S can be used to calculate
|ai i or |cj−1 i • the sum of d multi-qubit positive integers on a quan-
(c) |sj i f = • X
tum register. To do that we first prepare the input
M X
register in the state
|cj i |0i
d
(1) (d)
X
|ain = |a1 . . . a(1) (d)
n1 . . . a1 . . . and i , n= ni ,
Figure 17: Three component gates used to construct the i=1
weighted sum operator S. (a) The carry operator M con- (45)
(i) (i)
sisting of one Toffoli gate, which computes the carry from where |a1 . . . ani i , i ∈ [1, d] is the binary representa-
adding |ai i (or |cj−1 i) and |sj i into |sj+1 i or |cj i. (b) The tion of the i-th integer to sum with ni qubits, least
bit addition operator D consisting of one CNOT gate, which significant figure first. Then we set the weights as
adds the state qubit |ai i or the carry qubit from the previ-
ous digit |cj−1 i to the sum qubit |sj i. (c) The carry reset ω = (20 , . . . , 2n1 −1 , . . . , 20 , . . . , 2nd −1 ), (46)
operator M f consisting of two X gates and one Toffoli gate,
which resets the carry qubit |cj i back to |0i. or equivalently,
T
Ωn×n∗ = InT1 ×n∗ , . . . , InTd ×n∗ , (47)
case, since we are processing Ω column by column, all
sum qubits more significant than |sj+k−1 i would be 
where Ini ×n∗ = Ini , 0ni ×(n∗ −ni ) , i ∈ [1, d] and Ini is
|0i. In other words, we have the last m − (j + k − 1) the ni -dimensional identity matrix. Now if we build
sum qubits usable as carry qubits in the computation a weighted sum operator based on the weights in
described above. Eq. (46) and apply it on the input state qubits in
As the weights are known at the time of building the Eq. (45), we would have the sum of the d integers in
circuit, the possible states that |sim can have before |sim .
each addition of a state qubit |ai i are also computable. Fig. 18 shows an example circuit computing the
Since we are adding |ai i to |sim starting from the least sum of two 3-digit binary numbers represented on a
significant bit, k equals the bit length of the maximum 6-qubit quantum register |ai3 |bi3 , and storing the re-
possible sum on |sj . . . sm i after adding |ai i to |sj i. In sult into a 4-qubit register |si4 . The circuit is imple-
other words, mented by a weighted sum operator S with weights



 ω = (1, 2, 4, 1, 2, 4). The addition of each qubit onto
 X
 Ω u,v

 the sum qubits requires one carry gate (M) followed
k = log2   + 1. (42) by one addition gate (D), except for the first bit |a1 i
2j−v 
u≤i, or which does not have any carries before its addition.
v≤j
This results in a total of 6 CNOT (D) gates and 5
Therefore, the number of carry operations and addi- Toffoli (M) gates. The 11 gates are grouped in three
tional ancilla qubits required for each addition of |ai i groups, as is shown in Fig. 18 by dashed boxes. Each
can be determined. The term in the b·c in Eq. (42) is group computes the sum of the bits |aj i and |bj i into
upper-bounded by |sj i and the carry into |sj+1 i. Note that separate
m carry qubits are not required, therefore no carry reset
X Ωu,v X nmax operators M f are used. In fact, using the above con-
v
≤ < 2nmax ≤ 2n, (43)
2 j=1
2j−1 struction for S, no extra carry qubits will be required
u≤i, or
v≤j for the addition of any two binary numbers. In gen-
where nmax = maxm
P eral, S requires at most blog2 dc ancilla qubits for car-
j=1 i=1 nΩi,j is the maximum
number of 1’s in a column of Ω. It immediately follows rying operations, which directly comes from Eq. (44).
that the number of non-trivial carry operations (i.e.
carry operations that requires M) f required to add |ai i A.3 Weighted sum of multi-qubit integers
to |sj . . . sm i is upper-bounded by In addition to summing up d integers equally, a weight
k − 2 < log2 bnmax c ≤ log2 bnc , (44) wi may also be added to each integer a(i) . In that
case, the weight matrix would be
and the number of ancilla qubits required for the en- T
tire implementation of S is at most the upper bound Ω = w1 · InT1 ×n∗ , . . . , wd · InTd ×n∗ . (48)

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 16
|a1 + b1 i → |s1 s2 i
 |a2 + b2 i → |s2 s3 i
a1 : •
|a3 + b3 i → |s3 s4 i
|ai3 a2 : • •
a : • •
 3
b1 : • •
|bi3 b2 : • •
b : • • 
 3 

s 1 : |0i • 


s 

|si4 2 : |0i • •
  |a + bi4
s : |0i • • 
 3
 


s4 : |0i

Figure 18: A circuit computing the sum of binary numbers |ai3 and |bi3 into |si4 implemented using the weighted sum operator
with weights ω = (1, 2, 4, 1, 2, 4).

In the case where wi are not integers, we can rescale cel each other. This reduces the CNOT gate count for
the values represented on the quantum register by a QA |0i3 to 18 and the resulting circuit is reported in
common factor to make all weights integers. For ex- Fig. 19.
ample, if we are adding two numbers with weights 0.2
and 0.8, we could use integer weights of w1 = 1 and
w2 = 4 instead, and reinterpret the resulting sum in References
postprocessing by dividing it by 5.
[1] John C. Hull, Options, futures, and other deriva-
tives, 6th ed. (Pearson Prentice Hall, Upper Sad-
B Optimized Circuit for QA |0i3 dle River, NJ [u.a.], 2006).
[2] Fischer Black and Myron Scholes, “The pricing
In the following, we describe the circuit used for of options and corporate liabilities,” Journal of
QA |0i3 requiring only 18 CNOT gates. We have Political Economy 81, 637–654 (1973).
that Q = −AS0 A† Sψ0 , where S0 = 1 − 2 |0i h0| and [3] Bruno Dupire, “Pricing with a smile,” Risk Mag-
Sψ0 = 1 − 2 |ψ0 i |0i hψ0 | h0| perform reflections on |0i3 azine , 18–20 (1994).
and |ψ0 i2 |0i, respectively. Sψ0 can be implemented [4] Phelim P. Boyle, “Options: A Monte Carlo ap-
up to a global phase using a single-qubit Z-gate on proach,” Journal of Financial Economics 4, 323–
the last qubit, which is sufficient to differentiate be- 338 (1977).
tween |ψ0 i |0i and |ψ1 i |1i. S0 is a bit more difficult [5] Paul Glasserman, Monte Carlo Methods in Fi-
and we use circuit synthesis for diagonal unitary ma- nancial Engineering (Springer-Verlag New York,
trices to achieve an efficient decomposition into gates 2003) p. 596.
[55]. This construction lead to 16 CNOT gates for Q [6] Michael A. Nielsen and Isaac L. Chuang, Cam-
and 21 for QA, which was still a bit too much to run bridge University Press (2010) p. 702.
on real hardware. [7] Abhinav Kandala, Antonio Mezzacapo, Kristan
To further reduce the CNOT count, we look at the Temme, Maika Takita, Markus Brink, Jerry M.
full circuit QA |0i3 and we applied the following opti- Chow, and Jay M. Gambetta, “Hardware-
mization steps. The last part in Q is the application efficient variational quantum eigensolver for
of A. As mentioned in Sec. 5, we can drop the very small molecules and quantum magnets,” Nature
last CNOT gate and apply it in a classical postpro- 549, 242 (2017).
cessing. Furthermore, in QA |0i3 , we have Sψ0 be- [8] Abhinav Kandala, Kristan Temme, Antonio
tween A and A† , i.e. A† Sψ0 A, where the uniformly D. Corcoles, Antonio Mezzacapo, Jerry M.
controlled Y -rotations in A (A† ) are right before (af- Chow, and Jay M. Gambetta, “Error mitigation
ter) Sψ0 . On the other hand, the Z-gate that im- extends the computational reach of a noisy quan-
plements Sψ0 can be decomposed into an X-rotation tum processor,” Nature 567, 491–495 (2019).
and a Y -rotation. The Y -rotation can subsequently [9] N. Moll, P. Barkoutsos, L. S. Bishop, J. M. Chow,
be absorbed into one of the uniformly controlled Y - A. Cross, D. J. Egger, S. Filipp, A. Fuhrer, J. M.
rotations in A or A† , changing the angles accordingly. Gambetta, M. Ganzhorn, A. Kandala, A. Mez-
Since the remaining X-rotation commutes with the zacapo, P. Müller, W. Riess, G. Salis, J. Smolin,
two neighboring CNOT gates from A and A† , we can I. Tavernelli, and K. Temme, “Quantum opti-
move the X-rotation so that the two CNOT gates can- mization using variational algorithms on near-

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 17
A Sψ0 A†
q0 : |0 Ry Ry Ry Ry Rz
1.43 1.10 1.10 1.43 0.79

q1 : |0 Ry Ry Ry Ry
2.90 0.93 0.93 2.90

q2 : |0 Ry Ry Ry Ry Rx Ry Ry Ry Ry Ry
1.47 9.8e-2 9.8e-2 0.29 3.14 0.29 9.8e-2 9.8e-2 3.14 1.47

S0 A
q0 Rz Rz Rz Ry Ry
0.79 0.79 0.79 1.43 1.10

q1 Rz Rz Ry Ry
0.79 0.79 2.90 0.93

q2 Rz Ry Ry Ry Ry
0.79 1.47 9.8e-2 9.8e-2 0.29

Figure 19: The optimized circuit for QA |0i3 used for the experiments on real quantum hardware. It requires 18 CNOT gates
and 33 single qubit gates. The initial spot price is assumed to be equal to 2. The dashed boxes indicate which parts are used
for A, A† , Sψ0 , and S0 . Note that due to the circuit optimization, some boxes are slightly overlapping.

term quantum devices,” Quantum Science and [19] Christa Zoufal, Aurélien Lucchi, and Stefan Wo-
Technology 3, 030503 (2018). erner, “Quantum generative adversarial networks
[10] M. Ganzhorn, D.J. Egger, P. Barkoutsos, P. Ol- for learning and loading random distributions,”
litrault, G. Salis, N. Moll, M. Roth, A. Fuhrer, npj Quantum Information 5, 1–9 (2019).
P. Mueller, S. Woerner, I. Tavernelli, and S. Fil- [20] Ana Martin, Bruno Candelas, Angel Rodriguez-
ipp, “Gate-efficient simulation of molecular eigen- Rozas, Jose D. Martin-Guerrero, Xi Chen, Lu-
states on a quantum computer,” Phys. Rev. Ap- cas Lamata, Roman Orus, Enrique Solano, and
plied 11, 044092 (2019). Mikel Sanz, “Towards pricing financial deriva-
[11] Aram W. Harrow, Avinatan Hassidim, and Seth tives with an ibm quantum computer,” (2019),
Lloyd, “Quantum algorithm for linear systems of arXiv:1904.05803 .
equations,” Phys. Rev. Lett. 103, 150502 (2009). [21] Gilles Brassard, Peter Hoyer, Michele Mosca,
[12] Seth Lloyd, Masoud Mohseni, and Patrick and Alain Tapp, “Quantum Amplitude Ampli-
Rebentrost, “Quantum principal component fication and Estimation,” Contemporary Mathe-
analysis,” Nature Physics 10, 631–633 (2014). matics 305 (2002), 10.1090/conm/305/05215.
[22] Yohichi Suzuki, Shumpei Uno, Rudy Ray-
[13] Jacob Biamonte, Peter Wittek, Nicola Pan-
mond, Tomoki Tanaka, Tamiya Onodera, and
cotti, Patrick Rebentrost, Nathan Wiebe, and
Naoki Yamamoto, “Amplitude estimation with-
Seth Lloyd, “Quantum machine learning,” Na-
out phase estimation,” Quantum Information
ture 549, 195–202 (2017).
Processing 19, 75 (2020).
[14] Vojtech Havlicek, Antonio D. Corcoles, Kristan
[23] Reuven Y. Rubinstein, Simulation and the Monte
Temme, Aram W. Harrow, Abhinav Kandala,
Carlo Method , Wiley Series in Probability and
Jerry M. Chow, and Jay M. Gambetta, “Super-
Statistics (Wiley, 1981).
vised learning with quantum-enhanced feature
[24] Daniel S Abrams and Colin P Williams, “Fast
spaces,” Nature 567, 209 – 212 (2019).
quantum algorithms for numerical integrals
[15] Roman Orus, Samuel Mugel, and En- and stochastic processes,” (1999), arxiv:quant-
rique Lizaso, “Quantum computing for finance: ph/9908083 .
Overview and prospects,” Reviews in Physics 4, [25] Ashley Montanaro, “Quantum speedup of monte
100028 (2019). carlo methods,” Proceedings of the Royal
[16] Patrick Rebentrost and Seth Lloyd, “Quan- Society of London A: Mathematical, Phys-
tum computational finance: quantum algo- ical and Engineering Sciences 471 (2015),
rithm for portfolio optimization,” (2018), 10.1098/rspa.2015.0301.
arXiv:1811.03975 . [26] A. Yu. Kitaev, “Quantum measurements and
[17] Stefan Woerner and Daniel J. Egger, “Quantum the Abelian Stabilizer Problem,” (1995),
risk analysis,” npj Quantum Information 5, 15 arXiv:quant-ph/9511026 .
(2019). [27] R. Cleve, A. Ekert, C. Macchiavello, and
[18] Patrick Rebentrost, Brajesh Gupt, and M. Mosca, “Quantum algorithms revisited,” Pro-
Thomas R. Bromley, “Quantum computational ceedings of the Royal Society of London. Series
finance: Monte carlo pricing of financial deriva- A: Mathematical, Physical and Engineering Sci-
tives,” Phys. Rev. A 98, 022321 (2018). ences 454, 339–354 (1998).

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 18
[28] Paul Glasserman, Philip Heidelberger, and Per- Martín-Fernández, Douglas T. McClure, David
wez Shahabuddin, “Efficient Monte Carlo Meth- McKay, Srujan Meesala, Antonio Mezzacapo,
ods for Value-at-Risk,” in Mastering Risk, Vol. 2 Nikolaj Moll, Diego Moreda Rodríguez, Gi-
(2000) pp. 5–18. acomo Nannicini, Paul Nation, Pauline Olli-
[29] Robert C. Merton, “Theory of rational option trault, Lee James O’Riordan, Hanhee Paik,
pricing,” The Bell Journal of Economics and Jesús Pérez, Anna Phan, Marco Pistoia, Vik-
Management Science 4, 141–183 (1973). tor Prutyanov, Max Reuter, Julia Rice, Ab-
[30] Lov Grover and Terry Rudolph, “Creating super- dón Rodríguez Davila, Raymond Harry Putra
positions that correspond to efficiently integrable Rudy, Mingi Ryu, Ninad Sathaye, Chris Schn-
probability distributions,” (2002), arXiv:quant- abel, Eddie Schoute, Kanav Setia, Yunong Shi,
ph/0208112 . Adenilton Silva, Yukio Siraichi, Seyon Sivara-
[31] Adriano Koshiyama, Nick Firoozye, and Philip jah, John A. Smolin, Mathias Soeken, Hitomi
Treleaven, “Generative adversarial networks for Takahashi, Ivano Tavernelli, Charles Taylor, Pete
financial trading strategies fine-tuning and com- Taylour, Kenso Trabing, Matthew Treinish, Wes
bination,” (2019), arXiv:1901.01751 . Turner, Desiree Vogt-Lee, Christophe Vuillot,
[32] Blanka Horvath, Aitor Muguruza, and Mehdi Jonathan A. Wildstrom, Jessica Wilson, Er-
Tomas, “Deep learning volatility,” SSRN Elec- ick Winston, Christopher Wood, Stephen Wood,
tronic Journal (2019), 10.2139/ssrn.3322085. Stefan Wörner, Ismail Yunus Akhalwaya, and
[33] Martin Plesch and Časlav Brukner, “Quantum- Christa Zoufal, “Qiskit: An open-source frame-
state preparation with universal gate decomposi- work for quantum computing,” (2019).
tions,” Phys. Rev. A 83, 032302 (2011). [38] Vlatko Vedral, Adriano Barenco, and Artur Ek-
[34] Ian Goodfellow, Jean Pouget-Abadie, Mehdi ert, “Quantum networks for elementary arith-
Mirza, Bing Xu, David Warde-Farley, Sher- metic operations,” Phys. Rev. A 54, 147–153
jil Ozair, Aaron Courville, and Yoshua Ben- (1996).
gio, “Generative adversarial nets,” in Advances [39] Thomas G Draper, “Addition on a Quantum
in Neural Information Processing Systems 27, Computer,” (2000), arXiv:quant-ph/0008033 .
edited by Z. Ghahramani, M. Welling, C. Cortes, [40] Thomas G Draper, Samuel A Kutin, Eric M
N. D. Lawrence, and K. Q. Weinberger (Curran Rains, and Krysta M Svore, “A logarithmic-
Associates, Inc., 2014) pp. 2672–2680. depth quantum carry-lookahead adder,” Quan-
[35] Adriano Barenco, Charles H. Bennett, Richard tum Information and Computation 6, 351–369
Cleve, David P. Divincenzo, Norman Margolus, (2006), arXiv:quant-ph/0406142 .
Peter Shor, Tycho Sleator, John A. Smolin, and [41] Ghasem Tarmast, “Multivariate Log-Normal
Harald Weinfurter, “Elementary gates for quan- Distribution,” International Statistical Institute
tum computation,” Phys. Rev. A 52, 3457–3467 Proceedings: 53rd Session, Seoul (2001).
(1995). [42] Emmanuel Gobet, “Advanced monte carlo meth-
[36] Steven A Cuccaro, Thomas G Draper, Samuel A ods for barrier and related exotic options,”
Kutin, and David Petrie Moulton, “A new Handbook of Numerical Analysis, 15, 497 – 528
quantum ripple-carry addition circuit,” (2004), (2009).
arxiv:quant-ph/0410184 . [43] Pavel V. Shevchenko and Pierre Del Moral, “Val-
[37] Gadi Aleksandrowicz, Thomas Alexander, Pana- uation of barrier options using sequential monte
giotis Barkoutsos, Luciano Bello, Yael Ben- carlo,” Journal of Computational Finance 20,
Haim, David Bucher, Francisco Jose Cabrera- 107–135 (2014).
Hernández, Jorge Carballo-Franquis, Adrian [44] M. Žnidarič, O. Giraud, and B. Georgeot, “Opti-
Chen, Chun-Fu Chen, Jerry M. Chow, An- mal number of controlled-not gates to generate a
tonio D. Córcoles-Gonzales, Abigail J. Cross, three-qubit state,” Physical Review A 77, 032320
Andrew Cross, Juan Cruz-Benito, Chris Cul- (2008).
ver, Salvador De La Puente González, En- [45] Vivek V Shende, Stephen S Bullock, and Igor L
rique De La Torre, Delton Ding, Eugene Du- Markov, “Synthesis of quantum-logic circuits,”
mitrescu, Ivan Duran, Pieter Eendebak, Mark IEEE Transactions on Computer-Aided Design
Everitt, Ismael Faro Sertage, Albert Frisch, of Integrated Circuits and Systems 25, 1000–
Andreas Fuhrer, Jay Gambetta, Borja Godoy 1010 (2006).
Gago, Juan Gomez-Mosquera, Donny Green- [46] Raban Iten, Oliver Reardon-Smith, Luca Mon-
berg, Ikko Hamamura, Vojtech Havlicek, Joe dada, Ethan Redmond, Ravjot Singh Kohli,
Hellmers, Łukasz Herok, Hiroshi Horii, Shao- and Roger Colbeck, “Introduction to UniversalQ-
han Hu, Takashi Imamichi, Toshinari Itoko, Compiler,” (2019), arXiv:1904.01072 .
Ali Javadi-Abhari, Naoki Kanazawa, Anton [47] A. Dewes, F. R. Ong, V. Schmitt, R. Lauro,
Karazeev, Kevin Krsulich, Peng Liu, Yang Luh, N. Boulant, P. Bertet, D. Vion, and D. Esteve,
Yunho Maeng, Manoel Marques, Francisco Jose “Characterization of a two-transmon processor

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 19
with individual single-shot qubit readout,” Phys.
Rev. Lett. 108, 057002 (2012).
[48] Kristan Temme, Sergey Bravyi, and Jay M.
Gambetta, “Error mitigation for short-depth
quantum circuits,” Phys. Rev. Lett. 119, 180509
(2017).
[49] E. F. Dumitrescu, A. J. McCaskey, G. Hagen,
G. R. Jansen, T. D. Morris, T. Papenbrock, R. C.
Pooser, D. J. Dean, and P. Lougovski, “Cloud
quantum computing of an atomic nucleus,” Phys.
Rev. Lett. 120, 210501 (2018).
[50] Mark Broadie and Paul Glasserman, “Es-
timating security price derivatives using
simulation,” Management Science 42 (1996),
10.1287/mnsc.42.2.269.
[51] Austin G. Fowler, Matteo Mariantoni, John M.
Martinis, and Andrew N. Cleland, “Surface
codes: Towards practical large-scale quantum
computation,” Phys. Rev. A 86, 032324 (2012).
[52] Miroslav Dobšíček, Göran Johansson, Vitaly
Shumeiko, and Göran Wendin, “Arbitrary ac-
curacy iterative quantum phase estimation algo-
rithm using a single ancillary qubit: A two-qubit
benchmark,” Phys. Rev. A 76, 030306 (2007).
[53] C. J. O’Loan, “Iterative phase estimation,” Jour-
nal of Physics A: Mathematical and Theoretical
43 (2010), 10.1088/1751-8113/43/1/015301.
[54] Krysta M Svore, Matthew B Hastings, and
Michael Freedman, “Faster phase estimation,”
Quantum Information & Computation 14, 306–
328 (2014), arXiv:1304.0741 .
[55] S.S. Bullock and I.L. Markov, “Smaller circuits
for arbitrary n-qubit diagonal computations,”
Quantum Information & Computation 4, 027–
047 (2004), arXiv:quant-ph/0303039 .

Accepted in Quantum 2020-06-24, click title to verify. Published under CC-BY 4.0. 20

You might also like