market_regime
The market-wide arrival factor: whether the market is calm or busy, how hard every feed is being pushed, and whether a scenario has forced the state instead of the chain choosing it.
The factor belongs to the run, not to a row, so there is one of these rather than one per feed. A feed's own regime — its rate, its arrival mode and its sensitivity to this factor — is a column of its generation config, read with the config menus.
The command is shaped like this:
synthetic regime get
It answers with the state in force (calm or active), the multiplier every
feed is scaled by now, and whether the state is pinned.
1. get
Reads the factor in force. Nothing addresses it: there is one market per run, so the read takes no argument and answers for the whole run.
The command is shaped like this:
synthetic regime get
It is addressed at synthetic.v1.ops.get_market_regime.
synthetic regime get
2. pin
Forces the state, or hands it back to the chain.
auto lets the chain choose again, calm and active pin that state. A pin
holds however much time passes, which is what a demonstration or a stress run
needs: a test that must wait for a random turn is not a test. A pin is in force
when the command returns: every feed's pace changes at that instant, including a
feed part way through a long gap.
The command is shaped like this:
synthetic regime pin <auto|calm|active>
It is addressed at synthetic.v1.ops.pin_market_regime.
synthetic regime pin __none__
3. trace
Shows what the scheduler decided and how the loop is doing. The loop records every tick, regime turn, pin and change of the feeds, each with its clock time and its market time, tau. A tick also carries the gap its feed's law drew, in the feed's own operational time, and the wall gap it took.
The first argument names one feed, whose events come with the market's, or
all. The second is the window in seconds, two minutes when it is left out.
The reply leads with the run seed, the ticks a second, the heap size and how
late the loop fires, then counts the events by kind and lists the last ten.
The command is shaped like this:
synthetic regime trace [source|all] [seconds]
It is addressed at synthetic.v1.ops.get_market_trace.
synthetic regime trace all 60