Platform

Everything between your strategy and the broker.

Provisioning, isolated runtimes, monitoring and alerts, failover, a universal API and pre-trade risk control, in one self-hosted platform. Early access, on MT5 demo accounts.

01 · Provisioning

Add a server by its address. PerkBridge does the rest.

Bring any Ubuntu 24.04 VPS or dedicated server. The dashboard connects once over SSH, verifies the host’s identity, installs Docker and the Fleet Agent, and enrols the agent with its own certificate. Windows servers are in progress.

✓Host key verified before anything is installed
✓Temporary provisioning credential, never kept
✓Idempotent: running it twice changes nothing
✓Remove a server and clean its host. Broker positions are never closed
✓Optional: remember broker credentials in nile-vault, split between the server and the control plane
How to add a server →
Add server
Address203.0.113.21
Namevps-frankfurt-01
Host identity verifiedDone
Docker Engine installedDone
Fleet Agent enrolled (mTLS)Done
Runtime images pulledIn progress
MetaTrader 5Available
Installed from MetaQuotes or your broker, under Wine with a headless display
cTraderComing soon
Same isolation model
Exchange adaptersExploring
Crypto exchanges, direction only
MetaTrader 4Under consideration
Tell us if you need it
Image mt5-runtime@sha256:…CPU 1 coreMemory 2 GBNetwork broker only

02 · Isolated runtimes

One account, one sealed environment.

Every trading account runs in its own version-pinned container with its own resources and temporary data. One crash, update or misbehaving EA never touches another account.

✓Pick a platform from the signed image catalog. The latest version downloads to your server, then the deployment is created
✓Runtime images trusted only from ghcr.io/perkbridge, and approved by you
✓Find your broker’s server by name, in the official client
✓No Docker socket inside, ever
✓Deployments start again after a server reboot, on by default
See all connectors and what is planned →

03 · Monitoring

See every layer, from the server to the broker link.

Layered health tells you exactly where a problem is: the server, the agent, the container, the terminal or the broker connection. Alerts open and resolve on their own and keep a history, 7 days by default. They are in the dashboard and the API, and rules can send them to your own channels.

✓Server CPU, memory and disk over time
✓Alerts with acknowledgement and event log
✓Telegram, Slack, email and signed webhook notifications
Read the monitoring guide →
Health · acc 2Healthy
ServerAgentContainerTerminalBroker
Warning · dedicated-london agent disconnected2 min ago
Resolved · acc 5 broker link restored1 h ago

04 · Recovery and failover

Detect and alert. Never restart blindly.

What happens during an outage →

Restarting a trading process blindly can open duplicate positions. So PerkBridge does not restart a stalled terminal on its own: it detects the fault and raises an alert, and you decide what happens next. After a server reboot, deployments start again by default, and you can turn that off.

Health alertsDetects a stuck terminal, a lost broker link or an offline server and raises an alert. It does not restart or stop a terminal.
Works offlineLosing the dashboard never stops trading and never deletes an environment.
You can always closeClosing a position stays possible during an emergency halt or a risk-engine outage.
FailoverIncludedChoose and arm a standby server, then switch by hand or automatically, with fallback if a switch fails. Orders are held so nothing trades twice.

05 · Universal API

One API for every account.

Quotes, bars, symbols, positions, orders, history and events through one REST interface described in OpenAPI 3. Today it trades MT5 demo accounts with market, limit, stop and stop-limit orders and time in force (GTC, day, GTD). Pending orders can be modified and cancelled, and closes are full closes. Stop loss and take profit work on pending orders, not yet on MT5 market orders. Coming next: DirectConnect, an opt-in low-latency order path over a TLS WebSocket for demo accounts, with the same risk checks. It is designed, not built yet; an early benchmark measured about 200 to 230 ms end to end on a broker demo server, mostly broker time, and that is not a guarantee.

✓Idempotent orders with a client order id
✓Routes and scoped tokens per strategy, expiring after 90 days by default
✓Halt an account, or every account, in one call or from the dashboard
✓An Orders tab in the dashboard with positions, pending and recent orders
Open the API reference →
GET  /v1/trading/accounts/{account}/positions
POST /v1/trading/accounts/{account}/orders
GET  /v1/trading/accounts/{account}/orders/{id}/timeline
POST /v1/trading/accounts/{account}/positions/{id}/close
GET  /v1/trading/accounts/{account}/quotes
GET  /v1/trading/accounts/{account}/events
POST /v1/trading/halt-all
New rule
ScopeAccount acc 2
PeriodDay
ActionBlock new exposure
Conditionday.loss >= 1000
Checked before every order inside the trading environment. If the rule cannot be evaluated, new exposure is refused.

06 · Risk management

Your limits, enforced before the order leaves.

Set loss, exposure, rate and market-quality rules from 12 metrics, per account, strategy, route or symbol. When a limit is hit, new exposure is blocked; closing positions automatically on a limit trip is not available yet. Time rules cover trading hours, market close and news windows from the MT5 economic calendar, and can close positions and cancel pending orders before the close or the news. A tripped rule stays latched until its period ends, unless you clear it through the API.

✓Daily, weekly and monthly loss limits
✓Position, volume and order-rate limits
✓Stale-quote and wide-spread guards
✓Trading hours, market close and news windows
✓Fleet-wide emergency stop in the dashboard, with closing still allowed
Set up risk rules →

07 · Ephemeral sessions

Short-lived terminals that leave nothing behind.

Start an environment with an explicit lifetime. When it ends, session data is wiped and the cleanup is verified, so a temporary login stays temporary.

STARTED09:00Credentials delivered once
ENDS18:00Explicit lifetime policy
CLEANEDVerifiedSession data removed
See the whole platform in a private demo sandbox.Simulated fleet. No sign-up.
Request a demo sandbox