EA-35056 · 辅助工具

IsConnected

这个EA在循环中监控终端与交易服务器的连接状态,每当连接状态发生变化时打印'Online'或'Offline'消息。它使用CTerminalInfo检测连接状态转换,并记录连接和断开的时间戳。它纯粹是一个监控工具,没有任何交易功能。

打开交互版(权益曲线、切换品种)

基本信息

风险安全
评分★☆☆☆☆
类型辅助工具
周期M1, M5, M15, M30, H1, H4, D1
指标CTerminalInfo
作者Dark Ryd3r

回测结果(H1,约 1 年)

暂未回测:这个 EA 还没能自动转换。

策略分析

此EA不涉及任何交易策略,它是一个纯连接状态监控工具。其核心逻辑是在一个while循环中每秒轮询终端的连接状态,通过比较当前状态与前一状态来检测连接变化。当检测到从离线变为在线时,记录Connect_Start时间;当检测到从在线变为离线时,记录Connect_Stop时间。该工具不执行任何入场或出场操作,不涉及仓位管理和资金管理。它通过first标志来处理首次运行时的状态初始化,确保第一次状态变化能被正确捕获。整体实现简单直接,仅用于诊断和监控目的。

优势

  • 实现简单直接,逻辑清晰易懂
  • 可以实时监控连接状态变化,便于排查网络问题
  • 记录了连接和断开的时间戳,有助于事后分析网络稳定性

劣势

  • 使用阻塞式while循环和Sleep,会占用EA线程导致其他EA事件无法处理
  • 连接状态变化时打印的消息存在逻辑混淆:在线时先打印'Offline',离线时先打印'Online'
  • 没有使用事件驱动方式(如OnTimer),资源利用效率低下

改进建议

  • 应改用OnTimer事件驱动方式替代阻塞式循环,避免占用EA线程
  • 修复打印消息的逻辑错误,确保状态变化时输出正确的在线/离线信息

风险评估

总体风险: 安全

  • 阻塞式循环会阻止EA处理其他事件(如deinit),可能导致终端无法正常移除EA
  • 首次运行时Pre_IsConnected初始化为true,如果首次检测时已连接则不会触发状态变化通知

评估得分

代码质量2.0
策略逻辑1.0
风险管理5.0
稳健性2.0
创新性1.0
文档1.0
综合2.0

参数

参数默认值说明
Sleep interval1000ms轮询连接状态的时间间隔(毫秒)
firsttrue首次运行标志,用于初始化状态比较
Now_IsConnectedfalse当前连接状态
Pre_IsConnectedtrue前一次连接状态

同类 EA:辅助工具

回测是历史模拟,不代表未来收益,不构成投资建议。

订阅每周 Arena 周报

每周一封邮件:排名变化、新信号和新研究。不发垃圾邮件,随时可以退订。