//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.05.2008 |//| Описание : Возвращает флаг закрытия последней позиции по стопу. |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) {
datetime t;
double ocp, osl;
int dg, i, j=-1, k=OrdersHistoryTotal();
if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {
if (OrderSymbol()==sy || sy=="") {
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
if (op<0 || OrderType()==op) {
if (mn<0 || OrderMagicNumber()==mn) {
if (t<OrderCloseTime()) {
t=OrderCloseTime();
j=i;
}
}
}
}
}
}
}
if (OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)) {
dg=MarketInfo(sy, MODE_DIGITS);
if (dg==0) if (StringFind(OrderSymbol(), "JPY")<0) dg=4; else dg=2;
ocp=NormalizeDouble(OrderClosePrice(), dg);
osl=NormalizeDouble(OrderStopLoss(), dg);
if (ocp==osl) return(True);
}
return(False);
}
你好!
关于测试器的问题。
在测试EA时,测试者在突破s/l后停止处理价格。我应该怎么做才能防止这种情况?如果我想让测试者在突破止损后继续测试EA,我应该怎么做?
也许你有一个脚本,而不是一个EA))),你设置的测试期是什么?
如果一切正常,请发布EA,有人会告诉你该怎么做。
也许你有一个脚本,而不是一个EA))),你设置的测试期是什么?
如果你的时间框架没有问题,请发布EA,有人会告诉你。
主要是30分钟。
最有趣的是,当我通过强制平仓绕过止损时,价格被进一步处理,图表的曲线继续被绘制。但如果我在止损点关闭同一订单(改变一下EA代码)--测试在止损点崩溃后停止......也许你应该在测试器的设置 中改变一些参数?
朋友们!有没有一个函数可以返回以点为单位的固定损失值来关闭一个订单?
我知道有一个OrderStopLoss,但这是一个损失的价格。
我知道有一个OrderStopLoss - 但它是一个亏损的价格值,但我没有找到任何东西,请帮助我
在此搜索...:)
大部分是30分钟。
最有趣的是:当我通过强制平仓绕过止损时--价格被进一步处理,图表曲线继续被绘制。但是,如果我通过止损关闭同一订单(稍微改变一下专家顾问的代码)--测试在止损崩溃后停止......也许,你应该改变测试器设置中的一些参数?
大部分是30分钟。
最有趣的是:当我通过强制平仓绕过止损时--价格被进一步处理,图表曲线继续被绘制。但是,如果我通过止损关闭同一订单(稍微改变专家顾问的代码)--测试在止损崩溃后停止......也许,你应该改变测试器设置中的一些参数?
你好
关于策略 测试器的问题: 当在日志测试器中测试时,没有结果与日志文件中的记录,在终端日志错误记录中也没有.....,在测试器中,有一个讨厌的吱吱声。顾问在于文件夹中的专家,所有的复选框都设置了100个帮助plz?
在此搜索...:)
谢谢你!!!
很可能是EA代码中的一个错误,在止损点上平仓后,它就不再开新仓了。
我想我找到了错误的原因:在订单被止损关闭后,复选框的值没有改变(即不是由EA本身决定)。我怎样才能绕过这个问题呢?
我想我找到了错误的原因:在订单关闭后,旗子的值不会因为止损而改变(也就是说,不会因为专家顾问而改变)。你如何巧妙地绕过这个问题?
在EA中,检查订单是否在停止时关闭。如果是这样,就改变你的标志值。
你可以使用Igor Kim的现成函数来确定最后的平仓是否被止损所关闭。
或者你可以自己做。在任何情况下,这可能是一个很好的例子,让你开始。
在EA中,检查订单是否在停止时关闭。如果是这样,就改变你的标志值。
你可以使用Igor Kim的现成函数来确定最后的平仓是否被止损所关闭。
或者你可以自己做。在任何情况下,这将是一个很好的例子,供你开始使用。
谢谢你!我会试一试的)