MT5 经纪商适配器与数据源
Mt5Broker 和 Mt5DataFeed 仅用于实时连接,通过本地 AQE MT5 桥接器将 AQE 接入正在运行的 MetaTrader 5 终端。
它们用于:
- 实时获取账户快照
- 最新报价和 K 线更新
- 订单提交和取消
- 持仓平仓请求
- 将交易事件传回 AQE
使用 MT5 桥接时,必须在本地运行 AQE 桥接服务,并将 MT5 Expert Advisor 加载到终端图表上。两端的会话和令牌设置必须一致。
配置 MT5 集成
Section titled “配置 MT5 集成”MT5 集成包括两端:
- AQE 端:
Mt5Broker和Mt5DataFeed使用配置的桥接令牌和绑定地址,与本地 MT5 桥接器通信。 - MT5 终端:AQE Expert Advisor 在 MetaTrader 5 内运行,并轮询本地 AQE 桥接器,获取市场数据和经纪商 RPC 请求。
请按以下流程配置:
- 从 AQE 仓库安装或更新 AQE MT5 Expert Advisor。
- 启动 MetaTrader 5,并登录希望 AQE 使用的账户。
- 将 AQE Expert Advisor 附加到经纪商提供的某个品种图表。
- 在 AQE 运行时环境和 Expert Advisor 中设置相同的
AQE_MT5_BRIDGE_TOKEN。 - 确保 AQE 与 Expert Advisor 的桥接绑定地址一致。默认本地地址为
127.0.0.1:18080。 - 启动 AQE 运行时,并确认 Expert Advisor 正在轮询桥接器。
有关 Expert Advisor 文件、安装说明和桥接 README,请参阅 GitHub 上的 AQE MT5 集成目录: algoquantstudio/aq-engine 的 MT5 集成。
使用 MT5 执行实时交易时,请在 MT5 终端核实成交、止损、账户状态和未平仓持仓。AQE 通过桥接器接收经纪商更新,但实际执行情况仍以 MT5 账户记录为准。
MT5 费用数据
Section titled “MT5 费用数据”对于 MT5 品种元数据,隔夜利息来自终端的品种信息。AQE Expert Advisor 将 SYMBOL_SWAP_MODE、SYMBOL_SWAP_LONG 和 SYMBOL_SWAP_SHORT 映射到 Asset.fees.swap.long 和 Asset.fees.swap.short。
MT5 货币隔夜利息模式映射到 AssetFee::PerContractFee。MT5 利息/当前价格/开仓价格百分比隔夜利息模式映射到 AssetFee::PercentagePerContractFee,使用每日小数费率,因此 0.0001 表示每天 0.01%。MT5 重新开仓点数隔夜利息模式映射到 AssetFee::Points。
MT5 佣金的处理方式不同。品种元数据不能作为佣金的权威依据,因为只有成交后的经纪商佣金数据才可靠。因此,AQE 以 MT5 实际成交记录中的佣金为准,将交易事件或平仓响应中的 DEAL_COMMISSION 与 DEAL_FEE 相加。如果经纪商报告零佣金,AQE 就记录零。
回测不会通过 MT5 成交记录获取佣金。运行历史回测时,请显式配置 PaperBroker 资产费用模型。
aq-engine/src/core/broker/mt5_broker.rsaq-engine/integrations/mt5
