π API Reference β Overview (GoMT4)¶
Short, navigable entry point to the API reference. Use this page to jump to the right place and understand naming rules & conventions.
πΊοΈ Whatβs inside¶
- Messages β payload structures (requests, responses, snapshots) with field notes.
- Enums β all enumerations with human meanings.
- Streaming β longβlived gRPC streams and their chunk types.
Looking for usage? See Cookbook recipes next to this section (e.g. Orders/PlaceMarketOrder, MarketInfo/GetQuote, Streaming/StreamQuotes).
π·οΈ Naming & readability¶
- Original proto names are prefixed with
Mt4(e.g.,Mt4AccountSummary). - In headings we show both: full name and a short alias in parentheses β e.g. Mt4AccountSummary (AccountSummary).
- Inside tables and notes we use short names for easier reading.
Why Mt4? It scopes types (MT4 vs MT5) and avoids name collisions across modules/languages.
π§© Common type legend¶
Timestampβ° β UTC time. Log in RFC3339.DoubleValue/StringValue/Int32Valueπ β optional fields with presence (omit β not set).- Money & PnL π΅ β in account currency (
AccountSummary.currency). - Prices & volumes πΉ β obey
SymbolParams(digits,point,lot_step,lot_min/max).
π API families β where to read¶
| Area | Start here |
|---|---|
| Connection & Health | Connect/Disconnect, ConnectionState, Ping, ServerInfo, Time, HealthCheck β see Messages β Connection & Health |
| Orders (sync) | OrderSendRequest/Result, OrderModify/Close/Delete/CloseBy, OrderActionResult β Messages β Account & Orders |
| Orders (history) | OrderHistory, paged/streaming history β Streaming β Orders History Streaming |
| Market info & quotes | Quote, SymbolParams, tick values, quote history β Messages β Quotes & Market Info |
| Streaming | Quotes, trade updates, opened tickets, PnL snapshots, charts β Streaming |
π Source of truth¶
This reference is generated from your .proto files (mrpcβproto). When proto changes, Messages/Enums/Streaming are updated to match field order and enum values exactly.
π¦ Stability notes¶
- Fields marked optional (wrapper types) may be omitted by the server when not applicable.
- New enum values can appear in the future β handle unknown values defensively on the client side.
- Streaming: always process
is_last = trueand surface transport errors to your retry logic.
Happy building! β¨