Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Я удалил вашу другую тему, поскольку она была той же самой темой, что и эта. Я скопировал комментарий WHRoeder и вставил его сюда перед удалением.
int buy_count=0;
int sell_count=0;
for(int i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS) && OrderMagicNumber()==MagicNumber && OrderSymbol()==Symbol())
{
if(OrderType()==OP_BUY)
{
buy_count++;
}
if(OrderType()==OP_SELL)
{
sell_count++;
}
}
}
Что-то в этом роде.
Я всегда веду обратный отсчет, если у меня нет особой причины не делать этого.
Хорошо, это прекрасно. Итак, что касается цикла, должен ли он быть оформлен аналогично циклу для закрытия ордера, и если да, то должна ли программа считать ордера вверх или вниз?
Итак, теперь у меня есть функция цикла как на функции закрытия ордеров, так и на функции ordersend, но он все еще не торгует самостоятельно. Хотя он все еще открывает сделки и закрывает их по заданным параметрам, как я вижу в тестере стратегий, хотя он не будет работать на нескольких графиках в живом демо.
У каждого ли советника свое магическое число?
Покажите ваши циклы, которые вы используете сейчас.
У каждого ли эксперта свое магическое число?
Покажите свои циклы, которые вы используете сейчас.
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==true) break;
if(OrderMagicNumber()==MagicNumber || OrderSymbol()==Symbol()) continue;
//--- Check for buy order
if(fastma > slowma)
{
if(OrderSend(Symbol(),OP_BUY,Lots,Ask,10,0,0,"",MagicNumber,0,Blue))
Print("Buy order opened :", OrderOpenPrice());
else
Print("Order failed to open : ", GetLastError());
return(0);
}
//--- Check for sell order
if(fastma < slowma)
{
if(OrderSend(Symbol(),OP_SELL,Lots,Bid,10,0,0,"",MagicNumber,0,Red))
Print("Order opened : ", OrderOpenPrice());
else
Print("Order failed to open : ", GetLastError());
return(0);
}
break;
}
Вот цикл ordersend
Кроме того, у меня есть MN как внешний int, поэтому я могу менять его на каждом графике, на который я помещаю советника.if(OrderMagicNumber()==MagicNumber || OrderSymbol()==Symbol()) continue;
При наличии нескольких ордеров (один советник несколько графиков, несколько советников, ручная торговля)