- 显示:
- 17
- 等级:
- 已发布:
-
需要基于此代码的EA交易或指标吗?请在自由职业者服务中订购 进入自由职业者服务
MQTTFive — 适用于 MQL5 的 MQTT 5.0 客户端
用于将 MetaTrader 5 专家顾问和脚本连接至 MQTT 服务器(Mosquitto、EMQX、HiveMQ)的库(#include)。它支持发布行情和信号、接收来自外部系统的指令,以及监控专家顾问的状态。
无需 DLL— 纯 MQL5 实现,自带套接字 API。采用 MQTT v5.0 协议。
功能
- QoS 0、1、2,支持未发送消息的自动重传
- CONNECT/CONNACK属性:会话有效期、最大接收数据包数、最大主题别名数。
- 延迟发布的预设消息
- 主题别名——减少重复主题产生的流量。
- 流量控制——对最大接收数据量的配额进行管理。
- 订阅选项:no_local、retain_as_published、retain_handling
- TLS/SSL、二进制有效载荷、UTF-8
安装
- 将压缩包中的 5 个文件复制到 MQL5/Include/MQTTFive/ 文件夹中
- 在代码中:#include <MQTTFive/MQTTClient.mqh>
示例——发布价格
#include <MQTTFive/MQTTClient.mqh> void OnStart () { MQTTClient client; MQTTConnectParams params; params.Init(); params.client_id = "price_pub" ; if (client.Connect( "127.0.0.1" , 1883 , params)) { double bid = SymbolInfoDouble ( _Symbol , SYMBOL_BID ); client.Publish( "mt5/price/" + _Symbol , DoubleToString (bid, _Digits ), 0 ); client.Disconnect(); } }
示例——订阅信号
MQTTClient *mqtt; void OnSignal( string &topic, uchar &payload[], uint payload_len) { string msg = CharArrayToString (payload, 0 , ( int )payload_len, CP_UTF8 ); Print ( "Signal: " , topic, " = " , msg); } void OnStart () { mqtt = new MQTTClient(); mqtt.SetCallback(OnSignal); MQTTConnectParams params; params.Init(); params.client_id = "signal_sub" ; mqtt.Connect( "127.0.0.1" , 1883 , params); mqtt.Subscribe( "trade/signal/#" , 1 ); while (! IsStopped ()) { mqtt.Loop(); Sleep ( 100 ); } mqtt.Disconnect(); delete mqtt; }
主要方法
| Connect(host, port, params, useTLS) | 连接到消息代理 |
| Disconnect() | 正确结束会话 |
| ForceDisconnect() | 断开 TCP 连接(由 Will 触发) |
| Publish(topic, payload, qos, retain) | 发布消息 |
| Subscribe(topic, qos) | 订阅该主题 |
| Unsubscribe(topic) | 取消订阅 |
| Loop() | 数据包处理、连接维护、重试 |
| SetCallback(func) | 用于传入消息的回调函数 |
要求
- MetaTrader 5(版本 3390+)
- MQTT 5.0 经纪商(Mosquitto >= 5.0、EMQX、HiveMQ)
许可证: MIT
由MetaQuotes Ltd译自俄语
原代码: https://www.mql5.com/ru/code/73373
Institutional Markov Chain Transition Matrix
一种定量随机概率引擎,它利用马尔可夫链转移矩阵,从数学角度预测下一个算法执行周期中多头或空头走势延续的概率百分比。
Institutional Market Reversal - The SMC way
IMR 是一款多层定量反转识别工具,专为那些拒绝盲目交易、注重价格走势的自主交易者设计。它能帮助交易者了解当前的市场状态,无论是积聚、分销还是延续。
