// в стандартной версии
total=OrdersTotal();
if(total<1){
// бла бла бла ...
// в моей версии эксперта
total=OrdersTotal(); // total я оставил т.к. он используется дальше
if(NumberOfOrders(NULL,-1,-1)<1){
// бла бла бла ... ну и плюс сама функция NumberOfOrders() ниже
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает суммарный профит в валюте депозита |//| закрытых с определённой даты позиций |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| op - операция (-1 - любая позиция) |//| mn - MagicNumber (-1 - любой магик) |//| dt - Дата и время в секундах с 1970 года ( 0 - с начала истории) |//+----------------------------------------------------------------------------+doubleGetProfitFromDateInCurrency(stringsy="", intop=-1, intmn=-1, datetimedt=0){doublep=0;
inti, 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=="") && (op<0 || OrderType()==op)){if(OrderType()==OP_BUY || OrderType()==OP_SELL){if(mn<0 || OrderMagicNumber()==mn){if(dt<OrderCloseTime()){p+=OrderProfit()+OrderCommission()+OrderSwap();
}}}}}}return(p);
}
硕士。我将保留该帖子24小时--然后我将删除它!
你不需要删除它!让它留在...
Igor,首先感谢你的功能和这个分支,它们帮助了许多非专业程序员。但我想问你一个关于NumberOfOrders()函数的问题。我不能让它工作。我把它放到一个标准的MACD专家顾问中,以举例说明我如何使用它。我正在粘贴代码。
简要描述一下,那里已经改变了。
自然,这并不奏效。能否请你解释一下哪里出了问题?提前感谢。你能解释一下哪里出了问题吗?提前感谢。
两条评论。
1.我会这样做的。
2.函数NumberOfOrders()返回订单的数量 - 买入限价、买入止损、卖出限价和卖出止损类型的交易。你所修改的专家顾问并不能与订单一起工作。它以市场价格开仓,即进行买入和卖出交易。你需要使用NumberOfPositions() 函数,我将在下一篇文章中发布。NumberOfPositions()函数。
该函数返回当前开放的职位数。更准确地选择计数位置是由外部参数指定的。
哇!我以为这是一个设计。
将经过所有的头寸(包括OP_SELL和OP_BUY)。现在一切都在运作。再次感谢!GetProfitFromDateInCurrency()函数。
该函数返回自某一日期以来关闭的头寸的货币总利润。使用外部参数指定要考虑的位置的更精确选择。
HH. 附上一个测试函数GetProfitFromDateInCurrency()的脚本。
i-Profit 指标显示了不同时间段的绝对和百分比利润值,是学习如何使用这一功能的一个更实际的例子。
你好,伊戈尔。
我想说谢谢你的相关小说。 我有一些选择,我只是想澄清它们)
我也有这样一个问题。我在测试实时模式下的专家顾问 时,经常遇到错误130 - 错误的停止。我不分析它,我不明白为什么它在这种或那种情况下发生。我已经开始使用这种结构
我已经开始使用这种结构来规范止损和TP,但它并没有解决这个问题。也许你也遇到过类似的情况,告诉我如何处理,有什么好的分析方法。
澄清一下:当我试图在开盘价的+1p处设置止损时,这种情况经常发生。
遇到错误131--不正确的停止。
131- 体积不正确,体积造粒错误。这是被交易的手数的大小。
,我遇到了错误131--错误的停止。
131- 体积不正确,是体积造粒的错误。这是被交易的手数的大小。
错误的代码,不是131而是130
错误的代码,不是131,是130。
我明白了...
试着按以下方式进行正常化。
我这样做了,我没有遇到错误130。