Presets
Fifteen named coefficient sets. Use pt-v14 unless a published run names another one.
Which preset to use
A band is the range a real equity market produces for one statistic. Fourteen statistics are measured on the simulated market and compared against their real-market ranges: volatility, the fatness of the tails, how much names move together, whether volatility arrives in episodes, whether volume behaves. A statistic is in band when the simulated value falls inside the real range. The columns count how many of the fourteen do, at one and at two trading years.
Name it, or inherit a moving default
e = tf.Engine(seed=42, universe=u,
model="pt-v14")
e.model_fingerprint # "pt-v14"
tf.model_preset() # the set in force
# a settable change renames it
# "custom-7f290e34"
The era boundary
pt-v14 became the default on 2026-08-28, and every trajectory that came from the default changed that day. A run recorded before it is not comparable to one after it unless both name their preset.
Checked rather than asserted: pt-v1, pt-v2 and pt-v3 give identical market digests under 0.1.4 and 0.2.0.
What a preset pins
In the dictionary
The mispricing and crowd model: the half-life, mispricing_phi, momentum_theta, the mispricing and daily-shock caps, and the three crowd terms.
Two are derived rather than set: mispricing_phi and s_phi_tick come from the half-life.
Live, and not in it
The GARCH parameters, the market and sector factor sigmas, and the order-flow coefficient. Nothing forces a preset name to change when one of them moves.
So a fully specified run is package version, preset, universe fingerprint and seed. The preset alone is necessary and not sufficient.
Never settable
The draw schedule: market hours, the 390-tick day, the calendar and the sector key order. A preset changes what the draws are multiplied into, never the schedule itself.
The guards are settable but excluded from every calibration search, because they are worst-case guarantees. daily_shock_cap is not settable at all.