Sign in

How do you want to sign in?

This login is both a staff account and a client account. You can switch sides later from the profile menu.

Password reset

Email confirmation

New password

ArbBot

Telegram

Service notices arrive here (outages, changes to terms). The bot cannot message you first — open the link once and press Start.

Telegram bot

One bot for the whole product. Create it in @BotFather and paste the token here.
The token is stored encrypted and is never shown again. Leave empty to keep the current one.

Outgoing email

The mailbox letters to clients are sent from: password resets, email confirmations and account security notices.
This is what the client sees in the From field. Most relays only accept an address of their own domain.
Port 465 — TLS right away; 587 or 25 — STARTTLS. There is no separate switch: the port decides.
The password is stored encrypted and is never shown again. Leave empty to keep the current one.

Notification types and channels

Changes apply to the next notification right away. Password and email letters, terminal events and the test notification cannot be turned off as a type — their delivery is set per topic and channel below.

Types

Notification Active

Topics × channels

«Always» — people cannot turn it off. «On / off by default» applies to people who have not chosen themselves. «Closed» means nobody gets it through this channel, even those who turned it on.

Notification texts

Pick a notification and a language. Variables in {{double braces}} are filled in when the notification is sent. Empty language — people get the English text.
{{button}} on its own paragraph becomes the button in the email; in the plain-text version the link itself stands there. The text must contain {{button}}.
Preview on made-up data — the link is fake.

        

Payment details

The default wallet is where clients without their own address pay.
Used when a client has no own address. A client's own address is set by a superadmin on the client's «Invoices» tab.
Automatic payment reminders are off: their sender was removed together with the old subscription. The lead time and the texts below are kept but not used.

Connected clients

Only these receive broadcasts. The bot cannot message anyone who has not pressed Start.
Client Telegram State Connected

New broadcast

Channels
News and offers go only to people who opted in. Service messages go to everyone, through every chosen channel they have.

Sent broadcasts

When Internal title Kind Status Delivered Actions

Recipient Channel Status Attempts Error Sent

Client requests

Everything clients write to us, in one place.
When Client Subject Status Photos

Request

Diagnostics

        

Sign-in email

SMTP is not configured — emails are not delivered.
Your sign-in email is changed by an administrator — contact support.
The new address gets a confirmation email.

Change password

All other sessions will be closed.
Clients
Period for PnL and partner profit
Click a header to sort (again — reverse). Partner profit is the sum of their shares from invoices issued in the period.
Applies to every client without their own mode. Boxes pick it up within one collector tick. A client with open positions keeps close-only access until flat.
Exchanges for all clients
A disabled exchange disappears from every client box: no cards, no spreads, no calls to its API. Boxes pick it up within one collector tick. Open positions on it are closed by the box and armed pendings removed; a naked leg the client closes by hand. A client can also have an exchange disabled just for them — on the client page, “Access” tab.

Fleet health

One screen for “who is not working, and why”. Contact comes from the enforcement check the tick already sends every box, so showing this screen does not poll the boxes. It is kept in memory: right after a panel restart boxes show “no contact yet” until the first tick.

Deploy

Restarts every client's box on the given image, one SSH per box. This is the biggest single action in the panel — it touches everyone's live trading bot at once.
Client Result Time

Clients

Client State No answer for Detail Actions
Period — invoices issued on these days (UTC)

New admin-panel user

Staff

Role and state change on a click on the value itself.
EmailRoleStateLast sign-inActions

Feed status

Live counters from the bot itself. “healthy” only means its HTTP server answers — read the frames and clients below to tell whether the feed is actually flowing.
The bot restarts itself: it exits and systemd brings it back. The feed is down for a few seconds and every client reconnects.

Market feed (spread-finder)

—
These apply to the shared feed — every client at once.
Exchanges on the wire
Turning one off removes it from the feed within one frame; connections stay warm, so turning it back on costs nothing.

Disabled pairs

A pair listed here never enters the registry: it is not subscribed, not calculated and not shipped.

Exchanges disabled in the bot

The bot stops processing a disabled exchange and stops talking to it, live.

Announcements

Dates are usually parsed out of the announcement text, not published by the venue — so they can be wrong.
Effective Exchange Symbol Market Date from Announcement Actions

Restart required

Read-only here: changing these needs a restart of the bot.
SettingValue

Audit log

WhenWhoFrom whereActionObject
Country is a guess from the IP address. IP Geolocation by DB-IP
Box logs
Logs are fetched from the box only by «Pull logs» — there is no background collection. «Follow» repeats it while this tab is open.

Restart the feed service?

This would interrupt the market feed for every client at once, and the bot would have to re-subscribe to all exchanges on the way back up.
The bot goes down for a few seconds, then systemd starts it again and it re-subscribes to all nine exchanges. Nothing else is lost: settings live in files, history in its own store.

Delete along with the financial history?

This client is not an empty record: there is money or trading history behind them. Deleting the row erases that history too — it is not moved anywhere and cannot be restored. TERMINATED keeps the record and the history; this does not.

Update every client's box?

Every ACTIVE box gets a fresh pull and restart, one SSH connection at a time. A client whose bot is mid-restart will see the market feed drop for a few seconds; open positions are untouched — they live in the box's own database, not in the running process.