ExpertOption - মোবাইল ট্রেডিং app icon

Broker account data over a live socket

Reaching ExpertOption account data through its live session

The live session carries everything the screen shows

Open the app and a persistent WebSocket session lights up: live quotes for more than a hundred assets, your real and demo balances side by side, and each trade ticket as it opens and settles. That stream is where an integration for this broker starts. EOLabs LLC runs the back end; the client, per its Google Play listing, behaves the same whether it loads in Dhaka or São Paulo. Read the session under the account holder's authorization and you have the account.

So the brief here is narrow and concrete. The value lives in a long-running socket, so the work is decoding that session and giving your code a clean call. The route we would actually run is protocol analysis of the authorized session, then handing the same client the user's own login token so it keeps syncing after we deliver. Everything below maps what that session carries and how we turn it into something callable.

What the account actually holds

Each row is a surface the app renders for a signed-in trader, named the way the app presents it where possible.

Data domainWhere it surfaces in the appGranularityWhat an integrator does with it
Account balanceThe "Real Balance" header, with a toggle to the $10,000 demoPer account, real time, both real and practiceSync net liquidity into a portfolio or risk dashboard
Trade ticketsTrade panel and history of past positionsPer ticket: asset, direction, stake, expiry, payout, outcomeReconstruct profit-and-loss, drive a copy-trade feed
Asset quotesThe live chart for 100-plus instruments — stocks, indices, currencies, commoditiesPer-asset ticks while subscribedMirror pricing or backfill a research store for backtests
Cashier movementsDeposit and withdrawal flow across cards, Skrill, Neteller and other railsPer transaction: method, amount, statusReconcile funding against an internal ledger
ProfileAccount screen: identity, verification state, base currencyPer userMap a trader to records in other systems

Three authorized ways to reach it

All three assume the account holder has authorized the access. They differ in what they cover and how long they hold.

Session protocol analysis

We capture the WebSocket traffic of a consenting account, decode the message envelope, and rebuild the calls in clean client code. This reaches the broadest set — balances, tickets, quotes, cashier status — because it is exactly what the app itself sees. Effort is moderate. Durability is tied to the app's protocol version, so we build it to fail loud when a field shifts rather than drift silently.

User-consented token session

Once a trader signs in, the session carries an auth token. We drive the same socket with that token, scoped strictly to that trader's own data. This is the durable path for ongoing sync: as long as the login flow holds, the client keeps pulling fresh balances and fills without a person in the loop.

In-app history read

For records older than the live window, we read the history surface the app already renders and parse it for reconciliation. Lower fidelity, no real time — but it fills the long tail the socket no longer replays.

For most teams the build we actually run is the consenting-account socket capture, with the trader's token wired in so the client keeps syncing after handover; the history read joins only when a project needs trades from further back than the session carries. That ordering follows from where this broker keeps its value — in the live stream, not in any export.

Inside a balance-and-trade read

Illustrative of the session shape, confirmed against a live capture during the build. ExpertOption's transport is a JSON-over-WebSocket envelope; a community Python client published on PyPI demonstrates the same protocol can be driven programmatically for profile and trade-history retrieval. Exact action names are pinned during the engagement, not guessed.

# wss session — authorize, subscribe, read (field names confirmed during the build)
import json, websocket

ws = websocket.create_connection("wss://ws.expertoption.example/")   # endpoint pinned at capture

# 1) attach the consenting trader's token (from their own login)
ws.send(json.dumps({"action": "authorize", "token": SESSION_TOKEN, "ns": 1}))

# 2) ask for the account balances — real + demo arrive tagged by context
ws.send(json.dumps({"action": "profile", "ns": 2}))

# 3) subscribe to recent + live trade tickets
ws.send(json.dumps({"action": "userTrades", "ns": 3}))

while True:
    msg = json.loads(ws.recv())
    if msg.get("action") == "profile":
        for acct in msg["message"]["balances"]:
            # acct["type"] == "demo" | "real"  → never merge the two
            print(acct["type"], acct["currency"], acct["amount"])
    elif msg.get("action") == "userTrades":
        for t in msg["message"]["trades"]:
            print(t["asset_id"], t["direction"], t["amount"],
                  t["exp"], t.get("profit"))
    elif msg.get("action") == "ping":
        ws.send(json.dumps({"action": "pong", "ns": msg["ns"]}))   # keep-alive or the socket drops

The keep-alive matters. Drop the ping reply and the server closes the socket within seconds, so the shipped client manages reconnection and re-subscription on its own.

What lands in your repo

  • An OpenAPI description that wraps the socket as a normal request/response surface — /balance, /trades, /quotes/{asset} — so callers never touch raw frames.
  • A protocol and auth-flow report: the token chain from login to authorized session, the message envelope, the ping cadence, and how demo and real contexts are distinguished.
  • Runnable client source in Python or Node.js for the balance, trade-ticket and quote reads, with reconnection and back-off built in.
  • An automated test harness that replays recorded session fixtures, so a changed field shows up as a failing test before it reaches you.
  • Interface documentation a new engineer can follow, plus data-retention and minimization guidance for the captures.

Each piece is anchored to a real surface above — balances, tickets, quotes, cashier movements — not a generic broker template.

What we plan the build around

These are the parts of this specific app that shape the engineering, handled on our side as part of the work.

  • One socket, two account contexts. The demo and real balances ride the same connection. We tag every balance change and ticket by its account context at decode time, so a practice fill can never contaminate real profit-and-loss downstream.
  • Frequent client updates. The app ships often, and message shapes can move with it. We build a fixture set from a live capture and run it as a test, so a renamed or dropped field surfaces as a red test on day one instead of a silent gap weeks later.
  • Many currencies and payment rails. With 200-plus deposit methods and several account currencies in play, raw amounts are ambiguous. We normalize to a single base currency and carry the original currency and rate context alongside, so reconciliation stays honest.
  • Keep-alive and reconnection. The session expects periodic pings and will close if they stop. The client we hand over owns its own heartbeat, reconnect and resubscribe loop, so an overnight sync survives without a babysitter.

Access to a sandbox or a consenting account is arranged with you during onboarding — the demo account already speaks the production protocol, so a lot of the work starts before any real-money credential is involved.

Where teams put this

  • A copy-trading view that pulls a consenting trader's open positions in real time and mirrors them into a dashboard.
  • A compliance export that reconciles deposits and withdrawals against an internal ledger, deposit method by deposit method.
  • A research store that backfills asset quotes during market hours to backtest a fixed-time strategy.
  • A multi-broker portfolio that folds an ExpertOption balance in next to accounts from other platforms under one schema.

The screens we worked from

Store screenshots of the surfaces named above. Select one to enlarge.

ExpertOption trading interface screenshot ExpertOption asset and chart screenshot ExpertOption account screen screenshot ExpertOption trading feature screenshot

How this brief was put together

Checked in June 2026: the app's own Google Play listing for the account model, asset count and operator; an independent review of the mobile app for the balance and history surfaces; a community client package for evidence the session protocol is programmable; and public regulator references for the St. Vincent registration and the Bangladesh foreign-exchange rules that bear on a trader's side. Sources opened:

OpenBanking Studio integration desk — protocol mapping reviewed June 2026.

Questions integrators ask about ExpertOption

Can you keep demo trades separate from real-money trades in the data?

Yes. The same socket carries both the practice account and the funded one, and each message arrives with an account context. We tag every balance change and trade ticket by that context so a demo fill never leaks into real profit-and-loss, and your dashboard can show the two side by side or filter to one.

ExpertOption's operator is registered offshore in St. Vincent — does that change how you reach the data?

It changes the legal footing, not the route. EOLabs LLC's St. Vincent registration means no open-banking or account-aggregation mandate compels data sharing, so access rides the account holder's own authenticated consent rather than a regulatory feed. The technical work — reading the authorized session — is the same either way.

Does the live session give you historical trades, or only what happens while connected?

On connect the session replays a window of recent activity — open positions and lately settled tickets — and then streams new events live. For older records than that window carries, we read the in-app history surface and merge it with the live stream, so a sync covers both the long tail and the present.

Do you need our funded real account, or can the build run on the demo?

The demo account speaks the same protocol as the real one, so most of the build runs against the practice balance with no money at risk. We validate the real-money fields — actual balance, deposits, withdrawals — on a consenting account during onboarding, arranged with you, and keep those captures logged and minimized.

Source comes to you first: we build the client, you run it against your own account, and the source-code engagement — from $300 — is settled only once it works and you are satisfied. Prefer not to host anything? The same balance, trade and quote reads run on our endpoints and you pay per call with nothing upfront. Either model runs on a one-to-two-week cycle. Tell us which account data you want out of ExpertOption and we will scope it — start a conversation here.

App profile — ExpertOption - মোবাইল ট্রেডিং

Mobile broker offering fixed-time and option trading across 100-plus assets — stocks, indices, currencies and commodities — with a no-registration demo funded at $10,000 in virtual money and real accounts from a $10 minimum deposit, per the app's Google Play listing. Services are provided by EOLabs LLC, registered in St. Vincent and the Grenadines (company number 377 LLC 2020 as stated in the listing), and the app is available across Android, iOS, web and desktop in 150-plus countries. Deposits run through cards plus Skrill, Neteller and other rails. Trading carries a risk of loss; this page is an independent integration write-up and is not affiliated with or endorsed by ExpertOption or EOLabs LLC.

Mapping reviewed: 2026-06-20

ExpertOption trading interface, enlarged
ExpertOption chart, enlarged
ExpertOption account screen, enlarged
ExpertOption trading feature, enlarged