Skip to main content

Orderbook

License Python PyPi coverage-lines coverage-functions

A fast L2/L3 orderbook data structure, in C, for Python

Installation

Python 3.13+ supported. uv is preferred and will be utilized throughout this document.

To add it to a project uv add order-book or, to install it into an environment directly, uv pip install order-book

Installing from a checkout of this repository: uv pip install . (note a C compiler is required).

Basic Usage

from decimal import Decimal

import requests
from order_book import OrderBook

ob = OrderBook()

# get some orderbook data
data = requests.get("https://api.exchange.coinbase.com/products/BTC-USD/book?level=2").json()

ob.bids = {Decimal(price): size for price, size, _ in data['bids']}
ob.asks = {Decimal(price): size for price, size, _ in data['asks']}

# OR

for side in data:
    # there is additional data we need to ignore
    if side in {'bids', 'asks'}:
        ob[side] = {Decimal(price): size for price, size, _ in data[side]}


# Data is accessible by .index(), which returns a tuple of (price, size) at that level in the book
price, size = ob.bids.index(0)
print(f"Best bid price: {price} size: {size}")

price, size = ob.asks.index(0)
print(f"Best ask price: {price} size: {size}")

print(f"The spread is {ob.asks.index(0)[0] - ob.bids.index(0)[0]}\n\n")

# Negative indexes work as well, so the worst bid/ask is index -1
print(f"Worst bid: {ob.bids.index(-1)}")

# Data is accessible via iteration
# Note: bids/asks are iterators
print("Top 10 bids")
for count, price in enumerate(ob.bids):
    if count == 10:
        break
    print(f"Price: {price} Size: {ob.bids[price]}")


print("\n\nTop 10 asks")
for count, price in enumerate(ob.asks):
    if count == 10:
        break
    print(f"Price: {price} Size: {ob.asks[price]}")


# Membership tests and len() work as expected
print(f"\nBest bid still in book: {ob.bids.index(0)[0] in ob.bids}")
print(f"Bid levels: {len(ob.bids)}, ask levels: {len(ob.asks)}, both sides: {len(ob)}")


# Data can be exported to a sorted dictionary
# In Python3.7+ dictionaries remain in insertion ordering. The
# dict returned by .to_dict() has had its keys inserted in sorted order
print("\n\nTop 3 asks, as a dictionary")
print(dict(list(ob.asks.to_dict().items())[:3]))


# Data can also be exported as an ordered list
# .to_list() returns a list of (price, size) tuples
print("\nTop 5 Asks")
print(ob.asks.to_list()[:5])
print("\nTop 5 Bids")
print(ob.bids.to_list()[:5])


# .keys() returns the sorted prices as a tuple
print("\nTop 5 ask prices")
print(ob.asks.keys()[:5])


# .items() returns an iterator over price, size pairs
print("\nTop 5 asks as (price, size) pairs")
for count, (price, size) in enumerate(ob.asks.items()):
    if count == 5:
        break
    print(f"Price: {price} Size: {size}")


# The entire book can be exported at once. The keys are 'bid' and 'ask' (singular)
book = ob.to_dict()
print(f"\nto_dict() keys: {list(book)}")

Both sides accept any of bid, bids, BID, BIDS (and the ask equivalents), as attributes or as keys:

from order_book import OrderBook

ob = OrderBook()

ob.bids[100] = "1.5"     # attribute access
ob['bids'][99] = "2.0"   # key access
ob['BID'][98] = "0.5"    # case does not matter

print(ob.bid.to_list())  # [(100, '1.5'), (99, '2.0'), (98, '0.5')]

# assigning a dict to a side replaces that side wholesale
ob.asks = {101: "1.0", 102: "3.0"}
print(ob.asks.to_list())  # [(101, '1.0'), (102, '3.0')]

# levels are removed with del
del ob.asks[101]
print(ob.asks.to_list())  # [(102, '3.0')]

Max Depth

max_depth limits how many levels are visible. len(), iteration, keys(), index(), to_dict() and to_list() all respect it.

from order_book import OrderBook

ob = OrderBook(max_depth=3)
ob.bids = {price: price for price in range(10)}

print(len(ob.bids))        # 3
print(ob.bids.to_list())   # [(9, 9), (8, 8), (7, 7)]
print(ob.max_depth)        # 3

By default the levels beyond max_depth are still retained internally, they are just hidden. Pass max_depth_strict=True to have them deleted as the book is updated, which caps memory use but means out-of-depth levels can no longer be accessed:

from order_book import OrderBook

ob = OrderBook(max_depth=3, max_depth_strict=True)
for price in range(10):
    ob.bids[price] = price

print(ob.bids.to_list())   # [(9, 9), (8, 8), (7, 7)]

try:
    del ob.bids[0]         # level 0 was dropped, not merely hidden
except KeyError:
    print("level 0 is gone")

Checksums

Several exchanges publish a CRC32 checksum of the top of book so clients can detect a desynchronized book. Construct the book with checksum_format set to the exchange, then compare ob.checksum() against the value the exchange sent.

Supported formats: KRAKEN, OKX/OKCOIN, BITGET, and BITFINEX.

from decimal import Decimal

from order_book import OrderBook

ob = OrderBook(checksum_format='KRAKEN')

ob.bids = {Decimal(f"{100 - i}.{i:02d}"): Decimal(f"{i + 1}.5") for i in range(10)}
ob.asks = {Decimal(f"{101 + i}.{i:02d}"): Decimal(f"{i + 1}.5") for i in range(10)}

print(ob.checksum())

Type conversion

to_dict() on either an OrderBook or a SortedDict accepts from_type and to_type keyword arguments, which convert keys and values as the dictionary is built. from_type restricts the conversion to values of that type; omit it to convert everything.

from order_book import OrderBook

ob = OrderBook()
ob.bids = {'1.1': 2, '3.3': 4}
ob.asks = {'5.5': 6, '7.7': 8}

print(ob.to_dict(from_type=str, to_type=float))
# {'bid': {3.3: 4, 1.1: 2}, 'ask': {5.5: 6, 7.7: 8}}
# note the bid side is in descending order, as always

API Summary

OrderBook(max_depth=0, max_depth_strict=False, checksum_format=None)

Member Description
.bids / .bid / .asks / .ask the SortedDict for that side; assigning a dict replaces the side
ob[key] same sides, by key. bid, bids, ask, asks, any case
.max_depth the configured max depth (read only)
.to_dict(from_type=None, to_type=None) {'bid': {...}, 'ask': {...}}
.checksum() CRC32 checksum in the configured exchange's format
len(ob) total number of levels across both sides

SortedDict(data=None, ordering='ASC', max_depth=0, truncate=False)

Member Description
.keys() tuple of keys in sorted order
.index(n) (key, value) tuple at position n; negative indexes supported
.to_dict(from_type=None, to_type=None) dict with keys inserted in sorted order
.to_list() list of (key, value) tuples in sorted order
.truncate() drop everything past max_depth
sd[key], sd[key] = v, del sd[key], key in sd, len(sd), iteration as expected; iteration yields keys in sorted order

Main Features

  • Sides maintained in correct order
  • Can perform orderbook checksums
  • Supports max depth and depth truncation
  • Free-threaded Python support

Running code coverage

The script coverage.sh will compile the source using the -coverage CFLAG, run the unit tests, and build a coverage report in HTML. It manages its own environment via uv, so it can be run directly.

Note that it rebuilds .venv with an instrumented, unoptimized-for-timing build, so re-run uv pip install ".[tests]" afterwards to get back to a normal development environment.

Performance

perf/performance_test.py replays realistic exchange activity against real BTC-USD order books captured from Coinbase and cached in perf/data/, so runs are reproducible and need no network access. The event streams are generated deterministically from a seed and modeled on how feeds actually behave: 90% of activity clusters near the top of book and the rest spreads across the whole window, L2 traffic is mostly size updates with level adds and deletes held in balance so depth stays stationary, L3 traffic is order-level against the book's real resting orders with adds and cancels likewise balanced.

uv run perf/performance_test.py                       # everything
uv run perf/performance_test.py --scenario l3         # one scenario
uv run perf/performance_test.py --ops 1000000 --depth 5000 --seed 7
uv run perf/capture.py                                # refresh the cached snapshots

Numbers below are from Python 3.14, a replay window of the top 2,000 levels per side, a top-of-book read every 10 events, 200,000 events (20,000 for the pure Python book, which only degrades further the longer it runs). Throughput is the median of 5 passes.

L2 replay

library ns/event throughput
order_book 137 7.3M events/s
sortedcontainers 314 3.2M events/s
pure python 5,676 176K events/s

L3 replay

library ns/event throughput
order_book 190 5.3M events/s
sortedcontainers 416 2.4M events/s
pure python 2,839 352K events/s

Snapshot load

library time
order_book 3.8 ms
sortedcontainers 25.4 ms
pure python 5.7 ms

Exchange checksums

Exchange L2 Book time L3 Book time
Kraken 1.9 µs
OKX 4.6 µs
Bitget 4.3 µs
Bitfinex 4.3 µs 5.3 µs

Changelog

1.1.0 (2026-09-02)

  • Update: Remove FTX checksum support
  • Feature: free-threaded python (3.13+) support

1.0.2 (2026-08-15)

  • Feature: Bitfinex checksum support for L3 books
  • Bugfix: symbol collision between orderbook's crc32 and zlib's

1.0.1 (2026-08-13)

  • Feature: Bitfinex checksum support

1.0.0 (2026-08-07)

  • Feature: issue #14 .items() iterator on book sides
  • Update: Add more unit tests to increase code coverage
  • Bugfix: reference / memory leaks
  • Bugfix: .index() not properly respecting max_depth
  • Bugfix: failed delete no longer invalidates the cached keys
  • Bugfix: issue #31 sortedDict iterator revamp
  • Performance: change setitem to only do one lookup vs two (remove pydict_contains lookup)
  • Performance: checksum now requires hardware support
  • Performance: simplify side lookups
  • Performance: to_dict special path when no type conversion needed
  • Performance: incremental key cache for small changes between reads

0.7.0 (2026-08-05)

  • Update: Modernize project (uv, pyproject.toml, etc)
  • Update: Update readme, tests, examples, etc
  • Update: revamp wheel building

0.6.1 (2024-04-22)

  • Update: to_list's behavior matches that of to_dict (respects max_depth, if set).
  • Update: resolve build warnings on some compilers.

0.6.0 (2022-10-19)

  • Update: Drop support for python 3.7
  • Feature: to_list method
  • Bugfix: Initialize iterator correctly

0.5.0 (2022-08-23)

  • Bugfix: fix segmentation fault when calculating checksum on empty orderbook
  • Bugfix: fix missing reference decrement
  • Performance: Improvement to marking dirty keys

0.4.3 (2022-05-29)

  • Bugfix: handle scientific notation of small values in Kraken checksum
  • Update: calculate Kraken checksum on order books less than 10 levels deep
  • Bugfix: fix occasional incorrect checksums for OKX, FTX and Bitget

0.4.2 (2022-04-17)

  • Update: OKEx renamed OKX (for checksum validation)
  • Feature: Add support for orderbook checksums with Bitget

0.4.1 (2021-10-12)

  • Bugfix: unnecessary reference counting prevented sorted dictionaries from being deallocated
  • Bugfix: setting ordering on a sorted dict before checking that it was created successfully

0.4.0 (2021-09-16)

  • Feature: changes to code and setup.py to enable compiling on windows
  • Feature: add from_type/to_type kwargs to the to_dict methods, allowing for type conversion when creating the dictionary

0.3.2 (2021-09-04)

  • Bugfix: depth was incorrectly ignored when converting sorteddict to python dict

0.3.1 (2021-09-01)

  • Bugfix: truncate and max_depth not being passed from orderbook to sorteddict object correctly
  • Feature: let checksum_format kwarg be set to None

0.3.0 (2021-07-16)

  • Update classifiers to indicate this projects only supports MacOS/Linux
  • Bugfix: Using less than the minimum number of levels for a checksum with Kraken not raising error correctly
  • Update: add del examples to test code

0.2.1 (2021-03-29)

  • Bugfix: Invalid deallocation of python object

0.2.0 (2021-03-12)

  • Feature: Add branch prediction hints around error handling code
  • Bugfix: Fix regression from adding branch predictors
  • Bugfix: Fix error corner case when iterating twice on an empty dataset
  • Feature: Add contains function for membership test
  • Bugfix: Fix issues around storing L3 data
  • Feature: Enhance testing, add in L3 book test cases

0.1.1 (2021-02-12)

  • Feature: Checksum support for orderbooks
  • Feature: FTX checksum support
  • Feature: Kraken checksum support
  • Feature: OkEX/OKCoin checksum support
  • Perf: Use CRC32 table to improve performance of checksum code

0.1.0 (2021-01-18)

  • Minor: Use enums to make code more readable
  • Bugfix: Add manifest file to ensure headers and changes file are included in sdist builds
  • Feature: Add support for max depth and depth truncation

0.0.2 (2020-12-27)

  • Bugfix: Fix sorted dictionary arg parsing
  • Feature: Coverage report generation for C library
  • Bugfix: Fix reference counting in index method in SortedDict
  • Feature: New unit tests to improve SortedDict coverage
  • Feature: Modularize files
  • Feature: Add ability to set bids/asks to dictionaries via attributes or [ ]
  • Docs: Update README with simple usage example

0.0.1 (2020-12-26)

  • Initial Release

Metadata

Release files for order-book 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for order-book 1.1.0
File Size Uploaded
order_book-1.1.0.tar.gz 51.4 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for order-book 1.1.0
File
order_book-1.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64 Details
order_book-1.1.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
order_book-1.1.0-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details
order_book-1.1.0-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details
order_book-1.1.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.28+ x86-64, Linux glibc 2.17+ x86-64 Details
order_book-1.1.0-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
order_book-1.1.0-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
order_book-1.1.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.17+ x86-64, Linux glibc 2.28+ x86-64 Details
order_book-1.1.0-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details

Total release size: 969.3 kB

Release files / order_book-1.1.0.tar.gz

Download URL order_book-1.1.0.tar.gz
Size 51.4 kB
Tags Source
SHA-256 checksum
How to use checksums
f2e43f5560aa9974aa530437ab5b37aa0ae14caf7b4a0316770af5193a25e19c
BLAKE2b-256 checksum
How to use checksums
9f0456cebfd0d9dea223e420a3c3d25fdaf208a9d70a83b1b9f2aea582cffc12
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

Release files / order_book-1.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl

Download URL order_book-1.1.0-cp314-cp314t-musllinux_1_2_x86_64.whl
Size 151.6 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
0ca42ef45250ddaaa35450d8db189136828a24e9f78d71b32a5fc1063599295c
BLAKE2b-256 checksum
How to use checksums
51fcd4bdb908ae226b18fd785ccdf5e74d791b6f4873edfcb0faab54b9da07db
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

Release files / order_book-1.1.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL order_book-1.1.0-cp314-cp314t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 154.8 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
ec860c231609eb0c811983f059b80e0409266d6cced645f767903e5f7f14670e
BLAKE2b-256 checksum
How to use checksums
840a1ba62c0fd6bdd82b8c850ff776368486a97fdc766bcd102ced83823f48db
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

Release files / order_book-1.1.0-cp314-cp314t-macosx_11_0_arm64.whl

Download URL order_book-1.1.0-cp314-cp314t-macosx_11_0_arm64.whl
Size 40.7 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ff39a41c8fce6bc80f05c111f7c279410b527b1b360090b2b89d3b5994e8a716
BLAKE2b-256 checksum
How to use checksums
9e1c7a852b8ddef838b006039a1898ab8f6f3e666e8586055728d0c07c327b85
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

Release files / order_book-1.1.0-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL order_book-1.1.0-cp314-cp314-musllinux_1_2_x86_64.whl
Size 121.8 kB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
bfd93e3ff9cd61e9b3af33e116b7dfb47f200204d74afab6f0118fb59ce4d110
BLAKE2b-256 checksum
How to use checksums
f97f133eb3c5995af495e3186ae095e32c5a0085e261e952bdb8586708bdb876
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

Release files / order_book-1.1.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL order_book-1.1.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 123.3 kB
Tags CPython 3.14 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
cbbcdcf6a5ddf6605ca04919f64bebbdb38f78c8120b9a1fbf614a5c9ca92583
BLAKE2b-256 checksum
How to use checksums
90bea145264b931daebfc7c7339c935c8e7db099b43cfa9ad44690900afcc031
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

Release files / order_book-1.1.0-cp314-cp314-macosx_11_0_arm64.whl

Download URL order_book-1.1.0-cp314-cp314-macosx_11_0_arm64.whl
Size 39.8 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
bd8da45569f409e290f65267ea78823e6f01116d193c2d4560b964b8060a7fd2
BLAKE2b-256 checksum
How to use checksums
c356d36b892a2798456ba844756d0199900b8e95d59f524924982f5540574625
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

Release files / order_book-1.1.0-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL order_book-1.1.0-cp313-cp313-musllinux_1_2_x86_64.whl
Size 122.3 kB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
2895e9bba9534337dd511eea97d78a6fa1ab37e06f2e796958e8e4753f9cfa4e
BLAKE2b-256 checksum
How to use checksums
0ea381f6a645ef9554fc75b6f082962a88133ed6626f7b07f147ff7b7af29a56
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

Release files / order_book-1.1.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl

Download URL order_book-1.1.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl
Size 123.9 kB
Tags CPython 3.13 Linux glibc 2.17+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
c416f289179ebb5de188feaffd662049490099c7250b73e0b2ceda554f8a266f
BLAKE2b-256 checksum
How to use checksums
0fdba4439ddf563139a2a8d11d0c3707d03dcbf0f53785bec0418e6fed4164af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

Release files / order_book-1.1.0-cp313-cp313-macosx_11_0_arm64.whl

Download URL order_book-1.1.0-cp313-cp313-macosx_11_0_arm64.whl
Size 39.6 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
8e58cfc54dacae99164993d18c705f6301326702fb1d6e518594e441c549427f
BLAKE2b-256 checksum
How to use checksums
196d66a923f87acfbf3f7e26686057084d9a60c76566e90af9c67d869b697048
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.1.0 This release

10 release files

1.0.2

8 release files

1.0.1

7 release files

1.0.0

6 release files

0.7.0

7 release files

0.6.1

5 release files

0.6.0

7 release files

0.5.0

7 release files

0.4.3

7 release files

0.4.2

7 release files

0.4.1

7 release files

0.4.0

7 release files

0.3.2

7 release files

0.3.1

7 release files

0.3.0

7 release files

0.2.1

10 release files

0.2.0

9 release files

0.1.1

10 release files

0.1.0

10 release files

0.0.2

10 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page