[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 127

 
Martingeil:

По-моему, в этой функции не хватает времени закрытия последней прибыльной сделки.

Без этого получается что пересчитываются все убыточные сделки в истории, а не только последние.

То есть должно быть так:

                if(OrderCloseTime()>LastProfitOrderTime) {
                  if(OrderProfit()>0) {LastProfitOrderTime=TimeCurrent(); break;}
                  if(OrderProfit()<0) losses++;
                 }

Не так ли?

 
если в цикле придётся разделить на 0, то расчёты встанут? цикл не продолжиться?
 
eddy:
если в цикле придётся разделить на 0, то расчёты встанут? цикл не продолжиться?
Для исключения подобных вариантов перед формулами всегда ставлю условие (когда value в знаменателе) if(value != 0) далее формула.
 

у мня тож стоят, но чтоб исключить 0 вообще везде придётся писать мног.

так какой ответ на вопрос?

 
eddy:

у мня тож стоят, но чтоб исключить 0 вообще везде придётся писать мног.

так какой ответ на вопрос?

В журнале будет постоянно писать "Деление на 0". И действий никаких....

Что при этом происходит в самом цикле, знает только цикл..)))

Советник же работать не будет.

 
знач придётся мног писать -_-
 
а почему в функциях часто пишут Symbol() вместо NULL? например iClose(Symbol(), TF, i)
 
eddy:
а почему в функциях часто пишут Symbol() вместо NULL? например iClose(Symbol(), TF, i)
Кому как больше нравится, так и пишут. Могут написать и более конкретно - "EURUSD".
 
sergeev:
так ничего не будет. Функция Funk2 - не возвращает никакого значения. она void
а можно сделать не void? чтоб 1 из параметров возвращала, а 2му просто присваивала
 
Сегодня ночью оптимизировал советник на минутках с периодам тестирования 5 лет. Интернет не был подключен. Утром после подключения интернета повторил тест и получил другие результаты. При каждом подключении Метатрейдера обновляются все котировки или только недостающие?
Причина обращения: