int time = 0; // время (разместить в глобальных переменных (до старта) - факт работы только с последним закрытым ордером//---Поиск последнего отработавшего ордера для открытия очередной позиции ---for (orderIndex = (OrdersHistoryTotal() - 1); orderIndex >= 0; orderIndex--)
{
if (!OrderSelect(orderIndex, SELECT_BY_POS, MODE_HISTORY))
{
Print("Ошибка при доступе к исторической базе (",GetLastError(),")");
continue;
}
if ((OrderSymbol() != Symbol()) || (OrderMagicNumber() != MagicNumber))
{
continue;
}
//-------------------------Принимаем в расчет только ордер, закрытый недавно-----------------------if(time<OrderCloseTime()) //(сравниваем его с хранящимся в пероеменной time)
{
time=OrderCloseTime(); //если время закрытия ордера больше - ложим его в переменнуюint lastType = OrderType();
double lastLots = OrderLots();
double lastProfit = OrderProfit() + OrderSwap();
// Print ("lastProfit = ", NormalizeDouble(lastProfit, 1));// Анализ только что закрывшегося ордераif (lastProfit >= 0.0)
{
//---Ордер закрылся с прибылью - сюда действия при выполнении этого условия
}
else
{
// Ордер закрылся с убытком - сюда действия при выполнении этого условия (дальше фигурные скобочки сами расставите).
.....
.....
.....
他们可以通过程序切换货币、时间框架或左栏。
谢谢,我在哪里可以看到它是如何工作的?
谢谢你,我在哪里可以看到它是如何工作的?
这是阿列克谢在开玩笑。MT4的帮助都在那里。
但我回答了关于从代码中使用它的问题。如果没有API,你就无法做到。
是的,窗口的描述和目的都在那里。
但我从代码中回答了使用问题。没有API,你就无法做到。
你好!请问如何在EA中打开一个订单,以便当打开一个订单的条件一旦打开时,下一次它将只在相反的条件形成时打开?
1.如何确定最后一笔交易的利润/亏损?
2.在测试器中,显示的结果是否包括点差,还是我需要从每笔交易中减去点差?
1.我向你展示我的猫头鹰中的一个代码组织的例子。
2.在考虑到价差的情况下,点击右上方策略测试 窗口中的符号标签,并阅读下拉窗口中的内容。
你如何找出今天早上5点到8点之间的最高和最低价格?
你好!请问如何在EA中打开一个订单,以便当打开一个订单的条件一旦打开,下一次它将只在相反的条件形成时打开?