Global settings

Every binaryAiEngine* platform setting — master switches, the win-rate band, tier bonus defaults, cooldown and whale thresholds, and the emergency controls — with what each one actually changes.

4 min readUpdated 3 August 2026settings, configuration, kill-switch

The Settings page at /admin/ai/binary-engine/settings holds the platform-wide configuration for the addon. It writes flat binaryAiEngine* keys through the core platform settings endpoint, and the engine reads them back at runtime.

There are two kinds of key here and confusing them is the most common mistake.

Kind Behaviour
Master switches Read on every cron cycle. Take effect within ten seconds, on every engine, whether or not you touch the engine rows.
Defaults for new engines Read only when an engine is created. Changing one does nothing to an engine that already exists.

Nine of the twenty-two fields are the first kind. The rest are the second.

Raising the default target win rate does not raise it on any existing engine. To change a running engine, edit the engine. To change what the next engine starts with, edit this page.

The page requires access.ai.binary_engine.settings and saves through PUT /api/admin/system/settings, which is changed-keys-only — untouched fields are not rewritten.

Engine tab — the master switches

Master switch for the whole addon. Off means no engine steers anything, anywhere.

Read on every cron cycle. When off, the cron marks the engine globally paused, stops every correlation monitor and returns immediately. Settlements record FAIR:GLOBAL_PAUSE. Engine rows keep their status; nothing is unloaded permanently, so switching it back on resumes within a cycle.

This setting fails closed: if the settings store cannot be read at all, the addon is treated as disabled rather than left running blind on unknown configuration.

Temporarily halt all steering without changing any engine's status.

The kill switch you reach for first. Engines stay loaded, so lifting the pause resumes instantly. It also suspends correlation monitoring and removes the per-order exposure caps, since a paused engine imposes no risk appetite.

Shadow mode for every engine: decisions are recorded, real outcomes are never steered.

Equivalent to turning simulationMode on for every engine at once, without editing any of them. Engines keep analysing buckets and recording what they would have done; settlements record FAIR:GLOBAL_PRACTICE_MODE.

Not to be confused with the per-engine practiceMode option, which is about demo accounts.

Default hours between win-rate period resets for newly created engines.

Range 1–168. Seeds winRateResetHours on new engines. The actual rollover is driven by each engine's own column.

Win Rate tab

Target user win rate seeded onto new engines.

A percentage, 20–50, stored as a percent and normalised to a fraction when read. Clamped between the min and max below before it is used, so a target outside your own band cannot be seeded.

Absolute floor. Every engine's effective target is clamped up to this.
Absolute ceiling. Every engine's effective target is clamped down to this.

These two are master switches, not defaults. The band is pushed to the engine on every cron cycle and applied to every decision, after tier bonuses and cooldown reductions. It is the platform-wide guarantee that no combination of per-engine settings can produce a target you did not sanction.

Min is 15–40, max is 30–55. If they cross, the reader swaps them rather than producing an impossible band. The page also clamps the trio before saving.

CUSTOM practice mode is exempt — it deliberately targets a friendlier rate than the live band allows.

Largest step the automatic ML optimiser may move a target win rate by, per adjustment.

Expressed in permille (‰), range 1–50, so the default 10 means 0.010 — one percentage point. Read on every cron cycle and applied to enableMlAutoApply engines. It bounds the machine, not you: a manual edit to a target is not limited by it.

Tiers tab

Enable the volume-based user tier system by default on new engines.
Bronze tier win-rate bonus.
Silver tier win-rate bonus.
Gold tier win-rate bonus.
Platinum tier win-rate bonus.
Diamond tier win-rate bonus.

Percentages, each with its own upper limit (5, 7, 10, 12 and 15 respectively), normalised to fractions when read.

These are the platform-wide bonus profile. The bonuses actually applied to a bucket come from the per-engine tier rows under Users → User Tiers, which are seeded separately when the extension is enabled. If you change a bonus here and see no effect, that is why — edit the tier row.

See Tiers and cooldowns.

Cooldown tab

Enable the cooldown system by default on new engines.

Seeds both enableBigWinCooldown and enableStreakCooldown.

Default profit, in the market's quote currency, that triggers a big-win cooldown on new engines.

An absolute profit amount, 0–1,000,000. Not a multiplier over average stake — that reading came from an older key which nothing ever computed, and this is a new key so a stored multiplier can never be reinterpreted as an amount.

Minutes of cooldown after a big win.

Range 5–1440.

Win-rate penalty applied while a big-win cooldown is active.

A percentage, 0–20, normalised to a fraction. Applied to a bucket in proportion to how many of its orders belong to users under cooldown.

Consecutive wins that trigger a streak cooldown.

Range 2–10. Streaks are counted per symbol.

Minutes of cooldown after a win streak.

Range 5–1440.

Whale tab

Detect and handle large orders specially, by default on new engines.
Default stake, in the market's quote currency, that classifies an order as a whale on new engines.

An absolute amount, 0–10,000,000. As with the big-win threshold, this is a new key with the correct meaning rather than a relabelled old one.

Maximum win rate a bucket containing whale orders may be steered to.

A percentage, 10–40. Seeds whaleWinRateCap. The cap is applied last, after tier bonuses, cooldown reductions and the global band, so it is the final word on a whale bucket.

See Risk controls.

Emergency tab

Six buttons, each with a confirmation step, each audited. Full behaviour is in Risk controls; the summary:

Button Endpoint Reversible
Emergency Stop All Engines /api/admin/ai/binary-engine/emergency/stop Reactivate each engine
Pause All Engines /api/admin/ai/binary-engine/engine/pause-all Resume All
Resume All Engines /api/admin/ai/binary-engine/engine/resume-all Yes
Reset All Periods /api/admin/ai/binary-engine/engine/reset-all-periods No
Clear All Cooldowns /api/admin/ai/binary-engine/cooldowns/clear-all No
Create All Snapshots /api/admin/ai/binary-engine/snapshots/create-all n/a

Emergency Stop requires a reason and it is recorded on every affected engine.

How the values are read

Worth knowing when a setting looks like it is being ignored:

  • Everything comes back as a string. The platform settings store is text — a switch that is off is the string "false", not a boolean. Every field is coerced defensively on read.
  • Percent fields are normalised. A stored 35 becomes 0.35. A stored 10 in the adjustment-speed field is permille and becomes 0.010.
  • A blank or unparseable value falls back to the documented default, not to zero.
  • A genuine zero is honoured on the per-engine columns. Setting an engine's steering band to 0 switches steering off; it does not restore 0.3%.
Profile Target Band Steering Notes
Cautious 40% 35–45% 0.002 Generous, thin margin, few interventions
Balanced 35% 25–45% 0.003 The shipped defaults
Tight 30% 25–40% 0.005 Wider margin; users will notice sooner

Whatever you pick, run it with the global practice switch on for a full period first and read the dashboard's settlement verdict breakdown before you commit.