Ошибка тут:
return true;
return false;
Нужно вставлять на их место sellimit и sell.
Здравствуйте. Или мне кажется, или следующий код не работает по той логике, которой мне нужно: "если есть 2 села и нет ни одного селллимита, то функция возвращает true".
{
short sellimit;
short sell;
for(int i=0; i<OrdersTotal(); i++)
{
if(OrderSelect(OrderGetTicket(i)))
{
if(OrderGetInteger(ORDER_TYPE)==ORDER_TYPE_SELL_LIMIT) sellimit=sellimit+1;
}
}
for(int j=0; j<PositionsTotal(); j++)
{
if(PositionSelect(PositionGetTicket(j)))
{
if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_SELL) sell=sell+1;
}
}
if(count1==2&&count==0) return true;
return false;
}
А откуда взялось вот эти counts?
Владимир быстрый, как ветер ))
Здравствуйте. Или мне кажется, или следующий код не работает по той логике, которой мне нужно: "если есть 2 села и нет ни одного селллимита, то функция возвращает true".
Два момента:
1. инициализация:
short sell =0;
2. заменить:
на (+ поставить нестрогое равенство):
Ошибка тут:
return true;
return false;
Нужно вставлять на их место sellimit и sell.
Два момента:
1. инициализация:
short sell =0;
2. заменить:
на (+ поставить нестрогое равенство):
Начал исправлять, но исправил не до конца.) Это я менял имена переменных вначале функции, а заменить их в условии забыл(именно на форуме) :) Если с именами все хорошо, то функция работает корректно?
После проверки на селллимит, если он есть можно сразу выход false сделать
... даже во время проверки в первом цикле.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Здравствуйте. Или мне кажется, или следующий код не работает по той логике, которой мне нужно: "если есть 2 села и нет ни одного селллимита, то функция возвращает true".
{
short selllimit;
short sell;
for(int i=0; i<OrdersTotal(); i++)
{
if(OrderSelect(OrderGetTicket(i)))
{
if(OrderGetInteger(ORDER_TYPE)==ORDER_TYPE_SELL_LIMIT) sellimit=sellimit+1;
}
}
for(int j=0; j<PositionsTotal(); j++)
{
if(PositionSelect(PositionGetTicket(j)))
{
if(PositionGetInteger(POSITION_TYPE)==POSITION_TYPE_SELL) sell=sell+1;
}
}
if(sell==2&&selllimit==0) return true;
return false;
}