[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 606 1...599600601602603604605606607608609610611612613...1145 新评论 Artyom Trishkin 2010.06.09 07:36 #6051 Roger: 显示函数本身。如果是void ClosePartPosBySelect(double Part),则改成空白的ClosePartPosBySelect()。 但是,你怎么能把一个参数传给这个函数呢?假设: if (x==2 && y==4) Part=0.5; else Part=2; ClosePartPosBySelect(Part); Kim的ClosePosBySelect()函数被改变,因此它需要一个双倍类型的 传递参数,也就是Part变量 Artyom Trishkin 2010.06.09 07:38 #6052 keekkenen: 两种方式 1.在改变数值的函数中,添加一个安培号。 例如,void function( double& Part){}。 那么,当函数中的一个值被改变时,新的值将返回到调用的地方。 2.从函数的参数列表中删除该变量,因为该变量是全局定义的,它的值可以在代码的任何地方改变,而不需要把它作为一个参数传递... 第一种变体更好,因为可以有一个以上的全局声明的变量(在一个函数里面)... 我浏览了一下帖子,事实上答案已经给出了...... 谢谢,我可以试试... Artyom Trishkin 2010.06.09 07:40 #6053 zelek: 亲爱的专业人士,你们好。 我真的想写一个EA,可以同时开出两个卖出和买入的订单。 然后在一定数量的点数(参数lim)之后,亏损的订单将被关闭。 而当价格跌破开仓以来的最高价时,盈利的订单将被关闭。 (一种虚拟的追踪止损)。 在痛苦中,我创造了这个,但它不起作用......不起作用 请提出一些建议 你认为你将如何决定它是回调还是反转?还是在每次回调时开两个仓位?这是个失败的例子... Alexander 2010.06.09 07:54 #6054 artmedia70: 那么你如何向这个函数传递一个参数呢? 如果参数是全局声明的,你不需要传递它,直接分配所需的值。只有这样,它才不需要在函数中被重写。 Artyom Trishkin 2010.06.09 08:09 #6055 这很有趣... 这是2009年全年的情况...只有动量读数被用于输入。 在TF H1上,我们寻找动量运动突破的时刻,而在TF M5上,我们找到进入市场的确切时刻。在开仓时,我们会检查上一次开仓的时间,以免在进场信号出现时开出全部存款... Demarker在TF M5和M15的超买/超卖区的位置证实了进入市场的时间... ...顺便说一下,没有储物柜也是积极的。 ...即使我疏忽地只用Demarker进行测试,仍然得到了有趣的结果。 在某个地方是这样的。 //--------------------------------------------------------- MomML_0 =iMomentum(NULL,PERIOD_M5,14,PRICE_CLOSE,0); MomML_1 =iMomentum(NULL,PERIOD_M5,14,PRICE_CLOSE,1); MomML_2 =iMomentum(NULL,PERIOD_M5,14,PRICE_CLOSE,2); MomST_0 =iMomentum(NULL,PERIOD_H1,14,PRICE_CLOSE,0); MomST_1 =iMomentum(NULL,PERIOD_H1,14,PRICE_CLOSE,1); MomST_2 =iMomentum(NULL,PERIOD_H1,14,PRICE_CLOSE,2); DeM5 =iDeMarker(NULL,PERIOD_M5, 14,0); DeM15 =iDeMarker(NULL,PERIOD_M15,14,0); //--------------------------------------------------------- //============================================================================================== // Поиск пересечений //============================================================================================== //----------------------- Проверка условий для старшего ТФ -------------------- // ---------- Покупка -------- MomBuy56M15=false; if ( MomST_0<100 && MomST_1<100 && MomST_2<100 && MomST_0>MomST_1 && MomST_1<MomST_2 && DeM15<0.3 ) { MomBuy56M15=true; } // ---------- Продажа -------- MomSell56M15=false; if ( MomST_0>100 && MomST_1>100 && MomST_2>100 && MomST_0<MomST_1 && MomST_1>MomST_2 && DeM15>0.7 ) { MomSell56M15=true; } //----------------------- Проверка условий для младшего ТФ --------------------- // ---------- Покупка -------- MomBuy56M5=false; if ( MomML_0<100 && MomML_1<100 && MomML_2<100 && MomML_0>MomML_1 && MomML_1<MomML_2 && DeM5<0.3 ) { MomBuy56M5=true; } // ---------- Продажа -------- MomSell56M5=false; if ( MomML_0>100 && MomML_1>100 && MomML_2>100 && MomML_0<MomML_1 && MomML_1>MomML_2 && DeM5>0.7 // ... и тут ... ) { MomSell56M5=true; } //============================================================================================== // Вычисление основных торговых критериев //==================================================================== if ( MomBuy56M15==true && MomBuy56M5 ==true ) return(106); // Открытие Buy по стратегии 6 //==================================================================== if ( MomSell56M15==true && MomSell56M5 ==true ) return(206); // Открытие Sell по стратегии 6 //==================================================================== 我想知道,如果结果相似,那么为什么要使用动量,因为动量很好(如他们所说),可以显示趋势耗尽的时刻(结束)?当势头突破时,价格不断上升,在每次新的势头突破时都会开仓...因此,我决定锁定的是早期的条目... 你怎么看这个问题? keekkenen 2010.06.09 08:32 #6056 你不能在测试器中使用零条,原因很简单,尽管它只是正在形成(测试器的刻度),但测试器有关于这个条的价格的完整信息,因为它(条)是一个既成事实,测试器从报价历史数据中展望未来,而不是用刻度生成的数据......向左移动一个条,考虑1,2,3的动量,而不是0,1,2和演示1,而不是0。 只使用当前的M5和乘以时期的旧价格也是有意义的。14 *PERIOD_H1/ Period() 和 14 * PERIOD_M15 / Period() techno 2010.06.09 09:18 #6057 keekkenen:你不能在测试器中使用零条,原因很简单,尽管它只是正在形成(测试器的刻度),但测试器有关于这个条的价格的完整信息,因为它(条)是一个既成事实,测试器从报价历史数据中展望未来,而不是用刻度生成的数据......向左移动一个条,考虑1,2,3的动量,而不是0,1,2和演示1,而不是0。只使用当前的M5和乘以时期的旧价格也是有意义的。14 * PERIOD_H1 / Period() 和 14 * PERIOD_M15 / Period() 为什么如果我们在测试器中打印零条的每一个收盘价,那么在每一个刻度上的价格都是不同的?在更高的时间框架上也是如此,没有可视化也是如此。那么,视觉化在哪里呢? keekkenen 2010.06.09 09:35 #6058 好吧,如果结果(动态)与使用零杆获得的结果没有很大的不同,可能就没有偷看,但最好是防止错觉...... Igor Makanu 2010.06.09 10:36 #6059 我已经绞尽脑汁了 :)- 问题就在这里。 EA在半自动模式下工作--它的输入是我的头寸输出,但我想不明白--如何让EA在我下达下一个指令之前只做一次交易,即我在图表上没有启动/开始按钮 :) 。我的init()部分很忙,而且我不能禁用我的EA--它的计算需要正确的拖网。 Artyom Trishkin 2010.06.09 10:41 #6060 keekkenen: 好吧,如果结果(动态)与使用零条获得的结果没有很大的不同,可能就没有偷看,但最好是防止错觉......。 所有的幻想都可能是幻觉,但到2008年底,所有被触发的限制的大兄弟,忠实地增加depo,不能应付缩减,由使用不安全的信号打开的头寸形成,在这里,期待已久的科利亚叔叔的电话......:) 如何可能解决这样的问题? 也许有一些方法可以减少这种滑坡?你的想法是什么? 1...599600601602603604605606607608609610611612613...1145 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
显示函数本身。
如果是void ClosePartPosBySelect(double Part),则改成
空白的ClosePartPosBySelect()。
Kim的ClosePosBySelect()函数被改变,因此它需要一个双倍类型的 传递参数,也就是Part变量
两种方式
1.在改变数值的函数中,添加一个安培号。
例如,void function( double& Part){}。
那么,当函数中的一个值被改变时,新的值将返回到调用的地方。
2.从函数的参数列表中删除该变量,因为该变量是全局定义的,它的值可以在代码的任何地方改变,而不需要把它作为一个参数传递...
第一种变体更好,因为可以有一个以上的全局声明的变量(在一个函数里面)...
我浏览了一下帖子,事实上答案已经给出了......
亲爱的专业人士,你们好。
我真的想写一个EA,可以同时开出两个卖出和买入的订单。
然后在一定数量的点数(参数lim)之后,亏损的订单将被关闭。
而当价格跌破开仓以来的最高价时,盈利的订单将被关闭。
(一种虚拟的追踪止损)。
在痛苦中,我创造了这个,但它不起作用......不起作用
请提出一些建议
那么你如何向这个函数传递一个参数呢?
这是2009年全年的情况...只有动量读数被用于输入。
在TF H1上,我们寻找动量运动突破的时刻,而在TF M5上,我们找到进入市场的确切时刻。在开仓时,我们会检查上一次开仓的时间,以免在进场信号出现时开出全部存款...
Demarker在TF M5和M15的超买/超卖区的位置证实了进入市场的时间...
...顺便说一下,没有储物柜也是积极的。
...即使我疏忽地只用Demarker进行测试,仍然得到了有趣的结果。

在某个地方是这样的。
我想知道,如果结果相似,那么为什么要使用动量,因为动量很好(如他们所说),可以显示趋势耗尽的时刻(结束)?当势头突破时,价格不断上升,在每次新的势头突破时都会开仓...因此,我决定锁定的是早期的条目...
你怎么看这个问题?
你不能在测试器中使用零条,原因很简单,尽管它只是正在形成(测试器的刻度),但测试器有关于这个条的价格的完整信息,因为它(条)是一个既成事实,测试器从报价历史数据中展望未来,而不是用刻度生成的数据......向左移动一个条,考虑1,2,3的动量,而不是0,1,2和演示1,而不是0。
只使用当前的M5和乘以时期的旧价格也是有意义的。14 *PERIOD_H1/ Period() 和 14 * PERIOD_M15 / Period()
你不能在测试器中使用零条,原因很简单,尽管它只是正在形成(测试器的刻度),但测试器有关于这个条的价格的完整信息,因为它(条)是一个既成事实,测试器从报价历史数据中展望未来,而不是用刻度生成的数据......向左移动一个条,考虑1,2,3的动量,而不是0,1,2和演示1,而不是0。
只使用当前的M5和乘以时期的旧价格也是有意义的。14 * PERIOD_H1 / Period() 和 14 * PERIOD_M15 / Period()
我已经绞尽脑汁了 :)- 问题就在这里。
EA在半自动模式下工作--它的输入是我的头寸输出,但我想不明白--如何让EA在我下达下一个指令之前只做一次交易,即我在图表上没有启动/开始按钮 :) 。我的init()部分很忙,而且我不能禁用我的EA--它的计算需要正确的拖网。
好吧,如果结果(动态)与使用零条获得的结果没有很大的不同,可能就没有偷看,但最好是防止错觉......。
如何可能解决这样的问题?
也许有一些方法可以减少这种滑坡?你的想法是什么?