问吧! - 页 85

 
cico707:
我在货币GBP/USD上试过这个Ea,我认为他可以用追踪止损给出好的结果。

谁能帮助我插入一个追踪止损?

谢谢

回溯测试 GBPJPY

附加的文件:
 

我如何在MQL中表达以下内容:-

if(boolean_condition_is_true AND (this_is_true OR that_is_true))

也就是说,如果 boolean_condition为真,并且 this_is_true或that_is_true),那么就做某事。

有谁知道吗?

 

在MQL中,要将一个标识符的符号从正数改为负数,其语法是:A = - A。A = - A 然而,反过来似乎就不行了,即:A = + A。

 
Sadly:
在MQL中,要将一个标识符的符号从正数改为负数,其语法是:A = - A。A = - A 然而,反过来似乎就不行了,即:A = + A. 我怎样才能把一个负值的符号变成一个正值?

A = -A; //总是有效的 ...

或者:

A *= -1;

 
Sadly:
我如何在MQL中表达以下内容: -

if(boolean_condition_is_true AND (this_is_true OR that_is_true))

也就是说,如果 boolean_condition为真,并且 this_is_true OR that_is_true),那么就做一些事情。

有没有人知道?

如果(b1 && (b2 || b3))

{

做一些事情

}

 

谢谢你,米歇尔。 使用你所建议的A *= + A确实给出了一个正号,即:将-A变为+A。

 
Michel:
if(b1 && (b2 || b3))

{

做一些事情

}

这就是我正在做的事情......

if(Alarm_Reset && (stepSignalBuffer[shift] Upr_level ))

{

if(stepSignalBuffer[shift] < Lwr_level)

{

PlaySound("twank.wav");

}

else

{

PlaySound("tick.wav");

}

Alarm_Reset = false;

}

else

{

Alarm_Reset = true;

}

}

就是说,如果 警报已经被重置(为真),并且 信号缓冲区< lwr_level或者 信号缓冲区> upr_level

如果signalbuffer低于低电平,就播放一个声音,如果高于高电平,就播放另一个声音。 将警报设置为假的(如果已经完成了,不希望再有警报响起。

否则

重置警报(即:signalbuffer在lower_level upper_level之外)。

不幸的是,这不是正在发生的事情,但至少我知道代码是正确的,这可能是由于逻辑问题。

再次谢谢你,米歇尔。

编辑:我刚刚评论了stepSignalBuffer[shift],它的值总是为零!我觉得自己很蠢。 我觉得自己真是个白痴。

 
Sadly:
谢谢你,米歇尔。 使用你所建议的A *= + A的确可以得到一个正号,即:将-A变成+A。

不,这是错的,我说的是。A *= -1;而不是A *= +A。

这个符号是翻转的;但如果你需要一个正数,可以使用MathAbs()函数:A = MathAbs(A); 无论A是什么,它都会变成正数。

 

周末测试代码

嗨,大师。

是否有任何服务器可以提供价格,让我们有机会在周六和周日测试我们的代码?

我的意思是,如果有可能让模拟器服务器在周末有机会测试?

这个想法是由于。

1.在工作日的时候,我们要认真观察我们的图表。

在那个时候,不能认真地输入代码。

2.2.我们在周末有更多的时间,那么我们就可以认真地测试我们的代码。

也许有人能给我关于这个想法的信息?

最好的问候。

BornToWin

 
Michel:
不,这是错的,我说的是。A *= -1;而不是A *= +A;这个符号翻转;但如果你需要一个正数,使用MathAbs()函数:A = MathAbs(A);无论A是什么,它都会变成正数。

我是在尝试翻转符号之后,这似乎是有效的。 我也累了MathsAbs()函数,确实数字是正的。

谢谢你,米歇尔,你给了我很大的帮助。