Skip to content

General-purpose SDKs

qiskit-finance

Maintained by Qiskit

Quantum Finance

PythonApache-2.0
qiskit-finance illustration

Resource snapshot

Category

General-purpose SDKs

Stars

319

Last pushed

Dec 12, 2025Updated 9mo ago

Open issues

12

Quickstart

Get running in a few lines.

Quickstart
import numpy as np
from qiskit.primitives import Sampler
from qiskit_algorithms import AmplitudeEstimation
from qiskit_finance.circuit.library import NormalDistribution
from qiskit_finance.applications import FixedIncomePricing

# Create a suitable multivariate distribution
num_qubits = [2, 2]
bounds = [(0, 0.12), (0, 0.24)]
mvnd = NormalDistribution(
    num_qubits, mu=[0.12, 0.24], sigma=0.01 * np.eye(2), bounds=bounds
)

# Create fixed income component
fixed_income = FixedIncomePricing(
    num_qubits,
    np.eye(2),
    np.zeros(2),
    cash_flow=[1.0, 2.0],
    rescaling_factor=0.125,
    bounds=bounds,
    uncertainty_model=mvnd,
)

# the FixedIncomeExpectedValue provides us with the necessary rescalings

# create the A operator for amplitude estimation
problem = fixed_income.to_estimation_problem()

# Set number of evaluation qubits (samples)
num_eval_qubits = 5

# Construct and run amplitude estimation
sampler = Sampler()
algo = AmplitudeEstimation(num_eval_qubits=num_eval_qubits, sampler=sampler)
result = algo.estimate(problem)

print(f"Estimated value:\t{fixed_income.interpret(result):.4f}")
print(f"Probability:    \t{result.max_probability:.4f}")

What it is

qiskit-finance is maintained by Qiskit and sits in the General-purpose SDKs lane of the open-source quantum map.

Quantum Finance It commonly appears alongside qiskit-qiskit in example workflows.

Last verified by Qtangl generator on May 27, 2026

Who it's for

Developers who want a broad entry point for building circuits, experimenting with algorithms, and integrating quantum workflows into larger applications.

What you can build or learn

  • Prototype end-to-end circuit workflows without committing to a niche backend too early.
  • Learn how the project represents circuits, gates, jobs, and results.
  • Compare how a major ecosystem frames practical quantum development.

Plays well with

License

Apache-2.0

SPDX identifier detected from the repository metadata or license files.

Repository README

Preview from the project README.

Rendered as Markdown inside a scrollable preview. Long READMEs stay contained; expand or open on GitHub for the full document.

~444 words · about 2 min readOpen on GitHub

Qiskit Finance

Qiskit Finance is an open-source framework that contains uncertainty components for stock/securities problems, applications, such as portfolio optimization, and data providers to source real or random data to finance experiments.

Installation

We encourage installing Qiskit Finance via the pip tool (a python package manager).

pip install qiskit-finance

pip will handle all dependencies automatically and you will always install the latest (and well-tested) version.

If you want to work on the very latest work-in-progress versions, either to try features ahead of their official release or if you want to contribute to Finance, then you can install from source. To do this follow the instructions in the documentation.


Creating Your First Finance Programming Experiment in Qiskit

Now that Qiskit Finance is installed, it's time to begin working with the finance module. Let's try an experiment using Amplitude Estimation algorithm to evaluate a fixed income asset with uncertain interest rates.

import numpy as np
from qiskit.primitives import Sampler
from qiskit_algorithms import AmplitudeEstimation
from qiskit_finance.circuit.library import NormalDistribution
from qiskit_finance.applications import FixedIncomePricing

# Create a suitable multivariate distribution
num_qubits = [2, 2]
bounds = [(0, 0.12), (0, 0.24)]
mvnd = NormalDistribution(
    num_qubits, mu=[0.12, 0.24], sigma=0.01 * np.eye(2), bounds=bounds
)

# Create fixed income component
fixed_income = FixedIncomePricing(
    num_qubits,
    np.eye(2),
    np.zeros(2),
    cash_flow=[1.0, 2.0],
    rescaling_factor=0.125,
    bounds=bounds,
    uncertainty_model=mvnd,
)

# the FixedIncomeExpectedValue provides us with the necessary rescalings

# create the A operator for amplitude estimation
problem = fixed_income.to_estimation_problem()

# Set number of evaluation qubits (samples)
num_eval_qubits = 5

# Construct and run amplitude estimation
sampler = Sampler()
algo = AmplitudeEstimation(num_eval_qubits=num_eval_qubits, sampler=sampler)
result = algo.estimate(problem)

print(f"Estimated value:\t{fixed_income.interpret(result):.4f}")
print(f"Probability:    \t{result.max_probability:.4f}")

When running the above the estimated value result should be 2.46 and probability 0.8487.

Further examples

Learning path notebooks may be found in the finance tutorials section of the documentation and are a great place to start.


Contribution Guidelines

If you'd like to contribute to Qiskit, please take a look at our contribution guidelines. This project adheres to Qiskit's code of conduct. By participating, you are expected to uphold this code.

We use GitHub issues for tracking requests and bugs. Please join the Qiskit Slack community and for discussion and simple questions. For questions that are more suited for a forum, we use the Qiskit tag in Stack Overflow.

Authors and Citation

Finance was inspired, authored and brought about by the collective work of a team of researchers. Finance continues to grow with the help and work of many people, who contribute to the project at different levels. If you use Qiskit, please cite as per the provided BibTeX file.

License

This project uses the Apache License 2.0.

Read on GitHub

Activity

Latest release

—

Watchers

12

Python support

—

Learn digest

Get monthly updates when library entries change.

Monthly digest: new library entries, updated flagships, and one editorial pick.

Related resources

Keep exploring nearby tools.

quantumlib

Cirq

Python framework for creating, editing, and running Noisy Intermediate-Scale Quantum (NISQ) circuits.

PythonApache-2.0Flagship

4,971 stars · Updated 3mo ago

XanaduAI

pennylane

PennyLane is an open-source quantum software platform for quantum computing, quantum machine learning, and quantum chemistry.

PythonApache-2.0FlagshipQtangl relevant

3,229 stars · Updated 3mo ago

QISKit

qiskit

Qiskit is an open-source SDK for working with quantum computers at the level of extended quantum circuits, operators, and primitives.

PythonApache-2.0FlagshipQtangl relevant

7,412 stars · Updated 3mo ago

Qiskit

qiskit-terra

Qiskit is an open-source SDK for working with quantum computers at the level of extended quantum circuits, operators, and primitives.

PythonApache-2.0

7,412 stars · Updated 3mo ago

Microsoft

QuantumKatas

Tutorials and programming exercises for learning Q# and quantum computing

Jupyter NotebookMITFlagshipArchive

4,862 stars · Updated 2y ago

QuantumBFS

Yao.jl

Extensible, Efficient Quantum Algorithm Design for Humans.

JuliaApache-2.0Flagship

1,032 stars · Updated 3mo ago