[存档!]任何菜鸟问题,为了不使论坛变得混乱。专业人士,不要路过。没有你,哪里都不能去 - 4. - 页 502

 
hoz:

我已经有点糊涂了。这里有3个函数,每个函数都接收一个特定指标的特定信号。

这个功能接收来自所有指数的一般信号,并做出买入卖出 的决定。

这是接收一般信号的主函数;在这里,我们通过循环获得指数值,当然是要通过所有的条形图。而后将获得的值通过引用传递给需要这些值的适当的函数,也就是传递给函数。

int GetCrossingMa(double& i_maFast1, double& i_maFast2, double& i_maSlow1, double& i_maSlow2)

int GetStochSignal(double& stochD1, double& stochD2, double& stochK1, double& stochK2)

void GetMomentumSignal() ,原则上也可以放在这里。

因此,所有指数的计算都将在一个主要功能中得到信号。在这种情况下,一切都符合逻辑...

维克多!你有逻辑,但没有足够的知识。第一个,如果你不放弃它,将帮助你比教科书走得更远,而要 "赢得 "第二个,你必须从它开始(从教科书开始)。你还没有准备好(尚未)建立你自己的逻辑代码结构,请回到按字母顺序排列的版本。
P.S. 在你的代码中,什么 "吸引眼球"。

在函数GetSignal()中,为了寻找两行的交叉点,可以使用for 循环,但最好使用while 循环,尽管这是个人的偏好。首先,你需要像 "执行不能被赦免 "中那样移动一个括号,使你的代码执行你刚才所说的内容。由于某些原因,这个(结果)函数缺少两个函数的结果:GetStochSignal()和GetMomentumSignal()--这稍微有点不重要。

在函数GetCrossingMa()和GetStochSignal()中,通过引用传递参数是没有意义的,因为如果函数中的这些变量改变了它们的值,那才有意义。

空白的GetMomentumSignal()函数没有返回任何东西。

虽然我承认,从外面看 "更难看"...:)))

 
laveosa:

大家好!请帮助,我有一个蜡烛图的组合,我想让它们在不同的时间尺度上工作。举例来说

如果(iHigh("EURUSD",PERIOD_M5,1)>iLow("EURUSD",PERIOD_M5,1)+8*kio*Point)

{

go_s=true。

}

我想我可以用iHigh, iLow, iOpen等来绑定我的组合。但当在M5上测试时,它显示了一个结果,但在其他时间段却显示了另一个结果。请帮助我做错了什么。谢谢你!

试试这个。

if(iHigh("EURUSD",PERIOD_M5,1)> (iLow("EURUSD",PERIOD_M5,1)+8*kio*Point()) )

把代码 很好地粘贴 到论坛上,请按SRC,然后是代码。


[Deleted]  
我有一个美分账户(不是美分灯),在Veshchet里有100个Ue,杠杆是1:500,我如何计算我可以投入的最大手数?帮助!我知道在价格上可以放最大100手,我想知道当我放了很多,而我说钱不够的 时候,像这样的情况)))。
 
Beowulf:
我有一个美分账户(不是美分灯),在Veshchet里有100个Ue,杠杆是1:500,我如何计算我可以投入的最大手数?帮助!我知道在价格上可以放最大100手,我想知道当我放了很多,而我说钱不够的时候,像这样的情况)))。
double maxvolume = MathMax(MarketInfo(Symbol(), MODE_MAXLOT), AccountFreeMargin() / MarketInfo(Symbol(), MODE_MARGINREQUIRED));
[Deleted]  
我不明白这些代码,我以为他们会告诉我最多20.0...我在哪里阅读才能理解你写的内容?
[Deleted]  

你好!!!在升级Termenal mt4后,顾问开始按它想要的方式工作-----,也许有办法解决它?感谢你的回答!

 
eduard9898:

你好!!!在升级Termenal mt4后,顾问开始按它想要的方式工作-----,也许有办法解决它?感谢你的回答!


当然有。

这里 有这样的案例。

 

请告知如何最好地截断该数组,以便保留这些值。

假设我们有一个16个元素的数组,我们需要把它削减13个元素,这样剩下的元素14,15,16里面有保留的值,但是数组大小 是3,不是16,所以索引是14变成了0,15变成了1,16-2。

 
Skydiver:

请告知如何最好地截断该数组,以便保留这些值。

假设我们有一个16个元素的数组,我们需要把它削减13个元素,这样剩下的元素14、15、16里面有保留的值,但是数组的大小是3,而不是16,所以索引是14变成0,15保持1,16-2。

你可以做以下事情。

    for (int li_IND = 0; li_IND < 3; li_IND++)
    {Array[li_IND] = Arrray[li_IND+14];}
    ArrayResize (Array, 3);
 
eduard9898:

你好!!!在升级Termenal mt4后,顾问开始按它想要的方式工作-----,也许有办法解决它?感谢你的回答!

你可以在这里 看一下。