All Classes and Interfaces
Class
Description
The full-checklist smart order router: where
SmartOrderRouter
ranks venues purely on fee-adjusted displayed price and HftSor
does the same at tick-path speed, this router prices in everything a
production SOR actually weighs:
Displayed liquidity and fees/rebates — the all-in
price, as before;
Probability of fill / venue reliability — a venue's
VenueScorecard fill rate discounts its quote: expected
cost adds (1 − fillRate) × missPenalty (the spread-ish
cost of re-routing a faded child), and venues below a reliability
floor are vetoed outright;
Latency — slower venues pay latency × urgency: in a
moving market, microseconds of delay are adverse selection.Tunable penalties;
AdaptiveSor.Config.defaults() is a sane starting point.The routed plan:
lit legs cover up to the requested quantity
(best-expected-cost first); probes are additive contingent
dark legs sent alongside; unrouted is the shortfall no
eligible lit venue could absorb (0 on a fully routed order).Multi-venue aggregated top-of-book — the core e-FX data structure: each
liquidity provider / ECN streams its own two-sided quote, and the
aggregator maintains the composite best bid/offer with venue attribution.
Almgren-Chriss (2000) optimal execution: the trading trajectory that
minimizes
E[cost] + λ·Var[cost] when liquidating X shares over a
horizon, trading off temporary impact (fast execution is expensive) against
price risk (slow execution is risky).The optimal schedule:
holdings[j] is the position after
interval j (holdings[0] = X, holdings[N] = 0); trades[j] is
sold in interval j+1.Execution-aware factor backtest: runs a factor through a construction
pipeline into weights, holds them between rebalances, and charges the
four costs that separate paper alpha from real alpha:
Commission — flat bps on traded notional;
Bid-ask spread — half-spread bps paid on every trade
(crossing the spread once per side);
Slippage — additional fixed bps of implementation noise
(latency, partial fills, venue fees);
Market impact — the size-dependent cost, via the
square-root law in
microstructure.MarketImpactModel, with
per-symbol ADV and daily vol estimated from the trailing window.Net/gross curves plus the cumulative fraction of equity each cost
component consumed — the cost autopsy.
Builds target weights from raw scores at a rebalance (the construction hook).
The research dataset an alpha factor operates on: an index-aligned panel
of price series over a fixed symbol order, with optional fundamentals.
IC-weighted alpha ensemble — the layer above the individual signals.
A cross-sectional alpha factor: at a bar index, one raw score per symbol,
where higher = more attractive to own (buy high scores, sell low).
Alpha reporting — the diagnostics that explain a factor's P&L rather
than just totalling it:
Alpha decay — mean IC as a function of the forward horizon.
OLS attribution: per-bar residual alpha, factor betas, and fit quality.
IC per horizon plus the interpolated half-life of the shortest-horizon IC.
Validation for alpha factors — the overfitting defense, run before any
capital-weighted conclusion is drawn:
Walk-forward — pick the best factor variant on a training
window by in-sample IC, measure it on the following unseen window,
roll forward.
Per-block ICs with their dispersion — consistency across regimes.
One walk-forward fold: what was chosen, and how it did out of sample.
Observed mean IC against its permutation null distribution.
IC across the sweep plus the worst adjacent-parameter drop.
All folds plus the aggregate in-sample vs out-of-sample comparison.
Surveillance anomaly detection over interval-aggregated market activity:
Quote stuffing — message-rate spikes (robust z-score) combined
with an abnormal order-to-trade ratio: lots of quoting, little
trading.
Price spikes — interval returns far outside their recent
distribution.
Anti-gaming randomization for schedule-driven algos — a TWAP that
fires identical children on a metronome is a gift to anyone watching
the tape: predators detect the clock in a handful of intervals and
lean on every child.
ASIAN (average-price) options — the corporate hedger's option: paying off
on the AVERAGE of n fixings instead of one closing print kills both the
expiry-day manipulation incentive and most of the vol (an average is
smoother than its endpoints), which is why commodity and FX hedging
programs default to them.
Tick capture with the file I/O taken OFF the bus consumer thread — the
hot-lane variant of
TickCapture.A call auction (open/close/volatility uncross): orders accumulate without
trading, then a single clearing price executes the maximum matchable
volume — the mechanism behind exchange opens, the close every
benchmark-tracking strategy trades, and LULD/volatility-halt reopenings.
Auction outcome: clearing price, matched volume, and leftover imbalance.
Autocallable note pricer — the flagship equity structured product: a
note that pays a fat coupon and redeems early ("autocalls") the first
observation date the underlier closes at or above the autocall
barrier.
Live position-band auto-hedger on the fast lane — the streaming
counterpart to the batch
hedging.DeltaHedger: while the batch
hedger rebalances on a schedule against a model delta, this one watches
the risk gate's live position on every tick and fires a flattening order
through the HftOrderGateway the moment the band is breached.Avellaneda-Stoikov (2008) optimal market-making quotes — the principled
version of the inventory skew
HftQuoter applies heuristically.Backtest execution parameters.
Event-driven, single-instrument, long-only backtesting engine.
Result of a backtest run: full equity curve (one point per bar), completed
trade history, and derived performance metrics.
Immutable OHLCV bar.
Single-barrier vanilla options — continuously monitored knock-in /
knock-out — for the regular barrier configurations, priced in
closed form by the reflection principle (Reiner–Rubinstein, as in Hull):
Down barriers on calls with
H ≤ K (barrier in
the OTM region): down-and-in from the reflection formula,
down-and-out from in–out parity KO = vanilla − KI;
Up barriers on puts with H ≥ K, the mirror
case.
Immutable, cache-friendly OHLCV time series backed by primitive arrays
(structure-of-arrays layout, no boxing) for ultra-low-latency computation.
BENCHMARK-RELATIVE performance — the numbers an allocator actually asks
for.
The dynamic benchmark execution algorithm: one stateful executor that
works a parent order toward any of the standard benchmarks — VWAP,
TWAP, Arrival Price, Implementation Shortfall, Closing Price, Opening
Price, and Participation (POV) — and, unlike a precomputed slice list
(
TwapScheduler, VwapScheduler,
ImplementationShortfallScheduler), re-decides every interval
from live market state.The benchmark this parent is measured against.
A snapshot of the real-time inputs a benchmark algo evaluates.
MiFID II-style best execution analytics (RTS 27/28 spirit): slippage versus
arrival mid, latency-to-fill distribution, fraction executed at or better
than arrival, and per-venue slippage breakdown.
One parent order outcome.
Parser for Binance trade-stream JSON — both the raw single-stream form
(
{"e":"trade","s":"BTCUSDT","p":"50000.1","q":"0.05","T":169...})
and the combined-stream wrapper ({"stream":"btcusdt@trade","data":{...}}).Binary market-data adapter: decodes
TradeFlyweight frames from a
channel straight into the HftMarketDataBus — the professional-grade
counterpart of the text feed.WebSocketFeed.Binary order-entry adapter: attach to
HftOrderGateway as its
OrderListener and every accepted order is encoded as an
OrderFlyweight and written to the venue channel — the binary
counterpart of fix.FixSession#sendNewOrderSingle, with zero
allocation and zero string formatting per order.Venue side of the binary order-entry pair: decodes
OrderFlyweight
frames from a channel and dispatches them to an OrderListener —
same zero-allocation read loop as BinaryMarketDataClient, with
partial-frame handling.Cox-Ross-Rubinstein binomial tree for European and American options with a
continuous carry yield (dividends / foreign rate).
Black-76 — the Black-Scholes sibling for options on FORWARDS and
futures: rates caps/floors and swaptions, commodity futures options,
bond futures options.
Black-Litterman expected returns: start from the market-implied equilibrium
(reverse optimization of the market portfolio) and blend in investor views
with explicit confidences — the standard cure for mean-variance
optimizers' hypersensitivity to raw return estimates.
Black-Scholes-Merton option pricing and Greeks with a continuous carry
yield
q: set q to the dividend yield for equities or the
foreign interest rate for FX (Garman-Kohlhagen).Full Greek set for one option.
Stationary block bootstrap (Politis-Romano) — the confidence interval
your backtest's Sharpe ratio deserves and almost never gets.
Bollinger Band mean reversion: buy when the close dips below the lower band,
sell when it recovers to the middle band or stretches above the upper band.
Fixed-coupon bond analytics: price/yield conversion, Macaulay and modified
duration, convexity, and DV01.
Spread, depth and liquidity analytics over an
OrderBook: quoted
spread, size-weighted microprice, depth imbalance, depth-within-bps, and
non-destructive book sweep simulation (VWAP-to-fill and impact of a large
marketable order).Result of simulating a sweep: what a marketable order of that size would pay.
The zero-allocation building blocks shared by the hot-lane books
(
HftOrderBook venue-side, marketdata.L3BookBuilder
participant-side): occupancy-bitmap scans and a primitive open-addressing
long→int map with backward-shift deletion.Business-day calendar: weekends plus a holiday set, with the standard roll
conventions, settlement-lag arithmetic, and coupon schedule generation.
Date roll conventions for payment dates landing on non-business days.
Calendar anomaly profiles — day-of-week and turn-of-month seasonality
with the t-statistics that keep them honest.
Per-day-of-week profile, indexed Monday = 0 … Sunday = 6.
The turn-of-month split, with a Welch t-stat on the difference.
CDS pricing off a
CreditCurve: the two legs, the par spread,
and the upfront that post-2009 standardized contracts actually
exchange.The central risk book — one netted view of the firm's market risk
across desks and products.
Multi-day persistence of learned state: everything the models learn
across sessions — volume/vol/spread baselines, alpha weights and their
out-of-sample IC evidence, venue and LP scorecards — is exactly what a
desk does NOT want to relearn from zero every morning.
Random access to a loaded checkpoint's sections by name.
A model's state deserializer — typically a
readState reference.A model's state serializer — typically a
writeState reference.Collects named sections and commits them atomically on close.
US-equities trading safeguards, styled after the SEC's Limit Up-Limit Down
plan and the market-wide circuit-breaker rule (not certified
implementations — the regulatory texts govern):
LULD price bands (
CircuitBreakers.luldBandPct(double, boolean, boolean), CircuitBreakers.Luld) —
per-symbol bands around a reference price; quoting at a band edge
enters a limit state, and a limit state that persists 15 seconds
becomes a 5-minute trading pause;
Market-wide circuit breakers (CircuitBreakers.MarketWide) — S&P 500
declines of 7% / 13% halt the market for 15 minutes (each at most
once per day, and not after 15:25), and 20% halts for the day.
MWCB halt decision.
The LULD limit-state machine for one symbol: enters a limit state when
the inside quote pins a band edge, converts to a 5-minute pause when
the limit state persists 15 seconds, and exits the pause after it
elapses.
LULD per-symbol state.
Market-wide circuit-breaker day state: feed it the S&P 500 decline
from the prior close and the time of day; it applies the once-per-day
and not-after-15:25 rules for Levels 1 and 2.
Closing-auction participation model.
Engle-Granger two-step cointegration test: regress one price series on the
other, then run an augmented Dickey-Fuller test (no constant) on the
residual spread.
COMMODITY futures curve — where the P&L of a commodity position
mostly does NOT come from being right about the spot price.
COMPONENT VaR — the answer to the risk committee's actual question.
Concentration risk metrics over exposures (by asset, counterparty, sector,
currency, ...): Herfindahl-Hirschman index, effective number of positions,
top-N share, and single-name limit breaches.
Constrained long-only optimizer: per-asset weight bounds (position caps /
floors) and an optional turnover penalty against current holdings —
adjusted return = μ·w − penalty · Σ|w − w_current| — so the
optimizer trades expected gain against the real cost of getting there.Corporate action adjustment: back-adjusts a raw price series for splits and
cash dividends (CRSP-style multiplicative factors), so returns computed
across ex-dates reflect economics rather than mechanical price drops — the
difference between toy and usable equity backtests.
Correlation and covariance matrices from a returns matrix laid out as
returns[asset][time].Counterparty credit exposure modeling with netting:
Current exposure — max(0, net mark-to-market) per netting set.
Potential future exposure — notional add-ons by tenor bucket
(BIS current-exposure-method style FX factors: <1y 1%, 1–5y 5%,
>5y 7.5%).
LEDOIT-WOLF covariance shrinkage (2004, "A well-conditioned estimator
for large-dimensional covariance matrices") — the standard fix for the
dirty secret of portfolio optimization: the sample covariance matrix is
the MAXIMALLY overfit estimate.
The central risk book's hedging loop: per-factor exposure BANDS, a
cost-aware hedge when breached, and a cooldown so the book does not
chase its own hedges.
One instrument's hedge instruction.
The hedge-instrument universe, aligned to a book's factor registry —
because hand-assembling
loadings[factor][instrument] is the
most error-prone step in the whole hedging workflow (one transposed
index and the optimizer confidently hedges the wrong thing).The central risk book's ECONOMICS ledger — the number the desk head
actually asks for at the close: did the spread we captured by
internalizing pay for the hedging we did?
The central risk book's order router — internal cross first, dark
pools second, lit last, each leg priced honestly:
Internal — crossing against the book's own offsetting
inventory costs ZERO bps and leaks nothing: the CRB itself is
the firm's first and best dark pool.
Where the notional went.
A dark venue as the router sees it.
CREDIT CURVE — piecewise-constant hazard rates bootstrapped from CDS par
spreads, the credit market's exact analogue of
YieldCurve's
bootstrap: walk the quotes from shortest to longest, at each pillar
solving for the one hazard rate that reprices that maturity's CDS to
zero upfront given everything already solved.BOND credit-spread measures — the translation layer between a bond's
PRICE and how much of it is credit.
Streaming cross-rate derivation on the HFT tick path: maintains synthetic
crosses (EURJPY from EURUSD × USDJPY, EURGBP from EURUSD ÷ GBPUSD) live
from their leg ticks, with zero allocation per tick.
How the two leg prices compose into the cross.
Point-in-time cross-sectional momentum — the classic equity factor, built
to demonstrate (and test) universe-aware backtesting: at every rebalance
the strategy ranks only the stocks that are index members at that
bar's timestamp, goes long the best trailing performers and short the
worst.
CSV market data I/O: loads real historical OHLCV bars into a
BarSeries and saves series back out — the interchange format for
the whole library.CSV export: sections separated by "## title" marker lines.
Market conventions for an FX currency pair: quotation precision, pip size,
spot lag, and settlement-date arithmetic against both currencies'
holiday calendars.
UNILATERAL CVA — the price of the counterparty in every derivative you
hold: the expected loss from their default before your trades' cash
flows finish arriving.
Midpoint-cross dark pool model: hidden resting orders match at the current
lit-market midpoint, honoring minimum-execution-quantity constraints (a
standard anti-gaming feature).
Day-count conventions: the year fraction between two dates as real term
sheets define it — because finance never agreed on how long a year is,
and the disagreement is worth real money.
Day-type-aware seasonality: not every trading day has the same shape.
Dynamic delta hedging simulator: sell an option, then replicate it by
trading the underlying along a price path, rebalancing whenever the delta
drifts outside a band.
Rank-based dependence measures — what Pearson correlation misses.
European digital (binary) options under Black-Scholes — the building
blocks of the first-generation FX exotics book.
Discrete (cash) dividends for equity derivatives — the forward-looking
counterpart to
data.CorporateActions' historical back-adjustment.DRAWDOWN structure — because "max drawdown 18%" hides the number that
actually fires clients: how LONG the pain lasted.
One peak-to-recovery episode.
EGARCH(1,1) — Nelson's exponential GARCH, the LOG-variance dynamics
the plain family cannot express:
EMA crossover: buy when the fast EMA crosses above the slow EMA, sell on the reverse cross.
Streaming EWMA covariance matrix — the multi-asset risk picture that
single-symbol volatility cannot see.
Exponentially weighted moving average variance (RiskMetrics-style):
h_t = λ h_{t-1} + (1-λ) r_{t-1}², seeded with the sample variance.TWO-ASSET closed forms: Margrabe's exchange option and Kirk's spread
approximation — the workhorse formulas for relative-value option books
(crack spreads, calendar spreads, stock-vs-index switches).
A matched trade (fill) for TCA and venue analytics.
Backtests the DYNAMIC execution stack over bar data — the bridge
between
execution.BenchmarkExecutor (built for live intervals)
and the backtest lane: replay a session's bars, let the executor
re-decide each bar exactly as it would live, fill against the bar with
a TradeCostModel, and grade the result the way a TCA desk
would (implementation shortfall vs arrival, slippage vs the session
VWAP).The TCA-style verdict for one parent worked over one session.
Execution-aware backtesting engine: strategy signals create parent
orders that are worked through an
ExecutionModel — routed by
SorExecution, sliced by IcebergExecution, or filled
instantly by InstantExecution.Result of an execution-aware backtest: the standard
BacktestResult
(equity curve, trades, performance metrics) plus the full parent-order /
child-fill history, with one-call TCA per parent order.How parent orders turn into fills in an execution-aware backtest
(
ExecutionAwareBacktester).Typed view of a FIX ExecutionReport (35=8) — the venue's answer to an
order: acknowledgement, fill, or rejection.
Extreme value theory via peaks-over-threshold — the statistically
honest way to ask about quantiles BEYOND the sample.
A fitted POT tail model.
Dense integer ids for risk-factor names — the
SymbolRegistry
pattern applied to the central risk book's factor space, so exposure
arithmetic runs over primitive arrays while the factor names stay
readable (EQ:AAPL, CCY:EUR, FXVEGA:EURUSD).The standard alpha factor library — nine signal generators covering the
classic technical, factor-investing and defensive families.
Latency-adjusted fair value for rapidly updating order books.
Fama-MacBeth cross-sectional regression — the standard answer to the
question the IC cannot answer: what is a factor exposure WORTH, per
period, in return space?
Parses one exchange feed message into a trade.
One trade parsed from an exchange feed message.
Durable
FixSessionStore backed by two files in a directory:
seqnums.dat (16 bytes, synchronous writes) and an append-only
messages.dat replayed into memory on open.Passive-fill probability for a limit order resting AWAY from the touch —
the placement question
QueueModel alone can't answer.WM/Reuters-style 4pm fix analysis: computes the fix rate from mid samples
inside the fixing window (median, per WM/R methodology) and screens a
participant's flow for the classic "banging the close" signature — a large
share of window volume, a price run-up aligned with the participant's net
flow into the fix, and reversion afterwards.
Garbage-free FIX 4.4 ExecutionReport reader — the inbound half of the
FIX hot path, completing the round trip
FixOrderEncoder started:
order out garbage-free, fill in garbage-free.Analytics for benchmark-fixing exposure — the risk concentrated in the
short calculation window of an official fix (WM/R 4pm London, the RBI
reference rate an NDF settles on, an equity closing auction).
Garbage-free FIX 4.4 market-data reader — the feed half of the FIX hot
path.
FIX 4.4 wire-format message: tag=value fields delimited by SOH, framed by
BeginString(8) / BodyLength(9) / CheckSum(10).
Body-field builder; the session supplies header fields at encode time.
Garbage-free FIX 4.4 NewOrderSingle encoder — the hot-lane counterpart of
the String-based
NewOrderSingle/FixMessage codec, for
venues that only speak FIX (where the sbe binary adapters aren't
an option, order entry IS the FIX edge, and per-order String building
would put allocation back on the measured path).FIX 4.4 session over TCP — initiator or acceptor — implementing the session
protocol needed to trade: Logon handshake, Heartbeats with TestRequest
probing and staleness disconnect, sequence-number tracking with gap
detection, Logout handshake, and the application flow NewOrderSingle out /
ExecutionReport in (or the reverse, on the venue side).
Session callbacks; invoked on the session's reader thread.
Persistence seam for a
FixSession: sequence numbers and the
outbound application-message store.One stored outbound application message, replayable on ResendRequest.
Streaming order-flow signals for short-horizon execution decisions: the
three imbalances an execution engine reads before crossing a spread —
cross-asset (equity ticks or raw FX rates; see the two onQuote entry
points) —
Order-flow imbalance (OFI) — Cont/Kukanov/Stoikov best-level
formulation: a bid price/size increase or ask decrease is buying
pressure; the mirror is selling pressure.
Implied FX forward curve construction from market outright forwards, with
interpolation, implied rate differentials, and covered-interest-parity
arbitrage checks against deposit rates.
FRTB Internal Models Approach expected shortfall — the market-risk
capital measure that replaced 10-day VaR: ES at 97.5%, computed on a
base 10-day horizon and scaled up across LIQUIDITY HORIZONS (how long
each risk factor class realistically takes to exit under stress: 10
days for major FX and rates, up to 120 for exotic credit), then
anchored to a STRESSED period:
The Basel backtesting traffic light over 250 days of 99% VaR
exceptions: GREEN ≤ 4 (model fine), AMBER 5-9 (capital multiplier
rises), RED ≥ 10 (model presumed wrong).
Fundamental screening filters.
Fundamental data for one instrument.
The futures roll — the trade every futures position must do and most
do badly: move from the expiring front contract to the back over the
roll window, following the LIQUIDITY MIGRATION rather than fighting
it.
FX exposure hedging with forwards: nets currency exposures across a book,
computes the variance-minimizing hedge ratio for a foreign-asset position,
and prices the carry cost of the forward hedge from forward points.
One currency exposure, signed, in base-currency terms.
An FX swap: two offsetting FX exchanges — buy (sell) base currency on the
near date, sell (buy) it back on the far date — the instrument behind
funding, position rolls, and most of the daily FX forward volume.
Tiered multi-LP FX book: the depth structure e-FX actually has.
FX-style volatility surface built from the market's delta-quoted
smile: ATM (delta-neutral straddle), 25-delta risk reversal and butterfly,
optionally 10-delta wings.
Accumulates per-expiry delta quotes, then solves strikes once in
FxVolSurface.Builder.build().One expiry's solved smile: absolute strikes and vols, low to high strike.
GARCH(1,1) volatility model with Gaussian maximum-likelihood fitting:
h_t = ω + α r_{t-1}² + β h_{t-1}.Gaussian and Student-t copula samplers — dependence separated from
marginals, which is the entire point of copula modeling: "these five
factors co-move like THIS" (the copula) is a different statement from
"each factor's own distribution looks like THAT" (the marginals), and
gluing arbitrary marginals to a chosen dependence structure is how
joint risk scenarios get built.
GJR-GARCH(1,1,1) — GARCH with the LEVERAGE term equity markets demand:
Firm-wide risk across shards — the piece sharding deliberately doesn't
solve: each shard's
HftRiskGate sees only its own symbols, so a
"total gross notional across the firm" cap needs someone who can see all
of them.Gradient-boosted regression over decision stumps (XGBoost-style additive
boosting with squared-error loss), implemented in pure Java with no
dependencies.
Greek-neutralization: solves the hedge quantities that flatten a
portfolio's option Greeks using available hedge instruments — the standard
delta-gamma and delta-gamma-vega hedging recipes, plus a general linear
solver for arbitrary greek/instrument combinations.
Per-unit Greeks of a hedge instrument (the underlying is delta=1, gamma=0, vega=0).
Exhaustive strategy parameter search: backtests every grid combination and
ranks by an objective (e.g.
HAR-RV (Corsi's Heterogeneous AutoRegressive realized-volatility
model) — the forecasting benchmark GARCH papers have to beat, and it
is three regressors and an intercept:
Fitted coefficients:
rv⁺ = c + βd·d + βw·w + βm·m.Self-exciting (Hawkes) event intensity — the model behind the trader's
observation that "activity breeds activity": one trade raises the
probability of the next, so order flow arrives in bursts, not as a
steady Poisson drizzle.
Cost-aware minimum-variance hedging of the central risk book's
residual — the question is never "how do we flatten this" (sell
everything) but "what is the CHEAPEST basket of liquid instruments
that takes the risk below the limit".
Distribution of delta-hedging P&L across Monte Carlo paths: how well the
hedge replicates the option, where the tail risk sits, and what the hedging
itself costs.
Monte Carlo delta-hedging engine: runs
DeltaHedger across thousands
of GBM paths in parallel to produce the full hedging-error distribution —
replication error, tail risk (hedging VaR/CVaR), and cost/rebalance
statistics.Heston (1993) stochastic-volatility pricing — the canonical answer to
Black-Scholes' one visible lie, the flat smile.
Model parameters.
Benchmarks the venue-grade matching engine (
HftOrderBook),
completing the fast-lane benchmark family with the venue side:
Passive churn: add/cancel throughput with a deep resting book
— the id-map + pool + bitmap machinery under load;
Matching: aggressive flow sweeping resting liquidity —
fills/sec through the FIFO levels;
Per-op latency: submit-to-return percentiles for a realistic
70/20/10 add/cancel/aggress mix.
Self-contained benchmark of the HFT hot path with a realistic tick-to-signal
workload on the consumer (streaming EMA crossover + RSI per tick).
Ultra-low-latency market data bus.
Benchmarks the fast-lane order path, mirroring
HftLatencyBenchmark:
Risk gate: ns per pre-trade check (tight loop).
Submit-to-venue: paced one-in-flight latency from
HftOrderGateway.submit() to the venue thread receiving the
order.
Tick-to-order end-to-end: market tick published on the
HftMarketDataBus → strategy (2×EMA) on the bus consumer
thread → risk check → order ring → venue thread.Venue-grade price-time-priority matching engine: the zero-allocation
sibling of
OrderBook, built the way exchange cores are actually
built.Primitive fill callback: maker is the resting order, taker the incoming one.
Ultra-low-latency order gateway — the fast lane from signal to venue.
Streaming two-sided quoter on the fast lane — the market-making loop:
tick in → mid → inventory skew → tick-grid snap → two orders out through
the
HftRiskGate and HftOrderGateway, with zero allocation
per tick.Quoting parameters.
Benchmarks the market-making loop end-to-end, completing the fast-lane
benchmark family (
HftLatencyBenchmark: publish→strategy,
HftOrderBenchmark: tick→order):Zero-allocation pre-trade risk gate for the HFT order path — the fast-lane
counterpart of
PreTradeLimitChecker.Hot-lane smart order router: the zero-allocation sibling of
SmartOrderRouter, for when the routing decision sits on the
tick-to-order path.jHiccup-style platform stall monitor: a daemon thread repeatedly parks for
a fixed resolution and records how much longer than requested each
park took.
Hidden-liquidity / iceberg detection from the lit tape.
The second-order Greeks a vol book actually hedges with — analytic
Black-Scholes forms, the risk-side complement to
BlackScholes.greeks(com.quantfinlib.pricing.BlackScholes.OptionType, double, double, double, double, double, double):
Vanna ∂²V/∂S∂σ — how delta drifts when vol moves
(equivalently, how vega drifts when spot moves).In-memory historical market data store keyed by symbol.
Self-contained styled HTML report: one file, inline CSS, no external
assets — so it can be emailed, archived for compliance, or opened from a
network share years later and still render identically (a report whose
stylesheet lives on a CDN is a report that rots).
Fetches OHLCV data over HTTP from any endpoint serving CSV bars (most free
market data APIs offer a CSV export) and parses it with
CsvBarLoader.Iceberg execution: wraps another
ExecutionModel and caps each bar's
execution at the IcebergOrder state machine's visible tranche
(optionally randomized), plus an optional participation cap versus the
bar's volume.Iceberg order state machine: shows only a small display tranche of the full
quantity and reloads automatically when the visible portion fills.
Implementation-shortfall (arrival-price) schedule: turns the
AlmgrenChriss optimal trajectory into executable Slices.Tick-frequency Greek estimation without tick-frequency repricing: a full
Black-Scholes evaluation anchors the position, and every tick updates
price/delta by the delta-gamma Taylor expansion — a handful of multiplies,
zero allocation — while the anchor is refreshed off the hot path.
INDEX construction — the arithmetic behind "the market was up 1%".
Technical Indicator Engine: production-ready implementations of the standard
technical analysis toolkit.
direction: +1 = uptrend (value is support), -1 = downtrend (value is resistance).
AIC / BIC — the two numbers that keep model shopping honest.
Baseline execution model: the full quantity fills at the bar close with
commission and slippage folded into the all-in price — equivalent to the
classic
Backtester fill assumption.The internalize-or-route decision — the economics that justify a
central risk book's existence.
Where one flow went, and what the client got for it.
Intraday liquidity forecasting: accumulates per-bucket volumes across days
into a seasonal profile (e.g. 24 hourly buckets) to predict when liquidity
peaks — London open, the London/New York overlap, etc.
ITCH 5.0-style binary market-data codec: the message subset that drives a
full-depth (L3) book — add, add-with-attribution, execute, cancel, delete,
replace, and off-book trade — with the exact field layout and big-endian
encoding of the Nasdaq TotalView-ITCH 5.0 specification.
Mutable flyweight over one message in a caller-owned buffer.
Jump-robust streaming volatility.
TIME-VARYING regression by Kalman filter — the pairs desk's upgrade
over a static OLS hedge ratio.
Key-rate durations — WHERE on the curve a bond's rate risk lives.
Kyle's lambda — market impact LEARNED from the tape instead of assumed
from a formula.
Participant-side full-depth (L3) book builder: reconstructs a venue's book
from an ITCH-style event stream (add / execute / cancel / delete / replace)
and answers the questions an execution engine actually asks — best
bid/ask, depth, and exactly how many shares are queued ahead of my
order — with zero allocation on every event.
Last-look execution model — the missing realism for FX backtests: on ECN
and single-dealer FX liquidity, the provider holds your order briefly and
may reject it if the price moves against them during the hold.
Maker-side symmetric last-look price check — the mechanism FX liquidity
providers apply to incoming deal requests, implemented the way the FX
Global Code (Principle 17) says it must be: symmetric.
Zero-allocation nanosecond latency histogram (HdrHistogram-style
log-linear buckets: 16 sub-buckets per power of two, ~6% worst-case
quantile error).
Streaming cross-asset lead-lag estimation: does instrument A's return
now predict instrument B's return a few intervals from now?
A resting limit order.
Liquidity estimated from BARS ALONE — the estimators for every
market where you have prices but no quotes: history before your tick
capture started, less-developed markets, bonds marked once a day, or
a 20-year backtest that would otherwise pretend spreads were zero.
The opportunistic execution archetype — the counterpart to
BenchmarkExecutor's schedule-driven family.The five-minute live demo: real market data → streaming strategy → paper
execution → live dashboard, in one command.
Last-look-aware LP router: chooses where to send an FX clip by
expected all-in price, not displayed price.
Streaming per-LP execution quality: the taker-side answer to last look.
MACD signal-line crossover: buy when MACD crosses above its signal line, sell on the reverse.
Command-line entry point: run backtests, walk-forward validation, and HTML
reports on CSV bar data without writing Java.
A tick / trade print.
Callback for market data events.
Real-Time Market Data Processing pipeline.
Temporary / permanent market impact models for large trades, parameterized
by average daily volume (ADV) and daily volatility:
Square-root law (empirical standard):
impact = Y * sigma_daily * sqrt(Q / ADV).
Almgren-Chriss style decomposition: linear temporary impact in
participation rate and linear permanent impact in size, with the
expected cost of an execution schedule
E[cost] = permanent/2 + temporary.
All results in basis points of the arrival price.ML market impact prediction: learns realized impact (bps) from order and
book features using gradient-boosted trees, and estimates the probability a
marketable order sweeps through the visible top of book.
Market quality indices used in execution-quality and venue-quality
reporting: quoted / effective / realized spread, price impact, and
order-to-trade ratio.
Numerical primitives shared across the library.
Mid-rate pegging model: tracks the target price of a mid-pegged order with
an offset and optional limit cap, and decides when the peg has drifted far
enough to justify a reprice (each reprice costs queue priority and a
message, so small moves are ignored).
Minimum-variance and beta hedging with futures or a correlated proxy:
Optimal hedge ratio
h* = cov(asset, hedge) / var(hedge)
— the classic OLS/minimum-variance ratio.
Hedge effectiveness — the fraction of variance removed at the
optimal ratio (= correlation², the standard 80%+ effectiveness test).
Futures contract sizing — contracts to move a portfolio from
its current beta to a target beta.
Monte Carlo Portfolio Simulation.
MONTE CARLO trade reshuffling — the answer to "was my equity curve's
SHAPE luck?".
National Best Bid and Offer: aggregates per-venue top-of-book quotes for
one symbol into the consolidated best bid/ask, the size available at those
prices, and a bitmask of which venues are at the inside — the three inputs
a smart order router actually consumes.
Fired after the NBBO (price or inside size) changes.
A non-deliverable forward: the FX forward for restricted currencies (INR,
KRW, TWD, BRL, CNY, ...) where the local currency never moves.
NELSON-SIEGEL yield-curve fit — the parametric answer to "what SHAPE is
the curve", where
YieldCurve is the exact-repricing answer to
"what IS the curve".Fitted parameters plus the fit's root-mean-square error.
Typed view of a FIX NewOrderSingle (35=D).
Online alpha-weight learning: upgrades
SignalEngine.alpha(int)'s fixed
composite weights to weights learned from realized returns — an
online ridge regression (SGD with L2 shrinkage) from the four
dimensionless signal ingredients (queue imbalance, trade imbalance,
normalized OFI, momentum-Z) to the next-interval return.An options book on one underlying: aggregate Greeks across positions,
spot×vol scenario grids, and delta-gamma-vega-theta Pinvalid input: '&L' explain — the
risk view a desk runs, not a single option.
Aggregated book value and Greeks.
One option position;
quantity in option units (contract multiplier applied by caller).First/second-order attribution of a Pinvalid input: '&L' move.
Price-time-priority limit order book with continuous matching.
Fill callback: maker is the resting order, taker the incoming one.
Typed view of a FIX OrderCancelReplaceRequest (35=G) — amend a working
order's quantity and/or price.
Typed view of a FIX OrderCancelRequest (35=F).
SBE-style flyweight codec for an order-entry message — the binary
counterpart of a FIX NewOrderSingle, at fixed offsets with zero
allocation and zero parsing (see
TradeFlyweight for the pattern).Order entry abstraction — the seam between strategy code and the venue.
All-primitive order callback on the venue side of the fast lane: no order
object, no boxing, no allocation.
The post-or-cross decision — the smallest and most repeated choice in
execution, made explicit as expected-cost arithmetic instead of
habit.
The decision plus the arithmetic that made it.
The fill-probability REGION where posting beats crossing.
Zero-allocation single-producer / single-consumer ring buffer for order
messages — the order-entry mirror of the market-data
TickRingBuffer: preallocated primitive slots, cache-line-padded
sequences, acquire/release publication, and producer/consumer sequence
caching.Lifecycle state of a gateway order.
Order-rate throttle: a nanosecond token bucket for exchange message-rate
limits (every real venue enforces one; exceeding it earns disconnects or
fines, so the gateway must self-limit).
Ornstein-Uhlenbeck estimation — the mean-reversion engine under every
pairs trade and basis position:
dx = κ(θ − x)dt + σ dW.PROBABILITY OF BACKTEST OVERFITTING via combinatorially symmetric
cross-validation — CSCV (Bailey, Borwein, Lopez de Prado & Zhu 2015,
"The probability of backtest overfitting").
Statistical (pairs) hedging: regresses one price series on another to get
the hedge ratio, builds the spread, and characterizes its mean reversion —
z-score for entry/exit signals and half-life (from an AR(1) fit of spread
changes on spread levels) for expected holding time.
Quote-driven paper trading venue: closes the research-to-production loop by
running real strategy + risk-gate code against simulated fills.
One internally consistent view of the whole account (single lock acquisition).
A named parameter grid for strategy optimization;
ParameterGrid.combinations()
enumerates the cartesian product in deterministic order.One parent order worked by the
ExecutionAwareBacktester: the signal
that created it, the arrival price (close at signal time — the TCA
benchmark), and the child fills with the bar index each filled on.Principal component analysis of a covariance matrix — the risk-factor
compressor.
Minimal dependency-free PDF writer (PDF 1.4, Courier text, multi-page).
Computes
PerformanceMetrics from an equity curve and trade history.Strategy performance analytics.
FRTB P&L attribution test (PLAT) — the exam a risk MODEL must pass
to keep internal-model approval: does the risk engine's theoretical
P&L (RTPL — what the model's factors and pricers say the desk made)
actually track the desk's hypothetical P&L (HPL — what revaluing
the real book on real prices says)?
The PLAT verdict for one desk over one window.
Point-in-time universe membership — the engine-side half of
survivorship-bias-free backtesting.
How a security's life ends.
A security's terminal event.
Multi-asset portfolio of positions with live price updates.
Multi-asset, long/short portfolio backtester: rebalances positions (possibly
fractional and negative) toward the strategy's target weights at a
configurable cadence, charging commission on traded notional.
costModel, when set, supersedes the flat commissionRate
for every trade (rebalances and forced index-drop sales alike) — the
shared TradeCostModel seam that makes a run simultaneously
survivorship-aware AND execution-aware.dividendCashCredited and lifecycleEventsApplied are
populated by the survivorship-aware overload (zero otherwise).Turns raw factor scores into tradeable weight vectors — deliberately a
chain of small, composable, pure functions so a construction pipeline
reads as what it does:
True multi-symbol portfolio-level scheduling: a basket (rebalance,
transition, program trade) executed as one coordinated schedule rather
than N independent parents.
Portfolio Optimization Engine (long-only, fully invested).
An optimized allocation with its risk/return profile (same periodicity as the inputs).
Portfolio-level risk engine: portfolio VaR/CVaR/volatility, asset-level
risk, exposure analysis, correlation analysis, and risk decomposition
(marginal contribution to risk).
Full risk report.
A multi-asset, weight-based strategy for the
PortfolioBacktester.Position sizing rules: Kelly, fixed-fractional risk, inverse-volatility
weighting, and volatility targeting — the building blocks for
PortfolioStrategy weight construction.POV (percentage-of-volume) execution tracker: the streaming counterpart of
the precomputed
TwapScheduler/VwapScheduler schedules.Pre-trade risk gate: validates every order against configured limits before
it reaches the market — order size, notional, resulting position, price
collar versus a reference mid, restricted symbols, and counterparty credit
headroom.
PRIVATE-MARKET analytics — the toolkit for the asset class where the
usual machinery fails on purpose: no daily prices, cash flows the
manager (not the investor) times, and NAVs that are appraisals rather
than trades.
PURGED K-fold cross-validation splits with an EMBARGO — the fix for the
quiet leak that ordinary K-fold has on financial data (Lopez de Prado,
Advances in Financial Machine Learning, ch. 7).
One fold: test on
[testFrom, testTo), train on
trainIndices (ascending, purged and embargoed).QUANTO adjustment — for payoffs on a foreign asset settled in domestic
currency at a FIXED conversion rate (a Nikkei option paying in USD at
1:1).
Queue positioning and priority analytics: how position in the price-time
queue — and small latency differences in reaching it — translate into fill
probability.
Queue position estimation from L2 data — for when you don't have
the L3 feed that
marketdata.L3BookBuilder needs to track position
exactly.End-to-end tour of the platform on synthetic data: the 11 research
capabilities (indicators, backtesting, DSL, risk, ML, optimization, Monte
Carlo, screening, market data, reporting with SVG charts) plus the trading
and research extensions — data I/O, order book analytics, smart order
routing, execution-aware backtests with TCA, options hedging and vol
surfaces, fixed income, GARCH/EWMA, cointegration, walk-forward validation,
portfolio backtesting, and a risk-gated paper trading session.
SBE-style flyweight codec for a two-sided quote message — the outbound
format of a market maker (and the inbound format of venue top-of-book
feeds), completing the binary codec family:
TradeFlyweight (trade
in), OrderFlyweight (order out), quote (two-sided out).RANGE-BASED volatility estimators — the free lunch hiding inside every
OHLC bar: the high-low range carries far more information about the
day's variance than the close alone, so a range estimator reaches a
given precision with several times fewer bars than close-to-close.
Ranking engine: scores stocks by a weighted blend of min-max-normalized
criteria and sorts them best-first.
RATES VOLATILITY products priced off the curve — the bridge between
YieldCurve (where forwards and discount factors live) and
pricing.Black76 (the market-standard lognormal quoter for
anything written on a forward rate).Two-state Gaussian Markov-switching model (hidden Markov model) fitted by
Baum-Welch EM with forward-backward scaling: detects calm/turbulent
regimes in a return series.
Format-agnostic report model: an ordered list of titled table sections.
A report section: either tabular (headers + rows) or raw HTML content
such as an inline SVG chart (
html != null).Renders a
Report to a file.Professional Report Generator: assembles portfolio summaries, performance
analytics, risk analysis, allocations, strategy results, trade history,
Monte Carlo results and technical summaries into a
Report, and
exports to PDF, Excel (.xlsx), HTML or CSV.One request-for-quote auction — how equity derivatives actually trade.
Streaming per-dealer RFQ quality — the structured-products sibling of
execution.VenueScorecard and fx.LpScorecard: over many
auctions, which dealers actually show up, how fast, how competitively,
and how often they win.Bounded lock-free single-producer / single-consumer ring buffer for
ultra-low-latency event passing: no locks, no allocation on the hot path,
power-of-two indexing.
Pluggable risk metric over a periodic return series.
Custom Risk Metrics Framework: registry of built-in and user-defined risk
metrics, evaluated together over a return series.
Core quantitative risk metrics.
Risk parity: the portfolio where every asset contributes equally to
total risk (
w_i (Σw)_i equal across assets).RSI mean reversion: buy when RSI crosses up through the oversold level,
sell when it crosses down through the overbought level.
A boolean condition over a bar index, typically closing over precomputed
indicator arrays.
Factory of common
Rules over indicator arrays.SABR stochastic volatility model: Hagan et al. (2002) lognormal implied
volatility approximation and smile calibration.
Calibrated SABR parameters and the fit's RMSE in vol points.
Scale probe, parameterized: args = [crossCount, measuredTicks, crossMinMove].
200 direct pairs, crossCount synthetic crosses with legs spread across the
direct pairs (~crossCount/100 crosses touched per direct tick).
Composable screening predicate over a
StockSnapshot.Aligns multi-asset bar series onto one shared timeline — the bridge from
raw vendor files (
CsvBarLoader) to the index-aligned input the
PortfolioBacktester requires.Settlement (Herstatt) risk: the exposure created when you pay away one
currency before receiving the other leg.
One settlement instruction pair: we pay one leg and receive the other.
Horizontal scaling as shipped machinery, not a recipe: N independent
bus → risk gate → order gateway stacks (one consumer core and one
venue core per shard) behind a single symbol-routing facade.Horizontal-scaling probe: 300 direct symbols spread across k shards, all
quoted two-sided on every tick (conflation off = worst case), single
producer round-robin. args[0] = shard count.
Sharpe ratio significance tests (Bailey & López de Prado):
Probabilistic Sharpe Ratio — the probability the true Sharpe
exceeds a benchmark, adjusting for track length and non-normal
returns (skew, kurtosis).
Deflated Sharpe Ratio — PSR against the Sharpe you'd expect
from the best of N random trials: the multiple-testing haircut
for a strategy picked from a parameter grid.
The three classic short-rate models, each answering "what is a
zero-coupon bond worth if the short rate follows this SDE?"
Order side.
Trading signal emitted by a strategy for a single bar.
The unified streaming signal engine: one multi-symbol, hot-lane component
that turns raw top-of-book quotes and trade prints into the five signal
families a trading decision reads — for equities and FX alike (prices are
doubles; equity integer ticks are exact in a double, FX rates feed in
directly):
Imbalance — order-flow imbalance (Cont-Kukanov-Stoikov,
time-decayed), inside queue imbalance and signed trade-flow
imbalance, via a per-symbol
FlowSignals;
Fair value — the size-weighted microprice
(FairValueEngine.microprice);
Volatility — a streaming EWMA realized-variance rate over
irregular tick arrivals: per valid mid change,
r² / dt enters a time-decayed average, and
SignalEngine.volPerSqrtSecond(int) is its square root — multiply by
√(seconds per year) to annualize externally;
Liquidity — time-decayed EWMAs of the absolute spread (and
SignalEngine.spreadBps(int) of mid), displayed top-of-book depth, and quote
arrival intensity (from the decayed inter-quote gap);
Momentum — two time-aware EMAs of the mid (decay by
elapsed time, not by update count — constant-step EMAs like
indicators.StreamingIndicators mis-weight irregular tick
arrivals), read as the normalized fast/slow gap
(fast − slow)/mid.
Half-lives (all in nanos) for the decayed estimators, plus the
composite weights.
Signal evaluation — the metrics that decide whether a factor is worth
constructing a portfolio from, computed before any backtest so
weak signals die cheaply:
IC (information coefficient) — Spearman rank correlation
between scores at
t and forward returns over
(t, t+horizon], per evaluation date.Mean forward return per score quantile — the picture behind the IC:
meanReturns()[0] is the average forward return of the
lowest-scored names, the last entry of the highest-scored, and
SignalEvaluator.QuantileReport.spread() is the top-minus-bottom long/short
return per period.The evaluation scorecard;
SignalEvaluator.Report.format() renders it for humans.Analytics over Monte Carlo terminal portfolio values: probabilities,
VaR/CVaR, confidence intervals and scenario extremes.
Inventory-skewed two-way pricing — the central risk book's quoting
face.
A shaded two-way price.
One child slice of an execution schedule.
Golden/death cross: buy when the fast SMA crosses above the slow SMA, sell on the reverse cross.
Smart Order Router: splits a marketable order across venues to minimize
the all-in (fee-adjusted) execution price, respecting each venue's
displayed/estimated size.
One child order of the routing plan.
Smart-order-routed execution over a synthetic fragmented market.
Two-legged spread execution with LEGGING-RISK control — pairs trades,
cash-vs-futures basis, stub-vs-hedge: the trade is the SPREAD, and
the risk is the moment you own one leg without the other.
This interval's child quantities, per leg.
Short-term spread prediction.
Professional Stock Screener: applies technical and fundamental filters to a
universe, optionally ranks matches, and exports results to CSV.
One screening candidate: symbol, price history, and fundamentals.
Strategy Builder DSL: compose entry/exit rules, stop loss and take profit
into a backtestable strategy with a fluent API.
A rule-based strategy produced by the builder.
Builds a strategy instance from one parameter combination.
Incremental O(1)-per-tick indicators for live/HFT strategies: update state
with each new value instead of recomputing arrays.
Exponential moving average seeded with the SMA of the first
period values.MACD line, signal and histogram, matching the batch seeding exactly.
Wilder RSI; NaN until
period price changes have been observed.Simple moving average over a fixed window; NaN until the window fills.
Cumulative volume-weighted average price.
Stress testing and scenario analysis — the risk numbers VaR cannot
give you, because VaR is calibrated to the recent past and a stress
test deliberately is not.
The reverse-stress answer: the most-probable shock vector and its distance.
STRUCTURED NOTES — the retail shelf, priced the only honest way: by
DECOMPOSITION into the vanilla pieces this library already prices.
SVENSSON (Nelson-Siegel-Svensson) yield-curve fit —
NelsonSiegel
with a SECOND curvature hump, the form most central banks actually
publish (the ECB's daily curve is exactly this):Fitted parameters plus the fit's root-mean-square error.
Dependency-free inline SVG charts for HTML reports: equity curves and
drawdown charts rendered as self-contained SVG strings (no external assets,
no JavaScript).
FX forward (swap-points) curve: the market's quoted forward points per
tenor, turned into outright forwards for any settlement date.
Accumulates tenor/points quotes, then freezes them into a curve.
VANILLA interest-rate swap pricing off the
YieldCurve — the
missing middle between the curve (which the bootstrap builds FROM par
swaps) and RatesOptions (which prices options ON forward
swaps): the PV, par rate and DV01 of an actual swap position.Interns instrument symbols to dense int ids so the hot path never touches
String hashing or map lookups: resolve the id once at subscription
time, then publish and dispatch with primitive ints only.Direct-versus-synthetic cross execution arithmetic: an FX cross (EURJPY)
can be dealt directly or replicated through its liquid legs (buy EURUSD,
buy USDJPY), and the cheaper route changes with every quote — direct
cross books are thin outside London hours while the USD legs stay tight.
Technical screening filters evaluated on the most recent bar.
Event-driven tick-level backtester: replays a captured QFLT tick file
through a
TickStrategy with microstructure-aware fills — the level
below the bar-based engines, where queue position decides whether your
passive order actually trades.tickSize > 0 snaps limit-order matching to the exchange price
grid (prices within the same tick are one level); 0 falls back to
epsilon equality — use a real tick size with real market data.Records every tick flowing through an
HftMarketDataBus into a QFLT
tick file: attach once, trade/observe as usual, close to flush — then
replay the session deterministically with TickFileReader.Reader/replayer for QFLT tick files (see
TickFileWriter).Replay callbacks: primitive tick data plus symbol definitions as encountered.
Writer for the QFLT binary tick format — compact capture of live tick
streams for deterministic replay (28 bytes per tick, buffered sequential
writes).
All-primitive tick callback for the HFT hot path: no event object, no
boxing, no allocation.
Zero-allocation single-producer / single-consumer ring buffer for market
data ticks, in the style of the LMAX Disruptor:
Preallocated primitive slots — ticks live in parallel
int[]/double[]/long[] arrays; nothing is allocated per tick
on either side, so the steady-state GC load is zero.
Cache-line-padded sequences — head and tail counters are padded
to avoid false sharing between the producer and consumer cores.
Acquire/release ordering — slot writes are published with a
single release store of the tail; no CAS, no locks on the hot path.
Sequence caching — each side caches the other's sequence and
only re-reads the volatile counter when it appears blocked, removing
most cross-core traffic.
Price-banded tick sizes — the MiFID II / ESMA RTS 11 regime where the
minimum price increment depends on the instrument's price (and liquidity
band), rather than being one flat number.
Accumulates (floor price, tick) bands; floors may arrive in any order.
An event-driven strategy for the
TickBacktester: sees every tick in
sequence and trades through the TickTradingContext.Order entry and account access for a
TickStrategy.One-touch and no-touch options (pay-at-expiry) under continuously
monitored geometric Brownian motion — with the barrier-hitting
probability itself exposed, since desks quote one-touches as
(roughly) discounted hit probabilities.
A completed round-trip trade.
TRADE-LEVEL analytics — the numbers a discretionary reviewer asks for
that a Sharpe ratio hides.
Trade aggressor classification (Lee-Ready, 1991): the missing glue for
feeds that print trades without saying who initiated.
A pluggable per-trade cost model — the ONE definition of "what a trade
costs" shared by the backtest engines, so an execution-aware number and a
survivorship-aware number can come out of the same run:
TradeCostModel.flat(double) — a fixed all-in bps (the classic commission
assumption, and the exact equivalent of the legacy
commissionRate configs);
TradeCostModel.institutional(double, double, double, int) — commission + half-spread + slippage +
square-root market impact, with per-symbol ADV/vol estimated from
the trailing bars via MarketImpactModel.estimate(com.quantfinlib.core.BarSeries, int, int).SBE-style flyweight codec for a market-data trade message: fixed field
offsets over a
ByteBuffer, so encode/decode is a handful of
absolute primitive reads/writes — zero allocation, zero parsing, zero
copying.Zero-dependency live trading dashboard (JDK
com.sun.net.httpserver):
serves a self-refreshing HTML page and a JSON status endpoint with the
paper-trading account (cash, equity, realized Pinvalid input: '&L', positions, rejections)
and any attached latency histograms — the whole live loop, observable in a
browser.A bar-driven trading strategy.
Transaction Cost Analysis: benchmarks matched trades against the arrival
mid, the interval market VWAP, and the prevailing mid at each fill
(effective spread).
Triangular arbitrage checks over three related FX pairs, using dealable
bid/ask quotes (not mids), so a positive result is executable edge before
fees.
TWAP (time-weighted average price) schedule design: splits a parent order
into evenly spaced child slices, optionally with randomized sizes to reduce
schedule predictability (anti-gaming).
UCB1 multi-armed bandit — principled selection among venues, LPs or
algo variants when the scorecards are still THIN.
Loads a
PointInTimeUniverse from a user-supplied CSV file — the
defined interchange format for the membership/lifecycle data the engine
cannot invent.Vanna-volga pricing: the FX desk's standard smile-consistent adjustment
built from exactly three market pillars (in practice the 25Δ put, ATM and
25Δ call that
fx.FxVolSurface solves from broker RR/BF quotes).VaR model validation: do the exceptions (losses beyond VaR) occur at the
promised rate, and independently?
Portfolio Value-at-Risk, all four classic flavors over one input
shape: factor EXPOSURES (currency P&L per unit factor return — a
delta vector) against a factor covariance matrix or a factor-return
history.
Revalues the book under one scenario's factor moves.
VaR and ES from Gaussian Monte Carlo factor scenarios.
The Lo-MacKinlay VARIANCE RATIO test — the question that comes before
every strategy choice: is this series trending, mean-reverting, or a
random walk?
VARIANCE SWAP analytics — the cleanest pure-volatility trade there is:
at expiry the swap pays
notional × (realized variance − strike),
no delta, no path-dependent barriers, no vega decay games.Venue benchmarking from execution outcomes: fill rate, latency-to-fill,
effective spread paid, and post-trade markout (adverse selection) per
venue, ranked by execution quality.
One routing outcome.
A venue's dealable top of book for routing.
Streaming per-venue execution quality — the equities counterpart of
fx.LpScorecard: displayed prices tell you where a venue CLAIMS
you'll trade; the scorecard tells you what actually happens when you send
there.Intraday volatility seasonality — the third leg of the seasonality trio
beside
VolumeCurve and SpreadForecaster: volatility is
U-shaped through an equity day (wild open, quiet lunch, busy close) and
session-humped through an FX day (London open, NY overlap), so "is the
market volatile right now?"Systematic vs IDIOSYNCRATIC volatility — the decomposition behind
"how much of this stock's risk is the market, and how much is the
company?"
Machine Learning Risk Forecasting: predicts forward realized volatility from
a return series using gradient-boosted trees over engineered features
(multi-horizon realized vol, momentum, and shock magnitude), and maps the
forecast to an intuitive 0-100 risk score.
A VIX-style MARKET volatility index — the "fear gauge": the market's
own 30-day volatility expectation, read model-free out of an option
chain.
Implied volatility surface built from (expiry, strike, vol) pillar quotes —
or directly from market option prices via implied-vol inversion.
Dynamic intraday volume prediction — the model that makes a VWAP schedule
live instead of historical.
VPIN — Volume-synchronized Probability of INformed trading (Easley,
López de Prado & O'Hara): the flow-toxicity gauge a market maker
watches to decide when quoting is no longer a business.
VWAP schedule design: allocates child slices proportionally to an expected
intraday volume profile (e.g. from
com.quantfinlib.ml.IntradayLiquidityForecaster), so participation
tracks the market's own volume curve.Walk-forward analysis — the standard defense against overfit backtests.
Live market data over WebSocket into the
HftMarketDataBus — the
last mile that lets the capture/replay, paper-trading and analytics stack
run on real ticks.Whalley-Wilmott OPTIMAL hedge bands — the answer to the question
every band hedger otherwise guesses: how wide should the no-trade
band around delta be?
The rebalancing decision: trade (to the nearest edge) or hold.
Benchmark-fixing execution schedule, WMR-style: orders benchmarked to a
fixing (the WM/Refinitiv 4pm London fix and its cousins) are executed by
spreading the parent evenly across the fixing's calculation window, so
realized cost tracks the benchmark rather than betting against it — the
window is 5 minutes for major pairs, and the benchmark is computed from
observations inside it, so TWAP-in-window IS the neutral replication.
Minimal dependency-free XLSX (Office Open XML spreadsheet) writer.
Zero-coupon yield curve — the single most load-bearing object in fixed
income: every bond price, swap value, forward rate and DV01 is a
function of it.