if (PositionSelect(_Symbol)==1 && PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_BUY ){jj=1;} //определяет если позиция BUY if (jj==0 ){ if ( ind2[1]>ind1[1]){ // условие на покупку Print("индикатор=",ind2[1]," ",ind1[1]); mrequest.action = TRADE_ACTION_DEAL; // немедленное исполнение mrequest.price = NormalizeDouble(latest_price.ask,_Digits); // последняя цена ask mrequest.sl = NormalizeDouble(latest_price.ask - sl*_Point,_Digits); // Stop Loss mrequest.tp = NormalizeDouble(0,_Digits); // Take Profit mrequest.symbol = _Symbol; // символ mrequest.volume = lot; // количество лотов для торговли mrequest.magic = magicBUY1; // Magic Number mrequest.type = ORDER_TYPE_BUY; // ордер на покупку mrequest.type_filling = ORDER_FILLING_AON; // тип исполнения ордера - все или ничего mrequest.deviation=10; // проскальзывание от текущей цены //--- отсылаем ордер OrderSend(mrequest,mresult);
我不知道这是否是正确的问题。
有可能把调试和测试员结合起来吗?也就是说,如果我用F5启动,测试器当然不会启动。而如果我在测试器中启动exprrt,断点 就会被忽略。还是我做错了什么?
我不知道这是否是正确的问题。
有可能把调试和测试人员结合起来吗?
目前没有。
那么,只有在演示中才是实时的?在有趣的情况下如何进行调试?
一开始我对调试器很兴奋,但我又滑向了调试打印输出。没有看到其他调试技术。- 令人沮丧的是。
以提供的专家顾问MovingAverage为例进行研究,它的一切都很美。关于测试器的问题。
这个EA只在第一个tick上分析蜡烛图。 我注意到有些情况没有处理就滑落了。事实证明,一个罕见的烛台是由第一个刻度线诞生的。这是一个连接效应,是我的故障还是测试人员的故障?
显然,为了只在出生时处理一个蜡烛,即一次,最后处理的蜡烛应该被存储在一个静态变量 中?
P/S/刚开始学习语言,因此有这么多乏味的问题。
你好,我正在写一个EA,看看我是否能及时赶到冠军赛。我写了一些简单的代码,它使用了2个自定义指标,但是这些指标的值是0,所以交易没有完成。
Lunatic:
这个EA只在第一个tick上分析一个蜡烛。 我注意到有些情况没有处理就溜走了。事实证明,一个罕见的烛台是由第一个刻度线诞生的。这是一个连接效应,是我的故障还是测试人员的故障?
显然,要想只在出生时处理一个蜡烛图,即一次,最后处理的蜡烛图应该存储在一个静态变量 中?
最好是通过改变条形图的时间来跟踪新条形图的出现,之前将其存储在一个静态变量中。
例子可以在IsNewBar 和EA中的限制和检查 一文中找到。
通过改变条形图的时间,可以更好地跟踪新条形图的出现,此前已将其保存在一个静态变量中。
例子可以在IsNewBar 和EA中的限制和检查 一文中找到。
谢谢你,这很清楚。
但我不明白的是:如何对EA进行调试。很明显,被测试的不是系统,而是程序中的错误。例如,不清楚为什么程序不进入某个分支--为什么?我是否需要盖上不同的调试印章,然后在日志中寻找它们,再盖上其他印章,等待一段时间,直到程序正常工作,然后再在日志中寻找?
搜索程序错误的最佳方法是什么?
你好,我正在写一个EA,看看我是否能及时赶到冠军赛。我写了一些简单的代码,它使用了2个自定义指标,但是这些指标的值是0,所以交易没有完成。
为了调试你的代码,我已经用MA替换了自定义指标。
并纠正了将数值复制到数组中的做法。
现在有了指标值。
为了调试你的代码,我用MA替换了自定义指标。
并纠正了将数值复制到数组中的做法。
现在有了指标值。
所以都是指标的问题? 测试员给了我一个错误
2010.09.01 19:44:36 核心 1 2010.06.01 00:00:01 在'trend_v3.mq5'中阵列超出范围 (71,9)
2010.09.01 19:44:36 核心 1 2010.06.01 00:00:01 在'trend_v3_5.mq5'中阵列超出范围 (83,9)
至m_a_sim
我认为在复制指数的信息之前,检查手柄的残缺性是比较正确的。最好还能检查一下这些数据的可用性 ....