Напишу советник бесплатно - страница 167

 
Yuriy Bykov #:

Нет, это другая форма записи числа 10000000000, чтобы не писать так

double minOpenPriceBuy = 10000000000;

...

понял. е  в степени
 
Yuriy Bykov #:

Нет, это другая форма записи числа 10000000000, чтобы не писать так

double minOpenPriceBuy = 10000000000;

...

Спасибо Вам большое, как хорошо быть умным! Если Вы не против я по мере тестирования стратегии могу делиться нюансами или идеями, где может что то нужно будет добавить или подкорректировать, ЕСЛИ ВАМ это интересно. Или сюда или в личку...
 
Подобные вопросы пишите лучше в этой ветке - на форуме возможностей редактирования текста сообщений больше, чем в личных сообщениях. Да и ответить будет возможность у большего количества людей.
 
Yuriy Bykov #:
Подобные вопросы пишите лучше в этой ветке - на форуме возможностей редактирования текста сообщений больше, чем в личных сообщениях. Да и ответить будет у большего количества людей.

а можно так сделать в этом советнике, что бы например такое: - советник торгует, у него есть прибыль и всегда есть текущий минус. Как только текущий минус становится меньше прибыли например в таком соотношении прибыли 150%, минуса 100% (или наглядно скажим прибыли заработано 300 валюты депозита, а минуса текущего 200 валюты депозита), то всё закрывается (и отложки все и сделки). Понятное дело для закрытия всего множества сделок нужно время, это где то минуту наверное, так вот пока всё не закроется, ничего нового естественно не должно открываться. И даже ,для страховки, после закрытия всех отложенных и текущих сделок пусть постоит сов минутку другую и ничего не открывает. Потом погнали новый "забег". Напрашивается вопрос, от какого количества заработаннной прибыли считать вот это соотношение 1:1,5 (кстати вот это отношение должно быть изменяемым в настройках), что бы закрыть всё? - не знаю, мне кажется КАК ТОЛЬКО мы получаем такое соотношение, так можно и действовать. Как Вам такое?

 

Вот пример кода, который может закрывать все открытые советником ордера.

Функция TryCloseAll() пытается закрыть все ордера, но для надежности ее нужно использовать в цикле, который будет выполняться до тех пор, пока она не вернёт True.

Пример такого цикла - в функции OnDeinit(), вызываемой при удалении советника с графика.

//+------------------------------------------------------------------+
//| Закрыть все рыночные и отложенные ордера                         |
//| на текущем символе с нужными магическими номерами                |
//+------------------------------------------------------------------+
bool TryCloseAll() {
   bool res = true;
   for(int i = OrdersTotal(); i >= 0; i--) {
      if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
         if(OrderSymbol() != Symbol()) {
            continue;
         }
         int magic = OrderMagicNumber();
         if((magic == MagicBuy || magic == MagicSell)) {
            int type = OrderType();
            int ticket = OrderTicket();
            if((type > 1)) {
               Print("Close pending order #", ticket);
               res &= OrderDelete(ticket);
               if(!res) {
                  Print ("Error closing pending order ", ticket, ": ", GetLastError());
               }
            } else {
               double price = (type == OP_BUY ? Bid : Ask);
               Print("Close market order #", ticket);
               res &= OrderClose(ticket, OrderLots(), price, 1000);
               if(!res) {
                  Print ("Error closing pending order ", ticket, ": ", GetLastError());
               }
            }
         }
      }
   }

   return res;
}
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnDeinit(const int reason) {
   bool res = false;
   Print("Start closing all orders");
   while(!res && !IsStopped()) {
      res = TryCloseAll();
   }
}
//+------------------------------------------------------------------+

Вот вам молоток, а уж где и когда им забивать гвозди, решайте сами )

Файлы:
Pending.mq4  13 kb
 
Yuriy Bykov #:

Вот пример кода, который может закрывать все открытые советником ордера.

Функция TryCloseAll() пытается закрыть все ордера, но для надежности ее нужно использовать в цикле, который будет выполняться до тех пор, пока она не вернёт True.

Пример такого цикла - в функции OnDeinit(), вызываемой при удалении советника с графика.

Вот вам молоток, а уж где и когда им забивать гвозди, решайте сами )

Спасибо

 

приветствую всех, помогите написать робота для мт5 для форекс. так как  Не могу оплатить сервис на mql5 из за запрета санкций. денежное вознаграждение скину на карту. 

 
Добрый . Нужен программист который будет продвигать и продавать индюк на MQL 5. Не рисует. Работает на всех парах . Вознаграждение проценот продажи ия ппроцент от продажи индюка.
 
Roman251117 #:
Добрый . Нужен программист который будет продвигать и продавать индюк на MQL 5. Не рисует. Работает на всех парах . Вознаграждение проценот продажиия ппроцент от продажи индюка.

Программист программирует.

Продаёт - продавец; продвигает - промоутер.

 
Anton Yakovlev:
Если у вас есть хорошая стратегия и вы готовы поделиться ею, я могу написать советник.
Привет, Антон, можешь ли ты помочь мне сделать мой советник On Balance Volume Divergence более стабильно прибыльным? Может быть, изменить некоторые вещи в коде или добавить некоторые функции и сделать его лучше, пожалуйста. Код полностью рабочий, но я не удовлетворен результатами, которые я получаю от него.