一、简介
在外汇与差价合约(CFD)市场中,MetaTrader 4(简称 MT4)依然是最具代表性的交易系统。
传统上,交易者或系统开发者若想与 MT4 交互,往往需依赖终端(Terminal)或管理端(Manager),但这两者都存在明显局限——运行依赖图形界面、调用效率有限、系统集成难度高。
MT4ServerAPI 的出现,彻底改变了这一点。
它是一套专为开发者设计的服务器级通信接口库(DLL / .NET Assembly),允许程序直接连接 MT4 服务器核心进程,执行包括账户查询、报价订阅、订单操作、历史数据提取等一系列任务。
No need to run MetaTrtader terminal. No need to install server side plugins. API simply emulates MT4/5 terminal and works with server by TCP. Able to connect to any server.
MT4 and MT5 API developed purely on .NET and ready for cross-platform DotNET Core applications.
换言之,它让外部系统可以以代码的方式“接入 MT4 服务器”,而无需运行终端、也无需安装插件。
二、主要技术
MT4ServerAPI 的核心命名空间为 TradingAPI.MT4Server,编译后的文件为 MT4ServerApi.dll。
它通过二进制 TCP 协议与 MT4 Server 通信,实现高性能的读写与事件分发。
主要组成模块包括:
QuoteClient:负责建立服务器连接、账户登录、订阅实时报价、接收账户与行情事件。
OrderClient:执行下单、改单、撤单等操作,并接收订单状态与成交反馈 , 提供历史订单、成交、资金变动与 Bar 数据的读取接口。
技术特征:
零终端依赖:不需要运行 MT4 Terminal 即可操作MT4账户;
事件驱动架构:通过 OnQuote、OnOrderUpdate 等回调实时推送变化;
强类型数据结构:所有交易、报价、账户对象均为可序列化结构体;
主备自动连接机制:支持 .severs 服务器清单解析,容错与重连逻辑完善;
线程安全:适合嵌入服务端、后台守护进程或跨语言集成层。
三、适用场景(基于官网 MTAPI.online)
实时账户与报价接入
通过 QuoteClient,可直接登录服务器账户,实时获取:账户余额、净值、保证金占用、持仓信息、实时报价与行情变动。
适用于构建数据接入层、自研可视化面板或后台监控系统。
订单事件监听与交易状态跟踪
API 内部事件(如 OrderUpdate、BalanceChanged、TradeRecord 等)可实时回调,监控订单生命周期。
无需终端即可监听新单创建、成交、修改、撤销等变化。适用于后台风控、监控或日志采集。
历史数据与日志抽取
可直接拉取历史订单、成交记录及 Bar 数据,用于回测、合规报表与分析。
wx:kendystef