Almost everything an Olymp Trade integrator wants moves over one long-lived WebSocket. The platform opens a socket — community work on the protocol points at wss://olymptrade.com/ds/v6 — and from then on balances, tick quotes, and trade state arrive as compact JSON frames rather than tidy REST responses. The app itself, per its Play listing, fronts more than 250 assets and 30-plus indicators, with a free demo account carrying 10,000 practice units and live trades from as little as $1. The interesting part for an integration is not the chart UI. It is that the same socket that paints those charts also streams the structured records a third party would want to sync.
So the work here is protocol analysis, not form-filling. You authorize an account; we map the frames it produces and hand back a clean interface over them. Below is what is actually reachable, the route we would take, and what lands in your repository at the end.
The records sitting behind the account
Each row is a surface we have seen named in the platform's own traffic and in community protocol libraries. Granularity reflects how the data arrives, not a guess.
| Domain | Where it comes from | Granularity | What an integrator does with it |
|---|---|---|---|
| Account balances | Balance subscription on the socket; objects carry group, balance, currency | Per account, push updates on change | Reconcile funds, drive a dashboard, alert on margin moves |
| Open positions | Trade stream: asset, amount, direction, running profit/loss | Per open trade, live | Portfolio mirroring, risk monitoring across a desk |
| Trade history | Account history frames for settled trades | Per closed trade | Performance analytics, journaling, statement generation |
| Live quotes / ticks | Tick subscription per instrument; p = pair, q = price | Tick-level stream | Backfill a price store, feed a signal or alerting engine |
| Instrument catalog | Asset list the app renders (indices, metals, commodities, ETFs) | Full set, slow-changing | Symbol mapping against your own reference data |
| Account context | group flag separating demo from live | Per session | Route practice vs funded data so they never blend |
How we reach it
Olymp Trade is an offshore broker rather than a regulated bank, so no Open Banking or Account Information regime applies to it — the access basis is the account holder's own authorization, not a statutory data-sharing scheme. That shapes the routes below.
Protocol analysis of the WebSocket session
The primary path. With a consenting account, we capture the socket handshake and the frames that follow, document the subscribe/response cycle for balances, trades, and ticks, and rebuild it as a typed client. Effort is moderate and concentrated up front. Durability is the honest weak point: the frame keys are terse and undocumented, so they can shift, which is why re-validation is built into the deliverable rather than bolted on later.
User-consented session access
The token that authenticates the socket lives in the Cookie header after you log in. We drive the integration from a session you provision and authorize, refreshing it the way the app does. This pairs with protocol analysis rather than replacing it — it is what makes the analysis run against your real account instead of a sample capture.
Native export as a backstop
Where you only need settled history rather than a live feed, exported trade records from the platform give a lower-effort, more stable snapshot. It will not give you tick streams or push balance updates, but for periodic reporting it is the least brittle option.
For most briefs we would run the build on the first two together — a typed socket client driven by a consenting session — and keep native export in reserve for the reporting-only case. That combination is the one that actually returns live balances and trade state, which is usually the whole point of the request.
What it looks like on the wire
An illustrative sketch of the session, with shapes confirmed during a build against a consenting account. Keys are the platform's own short forms.
# Open the data socket; the access_token is read from the
# authorized session cookie, never from a stored password.
ws = connect("wss://olymptrade.com/ds/v6",
headers={"Cookie": f"access_token={SESSION_TOKEN}"})
# Subscribe to balance updates (demo and live arrive tagged by group)
ws.send({"e": SUBSCRIBE_BALANCE})
# -> {"d": [{"group": "demo", "balance": 10000.0, "currency": "USD"},
# {"group": "real", "balance": 142.55, "currency": "USD"}]}
# Subscribe to ticks for one instrument
ws.send({"e": SUBSCRIBE_TICKS, "pair": "EURUSD"})
# -> {"d": [{"p": "EURUSD", "q": 1.07314}], "e": TICK_UPDATE}
# Normalize before it leaves our client
def on_tick(frame):
for t in frame.get("d", []):
store.put(symbol=t["p"], price=t["q"], ts=now_utc())
# Reconnect + re-auth on drop; frame schema is pinned in tests
# so an upstream key change fails loudly instead of silently.
Event codes above are placeholders for the numeric constants captured during the build; the real ones get documented in the protocol report.
What lands in your repository
Each item is tied to a surface above, not a generic checklist.
- Runnable source (Python or Node.js) for the socket client: connect, authenticate from the session token, subscribe to balances, trades, and ticks, and emit normalized records.
- A protocol & auth-flow report covering the handshake, the cookie-borne token, the subscribe/response frames, and the event constants for each domain.
- An OpenAPI-style specification describing the normalized interface we expose over the socket, so callers see clean resources instead of raw frames.
- Automated tests that pin the frame shapes (
group/balance/currency,p/q) and fail when the upstream format drifts. - Interface documentation plus data-retention guidance: what is logged, how long session material is kept, and how to revoke.
The authorization basis
Access rests on the account holder's consent, recorded and scoped. Aollikus Limited holds a VFSC class licence in Vanuatu and its operating companies have been Financial Commission members since 2016, with dispute cover up to €20,000 for traders — that is consumer protection, not a data-sharing mandate, and it does not grant or restrict programmatic access either way. For the audience this Urdu-titled build targets, Pakistan, there is no enacted general data-protection statute yet; a Personal Data Protection Bill has been in draft, so we operate to the stricter posture: explicit consent, data minimization, logged sessions, and an NDA where the engagement needs one. Session tokens are treated as secrets, kept out of source, and revocable by signing the account out.
Build notes specific to this platform
Two things shape how we scope an Olymp Trade job.
First, the demo/live split. Balance and trade frames are tagged with a group flag, and a careless client will happily report the 10,000-unit practice balance as if it were real money. We key every record on that flag and assert it in tests, so a consuming system can trust which account it is looking at.
Second, the undocumented frame schema. The socket uses single-letter keys and numeric event codes that the vendor can change without warning. We pin the observed shapes during the build and run a re-validation pass against a live session as part of maintenance, so a renamed key shows up as a failed check rather than quietly corrupting a price store. Reconnect-and-reauth logic is part of the same concern — the socket drops, and the client has to recover the session cleanly without dropping ticks on the floor.
Access to a consenting account is arranged with you during onboarding; the build runs against that account, or a demo session where live funds are not needed for the capture.
Keeping it live
Because the value is a stream, freshness is a real engineering line, not a footnote. Ticks arrive continuously; balances push on change; settled trades land once. The client we ship buffers and reconnects so a dropped socket does not leave a gap in the price store, and a heartbeat check flags a stalled feed. For reporting workloads that do not need the stream, the native-export backstop runs on a schedule instead.
Screens from the listing
Store screenshots, useful for matching a data surface to where a user sees it. Select to enlarge.
Similar apps an aggregator might cover
Teams that ask for Olymp Trade usually want the same surfaces across several brokers. These sit in the same category; each holds comparable per-account records behind its own session.
- Quotex — options broker popular with Pakistani traders; holds balances, trade history, and a live quote feed.
- IQ Option — multi-asset broker with account balances, positions, and tick streams over its own socket.
- Binomo — simplified options app; per-account trade and balance records behind login.
- ExpertOption — multiple account types, trade history, and live pricing data.
- Pocket Option — options broker with demo and live balances and a trade ledger.
- Deriv — broad derivatives platform with a documented account and contract data model.
- Binarium — options broker holding account balances and settled-trade history.
- RaceOption — options app with per-user balances and trade records.
Questions integrators ask
Is the access token the same as my Olymp Trade login password?
No. The value the integration uses is a session access token that rides in the Cookie header of the platform's WebSocket connection, issued after you log in. We work from a session you authorize, never your password, and the token can be revoked by signing out.
Can the integration keep demo and live account data separate?
Yes. Olymp Trade tags balance and trade objects with a group identifier that distinguishes the practice account from a funded one. The mapping we deliver routes each record by that field so the 10,000-unit demo balance described in the listing never mixes with live figures.
Does the Financial Commission compensation cover affect what data we can reach?
No. The up-to-€20,000 cover from the Financial Commission, of which Olymp Trade's operators have been members since 2016, is dispute resolution for traders. It is unrelated to the data interface, which we reach through the authorized account session.
What happens when Olymp Trade changes its socket message format?
The WebSocket frames carry short keys such as p for the instrument and q for price, and those shapes shift without notice. We capture the current frames during the build, pin them in the tests, and re-validate against a live session so a format change surfaces as a failing test rather than silent bad data.
Sources and review
Checked in June 2026 against the app's Play Store listing and description, Olymp Trade's own regulation page, and community protocol libraries that document its WebSocket interface. Primary references: Olymp Trade regulation & guarantees, a community protocol library (auth & message shapes), and a third-party summary of its VFSC and FinaCom standing.
Mapping by the OpenBanking Studio integration desk, June 2026.
One last practical note on how a job runs. You give us the app name and what you want out of its data; we arrange the consenting account access and any compliance paperwork with you as part of the work. A source-code build starts at $300 — the runnable client, spec, tests, and docs land in your repository, and you pay only after delivery once you are satisfied. If you would rather not host it, the same socket client runs as a pay-per-call hosted API: we operate the endpoints, you pay per call, nothing upfront. Either way the cycle is one to two weeks. When you know which surfaces you need, tell us on the contact page and we will scope it.
App profile — factual recap
Olymptrade – ٹریڈنگ آن لائن (package com.ticno.olymptrade) is an international trading app offering, per its listing, 250-plus assets including indices (S&P 500, Dow Jones), metals (gold, silver), commodities (Brent, natural gas) and ETFs, with 30-plus indicators and analytics tools. New users get a free demo account with 10,000 practice units; live trading starts from a $10 deposit and $1 trades. Security features named include two-factor authentication and Face ID / Touch ID. Financial services are provided by Aollikus Limited (company no. 40131), registered in Port Vila, Vanuatu, with funds insured up to €20,000 by the Financial Commission. Trading carries a risk of loss. This recap is drawn from the public store listing.