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

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

---

## MakarFX — 2022-08-14 18:06

> Цитата (andpri):
> Народ  , если кто урежет эти линии  атр  , что отображались только на определенное количество баров та не на всю историю. то  буду очень благодарен .

Лови...
если"0", то вся история

е

## Frogo — 2022-08-14 19:35

Уважаемые программисты.
Доработайте пожалуйста индикатор.
1. Стрелка запаздывает на одну свечу это видно на скрине. Она должна срабатывать по закрытии свечи если пересекается уровень.
2. В индикатор добавил параметр Target0Multiply = - 0.5; с минусовым значением но он (линия) не отображается на графике ( эта линия очень нужна мне).
3. В индикатор добавил алёрт но он не работает, доработайте алёрт.
Спасибо.

## MakarFX — 2022-08-14 20:37

> Цитата (Frogo):
> Уважаемые программисты.
> Доработайте пожалуйста индикатор.
> 1. Стрелка запаздывает на одну свечу это видно на скрине. Она должна срабатывать по закрытии свечи если пересекается уровень.
> 2. В индикатор добавил параметр Target0Multiply = - 0.5; с минусовым значением но он (линия) не отображается на графике ( эта линия очень нужна мне).
> 3. В индикатор добавил алёрт но он не работает, доработайте алёрт.
> Спасибо.

1) И на скрине и тестере стрелка появляется на закрытии свечи выше уровня. 
2) Ты не только добавил Target0, но и добавил ему отсутствие значения - поэтому не видно
3) Алерт в deinit работать не будет.

P.S.  TWYENUM - должен иметь значения

## Frogo — 2022-08-14 20:49

> Цитата (MakarFX):
> 1) И на скрине и тестере стрелка появляется на закрытии свечи выше уровня.
> 2) Ты не только добавил Target0, но и добавил ему отсутствие значения - поэтому не видно
> 3) Алерт в deinit работать не будет.
>
> P.S.  TWYENUM - должен иметь значения

1. на левой части скрина свеча пробила уровень и пошла следующая свеча а стрелки нет. на правой части скрина когда закрылась вторая свеча после пробитой то на пробитой появилась стрелка.
2. 3. Я не программист. Вставляю коды из других индикаторов и смутно понимаю програмирование.
Пожалуйста если можно поправь всё.

## MakarFX — 2022-08-14 21:01

> Цитата (Frogo):
> 1. на левой части скрина свеча пробила уровень и пошла следующая свеча а стрелки нет. на правой части скрина когда закрылась вторая свеча после пробитой то на пробитой появилась стрелка.
> 2. 3. Я не программист. Вставляю коды из других индикаторов и смутно понимаю програмирование.
> Пожалуйста если можно поправь всё.

На счет запаздывания стрелки не помогу, Алерт и Target0 поправил

## A.S.V. — 2022-08-14 21:15

> Цитата (andpri):
> Народ  , если кто урежет эти линии  атр  , что отображались только на определенное количество баров та не на всю историю. то  буду очень благодарен .

> Цитата (MakarFX):
> Лови...
> если"0", то вся история
>
> е

Сделал так, чтобы при открытии нового бара, линии тоже "сдвигались" на 1 бар и отображение линий индикатора всегда равнялось указанному во входных параметрах *"Колич.баров в расчётной истории" *( если"0", то вся история).

## A.S.V. — 2022-08-14 21:40

> Цитата (Kasander):
> Прошу помочь создать индикатор из МА Симпл 200 и МА Симпл 400 индикатор который на пересечении меняет Цвет с Green на Red (только Грин как в Терминале МТ4 - не салатовый а классический с названием Green). Скрин с примером внятного визуала прилагаю если что...

Возможно этот индикатор вам подойдёт...

## Frogo — 2022-08-14 21:44

> Цитата (MakarFX):
> На счет запаздывания стрелки не помогу, Алерт и Target0 поправил

Стрелка появилась, алёрта к сожалению нет.
Но и на этом спасибо большое.

## MakarFX — 2022-08-14 21:50

> Цитата (Frogo):
> Стрелка появилась, алёрта к сожалению нет.
> Но и на этом спасибо большое.

Алерт есть, только на "0" баре не будет, т.к. стрелки еще нет

```
2022.08.14 21:50:22.121    2022.08.10 23:59:59  GBPUSD,M5: 77276 tick events (1424 bars, 78285 bar states) processed in 0:00:10.000 (total time 0:00:10.031)
2022.08.14 21:50:21.546    2022.08.10 15:40:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:21.463    2022.08.10 14:55:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:21.036    2022.08.10 10:40:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:20.891    2022.08.10 09:05:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
2022.08.14 21:50:19.524    2022.08.09 18:05:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
2022.08.14 21:50:18.824    2022.08.09 11:15:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:18.641    2022.08.09 09:25:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
2022.08.14 21:50:18.609    2022.08.09 09:05:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:18.547    2022.08.09 08:25:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:18.143    2022.08.09 03:50:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
2022.08.14 21:50:17.662    2022.08.08 21:55:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
2022.08.14 21:50:17.204    2022.08.08 16:50:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:16.585    2022.08.08 10:10:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:16.473    2022.08.08 09:00:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:16.092    2022.08.08 04:25:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:15.983    2022.08.08 03:15:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
2022.08.14 21:50:15.841    2022.08.08 01:10:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
2022.08.14 21:50:15.514    2022.08.05 19:50:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:15.178    2022.08.05 15:40:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
2022.08.14 21:50:14.926    2022.08.05 12:35:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
2022.08.14 21:50:14.706    2022.08.05 09:45:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:14.200    2022.08.05 03:10:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
2022.08.14 21:50:13.533    2022.08.04 18:25:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:13.197    2022.08.04 14:10:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
2022.08.14 21:50:13.105    2022.08.04 13:00:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:12.430    2022.08.04 03:40:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
2022.08.14 21:50:12.277    2022.08.04 01:15:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
2022.08.14 21:50:12.178    2022.08.04 00:15:00  123Pattern GBPUSD,M5: Init OK
2022.08.14 21:50:12.126    123Pattern inputs: ZigZagDepth=12; RetraceDepthMin=0.4; RetraceDepthMax=1; ShowAllLines=1; ShowAllBreaks=1; ShowTargets=1; Target0Multiply=-0.5; Target1Multiply=1.5; Target2Multiply=3; HideTransitions=1; AlertsMessage=1; AlertsSound=1; SIGNAL_BAR=1;
2022.08.14 21:50:12.126    Custom indicator 123Pattern GBPUSD,M5: loaded successfully
2022.08.14 21:50:12.094    TestGenerator: current spread 39 used

```

## Frogo — 2022-08-14 22:00

> Цитата (MakarFX):
> Алерт есть, только на "0" баре не будет, т.к. стрелки еще нет
> 
```
2022.08.14 21:50:22.121    2022.08.10 23:59:59  GBPUSD,M5: 77276 tick events (1424 bars, 78285 bar states) processed in 0:00:10.000 (total time 0:00:10.031)
> 2022.08.14 21:50:21.546    2022.08.10 15:40:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:21.463    2022.08.10 14:55:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:21.036    2022.08.10 10:40:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:20.891    2022.08.10 09:05:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
> 2022.08.14 21:50:19.524    2022.08.09 18:05:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
> 2022.08.14 21:50:18.824    2022.08.09 11:15:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:18.641    2022.08.09 09:25:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
> 2022.08.14 21:50:18.609    2022.08.09 09:05:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:18.547    2022.08.09 08:25:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:18.143    2022.08.09 03:50:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
> 2022.08.14 21:50:17.662    2022.08.08 21:55:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
> 2022.08.14 21:50:17.204    2022.08.08 16:50:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:16.585    2022.08.08 10:10:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:16.473    2022.08.08 09:00:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:16.092    2022.08.08 04:25:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:15.983    2022.08.08 03:15:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
> 2022.08.14 21:50:15.841    2022.08.08 01:10:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
> 2022.08.14 21:50:15.514    2022.08.05 19:50:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:15.178    2022.08.05 15:40:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
> 2022.08.14 21:50:14.926    2022.08.05 12:35:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
> 2022.08.14 21:50:14.706    2022.08.05 09:45:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:14.200    2022.08.05 03:10:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
> 2022.08.14 21:50:13.533    2022.08.04 18:25:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:13.197    2022.08.04 14:10:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
> 2022.08.14 21:50:13.105    2022.08.04 13:00:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:12.430    2022.08.04 03:40:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  SELL
> 2022.08.14 21:50:12.277    2022.08.04 01:15:00  123Pattern GBPUSD,M5: Alert: GBPUSD M5   123Pattern  BUY
> 2022.08.14 21:50:12.178    2022.08.04 00:15:00  123Pattern GBPUSD,M5: Init OK
> 2022.08.14 21:50:12.126    123Pattern inputs: ZigZagDepth=12; RetraceDepthMin=0.4; RetraceDepthMax=1; ShowAllLines=1; ShowAllBreaks=1; ShowTargets=1; Target0Multiply=-0.5; Target1Multiply=1.5; Target2Multiply=3; HideTransitions=1; AlertsMessage=1; AlertsSound=1; SIGNAL_BAR=1;
> 2022.08.14 21:50:12.126    Custom indicator 123Pattern GBPUSD,M5: loaded successfully
> 2022.08.14 21:50:12.094    TestGenerator: current spread 39 used
> 
```

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

## MakarFX — 2022-08-14 22:15

> Цитата (Frogo):
> А нельзя сделать алёрт в любом случае когда появляется стрелка, на каком бы баре она не появилась, хоть через два три или четыре бара.
> Нужен алёрт появления стрелки.

Поставь Var1, должен сигналить при появлении

## Frogo — 2022-08-14 22:23

> Цитата (MakarFX):
> Поставь Var1, должен сигналить при появлении

Отлично. На втором баре сработал алёрт.
Посмотрю на третьем четвёртом сработает или нет.
Спасибо большое.

## Сергей Анатольевич — 2022-08-15 12:42

> Цитата (MakarFX):
> Пробуй

Поправил
Спасибо. А можно ещё добавить Стрелку на графике вместе с Алертом.

## MakarFX — 2022-08-15 13:06

> Цитата (Сергей Анатольевич):
> Поправил
> Спасибо. А можно ещё добавить Стрелку на графике вместе с Алертом.

Лови

## mywife — 2022-08-15 13:37

пожалуйста, добавьте возможность изменения цвета?

## dato896 — 2022-08-15 16:12

здравствуйте, у меня появилось проблема с индикатором написан он под заказ, на один брокер отображается нормально на другом стрелки пропадают. даже на одном и том же брокере на реал и демо стрелки по разному показывает прикрепляю скрины. может кто поможет? дайте подсказку где искать проблему? написавший программист не решается решить проблему

## MakarFX — 2022-08-15 17:09

> Цитата (dato896):
> здравствуйте, у меня появилось проблема с индикатором написан он под заказ, на один брокер отображается нормально на другом стрелки пропадают. даже на одном и том же брокере на реал и демо стрелки по разному показывает прикрепляю скрины. может кто поможет? дайте подсказку где искать проблему? написавший программист не решается решить проблему

Без кода понять причину невозможно.

## 1_Lexa — 2022-08-15 17:27

Здраствуйте уважаемые специалисты!
Этот кусок кода показывает направление торговли, но на доллар йене трехзначной показывает только одно направление
   pos = i + 1; если здесь поставить ноль или другое значение  торгует в другом направлении.
Помогите пожалуйста подправить код

```
static datetime previousBar;
   if(previousBar!=Time)
     {
      previousBar=Time;
      ChartRedraw();
     }
   else
     {
      return;
     }

   if(iVolume(Symbol(),PERIOD_H4,0)>iVolume(Symbol(),PERIOD_H4,1))
      return;
//**********************************

   if(!BytesToRead>0)
      return;

   int pos = -1 ;
   for(int i = 0 ; i < BytesToRead - 1 ; i++)
     {
      if(!(data<Time))
         break;
      pos = i + 1;
     }

//********************************
   HideTestIndicators(true);
   double wpr= iWPR(Symbol(),0,4,0);
   double ao = iAO(Symbol(),0,0);
   HideTestIndicators(false);

   double level=NormalizeDouble(data,Digits);
   ObjectDelete("level");
   MakeLine(level);

   if(data>Open)
      Comment("BUY - ", data);
   if(data<Open)
      Comment("SELL - ", data);
     
      //+------------------------------------------------------------------+
/*string CandleStick_Analyzer()
  {
   RefreshRates();
   string CandleStick, Comment="";

 
 
 

   if(SpinningTopExists())
      Comment =" Spinning Top ";

   CandleStick =Comment;
   return (CandleStick);
  }

     
      bool SpinningTopExists()
  {
   HideTestIndicators(true);
   if(High - Low > 1.5*iATR(NULL, 0, 14, 1))
      Print("ST Condition 1 Met");
   if(MathAbs(Open - Close)*5 < High - Low)
      Print("ST Condition 2 Met");
   if(High - Low > 1.5*iATR(NULL, 0, 14, 1) && (High - Low > 30*Point) && MathAbs(Open - Close)*5 < High- Low)
      return (true);
   HideTestIndicators(false);
   return (false);
  }*/
//+------------------------------------------------------------------+
void MakeLine(double price)
  {
   string name="level";

   if(price>iOpen(Symbol(),PERIOD_M5,0))
      Comment("BUY = "+DoubleToStr(price,Digits));
   if(price<iOpen(Symbol(),PERIOD_M5,0))
      Comment("SELL= "+DoubleToStr(price,Digits));

   if(ObjectFind(name)!=-1)
     {
      ObjectMove(name,0,iTime(Symbol(),PERIOD_M1,0),price);
      return;
     }
   ObjectCreate(name,OBJ_HLINE,0,0,price);
   ObjectSet(name,OBJPROP_COLOR,clrAqua);
   ObjectSet(name,OBJPROP_STYLE,STYLE_SOLID);
   ObjectSet(name,OBJPROP_WIDTH,2);
   ObjectSet(name,OBJPROP_BACK,TRUE);
  }
  }
```

## juramz — 2022-08-15 17:54

Уважаемые программисты.
Доработайте пожалуйста советник.

## saw — 2022-08-15 19:01

> Цитата (MakarFX):
> Без кода понять причину невозможно.

он не понял про что вы!;)

---

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