[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 159

 

Уважаемые, подскажите:

есть функция Кима "Закрытие одной позиции с максимальным положительным профитом"

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 19.02.2008                                                     |
//|  Описание : Закрытие одной позиции с максимальным положительным профитом   |
//|             в валюте депозита                                              |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любая позиция)                  |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//+----------------------------------------------------------------------------+
void ClosePosWithMaxProfitInCurrency(string sy="", int op=-1, int mn=-1) {
  double pr=0;
  int    i, k=OrdersTotal(), np=-1;

  if (sy=="0") sy=Symbol();
  for (i=k-1; i>=0; i--) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if ((OrderSymbol()==sy || sy=="") && (op<0 || OrderType()==op)) {
        if (mn<0 || OrderMagicNumber()==mn) {
          if (pr<OrderProfit()+OrderSwap()) {
            pr=OrderProfit()+OrderSwap();
            np=i;
          }
        }
      }
    }
  }
  if (np>=0) {
    if (OrderSelect(np, SELECT_BY_POS, MODE_TRADES)) {
      ClosePosBySelect();
    }
  }
}

https://forum.mql4.com/ru/38949/page2#434207

А как сделать, чтобы эта функция закрывала не одну позицию, а после закрытия одной позиции с максимальным профитом искала следующую с максимальным профитом и передавала ее на закрытие и т.д. ?

 
Sancho77:
...А как сделать, чтобы эта функция закрывала не одну позицию, а после закрытия одной позиции с максимальным профитом искала следующую с максимальным профитом и передавала ее на закрытие и т.д. ?

А вызовите ее несколько раз.
 
granit77:
А вызовите ее несколько раз.
Понял, спасибо!
 

Рябята, я понимаю, что поиск рулит и тема муссировалась дывным-давно - там пока нашел про "горячие клавиши" по данной (программный запуск скрипта) теме. Может кто еще ссылками или вариантами решения поделится по вопросу: Как программно запустить erase.bat файл каталога клиентского терминала ...\experts\files. Мне это необходимо для еженедельной его очистки с последующим заполнением, т.к. поверх прошлых данных в нем писать новые - нельзя - необходимо предварительно его подготовить. Благодарю.

 
Xaoss1990:

Вот часть кода где заключаем сделки:

Почему Вы называете закрытие сделки OrderClose() установлением стопа?

А ещё интересно узнать про переменную close? Глобальная, локальная? Хотя даже если и локальная, то всё равно косяк вылезет. Где обнуляется данная переменная? Где выставляется в единицу Я вижу.

 
wolf05632:


Речь идет "ВААБЩЕ"! Пусть длинное математическое выражение. В VBA, допустим, чтобы разбить длинную строку на две, в любом допустимом месте этой строки нужно поставить _

и оставшееся выражение можно дописывать с новой строки.

Пример:

int a = 0;

эквивалентно

int
a
=
1
;

Verstehen?

 
Перенесено:

eurodollar1981 09.09.2011 10:37
Здравствуйте! подскажите как прописать в мт4, чтобы нажатием одной клавиши покупать ордер с заранее прописанным стоплоссом и тейк профитом?
 

Здравствуйте! Подскажете как убрать глюк на графике в виде свечки за прошлый период.Она всегда рисуется впереди и портрит все индикаторы.Спасибо.

 
korsar:

Здравствуйте! Подскажете как убрать глюк на графике в виде свечки за прошлый период.Она всегда рисуется впереди и портрит все индикаторы.Спасибо.

Лично Я ничего не понял...
 
MaxZ:

Пример:

эквивалентно

Verstehen?


Ферштейн! Спасибо! Теперь осталось получить ответ на последний свой пост! И еще вопрос: как должна выглядеть временная координата OBJ_TEXT, чтобы текст был ПРАВЕЕ нулевой свечи?