// сначала выбираем нужный интервалHistorySelect(TimeStart,TimeCurrent()+10);
// перебираем ордера в интервалеfor(i=HistoryOrdersTotal()-1;i>=0;i--)
{
ord=HistoryOrderGetTicket(i);
// далее получаем (или сразу сравниваем) любые свойства ордера, типа
o_sym=HistoryOrderGetString(ord, ORDER_SYMBOL);
o_magic=HistoryOrderGetInteger(ord, ORDER_MAGIC);
...
}
HistoryPositionsTotal Возвращает количество всех закрытых позиций в истории. HistorySelect() не влияет на результат данной функции. int HistoryPositionsTotal(); Возвращаемое значение Значение типа
您不必使用 kanvas。
要使注释不会降低可视化测试仪的速度,必须确保注释的调用频率不超过 30 毫秒。
例如
如果不跳过数值很重要,也可以用打印代替注释。如果需要对任何值的输出进行更好的可视化,则最好使用 kanvas。
信息会定期更改。
例如,我想查看开盘价最低的头寸,或者想知道上一个平仓头寸的刻度。或者想知道最后一次平仓的跳动点。
你可以把所有信息都写在打印纸上,但这样不方便查看,容易遗漏。因此,我可以立即看到我的错误所在。
现在我有另一项任务。
订单(头寸)关闭的时间已被添加以进行检查。
由于所有内容都是在 MQL4 中编写的,现在正在用 MQL5 重写,因此出现的问题是如何正确和胜任地进行此检查。
简单地说,就是如何在 MQL5 中重写代码)。
现在又有一项挑战。
添加了订单(头寸)关闭的时间,以便进行检查。
由于所有内容都是在 MQL4 中编写的,而现在正在用 MQL5 重写,因此出现了如何正确、有效地进行检查的问题。
简单地说,就是如何在 MQL5 中重写代码)。
类似这样
现在又有一项挑战。
添加了订单(头寸)关闭的时间,以便进行检查。
由于所有内容都是在 MQL4 中编写的,而现在正在用 MQL5 重写,因此出现了如何正确、有效地进行检查的问题。
简单地说,就是如何在 MQL5 中重写代码)。
由于要搜索的不是订单(上一篇),而是交易,因此使用以下 代码最为方便
差不多就是这样。
我失败了( 你能根据我的代码再详细说明一下吗?
我失败了( 你能根据我的代码再详细说明一下吗?
也许最好看看 Aleksandr Slavskii 的变体。我没有使用过 MQL4,也没有使用过对冲。
或者注意这里,以防万一,还有这里。
也许最好看看 Aleksandr Slavskii 的变体。我没有使用过 MQL4,也没有使用过对冲。
或者关注这里,以防万一,还有这里。
没有更好的了。这些是 fxsaber 的常用函数。
您的变体是完全可以接受的,只是您需要将订单替换为交易。利润、佣金和掉期由交易而非订单存储。