Public demonstration · v0.2.1

LuxiBook · downloadable · receipts

Price a European option book and verify the run.

A closed-binary European option-book pricer. Black-Scholes / Black-76, five Greeks, and a signed receipt on every run. Every run emits a signed receipt: a SHA-256 fingerprint of the output numbers, sealed with an Ed25519 signature from the install that produced them. LuxiBook is the public receipt and determinism demonstration, separate from the proprietary Risk State Engine.

Public demonstration boundary

CSV book in

You supply a position book as CSV. The published example is example_book.csv.

European Black-Scholes / Black-76

Closed-form European pricing. You bring time to expiry, rate, and volatility.

Five Greeks

Five Greeks per position, written with the prices into the output report.

signed receipt

Every run can emit a receipt. Store it. Re-run the same book and check the hash.

What it does not do. European exercise only. No American exercise, which rules out single-stock and ETF options including SPY. No implied-volatility solver, no volatility surface, no swaptions, no VaR. No live market feed. Not a fund desk and not a live-risk engine. You bring T, r, and vol.
What that boundary still covers. Index options are the exact shape this pricer handles. Cboe specifies SPX as European exercise and Cash-Settled, and reports SPX average daily volume of 5.02 million contracts at 74.51 percent market share for May 2026. The limit above is narrow, not small: it excludes the American-exercise products and leaves the index complex addressable without new pricing work.

Who it is for

Quantitative, trading, risk, and financial-infrastructure teams that need a defined book priced the same way, with a receipt they can keep. Also useful to regulated-computing groups that want a small, inspectable binary rather than a service stack.

Downloads

Binaries and the example book live in the public LuxiDemo repository. These are the current published files.

FilePlatform
luxi-book-macos-arm64macOS Apple Silicon (CPU)
luxi-book-linux-x86_64Linux x86_64 (CPU)
luxi-book-linux-x86_64-cudaLinux + NVIDIA GPU (--mode gpu)
example_book.csvExample position book
*.sha256 checksumsMatching checksums in the download folder

There is no macOS GPU binary. The CUDA build needs a live NVIDIA driver. Binaries are unsigned: on macOS, right-click the file and choose Open the first time.

How to try it

# Mac CPU
chmod +x luxi-book-macos-arm64
./luxi-book-macos-arm64 price --book example_book.csv --out report.csv --receipt receipt.json

# Linux CPU
./luxi-book-linux-x86_64 price --book example_book.csv --out report.csv --receipt receipt.json

# Linux CUDA
./luxi-book-linux-x86_64-cuda price --book example_book.csv --out report.csv --receipt receipt.json --mode gpu

Full download notes and checksums: demo page.

Public example-book receipt check across five machines

Running the published example_book.csv through the published v0.2.1 binaries on August 16, 2026 produced the same output hash on every machine tested, on the LuxiBook CPU and CUDA pricing paths. This is an internal LuxiBook measurement, not Risk State Engine evidence.

FieldValue
Bookexample_book.csv (10 rows, published)
Output hash - example book4a21b1e708fa5c694bf48237df5e5bd3b94599e6273d07986283c6c6b8e3c97a
Book total - example book151.70016507843832
ATM_CALL price10.4505835721856215
Enginev0.2.1. The stored receipts record engine_version 0.2.0 because they were measured before the version string was bumped.
Receipts published20, each Ed25519-signed, across 5 installs
Receipts folderdownloads/luxibook/evidence/v0.2.1-phi-fix-matrix
DateAugust 16, 2026
MachineArchitectureCompute capabilityCPU pathCUDA path
NVIDIA H200Hopper9.0matchmatch
NVIDIA H100Hopper9.0matchmatch
NVIDIA A100Ampere8.0matchmatch
NVIDIA RTX 5090Blackwell12.0matchmatch
NVIDIA RTX 4090Ada8.9matchmatch

Every row is one physical machine with its own install key. The published folder preserves all 20 signed receipts from the original two-book matrix. Each machine's compute capability is recorded in its receipt. Apple Silicon has a published binary and was covered by an earlier check, but it is not part of this matrix; there is no macOS GPU binary.

Scope. The verified public pin shown here applies to example_book.csv, these machines, and the LuxiBook pricing kernel. It is not a universal cross-platform promise and does not show that Risk State Engine numerical risk aggregation runs on these GPUs.
Verify a receipt signature yourself - no binary needed.

Each JSON receipt is Ed25519-signed. The payload field is the signed plaintext; the receipt field carries the signature. You can verify in three lines of Python using only the standard cryptography package:

# pip install cryptography
import base64, json
from cryptography.hazmat.primitives.asymmetric.ed25519 import Ed25519PublicKey
from cryptography.exceptions import InvalidSignature

with open("receipt.json") as f:
    data = json.load(f)

# Receipt blob layout: 5-byte header + 32-byte pubkey + 64-byte Ed25519 sig
s      = data["receipt"][len("lxq2_"):]
pad    = (-len(s)) % 4
raw    = base64.urlsafe_b64decode(s + "=" * pad)
pubkey = Ed25519PublicKey.from_public_bytes(raw[5:37])
try:
    pubkey.verify(raw[37:], data["payload"].encode())
    print("PASS: signature valid")
except InvalidSignature:
    print("FAIL: signature invalid")

The signer_pubkey field is the Ed25519 public key in hex, and the payload field lists every signed field in plain text, so you can audit what was covered before verifying. Note that the key travels with the receipt, so the check above proves the receipt is internally consistent. To prove it came from a specific machine, pin the key: pass --expect-pubkey <hex> to verify_receipt.py (view on GitHub, published in the LuxiDemo download folder) using a key you already trust from the published evidence.

The check that fails

A check that has never been shown to fail cannot be told apart from a check that cannot fail. So here it is failing. We rebuilt a book of 11,317 real executed BTC option trades from one past trading day, priced and sealed it, then changed a single implied volatility in the fifteenth significant digit in one row and verified the altered book against the original receipt.

FieldValue
Book11,317 executed trades across 411 instruments, trade date February 18, 2025
The single editone implied vol, 0.45219999999999999 to 0.45220000000000049
Rows whose numbers moved1 of 11,317
Book total before33842393.3392818272 · bits 41802326cab6d964
Book total after33842393.3392818272 · bits 41802326cab6d964
Output hash beforef52c7f15812490617009efd09d7703414d80fc1badc3fb8d88c386b56fc8155c
Output hash after8ae64eb3dafd1efe523ce458cf7e6689a5e3ed58dfa9a13dc080d6f959f5ee73
verify exit code1
[OK  ] signature: Ed25519 ok
[FAIL] input_sha256: MISMATCH - book file differs from what was signed
[FAIL] output_vector_sha256: MISMATCH - re-price produced a different vector
[OK  ] book_price_bits: bits match re-price
[OK  ] mode: payload=cpu verify_mode=cpu

RESULT: FAIL - do not trust this receipt for the given book.

Quoted output, with the binary's own long dash rendered as a hyphen. Nothing else is altered.

Result. book_price_bits still passes, because the book total did not move at all. It was identical to the last bit before and after the edit. A portfolio total, a P&L summary, or any reconciliation built on the total would have shown nothing. The output vector hash caught it, and the verifier named which two checks broke and on which file.

Reproduce a past trading day yourself

Both books below were rebuilt from a free public venue history API. No account, no key, no data purchase. Executed trades do not change after the fact, so the input can be regenerated on demand rather than accepted on trust: the rebuilt book came back byte-identical to the one sealed earlier.

FieldValue
Book ATrade date February 18, 2025 · 11,317 trades · 411 instruments
Book A · input_sha2567ffb96d4668d7ca795d87888bf99884d0e23653a0bb7ddf6e466d02c2170b39e
Book A · output_vector_sha256f52c7f15812490617009efd09d7703414d80fc1badc3fb8d88c386b56fc8155c
Book A · book total33842393.3392818272
Book BTrade date November 5, 2024, US election day · 14,879 trades · 474 instruments
Book B · input_sha256277b4c8b41ab04f816d60c7ffa81142f9f2c6864f7aeb6b8dbc3194d3e52fafa
Book B · output_vector_sha256be78fd221673213eec90477e01260804492bb2e74dd37b163bc9aef1d97a2a48
Book B · book total60831980.0959759504
Repeat runsThree consecutive price runs per book, one distinct output hash each
Price time0.056 s for 11,317 rows, 0.071 s for 14,879 rows (median of five warm runs; the first run of the session measured 0.636 s on a cold page cache)
Verify time0.028 s and 0.033 s (median of five)
Enginev0.2.1 · git_sha 02388f77 · receipt scheme luxiquant-receipt-v2
Date measuredAugust 17, 2026

Both books were also re-run from an empty directory with a fresh key directory. That produced a different install fingerprint, as it must, and the same output hash. Different install, same number, and the receipt records which install asserted it.

# 1. get the published binary and prove it is the published one
curl -fsSLO https://raw.githubusercontent.com/RegularJoe-CEO/LuxiDemo/main/downloads/luxibook/luxi-book-linux-x86_64
sha256sum luxi-book-linux-x86_64
# expect b4c14b9e0ceddf86e7a518d36d9ea48e5d6b07c72c331294a90af2100cc53c29

# 2. rebuild the book from the venue's free public history
python3 build_historical_book.py 2025-02-18 > book.csv
sha256sum book.csv
# expect 7ffb96d4668d7ca795d87888bf99884d0e23653a0bb7ddf6e466d02c2170b39e

# 3. price, then verify
chmod +x luxi-book-linux-x86_64
./luxi-book-linux-x86_64 price --book book.csv --out priced.csv --receipt r.json
./luxi-book-linux-x86_64 verify --book book.csv --receipt r.json

Scripts: build_historical_book.py rebuilds either book from the public history. reproduce.sh runs the whole sequence for both dates, checks every value against the figures above, and then breaks one volatility on purpose so you see the seal react.

What this does not show. A matching hash does not mean the prices are correct. It means the numbers did not change. Separately, the venue's historical trade endpoint publishes the spot index rather than the per-expiry forward, so S in these books is spot. That makes this a reproducibility exercise and not evidence for a pricing-accuracy claim against the venue's own marks.

Request a paid evaluation

Bring your own book, your comparator, and the hardware you care about. A paid, fixed-scope evaluation measures correctness, determinism, speed, energy, and receipts, then documents the head-to-head.