Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 1913

Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- Форексный VPS бесплатно на 24 часа
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Не вижу здесь ошибки.
то же самое
if(TimeFrame != 0)
Не вижу здесь ошибки.
PERIOD_CURRENT это 0 - магическая константа
по идее должно быть _Period (период текущего чарта) как минимум и он всегда не 0
Не вижу здесь ошибки.
Там где взят этот кусок кода, есть ещё и входной параметр
Соответственно получается условие если 0 не равен 0
А вот если во входном параметре вместо PERIOD_CURRENT поставить любой другой период, то независимо от периода графика условие будет выполнено. И какой тогда смысл в этом условии?
Там где взят этот кусок кода, есть ещё и входной параметр
Соответственно получается условие если 0 не равен 0
А вот если во входном параметре вместо PERIOD_CURRENT поставить любой другой период, то независимо от периода графика условие будет выполнено. И какой тогда смысл в этом условии?
Смысл только в одном, чтобы лишний раз не дергать функцию ChartSetSymbolPeriod();
Смысл только в одном, чтобы лишний раз не дергать функцию ChartSetSymbolPeriod();
В принципе да. Но ведь вопрос-то был о наличии ошибки, а не о целесообразности этого условия…
Добрый день, уважаемые разработчики!
Столкнулся с необходимостью группировать ордера для работы с каждой группой отдельно (закрытие, доливка и т.д.). Вроде задача не особо сложная, но не получается ее решить. Глаз замылился и все. Никто не сталкивался с подобной проблемой? Группировать можно любым способом (глобальные переменные терминала, комменты и т.д.). Буду благодарен за помощь.
Добрый день, уважаемые разработчики!
Столкнулся с необходимостью группировать ордера для работы с каждой группой отдельно (закрытие, доливка и т.д.). Вроде задача не особо сложная, но не получается ее решить. Глаз замылился и все. Никто не сталкивался с подобной проблемой? Группировать можно любым способом (глобальные переменные терминала, комменты и т.д.). Буду благодарен за помощь.
А магик почему не подходит? Ведь в одном советнике может быть и не один магик…
А магик почему не подходит? Ведь в одном советнике может быть и не один магик…
Магик тоже подходит. Я полагаю, что у всех этих вариантов алгоритм будет почти одинаковым. Так что все равно. Главное, найти решение).
Магик
Магик тоже подходит. Я полагаю, что у всех этих вариантов алгоритм будет почти одинаковым. Так что все равно. Главное, найти решение).
Конечно решение одинаково. Определяете критерий по которому ордер относится к той или иной группе и идентифицируете его в соответствии с этим критерием…
Благодарю Вас за участие. Постановка задачи мне понятна. С реализацией забуксовал...
Пробовал с комментами. До второй группы нумерует правильно. На третьей возвращает единицу для коммента, хотя первая группа еще в рынке. Смысл такой, чтобы не плодить номера, а занимать освободившиеся. Надеюсь, понятно объяснил).
for(int a=1; a<10; a++)
{
comment="";
for(int i=0; i<OrdersTotal(); i++)
{
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if(OrderSymbol()==Symbol() && OrderMagicNumber()==magic)
{
//Print(OrderComment());
if (OrderComment()==IntegerToString(a)) continue;
else
{
comment=IntegerToString(a);
break;
}
}
}
}
if(comment!="") break;
}
if (CountOfBuy(magic)<1 && CountOfSell(magic)<1) comment="1";