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

Раздел: Язык программирования MQL4
Автор темы: machzelet
Создана: 2010-02-26 20:00
Ответов: 12060 | Просмотров: 1842752
Страница 578 из 604
Источник: https://forexsystemru.com/threads/61956/page-578

---

## zhserg — 2014-08-24 08:17

Это не ошибка, а предупреждение. На логику работы особенно не должно повлиять.

## alexshell — 2014-08-24 08:24

> Цитата (виталий73):
> помогите, что нужно добавить в код   if (OrderType() == OP_BUY) OrderClose(OrderTicket(), OrderLots(), Bid, g_slippage_96, Blue); выдает ошибку return value of 'OrderClose' should be checked

[http://forexsystemsru.com/883006-post13315.html](http://forexsystemsru.com/883006-post13315.html)

## виталий73 — 2014-08-24 13:17

а вот эту ошыбку как исправить? 'step' - syntax error вот в этом блоке
 Globaldouble284 = MarketInfo(Symbol(), MODE_SPREAD) * Point;
   if (IsTesting() ==  TRUE) Display_Info();
   if (IsTesting() == FALSE) Display_Info();
   double step    = MarketInfo(Symbol(), MODE_LOTSTEP);
   switch step {
      case 0.01 : Тип_Лота_0_1_2 = 2; break; // 2  Тип_Лота_0_1_2
      case  0.1 : Тип_Лота_0_1_2 = 1; break; // 1  Тип_Лота_0_1_2
      case    1 : Тип_Лота_0_1_2 = 0; break; // 0  Тип_Лота_0_1_2

## zhserg — 2014-08-24 13:24

> Цитата (виталий73):
> а вот эту ошыбку как исправить? 'step' - syntax error вот в этом блоке
>  Globaldouble284 = MarketInfo(Symbol(), MODE_SPREAD) * Point;
>    if (IsTesting() ==  TRUE) Display_Info();
>    if (IsTesting() == FALSE) Display_Info();
>    double step    = MarketInfo(Symbol(), MODE_LOTSTEP);
>    switch step {
>       case 0.01 : Тип_Лота_0_1_2 = 2; break; // 2  Тип_Лота_0_1_2
>       case  0.1 : Тип_Лота_0_1_2 = 1; break; // 1  Тип_Лота_0_1_2
>       case    1 : Тип_Лота_0_1_2 = 0; break; // 0  Тип_Лота_0_1_2

Выражение оператора switch должно быть целого типа.

## виталий73 — 2014-08-24 13:35

А что дописать то?

## barabashkakvn — 2014-08-24 13:39

> Цитата (виталий73):
> А что дописать то?

```
double step = (int)MarketInfo(Symbol(), MODE_LOTSTEP);
```

## виталий73 — 2014-08-24 14:46

double AC.1=iAC(Symbol() && timeframe,1);
    double AC.2=iAC(Symbol() && timeframe,2);
    double AO.0=iAO(Symbol() && timeframe,0);
    double AO.1=iAO(Symbol() && timeframe,1);
    double AO.2=iAO(Symbol() && timeframe,2);
    double AL.1=iMA(Symbol() && timeframe, 5,3) MODE_SMMA(PRICE_MEDIAN,-3);  // зелёная линия
    double AL.2=iMA(Symbol() && timeframe, 8,5) MODE_SMMA(PRICE_MEDIAN,-5);  // красная линия
    double AL.3=iMA(Symbol() && timeframe,13,8) MODE_SMMA(PRICE_MEDIAN,-8);  // синия линия
     ПОДСКАЖИТЕ ПОЖАЛУЙСТА ВЫДАЮТСЯ ОШИБКИ ТИПА '13' - name expected .'-' - name expected.'.2' - semicolon expected.

## alexshell — 2014-08-24 14:52

> Цитата (виталий73):
> double AC.1=iAC(Symbol() && timeframe,1);
>     double AC.2=iAC(Symbol() && timeframe,2);
>     double AO.0=iAO(Symbol() && timeframe,0);
>     double AO.1=iAO(Symbol() && timeframe,1);
>     double AO.2=iAO(Symbol() && timeframe,2);
>     double AL.1=iMA(Symbol() && timeframe, 5,3) MODE_SMMA(PRICE_MEDIAN,-3);  // зелёная линия
>     double AL.2=iMA(Symbol() && timeframe, 8,5) MODE_SMMA(PRICE_MEDIAN,-5);  // красная линия
>     double AL.3=iMA(Symbol() && timeframe,13,8) MODE_SMMA(PRICE_MEDIAN,-8);  // синия линия
>      ПОДСКАЖИТЕ ПОЖАЛУЙСТА ВЫДАЮТСЯ ОШИБКИ ТИПА '13' - name expected .'-' - name expected.'.2' - semicolon expected.

Измени название на допустим AC_2. Точка в имени не приветствуется.

## barabashkakvn — 2014-08-24 14:54

> Цитата (виталий73):
> double AC.1=iAC(Symbol() && timeframe,1);
>     double AC.2=iAC(Symbol() && timeframe,2);
>     double AO.0=iAO(Symbol() && timeframe,0);
>     double AO.1=iAO(Symbol() && timeframe,1);
>     double AO.2=iAO(Symbol() && timeframe,2);
>     double AL.1=iMA(Symbol() && timeframe, 5,3) MODE_SMMA(PRICE_MEDIAN,-3);  // зелёная линия
>     double AL.2=iMA(Symbol() && timeframe, 8,5) MODE_SMMA(PRICE_MEDIAN,-5);  // красная линия
>     double AL.3=iMA(Symbol() && timeframe,13,8) MODE_SMMA(PRICE_MEDIAN,-8);  // синия линия
>      ПОДСКАЖИТЕ ПОЖАЛУЙСТА ВЫДАЮТСЯ ОШИБКИ ТИПА '13' - name expected .'-' - name expected.'.2' - semicolon expected.

Так в предупреждении ведь пишет - мол внимательнее к очень старому коду относитесь, внимательнее.

```
   double AC_1=iAC(Symbol() && timeframe,1);
   double AC_2=iAC(Symbol() && timeframe,2);
   double AO_0=iAO(Symbol() && timeframe,0);
   double AO_1=iAO(Symbol() && timeframe,1);
   double AO_2=iAO(Symbol() && timeframe,2);
   double AL_1=iMA(Symbol() && timeframe, 5,3) MODE_SMMA(PRICE_MEDIAN,-3); // зелёная линия
   double AL_2=iMA(Symbol() && timeframe, 8,5) MODE_SMMA(PRICE_MEDIAN,-5); // красная линия
   double AL_3=iMA(Symbol() && timeframe,13,8) MODE_SMMA(PRICE_MEDIAN,-8); // синия линия
```

## osa — 2014-08-24 15:03

Уважаемые программисты, посмотрите пожалуйста, 
есть ли ошибка в коде закрытия ордеров [http://forexsystemsru.com/yazyk-programmirovaniya-mql4/61956-dorabotka-botov-sovetnikov-indikatorov-577.html#post882982](http://forexsystemsru.com/yazyk-programmirovaniya-mql4/61956-dorabotka-botov-sovetnikov-indikatorov-577.html#post882982)  индюк для закрытия [здесь ](https://forexsystemsru.com/attachment.php?attachmentid=175575) Закрытие при появлении стрелок.  В тестере ордера этот код не закрывает...

[изображение: https://charts.mql5.com/5/519/eurusd-h1-bank-delta.png]

Или напишите свой код

## виталий73 — 2014-08-24 15:16

теперь выдает'iAO' - wrong parameters count.'MODE_SMMA' - function not defined	.

'MODE_SMMA' - some operator expected

## barabashkakvn — 2014-08-24 15:21

> Цитата (виталий73):
> теперь выдает'iAO' - wrong parameters count.'MODE_SMMA' - function not defined	.
>
> 'MODE_SMMA' - some operator expected

Посмотрите параметры iAO в справке MetaEditor'a

## gek — 2014-08-25 15:32

Подскажите, Step-это добавка ордеров в пунктах?
Мне нужно изменить добавку с 5п.на 10.Спасибо.

## IYG — 2014-08-25 17:17

Доброго здоровья! Вердикт  на пост #11513  дадите?

## step1 — 2014-08-26 00:51

всем привет! прошу доработать советник:
1) добавить возможность открытия первого ордера исходя из депо (ММ)
2) добавить условие открытия ордеров (коэффициент), начиная со 2–го ордера, с учетом разности между суммой лотов противоположно направленных ордеров и суммой лотов направленных  по сигналу.
3) закрытия сетки ордеров исходя из процента прироста депозита.

спасибо!

## MrGreen86 — 2014-08-26 01:19

> Цитата (step1):
> 2) добавить условие открытия ордеров (коэффициент), начиная со 2–го ордера, с учетом разности между суммой лотов противоположно направленных ордеров и суммой лотов направленных  по сигналу.

вы читаете то что пишете? :D

## gek — 2014-08-26 01:23

> Цитата (gek):
> Подскажите, Step-это добавка ордеров в пунктах?
> Мне нужно изменить добавку с 5п.на 10.Спасибо.

Никто не знает?o_o

## Mulya111 — 2014-08-26 03:00

Здравствуйте все!  Ребята, ПОМОГИТЕ в советнике EA SPARTAN BOLT поменять BUY на SELL, а SELL на BUY. Заранее спасибо тем, кто откликнется!

## ailyin — 2014-08-26 12:31

**Помогите с совой....**

Помогите плиз, сова не хочет ордера открывать. Рисунки рисует, а позы не открывает.....:please: а при компиляции и рисунки не выводит....Компил есть, но он старый...
может из за 4х знака....у меня 5....прошу помочь....

## borobor — 2014-08-26 12:43

> Цитата (ailyin):
> Помогите плиз, сова не хочет ордера открывать. Рисунки рисует, а позы не открывает.....:please: а при компиляции и рисунки не выводит....Компил есть, но он старый...
> может из за 4х знака....у меня 5....прошу помочь....

полный набор выкладывай с индюками

---

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