[存档!]任何菜鸟问题,为了不给论坛添乱。专业人士,不要与它擦肩而过。没有你,哪里都不能去 - 2. - 页 123

 
KabrGvin:

请告诉我在没有酒吧的情况下如何避免周末的影响。假设用公式计算出条形图的数字。

nt i1=Time[0]-t1)/60/Period();

int i2=(Time[0]-t2)/60/Period();

而i1和i2之间的条数等于它们之间的差异。即:条数= i1-i2。但是如果i1和i2是在周末之间,那么计算条数时将考虑到周六和周日不存在的条数。我怎样才能摆脱这种情况?

问候,迪米特里。


谢谢大家。我自己已经解决了这个问题。



 

人们!如何将2.643789四舍五入到一个整数?

我在教科书或文件中找不到它,我在搜索中找不到任何东西,或者我找错了地方。

 
eddy:

alsu,填上整个如何?)

为什么要打印i?)i等于Bars-counted+2,怎么可能是负数?

              for(i=Bars; i>=0; i--) Rel[i]=pr(Close[i])-pr(Close[i+1]);
     if(teni) for(i=Bars; i>=0; i--) {Rhi[i]=pr(High[i])-pr(Close[i+1]);
                                      Rlo[i]=pr(Low[i])-pr(Close[i+1]);
                                                Rlo[i]=MathMin(Rlo[i],0);
                                                Rhi[i]=MathMax(Rhi[i],0);}

这段代码在每个tick上执行,即在每个tick到来时,数组的所有元素Rel,. 从Bars到0被分配一些值。(顺便说一下,没有数字Bars的元素,数组中的最后一个索引是Bars-1--这一点应该被记住)

现在是不画画的时候。

我们需要找出错误所在。首先,我建议我们看看i指数取什么值,以及rsi()函数输出什么。由于ME中没有调试器,我们必须使用echo,也就是Print()。

 
gheka:

人们!如何将2.643789四舍五入到一个整数?

我在教科书或文件中找不到它,我在搜索中找不到任何东西,或者我找错了地方。

https://docs.mql4.com/ru/math/MathRound

double MathRound( double value)

该函数返回四舍五入到指定数值的最近整数的值。

例子。
double y=MathRound(2.8);
Print("将2.8舍入到",y)。
y=MathRound(2.4)。
Print("将-2.4四舍五入到",y)。
//输出:将2.8舍入为3
//将-2.4舍入到-2

 
alsu:

...在每一次打勾的时候,所有的元素都是Rel, ... 从Bars到0被分配一些值。

现在说说不画的事。

我们需要找出错误所在。首先,我建议我们看一下i指数取什么值,以及rsi()函数在这时的输出。由于ME中没有调试器,我们可以使用echo,也就是Print()。

"Bars to zero "我已经修好了)我一直在阅读和修复东西。

现在关于不画的问题)

Bars-counted+2可以是负数吗?

 

我怎样才能修改所有未结订单?

由于某种原因,我只修改了一个订单

以下是我的代码

 tot=OrdersTotal();
if(tot>0)
{ if(OO_11(0)==false) <---- ОО_11() он проверяет есть ли стоп
{ int k=OrdersTotal();
for(int a=0;a<=k;a++)
{ if(OrderSelect(a,SELECT_BY_POS,MODE_TRADES))
{ if(OrderType()==OP_SELL)
{ if(OrderMagicNumber()==0)
{
int tik=OrderTicket();
OrderModify(tik,Ask,Ask+0.01000,0,0,0);
}
}
}
}
}
}
我有10-50个订单,没有魔术师,但它只在一个订单上设置了止损,告诉我有什么问题?
 
eddy:

"Bars to zero "我已经纠正了)我总是在阅读和纠正东西。

现在关于不画的问题)

Bars-counted+2可以是负数吗?

在飞行中,不,它不能。但检查还是比思考更快。理想情况下,你应该把印刷品放在各处,看看软件如何运作。
 
gheka:

我怎样才能修改所有未结订单?

由于某种原因,我只修改了一个订单

以下是我的代码

我有10-50个未平仓的订单,但我的止损只在一个订单上,告诉我有什么问题?

1) 变量k重复变量tot

2)a<=k是错误的,纠正a<k

3)日志中关于修改订单的内容是什么?

 
alsu:

1) 变量k重复了变量tot

2) a<=k是不正确的,正确的是a<k

3) 日志中关于订单修改的内容是什么?

日志中没有任何信息,只有开单的信息,没有其他信息,也还是不行
 
alsu:

1) 变量k重复了变量tot

2) a<=k是不正确的,正确的是a<k

3) 日志中关于订单修改的内容是什么?

现在工作了)谢谢你。