嗨,
我想知道是否可以编写一个指标,自动更改手动绘制的水平线的颜色,以检测当前价格是什么时候
高于还是低于他们?
当支持变为阻力时,将是一个很好的解决方案,反之亦然。
谢谢。
嗨,
我想知道是否可以编写一个指标,自动更改手动绘制的水平线的颜色,以检测当前价格是什么时候
高于还是低于他们?
当支持变为阻力时,将是一个很好的解决方案,反之亦然。
谢谢。
对的,这是可能的。您可以使用ObjectTotal和for循环遍历图表上的所有绘制对象,并将OBJPROP_PRICE1值与当前收盘价进行比较。如果价格高于/低于价格,您可以使用ObjectSet设置颜色。
1附件嘿,我也在寻找相同的东西,但在MQl5中遇到了这个问题。唯一的问题是它绘制了一条水平线,如果有人能纠正这个代码并让它画出更多的SR水平线。
https://www.forex-pedia.com/attachme...9903664208.mq4
我没有安装mt 4,所以我可以直接尝试一下。如果您只想手动绘制线条,则必须检查线条的名称。如果不篡改其他指标或ea的代码,就不容易做到这一点。或者你相应地重新命名你的手动线路并检查。一个代码片段,用于处理颜色变化插入代码颜色#91;#93; col = {someColor,someOtherColor}; for(int i = 0; i lt; ObjectsTotal(); i ){string objName = ObjectName(i); if(ObjectType(objName)== OBJ_HLINE){double price = ObjectGet(objName,OBJPROP_PRICE1); ObjectSet(objName,OBJPROP_COLOR,col#91; price gt; Close#91; 0#93;#93;); }}Originally Posted by ;
基本上,我会画出我手动识别为支撑阻力的所有线条。我会选择阻力线的颜色(高于当前出价)和支撑线的颜色(低于当前的出价)。所有高于当前价格的行将更改为自动阻力颜色,并且所有下面的行将自动支持颜色(自动更改)。价格在这些线上移动时,线会自动改变颜色。它应该拾取所有水平线并相应地着色它们。
1附件尝试附件。将ManualLineColor设置为绘制的手动线的颜色。 (我不知道如何让MT4识别一条线是手动还是自动绘制的,因此您需要将所有手动线设置为相同的指定颜色,以将它们分开)。
https://www.forex-pedia.com/attachme...1184459110.ex4
Originally Posted by ;Originally Posted by ;我已经快速查看了代码,看来它确实画了多条线,但只有在市场开放的时候才会起作用,我应该能够在市场关闭时更新代码以便工作,因此只需将其与一有空闲时间,我会尽快解决。Originally Posted by ;