MetaTrader 5 账户、报价与订单数据
MetaTrader 5 — Forex, Stocks 是塞浦路斯 MetaQuotes Ltd 的安卓交易终端。交易者连上券商接入点、盯报价列表、打开带指标的图表,从交易与一键下单工具栏发送市价单和挂单,管理持仓,翻阅成交与账户历史,阅读券商邮件与新闻,并在应用内支付钱包列表中入金或出金。模拟与真实账号在开户流程中分配,账户页支持 OTP、通行密钥与投资者密码;MQL5 社区登录(含 Google)打开 Channels 聊天。全球零售外汇、差价合约与交易所交易者以及白标同一终端的券商都在用它,与 MetaTrader 4、cTrader、TradingView 并列作为多资产移动交易台。
TradeInfoRecord 快照钉住已连接 login 的 balance、equity、marginFree 与 marginLevel;TradePosition 行带上 symbol、volume、priceOpen、sl、tp 与浮动 profit。SelectedRecord 在自选上推送 bid、ask 与 spread;TradeOrder 与 TradeDeal 历史补上成交状态、佣金与库存费。Payment 与 Wallet 对象给出支付页使用的入金限额(limitDepositMin、userAmount、walletCurrency)。
PMS 用实时保证金对隔夜账单,报价引擎把买卖价打进预警,财务把钱包入金勾到成交票据。openData Studio 把这套账户、报价与支付面做成可调用的开放数据。
应用截图
API 端点一览
以下端点与请求/响应示例均依据应用界面推导重构,为示意说明,并非实际抓包。
MQL5 社区 Google 登录
GET
/v1/community/identity/authorizeosint用 Google 登录材料(mid、ggtok、tok、sign、rnd)换取嵌套 user 对象:user_login、user_email、metaquotes_id 与 chat_token,供 MQL5 登录后使用。
认证方式: 无需既有令牌的签名查询参数:mid、ggtok、tok、sign(SHA-256)、rnd。响应中的 user.chat_token 作为社区会话令牌保存。
- user_id
- user_login
- user_full_name
- user_email
- user_phone
- metaquotes_id
- avatar_url
- chat_token
- balance_total
- balance_locked
- balance_free_hosting_minutes
- finance_state
- mid
- ggtok
- tok
- sign
- rnd
GET /v1/community/identity/authorize?mid=mqid_8f21&ggtok=ya29.a0AfH6SMC&tok=enc_tok&sign=3c9a1b&rnd=1729084800 HTTP/1.1 Accept-Language: en-US{ "user": { "user_id": 12004567, "user_login": "trader_nick", "user_full_name": "Nick Trader", "user_email": "[email protected]", "user_phone": "+12025550123", "metaquotes_id": "MQID-8891", "avatar_url": "https://cdn.example/avatars/trader_nick.png", "chat_token": "ct_9c10aa11", "balance_total": 12, "balance_locked": 0, "balance_free_hosting_minutes": 43200, "finance_state": 1 } }MQL5 社区注册
GET
/v1/community/identity/registerosint通过 Google 注册流程创建 MQL5 社区账号,返回 Channels 聊天使用的同一 user 对象。
认证方式: 无需既有令牌。AES 包装凭据加 SHA-256 签名;200 响应解析为社区用户资料(chat_token)。
- user_id
- user_login
- user_full_name
- user_email
- chat_token
- metaquotes_id
- mid
- login
- sign
GET /v1/community/identity/register?mid=mqid_8f21&login=trader_nick&sign=7ab2 HTTP/1.1 Accept-Language: en-US{ "user": { "user_id": 12004567, "user_login": "trader_nick", "user_full_name": "Nick Trader", "user_email": "[email protected]", "chat_token": "ct_9c10aa11", "metaquotes_id": "MQID-8891" } }MQL5 用户状态与地理
GET
/v1/community/identity/statusosint读取社区状态;geo.country 写入客户端地区,user 块解析为会话资料。
认证方式: 身份授权调用签发的社区会话令牌。
- geo
- country
- user_login
- chat_token
- balance_total
- finance_state
GET /v1/community/identity/status HTTP/1.1 Accept-Language: en-US{ "geo": { "country": "US" }, "user": { "user_login": "trader_nick", "chat_token": "ct_9c10aa11", "balance_total": 12, "finance_state": 1 } }删除 MQL5 社区账号
POST
/v1/community/identity/closeosint从账号设置流程删除已登录的 MQL5 社区账号。
认证方式: 登录时签发的社区 chat_token。
- user_login
- chat_token
- status
POST /v1/community/identity/close HTTP/1.1 Content-Type: application/json { "user_login": "trader_nick", "chat_token": "ct_9c10aa11" }{ "status": "ok" }交易账户快照
GET
/v1/trading/account/summaryopenbanking读取当前登录的 TradeInfoRecord:balance、equity、marginFree、marginLevel 与浮动盈亏,供交易页及其宽版信息视图展示。
认证方式: 登录时用账号、密码与服务器建立的券商交易服务器会话;响应填充交易页展示的 TradeInfoRecord。
- balance
- equity
- margin
- marginFree
- marginLevel
- marginInitial
- marginMaintenance
- profit
- credit
- commission
- assets
- liabilities
- blocked
- collateral
- hasMarginCall
- digits
GET /v1/trading/account/summary HTTP/1.1 X-Account-Login: 50001234{ "balance": 10250.40, "equity": 10312.18, "margin": 420.00, "marginFree": 9892.18, "marginLevel": 2455.28, "marginInitial": 420.00, "marginMaintenance": 210.00, "profit": 61.78, "credit": 0.0, "commission": -2.40, "assets": 10312.18, "liabilities": 0.0, "blocked": 0.0, "collateral": 0.0, "hasMarginCall": false, "digits": 2 }当前持仓
GET
/v1/trading/positionsopenfinance为持仓视图列出 TradePosition:ticket id、symbol、volume、priceOpen、sl/tp 与浮动盈亏。
认证方式: 当前登录的券商交易服务器会话。
- id
- symbol
- action
- volume
- priceOpen
- priceClose
- sl
- tp
- profit
- swap
- comment
- date
- digits
- canModify
- canTrade
- externalId
GET /v1/trading/positions HTTP/1.1 X-Account-Login: 50001234{ "positions": [ { "id": 91004567, "symbol": "EURUSD", "action": 0, "volume": 10000, "priceOpen": 1.08540, "priceClose": 1.08610, "sl": 1.08000, "tp": 1.09000, "profit": 7.00, "swap": -0.12, "comment": "mobile", "date": 1729084800, "digits": 5, "canModify": true, "canTrade": true, "externalId": "" } ] }挂单与工作订单
GET
/v1/trading/orders/workingopenfinance返回订单视图与挂单工具栏的 TradeOrder:type(买入限价等)、state(已挂/已成交)、手数与价格。
认证方式: 当前登录的券商交易服务器会话。
- order
- symbol
- type
- state
- volumeInitial
- volumeCurrent
- priceOpen
- priceCurrent
- priceTrigger
- sl
- tp
- expirationType
- expirationDate
- dateSetup
- comment
- fillPolicy
- canModify
GET /v1/trading/orders/working HTTP/1.1 X-Account-Login: 50001234{ "orders": [ { "order": 88001122, "symbol": "GBPUSD", "type": 2, "state": 1, "volumeInitial": 10000, "volumeCurrent": 10000, "priceOpen": 1.26500, "priceCurrent": 1.26610, "priceTrigger": 0.0, "sl": 1.26000, "tp": 1.27500, "expirationType": 0, "expirationDate": 0, "dateSetup": 1729080000, "comment": "limit", "fillPolicy": 0, "canModify": true } ] }发送交易请求
POST
/v1/trading/orders/executeopenfinance从下单对话框提交交易动作(市价、挂单、止损止盈、修改、删除),返回结果 retcode、deal、order、成交价、bid 与 ask。
认证方式: 券商交易服务器会话;下单前先校验动作,结果异步回读。
- action
- type
- symbol
- volume
- price
- sl
- tp
- deviation
- fillType
- comment
- position
- order
- retcode
- deal
- bid
- ask
- time
POST /v1/trading/orders/execute HTTP/1.1 Content-Type: application/json { "action": 3, "type": 0, "symbol": "EURUSD", "volume": 10000, "price": 1.08540, "sl": 1.08000, "tp": 1.09000, "deviation": 10, "fillType": 0, "comment": "mobile", "position": 0, "order": 0 }{ "retcode": 10009, "deal": 77003344, "order": 88001123, "volume": 10000, "price": 1.08542, "bid": 1.08540, "ask": 1.08542, "comment": "", "digits": 5, "time": 1729084810, "timeout": 0 }成交历史汇总
GET
/v1/trading/history/dealsopenfinance为历史页分页:成交汇总(deposit、withdrawal、profit、commission、swap)以及每笔成交的 action/entry/volume。
认证方式: 券商交易服务器会话。先选定区间,再分页读取汇总与逐笔记录。
- balance
- profit
- deposit
- withdrawal
- credit
- commission
- commission_fee
- swap
- buysell
- deal
- order
- positionId
- symbol
- action
- entry
- volume
- priceOpen
- date
- comment
GET /v1/trading/history/deals?filter=0 HTTP/1.1 X-Account-Login: 50001234{ "summary": { "balance": 10250.40, "profit": 128.50, "deposit": 10000.00, "withdrawal": 0.0, "credit": 0.0, "commission": -8.40, "commission_fee": 0.0, "swap": -1.20, "buysell": 128.50, "digits": 2 }, "deals": [ { "deal": 77003344, "order": 88001123, "positionId": 91004567, "symbol": "EURUSD", "action": 0, "entry": 0, "volume": 10000, "priceOpen": 1.08542, "profit": 7.00, "commission": -0.70, "swap": 0.0, "date": 1729084810, "comment": "mobile" } ] }自选报价
GET
/v1/market/watchlist/quotesopendata返回报价页的自选行情:bid、ask、high、low、spread 与 priceChange。
认证方式: 券商交易服务器会话;报价按品种订阅级别为延迟或实时。
- symbol
- description
- bid
- ask
- high
- low
- spread
- priceChange
- priceChangeInPips
- digits
- point
- time
- bookDepth
GET /v1/market/watchlist/quotes HTTP/1.1 X-Account-Login: 50001234{ "quotes": [ { "symbol": "EURUSD", "description": "Euro vs US Dollar", "bid": 1.08540, "ask": 1.08542, "high": 1.08710, "low": 1.08320, "spread": 2, "priceChange": 0.00080, "priceChangeInPips": 8, "digits": 5, "point": 0.00001, "time": 1729084815, "bookDepth": 10 } ] }支付钱包目录
GET
/v1/payments/methodsopenbanking为支付页列出支付方式:name、login 以及各币种入金/出金限额。
认证方式: 券商交易服务器会话;建立账户连接后加载支付方式。
- name
- login
- paymentType
- type
- imageUrl
- actions
- currencies
- limitDepositMin
- limitDepositMax
- limitWithdrawalMin
- limitWithdrawalMax
GET /v1/payments/methods HTTP/1.1 X-Account-Login: 50001234{ "wallets": [ { "name": "Bank Card", "login": "card_visa", "paymentType": 1, "type": 0, "imageUrl": "https://broker.example/wallets/card.png", "actions": 3, "currencies": [ { "name": "USD", "limitDepositMin": 10.0, "limitDepositMax": 10000.0, "limitWithdrawalMin": 10.0, "limitWithdrawalMax": 5000.0 } ] } ] }向交易账户入金
POST
/v1/payments/fundopenbanking从支付方式页发起入金;返回 Payment 的 recordId、state 与金额,随后可能打开确认网页视图。
认证方式: 券商交易服务器会话;随后可在应用内网页视图完成支付确认。
- walletName
- userAmount
- userCurrency
- recordId
- dealId
- action
- state
- userCommission
- walletAmount
- walletCommission
- walletCurrency
- walletName
- walletAccount
- cardNumber
- createdAt
- completedAt
POST /v1/payments/fund HTTP/1.1 Content-Type: application/json { "walletName": "Bank Card", "userAmount": 500.00, "userCurrency": "USD", "fields": [ {"field": 1, "value": "411111******1111"} ] }{ "recordId": 440012, "dealId": 77003350, "action": "DEPOSIT", "state": "PROCESSING", "userAmount": 500.00, "userCommission": 5.00, "userCurrency": "USD", "userCurrencyDigits": 2, "walletAmount": 500.00, "walletCommission": 5.00, "walletCurrency": "USD", "walletName": "Bank Card", "walletAccount": "411111******1111", "cardNumber": "411111******1111", "createdAt": 1729084900, "completedAt": 0 }从交易账户出金
POST
/v1/payments/payoutsopenbanking发起出金;Payment 携带 bankAccount/bankName 或电子钱包账号,直到完成或取消。
认证方式: 券商交易服务器会话;出金在支付结果页完成或取消。
- walletName
- userAmount
- userCurrency
- recordId
- dealId
- action
- state
- userCommission
- walletAmount
- walletCurrency
- bankAccount
- bankName
- createdAt
POST /v1/payments/payouts HTTP/1.1 Content-Type: application/json { "walletName": "Bank Card", "userAmount": 200.00, "userCurrency": "USD", "fields": [ {"field": 2, "value": "GB29NWBK60161331926819"} ] }{ "recordId": 440013, "dealId": 77003351, "action": "WITHDRAWAL", "state": "WAITING", "userAmount": 200.00, "userCommission": 2.00, "userCurrency": "USD", "walletAmount": 200.00, "walletCurrency": "USD", "walletName": "Bank Card", "bankAccount": "GB29NWBK60161331926819", "bankName": "Example Bank", "createdAt": 1729085000 }支付流水
GET
/v1/payments/recordsopenbanking为支付列表分页 Payment 记录(状态从初始到完成或拒绝),并提供发票视图。
认证方式: 券商交易服务器会话;记录按 offset/count 分页,每笔可取 HTML 发票。
- recordId
- dealId
- action
- state
- userAmount
- userCommission
- userCurrency
- walletName
- description
- createdAt
- completedAt
- paymentTotal
GET /v1/payments/records?offset=0&count=20 HTTP/1.1 X-Account-Login: 50001234{ "payments": [ { "recordId": 440012, "dealId": 77003350, "action": "DEPOSIT", "state": "DONE", "userAmount": 500.00, "userCommission": 5.00, "userCurrency": "USD", "walletName": "Bank Card", "description": "Visa deposit", "createdAt": 1729084900, "completedAt": 1729084960 } ], "paymentTotal": 1 }分配模拟或真实账户
POST
/v1/provisioning/accountsopenfinance从开户与个人资料页开出模拟或真实 AccountRecord(login、leverage、deposit、currency、server)。
认证方式: 对所选服务器无需已有会话;结果为新的模拟或真实 login,随即成为当前账户。
- login
- name
- server
- company
- currency
- currencyDigits
- leverage
- deposit
- demo
- real
- accountType
POST /v1/provisioning/accounts HTTP/1.1 Content-Type: application/json { "server": "MetaQuotes-Demo", "name": "Nick Trader", "email": "[email protected]", "leverage": 100, "deposit": 10000.0, "currency": "USD" }{ "login": 50001234, "name": "Nick Trader", "server": "MetaQuotes-Demo", "company": "MetaQuotes Ltd", "currency": "USD", "currencyDigits": 2, "leverage": 100, "deposit": 10000.0, "demo": true, "real": false, "email": "[email protected]", "accountType": 0 }
数据类别
- 账户余额
- 当前持仓
- 工作订单
- 成交历史
- 市场报价
- 入金与出金
- MQL5 社区资料
数据使用场景与案例
隔夜保证金对账
券商 PMS 按 login 拉取 TradeInfoRecord 的 balance、equity、marginFree、marginLevel,与后台账本比对,在下一交易时段前根据 hasMarginCall 发出追加保证金提示。
报价预警分发
自选机器人读取 SelectedRecord 的 bid、ask、spread 与 priceChangeInPips(如 EURUSD),在点差或点数变动越过台桌阈值时发预警。
入金与成交勾对
财务把 Payment 的 recordId / userAmount / state=DONE 与 DealsInfoRecord 的 deposit、TradeDeal 票据对齐,让钱包卡入金落在 HistoryFragment 显示的同一 login 上。
持仓风险即时台账
风控台账把 TradePosition 的 symbol、volume、priceOpen、sl、tp、profit 与 TradeOrder 的 state、type 并排,一张表看清挂单与浮动盈亏。
常见问题
登录后 MetaTrader 5 能读到哪些账户字段?
tradeGetInfo 填充的 TradeInfoRecord 包含当前 login 的 balance、equity、margin、marginFree、marginLevel、profit、credit、commission、assets、liabilities 与 hasMarginCall。
除了余额,能否读到实时报价和持仓?
可以。selectedGet 返回 SelectedRecord 的 bid、ask、high、low、spread;tradePositionsGet 列出 TradePosition 的 symbol、volume、priceOpen、sl、tp、profit;tradeOrdersGet 列出工作中的 TradeOrder。
应用里的 MQL5 社区登录怎么走?
客户端用 mid、ggtok、tok、sign、rnd 调用社区身份授权接口,再解析嵌套 user(user_login、user_email、metaquotes_id、chat_token);状态接口还会返回 geo.country。
入金出金是否在同一套接口里?
PaymentBase.getWallets 列出带各币种 limitDepositMin/Max 的 Wallet;deposit 与 withdraw 返回带 recordId、userAmount、state(INIT 到 DONE)以及钱包或 bankAccount 的 Payment。
与 MetaTrader 5 — Forex, Stocks 相似的应用
- MetaTrader 4 — MetaTrader 4 是 MetaQuotes 较早的外汇与期货终端,带图表、MQL4 智能交易、跟单信号和安卓/iOS 应用,不少零售外汇券商仍与 MT5 一并授权使用。
- cTrader — cTrader 是塞浦路斯利马索尔 Spotware Systems 的外汇/差价合约平台,有桌面、网页和手机端,支持 C# 与 Python 策略、内置跟单,并由 IC Markets、Pepperstone、FxPro 等券商提供。
- TradingView — TradingView 是图表与社交交易应用,用户可在网页、桌面和手机上分析行情,并通过 100 多家接入券商交易股票、加密资产、外汇和期货。
- NinjaTrader — NinjaTrader 是芝加哥期货平台兼经纪商,桌面、网页和手机端支持实盘与模拟交易、可定制图表、盘口下单和 NinjaScript 策略。
- thinkorswim — thinkorswim 是嘉信理财面向自主股票、期权和期货交易者的电子交易平台,提供桌面、网页和手机端,以及 paperMoney 模拟交易。
- IBKR Mobile — 盈透证券的 IBKR Mobile 可在 iOS 和安卓上交易股票、期权、期货、外汇、债券和基金,高级订单类型与扫描器与其桌面端同步。
- eToro — eToro 是多资产券商,平台覆盖股票、ETF、差价合约、加密资产,以及面向散户的跟单与社交交易。
相关主题
- MetaTrader 5 API
- MT5 余额净值保证金
- MetaTrader 5 持仓订单
- MT5 买卖报价
- MQL5 用户登录
- MetaTrader 5 入金出金
- openData Studio
需要集成这个 App 的数据 API?
我们可为任意指定 App 交付定制集成——源码交付 USD 500 起,或托管 API 按调用计费。告诉我们您需要的数据即可。
- 每个项目均签 NDA 与 SOW
- 3–7 天交付
- 验收通过后才付款
- 仅在授权范围内作业