初学者的问题 MQL5 MT5 MetaTrader 5 - 页 850 1...843844845846847848849850851852853854855856857...1503 新评论 khorosh 2018.04.23 16:12 #8491 Artyom Trishkin: 纠正曲线指示器。它可能只在完全重新计算时画线,这是由上下文菜单命令完成的。阿列克谢-维克多罗夫。mql4中也有一个。 谢谢你。 khorosh 2018.04.23 17:27 #8492 用拐杖把它弄出来了)。我想让指标在手动拖动垂直线 后更新,从中获取时间。我使用了拖动对象的事件功能,并在其中加入了改变TF并返回初始值的功能。但由于某些原因,更新被推迟了,大约几秒钟。TF切换的功能工作得很慢,我不明白。 Artyom Trishkin 2018.04.23 19:05 #8493 khorosh: 用拐杖解决了)。我需要在手动拖动一条垂直线 后更新指标,从中获取时间。我使用了拖动物体的功能,并在其中加入了改变TF的功能,并返回到初始状态。但由于某些原因,更新被推迟了,大约几秒钟。TF切换的功能太慢了,我不明白。这个函数是异步的。它只返回事件队列中的命令的结果。 为了立即更新,你需要在图表切换命令之后执行ChartRedraw()命令 当然,这是一个错误的方法。如果你想在线的移动完成后才更新图表,指标重新计算的循环不应该从OnCalculate()调用,而应该从ChartEvent()调用--线的移动被捕获--指标重新计算的函数被调用,这将用新的数据运行整个线的重新计算周期(线是需要一些数据的,不是吗?) 还是指标根本没有做对,没有在当前数据上更新零点栏,而你踢了它? Artyom Trishkin 2018.04.23 19:35 #8494 ilyav:谁能帮助修复MT5上的EA代码? 我读过手册,但在编译时,我无法战胜2个清漆。 xxxx "的声明隐藏了全局声明 и 由于类型转换可能造成的数据损失见所附提示。我只是愚蠢地修正了全局变量的名称,并使其类型相符。 这就是你可以收取的10,000,000的费用--因为克服了你的懒惰。 附加的文件: r1rvcc_correct.mq5 64 kb ilyav 2018.04.23 19:48 #8495 Artyom Trishkin:只是直截了当地纠正了全局变量的名称,并使其类型符合要求。 为了克服你的懒惰,你欠我一万块钱。非常感谢你。 我很羞于展示我是如何修复它的) int CountTrades(long PositionID1) khorosh 2018.04.23 19:55 #8496 Artyom Trishkin:这个函数是异步的。它只返回事件队列中的命令的结果。 为了立即更新,你需要在图表切换命令之后执行ChartRedraw()命令 当然,这是一个错误的方法。如果你需要在线的移动完成后才更新图表,指标重新计算的循环不应该从OnCalculate()中调用,而应该从ChartEvent()中调用--线的移动被捕获--指标重新计算的函数被调用,它将用新的数据执行整个线的重新计算周期(线是需要一些数据的,不是吗?) 或者是指标根本就做错了,它没有在当前的数据上更新零条,而你把它搞砸了?该指标计算最后一个未计算的柱子。而在拖动垂直方向后,它应该在读取新的垂直时间后完全重新计算。我在这里 写过它,并添加了它如何工作的截图。 谢谢,我将尝试实现你的想法。我一般不擅长使用指标,我主要是和专家顾问打交道。 khorosh 2018.04.23 20:13 #8497 Artyom Trishkin:这个函数是异步的。它只返回事件队列中的命令的结果。 为了立即更新,你需要在图表切换命令之后执行ChartRedraw()命令 当然,这是一个错误的方法。如果你想在线的移动完成后才更新图表,指标重新计算的循环不应该从OnCalculate()调用,而是从ChartEvent()-线的移动-调用指标重新计算函数,它将用新的数据运行整个线的重新计算循环(线是需要一些数据的,对吗)。 或者是指标做得不对,没有在当前数据上更新零点栏,你就踢了它?按照你的建议做了。一切工作都很完美。现在,在拖动之后,指标瞬间被完全重绘。再次感谢。 Artyom Trishkin 2018.04.23 20:17 #8498 khorosh:我按照你的建议做了。一切工作都很完美。现在,在拖动之后,指标立即被完全重绘。再次感谢。不客气。但它应该在OnCalculate()中绘制,还是不行? 当它在图表上被拖动时,指标不知道线的任何变化,但它应该画线。 khorosh 2018.04.23 20:30 #8499 Artyom Trishkin:不客气。但它应该在OnCalculate()中绘制,还是不应该?当你把它应用于图表时,它不知道线的任何运动,但它应该画线。当指标被附加到图表上时,在init()中创建了一条垂直线,并为其初始设置了一些时间,例如Time[10]。我重复了OnChartEvent() 和OnCalculate()中的代码。只有在OnChartEvent中,我才会按所有条形重新计算。 Artyom Trishkin 2018.04.23 21:14 #8500 khorosh:当在init()中把指标安装在图表上时,会创建一条垂直线,最初它被设置为某个时间,例如Time[10]。我重复了OnChartEvent()和OnCalculate()中的代码。只有在OnChartEvent中,我才会按所有的条形图进行重新计算。例如,简单地创建Refresh()函数,加上所需的正式参数,并在必要时调用它,不是更好吗? 顺便说一下,当使用Bars()在日期范围内获取OnCalculate()之外的指标中的rate_total时,你可以抓住指标的一个挂起。 关于交易、自动交易系统和交易策略测试的论坛 iBarShift的模拟 Nikolai Semko, 2018.04.05 23:47 到目前为止,这个变体,但我现在想添加它,以绕过Bars 函数挂起的这个bug,关于这个问题我已经写信给servicedesk。 这个错误的本质是,如果在Bars函数中,start_time 和stop_time 都在一个柱状体内或在未来(零柱的右边),那么这个函数会挂起超过10秒。 也许我以后会做一个适当的更快但更麻烦的版本。 1...843844845846847848849850851852853854855856857...1503 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
纠正曲线指示器。它可能只在完全重新计算时画线,这是由上下文菜单命令完成的。
mql4中也有一个。
谢谢你。
用拐杖解决了)。我需要在手动拖动一条垂直线 后更新指标,从中获取时间。我使用了拖动物体的功能,并在其中加入了改变TF的功能,并返回到初始状态。但由于某些原因,更新被推迟了,大约几秒钟。TF切换的功能太慢了,我不明白。
这个函数是异步的。它只返回事件队列中的命令的结果。
为了立即更新,你需要在图表切换命令之后执行ChartRedraw()命令
当然,这是一个错误的方法。如果你想在线的移动完成后才更新图表,指标重新计算的循环不应该从OnCalculate()调用,而应该从ChartEvent()调用--线的移动被捕获--指标重新计算的函数被调用,这将用新的数据运行整个线的重新计算周期(线是需要一些数据的,不是吗?)
还是指标根本没有做对,没有在当前数据上更新零点栏,而你踢了它?
谁能帮助修复MT5上的EA代码?
我读过手册,但在编译时,我无法战胜2个清漆。
xxxx "的声明隐藏了全局声明
и
由于类型转换可能造成的数据损失
我只是愚蠢地修正了全局变量的名称,并使其类型相符。
这就是你可以收取的10,000,000的费用--因为克服了你的懒惰。
只是直截了当地纠正了全局变量的名称,并使其类型符合要求。
为了克服你的懒惰,你欠我一万块钱。
非常感谢你。
我很羞于展示我是如何修复它的)
int CountTrades(long PositionID1)
这个函数是异步的。它只返回事件队列中的命令的结果。
为了立即更新,你需要在图表切换命令之后执行ChartRedraw()命令
当然,这是一个错误的方法。如果你需要在线的移动完成后才更新图表,指标重新计算的循环不应该从OnCalculate()中调用,而应该从ChartEvent()中调用--线的移动被捕获--指标重新计算的函数被调用,它将用新的数据执行整个线的重新计算周期(线是需要一些数据的,不是吗?)
或者是指标根本就做错了,它没有在当前的数据上更新零条,而你把它搞砸了?
该指标计算最后一个未计算的柱子。而在拖动垂直方向后,它应该在读取新的垂直时间后完全重新计算。我在这里 写过它,并添加了它如何工作的截图。
谢谢,我将尝试实现你的想法。我一般不擅长使用指标,我主要是和专家顾问打交道。
这个函数是异步的。它只返回事件队列中的命令的结果。
为了立即更新,你需要在图表切换命令之后执行ChartRedraw()命令
当然,这是一个错误的方法。如果你想在线的移动完成后才更新图表,指标重新计算的循环不应该从OnCalculate()调用,而是从ChartEvent()-线的移动-调用指标重新计算函数,它将用新的数据运行整个线的重新计算循环(线是需要一些数据的,对吗)。
或者是指标做得不对,没有在当前数据上更新零点栏,你就踢了它?
按照你的建议做了。一切工作都很完美。现在,在拖动之后,指标瞬间被完全重绘。再次感谢。
我按照你的建议做了。一切工作都很完美。现在,在拖动之后,指标立即被完全重绘。再次感谢。
不客气。但它应该在OnCalculate()中绘制,还是不行?
当它在图表上被拖动时,指标不知道线的任何变化,但它应该画线。
不客气。但它应该在OnCalculate()中绘制,还是不应该?
当你把它应用于图表时,它不知道线的任何运动,但它应该画线。
当指标被附加到图表上时,在init()中创建了一条垂直线,并为其初始设置了一些时间,例如Time[10]。我重复了OnChartEvent() 和OnCalculate()中的代码。只有在OnChartEvent中,我才会按所有条形重新计算。
当在init()中把指标安装在图表上时,会创建一条垂直线,最初它被设置为某个时间,例如Time[10]。我重复了OnChartEvent()和OnCalculate()中的代码。只有在OnChartEvent中,我才会按所有的条形图进行重新计算。
例如,简单地创建Refresh()函数,加上所需的正式参数,并在必要时调用它,不是更好吗?
顺便说一下,当使用Bars()在日期范围内获取OnCalculate()之外的指标中的rate_total时,你可以抓住指标的一个挂起。
关于交易、自动交易系统和交易策略测试的论坛
iBarShift的模拟
Nikolai Semko, 2018.04.05 23:47
到目前为止,这个变体,但我现在想添加它,以绕过Bars 函数挂起的这个bug,关于这个问题我已经写信给servicedesk。
这个错误的本质是,如果在Bars函数中,start_time 和stop_time 都在一个柱状体内或在未来(零柱的右边),那么这个函数会挂起超过10秒。
也许我以后会做一个适当的更快但更麻烦的版本。