Install and enable
The prerequisite chain for the Binary Trading AI Engine — Ecosystem, AI Market Maker, an ECOSYSTEM-source binary market — plus the Extension Manager switch that gates the cron, licence activation, permissions and how to prove it is running.
The addon is a separately licensed product, activated, installed and switched on from the Extension Manager like every other add-on. There is no separate installer and no service of its own to start. What "installing" means here is: get the four prerequisite layers in place, activate the licence, install the release, switch the add-on on so its cron registers, and then build your first engine.
Getting the order wrong is the most common failure. Every symptom on the Troubleshooting page traces back to one of the steps below being skipped.
Prerequisites, in order
- A working Bicrypto install — see Server requirements
- Binary trading switched on in core (
binaryStatus) - The Ecosystem addon installed, licensed and enabled
- At least one ecosystem market for the pair you want to run
- The AI Market Maker addon installed, licensed and enabled
- An AI Market Maker created for that ecosystem market, and ACTIVE
- A binary market for the same pair with
source= ECOSYSTEM - Rise/Fall enabled under Finance → Binary → Settings
- This addon licensed, installed and switched on under Admin → System → Extension Manager
- Your admin role holding the
access.ai.binary_enginepermission
Why each layer is non-negotiable
Ecosystem. The engine refuses to steer any market whose binaryMarket.source
is not ECOSYSTEM. On an exchange-backed market the tape belongs to Binance or
KuCoin — no amount of steering makes your settlement agree with their chart, so
steering there is guaranteed to be detectable. The refusal is recorded as
FAIR:MARKET_NOT_ECOSYSTEM.
AI Market Maker. An engine is attached one-to-one to an aiMarketMaker row
(the column carries a unique index, so a market maker can host exactly one
engine). The market maker owns the published price series; the engine writes the
steered close into it and updates the market maker's lastKnownPrice so the
chart and the trade history agree.
More importantly, an engine whose market maker is not ACTIVE has no independent
writer on the tape. Entries would read the last candle close and settlements
would publish into it — both numbers the engine itself last wrote. That is the
one configuration where steering is indefensible, so it fails safe:
FAIR:MARKET_MAKER_<status>.
Rise/Fall. The engine only steers RISE_FALL orders. If that type is
disabled under Finance → Binary → Settings, the engine has nothing to work
on. Every other binary type settles untouched no matter what the engine is doing.
Enable the extension
The add-on is licensed, installed and switched on from one place —
Admin → System → Extension Manager — and the switch there is the one the
cron scheduler watches: processBinaryAiEngine is registered only while the
add-on is enabled. The order is fixed: activate the licence, install the
release, then switch it on.
- The Binary AI Engine card — click it to open the product page
- Its switch stays disabled, reading Activate license first, until the licence is activated
-
Open the Extension Manager — Admin → System → Extension Manager. On the Extensions tab (or by searching for Binary) find Binary AI Engine — product ID
61364183— and click the card. Until its licence is activated the card's chip reads Activate and its switch is disabled, with the tooltip Activate license first. -
Activate the licence. On the product page press Activate License. Paste the purchase code from your MashDiv dashboard, optionally an email address for update notifications, and press Activate License. The screen confirms License Activated! and returns you to the product page a couple of seconds later. If the server has no outbound access, the License File tab on the same screen takes the licence certificate downloaded from your MashDiv dashboard instead.
- Paste the purchase code here
- Activate License — then wait for the redirect back to the product page
- License File — the offline route, for a server with no outbound HTTPS
-
Install the release. Back on the product page, now licensed, the Overview tab has a release panel. If it offers Install v…, press it; if it says Up to date on a product you have only just licensed, press Check for Updates once, then install whatever it offers. The Releases tab holds the notes for the version you are being offered — read them first.
Install downloads the release, verifies it and extracts it over the project root. It runs no migrations, builds nothing and restarts nothing, so finish it from a shell on the server:
pnpm updatorThat is the finalise chain — stop, dependencies, schema, seed data, frontend build, start — and it is what makes the addon's tables, routes, screens and cron job exist. If the panel still says Up to date after the check there is nothing to download; go straight to the next step.
- Check for Updates, then Install v… when it is offered
- Releases — the notes for the version you are about to install
- The Enabled switch — step 4, not yet
-
Switch it on. Turn the Enabled switch on — in the product page heading, or on the card in the Extension Manager, which is usable now that the licence is verified. This is what makes Binary AI Engine appear under Admin → Extensions → Trading Automation, opens its console at
/admin/ai/binary-engine, and tells the cron scheduler to register the engine's job. No restart is needed. -
Wait for the cron to pick it up. The scheduler re-reads the enabled add-on set about once a minute and registers or deregisters addon jobs without a restart. Within a minute you should see
processBinaryAiEnginein Admin → System → Cron, running on a 10 second period.
processBinaryAiEngine is filed under the binary_ai_engine category. If the
add-on is switched off, that cron is never scheduled — so no engine is loaded
into memory, no period ever rolls over, no correlation monitor runs, and the
settlement hook finds nothing resident and settles fairly. Engines can sit at
ACTIVE the whole time and look perfectly healthy on the list screen.
What the cron does
Understanding this job explains most of the addon's behaviour.
Every 10 seconds it:
- reads the global master switches and fails closed — if the settings store cannot be read at all, the engine is treated as disabled rather than left running blind;
- refreshes the global min/max win-rate band used to clamp every decision;
- boots the engine singleton once, then reconciles database status against memory on every cycle — this is restart recovery, and it is why an ACTIVE engine comes back by itself after a deploy or a crash;
- rolls over win-rate periods that have come due (checked about once a minute) and closes A/B tests that have reached their configured duration;
- keeps an external price correlation monitor running for every engine that has one enabled;
- retrains and applies the machine-learning win-rate recommendation for engines that opted in, at most one engine per cycle and no more than once every six hours.
The per-second steering loop is separate: the cron supervises lifecycle and the kill switch, the tick loop does the work.
The tick loop and the in-memory engine map live on the main thread. The shipped
entry point (pnpm start) is a single process, so this is not a limitation you
will hit. If you switch to the threaded backend entry or PM2 cluster mode,
engines cannot be started or stopped from the admin screens at all, and the
per-order exposure cap falls back to a short-lived database lookup. Do not run
this addon under cluster mode.
Permissions
The addon adds one access key and twenty-three scoped keys. A role that should
administer engines needs at least access.ai.binary_engine — without it the
menu entry does not render and the dashboard endpoint returns 403.
| Area | Keys |
|---|---|
| Console | access.ai.binary_engine, access.ai.binary_engine.settings |
| Engines | view / create / edit / delete / manage .ai.binary_engine.engine |
| Tiers | view / create / edit / delete .ai.binary_engine.tier |
| Cooldowns | view / edit / delete .ai.binary_engine.cooldown |
| Snapshots | view / create / delete / manage .ai.binary_engine.snapshot |
| Analytics | view / create / edit / delete / manage .ai.binary_engine.analytics |
| Correlation | view / edit .ai.binary_engine.correlation |
manage.ai.binary_engine.engine is the destructive one — it covers the emergency
stop that halts every engine at once. manage.ai.binary_engine.snapshot covers
rollback. Grant both sparingly.
Permission keys are seeded, not created on demand. See Permissions for how a key is derived and the places it has to exist.
Where the screens live
The admin console is at /admin/ai/binary-engine, reachable from Admin → Extensions → Trading Automation → Binary AI Engine. Its own navigation is:
| Screen | Path |
|---|---|
| Dashboard | /admin/ai/binary-engine |
| Engines | /admin/ai/binary-engine/engine |
| Analytics | /admin/ai/binary-engine/analytics |
| Price Correlation | /admin/ai/binary-engine/correlation |
| User Tiers | /admin/ai/binary-engine/tiers |
| Cooldowns | /admin/ai/binary-engine/cooldowns |
| Snapshots | /admin/ai/binary-engine/snapshots |
| Settings | /admin/ai/binary-engine/settings |
Core binary trading stays where it was: Finance → Binary → Markets, Finance → Binary → Settings and Finance → Orders → Binary Orders. Payouts, durations, order types and per-user order limits are all set there, not here.
First run, safely
Do not point a fresh engine at live money on day one.
-
Seed the tiers. The
pnpm updatorrun that applied the install writes five default tiers — BRONZE, SILVER, GOLD, PLATINUM, DIAMOND — for each engine that already exists, with bonuses of 0%, +1%, +2%, +3% and +5%. Your first engine is created after it, so add its tiers by hand under Users → User Tiers. -
Create an engine against an ACTIVE market maker. New engines are created PAUSED, never ACTIVE — see Engines.
-
Turn on simulation mode on the engine before you activate it. In simulation the engine analyses buckets and records everything it would have done, and settlement is never steered.
-
Activate it and leave it in simulation for a full period. Watch the engine's audit log fill with
SIMULATION_RUNrows and confirm the decisions look sane. -
Check the dashboard's settlement verdict breakdown. It counts the last 24 hours of settlements by reason. In simulation every one should read
FAIR:SIMULATION_MODE. -
Only then turn simulation off, and start with a conservative
maxPriceAdjustmentPercentand amaxDailyLossyou are genuinely willing to lose.
Verify the install
Four checks, in order. If one fails, stop there.
| Check | Where | Expected |
|---|---|---|
| Cron registered | Admin → System → Cron | processBinaryAiEngine, 10s period, status not failed |
| Market maker running | Admin → Extensions → AI Market Maker | The attached market maker is ACTIVE |
| Binary market feed | Finance → Binary → Markets | The pair exists with source ECOSYSTEM and status on |
| Engine attached | Engine detail screen | Status ACTIVE, and the status response reports engineAttached: true |
engineAttached is the one that catches a silently dead install: it says whether
this process is actually running the engine, rather than merely recording that
it should be.
Uninstalling
Switching the add-on off — the same Enabled switch in the Extension Manager — is enough to stop everything: the cron deregisters within a cycle, correlation monitors are torn down, and the settlement hook stops finding a resident engine — every subsequent order settles on the honest close. The licence stays in place, so switching it back on later needs no reactivation.
Engine rows, positions, tiers, cooldowns, snapshots and the audit log are all left in place. Deleting an engine cascades to all of them, so if you want the history, do not delete the engine.