来自一个 "傻瓜 "的问题 - 页 64 1...575859606162636465666768697071...277 新评论 Anatoli Kazharski 2011.09.14 10:02 #631 Europa: 你能告诉我为什么警报显示Orders_Total=1,而实际上只有一个位置和一个订单,即理论上它应该显示2,而不是1。试着从终点开始倒着运行这个循环。string Symb="EURUSD"; for(i=OrdersTotal()+PositionsTotal()-1;i>=0;i--) { if(Symb==PositionGetSymbol(i)) Orders_Total++; } Alert(Orders_Total); Europa 2011.09.14 10:06 #632 tol64:试着从终点开始倒着运行这个循环。 没有任何帮助;( Anatoli Kazharski 2011.09.14 10:28 #633 Europa: 没有工作;(啊,你只有一个位置检查。if(Symb==PositionGetSymbol(i)) Orders_Total++; 这就是只计算职位的地方。 Europa 2011.09.14 10:35 #634 tol64:啊,你只有一个位置检查。 这就是只有职位才算数的地方。 SO!!!! Rashid Umarov 2011.09.14 11:01 #635 tol64:该参考资料说,。 日期(年、月、日)或时间(小时、分钟、秒)或全部都可以省略。数值范围 为1970年1月1日至3000年12月31日。 例子。 D'2004.01.01 00:00' // 新年D'1980.07.19 12:30:27'D'19.07.1980 12:30:27'D'19.07.1980 12' //新年 D'1980.07.19 12:00:00'D'01.01.2004' //等同于D'01.01.2004 00:00:00'D'12:30:27' //等同于D'[编译日期] 12:30:27'D'' //相当于D'[编译日期]00:00:00'' ...还是我对这个问题有误解? 将对该帮助进行修正,以便今后不会出现此类问题。谢谢你。 Валерий 2011.09.14 14:39 #636 Europa: 它没有帮助;(为什么你要把苍蝇和肉片加在一起,然后确定有多少块肉片?订单单独计算,职位单独计算。PositionGetSymbol() 仅按符号返回是否存在某个头寸,而对订单没有任何说明。由于只有一个位置,所以它给出了1。而且你还很幸运,因为循环参数超出了可接受的值(PositionsTotal),你可以得到任何你喜欢的东西。P.S. 你已经回复了,我迟到了。 x572intraday 2011.09.15 12:28 #637 我找不到任何内部函数或属性来赋予图形对象可选择的属性(默认情况下,对象是以编程方式绘制的,不可能用鼠标选择)。很明显,问题是:是否有可能正常地给一个图形对象提供这样的属性,而不需要额外的库和其他魔法? Валерий 2011.09.15 13:57 #638 x100intraday: 我找不到任何内部函数或属性来赋予图形对象可选择的属性(默认情况下,对象是以编程方式绘制的,无需用鼠标选择),我只在包含的图形库中发现了这一点。很明显,问题是:是否有可能正常地给一个图形对象提供这样的属性,而不需要额外的库和其他魔法?对象集withprop_id=OBJPROP_SELECTABLE x572intraday 2011.09.15 14:29 #639 Valmars:对象集 withprop_id=OBJPROP_SELECTABLE 非常感谢你。 x572intraday 2011.09.15 19:50 #640 bool ExtFunc (string str, int P, int i) { if (high[i] < high[i-1]) return(false); return(true); } int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[], const long &tick_volume[], const long &volume[], const int &spread[]) { int i=0; if ExtFunc("s",60,i) == 1) Buffer[i] = high[i]; }在OnCalculate 中,我可以很容易地 通过索引使用数组元素,如高。是否也可以在ExtFunc中访问这个数组的索引元素?当调用我的函数时,我应该通过引用、通过指针或其他方式传递数组参数吗?到目前为止,我已经设法将错误信息 减少到:"'高'--参数转换是不允许的 "和"'高'--常量变量不能作为引用传递",关于我在OnCalculate 中的数组参数的函数调用的同一行。是没有希望还是有解决的办法?到目前为止,在OnCalculate 中,我已经采用了将高点复制到另一个数组 中的方法。ArrayCopy(CopyOfHigh,high,0,0,WHOLE_ARRAY); 然后在ExtFunc中使用CopyOfHigh而不是直接使用higharray。 1...575859606162636465666768697071...277 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你能告诉我为什么警报显示Orders_Total=1,而实际上只有一个位置和一个订单,即理论上它应该显示2,而不是1。
试着从终点开始倒着运行这个循环。
试着从终点开始倒着运行这个循环。
没有工作;(
啊,你只有一个位置检查。
这就是只计算职位的地方。啊,你只有一个位置检查。
这就是只有职位才算数的地方。该参考资料说,。
日期(年、月、日)或时间(小时、分钟、秒)或全部都可以省略。数值范围 为1970年1月1日至3000年12月31日。
例子。
D'2004.01.01 00:00' // 新年
D'1980.07.19 12:30:27'
D'19.07.1980 12:30:27'
D'19.07.1980 12' //新年 D'1980.07.19 12:00:00'
D'01.01.2004' //等同于D'01.01.2004 00:00:00'
D'12:30:27' //等同于D'[编译日期] 12:30:27'
D'' //相当于D'[编译日期]00:00:00''
还是我对这个问题有误解?
它没有帮助;(
为什么你要把苍蝇和肉片加在一起,然后确定有多少块肉片?
订单单独计算,职位单独计算。PositionGetSymbol() 仅按符号返回是否存在某个头寸,而对订单没有任何说明。由于只有一个位置,所以它给出了1。而且你还很幸运,因为循环参数超出了可接受的值(PositionsTotal),你可以得到任何你喜欢的东西。
P.S. 你已经回复了,我迟到了。
我找不到任何内部函数或属性来赋予图形对象可选择的属性(默认情况下,对象是以编程方式绘制的,无需用鼠标选择),我只在包含的图形库中发现了这一点。很明显,问题是:是否有可能正常地给一个图形对象提供这样的属性,而不需要额外的库和其他魔法?
对象集
withprop_id=OBJPROP_SELECTABLE
对象集
withprop_id=OBJPROP_SELECTABLE
在OnCalculate 中,我可以很容易地 通过索引使用数组元素,如高。是否也可以在ExtFunc中访问这个数组的索引元素?当调用我的函数时,我应该通过引用、通过指针或其他方式传递数组参数吗?到目前为止,我已经设法将错误信息 减少到:"'高'--参数转换是不允许的 "和"'高'--常量变量不能作为引用传递",关于我在OnCalculate 中的数组参数的函数调用的同一行。是没有希望还是有解决的办法?
到目前为止,在OnCalculate 中,我已经采用了将高点复制到另一个数组 中的方法。
然后在ExtFunc中使用CopyOfHigh而不是直接使用higharray。