EA: New Candle or Bar formation. - 页 2 12 新评论 Clinton Dennis Edem 2025.12.18 07:43 #11 Maxim Kuznetsov # : 对 previous_time 的初始化不当,导致代码启动时立即发出错误警报。 2. 在每次 tick 时对 iTime 的访问代价高昂。 3. 并非所有刻度线都构成一个条形图(在极少数情况下,刻度线可能出现在非交易日,但并不是交易,而只是服务器的内部程序)。 代码的工作是检测新蜡烛的形成,这只能写入 Ontick 或 OnTimer 函数中。 William Roeder 2025.12.18 14:08 #12 您不可能知道蜡烛何时关闭。只有当一个新的刻度线到达并开始一个新的条形图时,旧条形图才会关闭,而该刻度线可能在条形图持续时间几乎结束时到达。 对于新的条形图测试,条形图 是不可靠的(刷新/重新连接可以改变图表上的条形图数量),成交量是不可靠的(错过刻度线),价格是不可靠的(重复的价格和== 操作符。 - MQL4 编程论坛。)始终使用时间。 MT4:新蜡烛 - MQL4 编程论坛 #3 (2014) MT5:访问变量 - MQL4 编程论坛 #3 (2022) 我不同意创建一个新的 bar 函数,因为每个 tick 只能调用一次(第二次调用返回 false)。一个变量可以测试多次。 在每个条形图开始时运行一次 EA - MQL4 编程论坛 (2011) static datetime curDT=0; datetime preDT=curDT; curDT=iTime(_Symbol,_Period,0); if(curDT != preDT){ … } 让新闻交易变得容易(第一部分):创建一个数据库 Yuriy Bykov 2025.12.18 14:42 #13 William Roeder #:我不同意创建一个新的条形图函数,因为每个刻度只能调用一次(第二次调用返回假值)。一个变量可以被检查多次。 我设法 创建了一个通用函数IsNewBar(symbol, timeframe), 它可以在一个 EA 中对符号和时间框架的不同组合正常工作,并且可以在一个刻度线的处理过程中多次调用,第二次(以及以后的次数) 返回的结果与第一次相同。 12 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
对 previous_time 的初始化不当,导致代码启动时立即发出错误警报。
2. 在每次 tick 时对 iTime 的访问代价高昂。
3. 并非所有刻度线都构成一个条形图(在极少数情况下,刻度线可能出现在非交易日,但并不是交易,而只是服务器的内部程序)。
您不可能知道蜡烛何时关闭。只有当一个新的刻度线到达并开始一个新的条形图时,旧条形图才会关闭,而该刻度线可能在条形图持续时间几乎结束时到达。
对于新的条形图测试,条形图 是不可靠的(刷新/重新连接可以改变图表上的条形图数量),成交量是不可靠的(错过刻度线),价格是不可靠的(重复的价格和== 操作符。 - MQL4 编程论坛。)始终使用时间。
MT4:新蜡烛 - MQL4 编程论坛 #3 (2014)
MT5:访问变量 - MQL4 编程论坛 #3 (2022)
我不同意创建一个新的 bar 函数,因为每个 tick 只能调用一次(第二次调用返回 false)。一个变量可以测试多次。
在每个条形图开始时运行一次 EA - MQL4 编程论坛 (2011)
我不同意创建一个新的条形图函数,因为每个刻度只能调用一次(第二次调用返回假值)。一个变量可以被检查多次。
我设法 创建了一个通用函数IsNewBar(symbol, timeframe), 它可以在一个 EA 中对符号和时间框架的不同组合正常工作,并且可以在一个刻度线的处理过程中多次调用,第二次(以及以后的次数) 返回的结果与第一次相同。