[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 661 1...654655656657658659660661662663664665666667668...1145 新评论 Igor Makanu 2010.07.01 16:50 #6601 artmedia70: 它还没有发挥作用...而恰恰是AC在日志中捕捉到,也许重新计算是不正确的,条件永远不会起作用,如AC1=0和AC2=0,永远不会有0>0的情况。 print(AC1,AC2) ; if (BB>0 && OsMA>0 && AC1>AC2) return(1); Artyom Trishkin 2010.07.01 16:55 #6602 IgorM: 在日志中捕捉到,也许重新计算是错误的,条件永远不会被满足,比如AC1=0和AC2=0,永远不会有0>0。 print(AC1,AC2) ; 如果(BB>0 && OsMA>0 && AC1>AC2)返回(1)。 下面。 否则返回(0)。 Artyom Trishkin 2010.07.01 17:06 #6603 谢谢你,伊戈尔。我认为那是狗被埋葬的地方...:) 我让Comment()输出同样的AC1和AC2=0.01,尽管在数据窗口 中它们的AC1=0.001008,AC2=0.001020。 我如何增加数字容量?那么,除了微不足道的乘以1000之外,还是这样吗? Владимир Тезис 2010.07.01 17:09 #6604 IgorM: 是的,所以我将尝试而--那是直到第一个尖峰,然后........。- 我搞不清楚。 完成了。这里是其工作的结果。 代码并不复杂,所以你重新安排它以满足你的需要应该没有问题。 脚本附在帖子后面。 附加的文件: 0.mq4 4 kb Artyom Trishkin 2010.07.01 17:13 #6605 这样的条目是否正确。 double AC1=NormalizeDouble(iAC(sy,tf,1),8); Владимир Тезис 2010.07.01 17:16 #6606 artmedia70: 到目前为止,它还没有发挥作用...而且是空调。 唯一的出路是找出变量中的确切数值--这将告诉我们为什么编程的条件不能工作。 如果四舍五入自动达到0.01,那么很可能在UsdJpy这样的工具上通过测试。然后有一个选项可以通过字符串变量来工作(如果你真的需要这么遥远的小数位)。 Artyom Trishkin 2010.07.01 17:18 #6607 drknn: 唯一的出路是找出变量中的确切数值--这将告诉我们为什么编程的条件不能工作。 谢谢你,弗拉基米尔,我已经找到了原因。上面两个帖子的问题... Igor Makanu 2010.07.01 17:18 #6608 drknn: 完成了。这是他工作的结果。 谢谢,这很好--它起作用了,我只是不知道如何输入趋势标志--我以为这就像对数组进行排序 一样。 Владимир Тезис 2010.07.01 17:23 #6609 artmedia70: 这样的条目是否正确。 正确,因为第一个参数返回一个数字,第二个参数是一个可接受范围内的整数值。整个问题是究竟什么会进入变量。试着按原样打印,并尝试这种结构。 double AC1=NormalizeDouble(iAC(sy,tf,1),8); string str=AC1; Print("str = ",str); Владимир Тезис 2010.07.01 17:30 #6610 IgorM: 谢谢,这很好--它起作用了,我只是不知道如何输入趋势标志--我以为我需要对阵列进行排序 与数组打交道的麻烦在于,一旦函数遇到一个给它的值,它就会返回存储这个值的单元格的编号。而这个值可以在数组的其他单元格中找到,这正是棘手的地方。所以我们必须不断地迭代,不断地翻阅这些数值,直到我们翻阅完整个数组。一旦我们遇到合适的值,我们就把单元格索引放入先前创建的数组中,或者把这些行拼接起来。 你的问题的复杂性在于,你必须寻找高峰/低谷。为了找到它,你需要跳过极值,只有这样,代码才会意识到它实际上已经跳过了。这就是为什么我们必须回溯一步,记住极点和它所在的细胞。 1...654655656657658659660661662663664665666667668...1145 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
它还没有发挥作用...而恰恰是AC
在日志中捕捉到,也许重新计算是不正确的,条件永远不会起作用,如AC1=0和AC2=0,永远不会有0>0的情况。
print(AC1,AC2) ;
if (BB>0 && OsMA>0 && AC1>AC2) return(1);
在日志中捕捉到,也许重新计算是错误的,条件永远不会被满足,比如AC1=0和AC2=0,永远不会有0>0。
print(AC1,AC2) ;
如果(BB>0 && OsMA>0 && AC1>AC2)返回(1)。
下面。
否则返回(0)。
谢谢你,伊戈尔。我认为那是狗被埋葬的地方...:)
我让Comment()输出同样的AC1和AC2=0.01,尽管在数据窗口 中它们的AC1=0.001008,AC2=0.001020。
我如何增加数字容量?那么,除了微不足道的乘以1000之外,还是这样吗?
是的,所以我将尝试而--那是直到第一个尖峰,然后........。- 我搞不清楚。
完成了。这里是其工作的结果。
代码并不复杂,所以你重新安排它以满足你的需要应该没有问题。
脚本附在帖子后面。
这样的条目是否正确。
到目前为止,它还没有发挥作用...而且是空调。
唯一的出路是找出变量中的确切数值--这将告诉我们为什么编程的条件不能工作。
如果四舍五入自动达到0.01,那么很可能在UsdJpy这样的工具上通过测试。然后有一个选项可以通过字符串变量来工作(如果你真的需要这么遥远的小数位)。
唯一的出路是找出变量中的确切数值--这将告诉我们为什么编程的条件不能工作。
完成了。这是他工作的结果。
谢谢,这很好--它起作用了,我只是不知道如何输入趋势标志--我以为这就像对数组进行排序 一样。
这样的条目是否正确。
正确,因为第一个参数返回一个数字,第二个参数是一个可接受范围内的整数值。整个问题是究竟什么会进入变量。试着按原样打印,并尝试这种结构。
谢谢,这很好--它起作用了,我只是不知道如何输入趋势标志--我以为我需要对阵列进行排序
与数组打交道的麻烦在于,一旦函数遇到一个给它的值,它就会返回存储这个值的单元格的编号。而这个值可以在数组的其他单元格中找到,这正是棘手的地方。所以我们必须不断地迭代,不断地翻阅这些数值,直到我们翻阅完整个数组。一旦我们遇到合适的值,我们就把单元格索引放入先前创建的数组中,或者把这些行拼接起来。
你的问题的复杂性在于,你必须寻找高峰/低谷。为了找到它,你需要跳过极值,只有这样,代码才会意识到它实际上已经跳过了。这就是为什么我们必须回溯一步,记住极点和它所在的细胞。