# Доработка ботов (советников, индикаторов) vol. 2

Раздел: Язык программирования MQL4
Автор темы: chocolate
Создана: 2014-10-02 12:48
Ответов: 33818 | Просмотров: 6675162
Страница 1441 из 1691
Источник: https://forexsystemru.com/threads/77111/page-1441

---

## 1qaz2wsx3edc — 2022-12-06 20:21

Уважаемые ! Пропишите в индюке буфера пожалуйста на бай и селл!!!!!

## Anton0708 — 2022-12-07 05:22

Можно впихать туда медиану вместо среднего😅
Буду благодарен

## Vikt_76 — 2022-12-07 08:13

Приветствую всех. Можно ли сделать в этом индикаторе кнопку включения/выключения? Режим мтф?

## Witalyano — 2022-12-07 11:58

День добрый! Прошу сделать в индикаторе обновление на каждом баре (или выбирать). Добавление на график индикатора типа Refresh не помогает.

## Tankk — 2022-12-07 20:57

> Цитата (Vikt_76):
> Приветствую всех. Можно ли сделать в этом индикаторе кнопку включения/выключения? Режим мтф?

**i_tdtl_v2_456**

> Цитата (1qaz2wsx3edc):
> Уважаемые ! Пропишите в индюке буфера пожалуйста на бай и селл!!!!!

**Snow23**

> Цитата (sergei1234):
> добрый вечер. если не сложно, хотел бы попросить. Добавьте пожалуйста уведомления или алерт от уровней 0,3 и 0,7. заранее благодарю

**DeMarker Alerts**

## Vikt_76 — 2022-12-07 21:02

> Цитата (Tankk):
> **i_tdtl_v2_456
>
>
> Snow23
>
>
> DeMarker Alerts**

Большое спасибо

## kpll — 2022-12-07 21:45

> Цитата (Tankk):
> **i_tdtl_v2_456
>
>
> Snow23
>
>
> DeMarker Alerts**

Вместо "квадратные точки" прочитал "инвалидные точки" . Долго смотрел на рисунок и  пытался понять, почему они инвалидные и наконец-то досмотрел "квадратные". Жаль, зрение уже подводит.

## Dima666 — 2022-12-08 23:16

Добрый вечер, нужна помощь.

Cоветник выставляет разнонаправленную сетку (например с шагом 10п) на пробое границы прайс чанель.( закрытие происходит по общему тп в пипсах).

Через энное коллво пипс открывается новая сетка ( допустим на расстоянии 50п с шагом сетки 10п) и так далее.

Советник и индикатор прилагаю, советник почему-то не всегда открывается по сигналу.

Скрин также прилагаю.

## sergei1234 — 2022-12-09 00:25

огромное, просто огромное спасибоооо))))))))))

## OSS_5 — 2022-12-09 06:54

Продублирую пост (из госпиталя).
Доброго времени суток.
Нужен доктор, подправить кусочек кода.
При закрытии всех ордеров и buy и sell, ставим buy и sell начальным лотом (0.10). В данной функции выставляется только sell 0.1, а buy дальше ставит с увеличенным лотом.
[[изображение: https://forexsystemsru.com/data/attachments/444/444440-7980e1a98dc6501c8988d156be9897df.jpg]]('https://forexsystemsru.com/attachments/421-jpg.492079/')

```
//---------------------------------------------------------------------------------------------------------------
double LOT(int OT)
 {
  for (int j = OrdersHistoryTotal()-1; j >= 0; j--)
   {
    if (OrderSelect(j, SELECT_BY_POS,MODE_HISTORY))
      {
       if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic && OT==OrderType())
         {
          if (OrderProfit()<0 || OrderProfit()>0) return(NormalizeDouble(OrderLots()*K_Lot+P_Lot,DigitsLot));
          else return(Lot);       
         }
      }
   }
  return(Lot);
 }
//---------------------------------------------------------------------------------------------------------------

```

## zxxw — 2022-12-09 09:20

День добрый. помогите прикрутить звук чтобы когда советник открывал позиции звенел продолжительный звонок и подскажите где в коде меняется размер лота. Заранее благодарен

## vladradon — 2022-12-09 10:01

> Цитата (OSS_5):
> выставляется только sell 0.1, а buy дальше ставит с увеличенным лотом

Эта функция одинаково работает для бай и селл - возвращает увеличенный лот, если последний закрытый ордер данного направления был по профиту не равен 0 (**if (OrderProfit()<0 || OrderProfit()>0)**), что бывает крайне редко, и такой вариант ошибочный. Нужно либо здесь какой-то другой вариант проверки последнего ордера придумать, либо вообще не включать эту функция и обходить ее где-то в коде после закрытия всех ордеров.

## OSS_5 — 2022-12-09 11:21

> Цитата (vladradon):
> Эта функция одинаково работает для бай и селл - возвращает увеличенный лот, если последний закрытый ордер данного направления был по профиту не равен 0 (**if (OrderProfit()<0 || OrderProfit()>0)**), что бывает крайне редко, и такой вариант ошибочный. Нужно либо здесь какой-то другой вариант проверки последнего ордера придумать, либо вообще не включать эту функция и обходить ее где-то в коде после закрытия всех ордеров.

Хм, надо думать. Спасибо за подсказку.
Какой бы другой вариант сделать. 
Нужно только в этой функции делать, куда-то в код не влазить.

## vladradon — 2022-12-09 13:44

> Цитата (OSS_5):
> Какой бы другой вариант сделать.

Не совсем точно выразился - редко бывает профит 0 у закрытого ордера. А в таких алгоритмах обычно делают увеличение, если последний ордер закрылся в минус - изменить на:  
**if (OrderProfit()<0) return(NormalizeDouble(OrderLots()*K_Lot+P_Lot,DigitsLot));      **
Но там еще своп с комиссией можно учесть:
**if (OrderProfit()+OrderSwap()+OrderCommission()<0) return(NormalizeDouble(OrderLots()*K_Lot+P_Lot,DigitsLot));**
Но еще минус ордера может быть сравним с 0-м (совсем маленький минус или вообще какой-нибудь не нормализованный мусор в 5-м разраде после запятой) и тоже нет смысла рисковать с увеличенным лотом.

## OSS_5 — 2022-12-09 14:37

> Цитата (vladradon):
> **if (OrderProfit()<0) return(NormalizeDouble(OrderLots()*K_Lot+P_Lot,DigitsLot));      **

Изначально было так. 
Я добавил **(OrderProfit()>0) **чтобы следующий после закрытия ордер увеличивался, и не важно как закрылся предыдущий ордер в минус или плюс.

Теперь всё думаю, как открывать с начальным лотом ордера после того, как серия отработает. Похоже всё-таки в коде нужно разделение делать, а в этой отдельной функции никак не выходит. :unsure:

## evolernet — 2022-12-09 21:10

всем привет
посмотрите почему выходит ошибка

что в настройках надо изменить чтоб не было ошибки

## craft17411 — 2022-12-10 13:36

Всем доброго дня!! Подскажите пожалуйста кто может в индикатор поставить оповещение звуковое и тд...? Нужно для 2-х индюков.

## Incognito mode — 2022-12-10 21:26

> Цитата (evolernet):
> всем привет
> посмотрите почему выходит ошибка
>
>
> что в настройках надо изменить чтоб не было ошибки

## evolernet — 2022-12-11 04:58

> Цитата (Incognito mode):
>

лот стоит минимальный 0.01 ..он открывает несколько сделок и потом выходит это...в чем проблема?

## блондинка — 2022-12-11 05:51

> Цитата (Cryptop):
> Уважаемые программисты! Прошу в прокладке (kuchinn) добавить функцию отправки аллертов на телеграм бота.

это подделка под грааль)))

---

Следующая страница: https://forexsystemru.com/threads/77111/page-1442
