# Компиляция индикаторов и экспертов под новые билды MetaTrader 4

Раздел: Язык программирования MQL4
Автор темы: Veles-tm
Создана: 2013-07-29 19:38
Ответов: 4184 | Просмотров: 826287
Страница 160 из 210
Источник: https://forexsystemru.com/threads/72646/page-160

---

## Likedog — 2015-10-06 16:37

Спасибо, сейчас туда продублирую.

## Victor — 2015-10-08 13:18

**компиль**

> Цитата (vfp7):
> Скинь ссылку на mq4 версию, компильнем

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

## gek — 2015-10-09 00:12

> Цитата (Victor):
> Уважаемый,  компилльните   пожалуйста  и   моего   приложен.

dll  надо.

## Sergan1311 — 2015-10-14 15:27

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

## DomovenokBrest — 2015-10-15 12:06

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

Ошибки и предупреждения исправил. Проверяй.

## jenzo — 2015-10-16 20:37

Ребята скомпилируйте. Ошибки выдает

## RoboMaks — 2015-10-16 21:35

> Цитата (jenzo):
> Ребята скомпилируйте. Ошибки выдает

Проверьте.

Там в коде есть один момент - не стал его убирать

**extern int BrokerMode = 1;**  // Не стал убирать, BrokerMode = 3 - любой символ по замыслу автора

используется так  
if ((OrderSymbol() == Symbol() **|| BrokerMode == 3**) && OrderMagicNumber() == Magic) {

чёт слишком много ордеров плодит

## jenzo — 2015-10-17 07:43

> Цитата (RoboMaks):
> Проверьте.
>
> Там в коде есть один момент - не стал его убирать
>
> **extern int BrokerMode = 1;**  // Не стал убирать, BrokerMode = 3 - любой символ по замыслу автора
>
> используется так
> if ((OrderSymbol() == Symbol() **|| BrokerMode == 3**) && OrderMagicNumber() == Magic) {
>
> чёт слишком много ордеров плодит

**RoboMaks** спасибо!

А можно добавить настройку ордеров? Например: ставим 1, открывает 1 один ордер и т.д.
Да, если можно еще автолот и Trade Buy=true/false,  Trade Sell=true/false
И настройки macd вывести?

## RoboMaks — 2015-10-17 09:45

> Цитата (jenzo):
> А можно добавить настройку ордеров? Например: ставим 1, открывает 1 один ордер и т.д.
> Да, если можно еще автолот и Trade Buy=true/false,  Trade Sell=true/false
> И настройки macd вывести?

Проверьте. 
//---------------------------
extern double  Risk      = 0;    // Процент использ. от макс.возм.лотa (от депозита) на одну сделку (первую)
                                 // если 0- работать фиксированным лотом Lot
extern double  MaxLt     = 1.0;  // Максимальный допустимый лот (для первого ордера) при авторасчёте лота ( Risk>0 )                                        
extern double  Lot       = 0.01; // Фиксированный лот
//---------------------------
extern bool  Trade_Sell  = true; // Разрешение на продажи
extern int   MaxOrdSell  = 5;    // Макс. кол-во ордеров SELL
extern bool  Trade_Buy   = true; // Разрешение на покупки
extern int   MaxOrdBuy   = 5;    // Макс. кол-во ордеров BUY

extern int TakeProfit = 28;
extern int StopLoss = 0;

//===========MACD============
extern bool UseMACD       = FALSE;
extern int  timeframe     = 0;  // таймфрейм MACD
extern int  fast_period   = 14; // период быстрой средней
extern int  slow_period   = 26; // период медленной средней
extern int  signal_period = 9;  // период сигнальной линии
extern int  applied_price = PRICE_CLOSE; // тип цены 
                                         // PRICE_CLOSE (0) -Цена закрытия
                                         // PRICE_OPEN (1) -Цена открытия
                                         // PRICE_HIGH (2) -Максимальная за период цена
                                         // PRICE_LOW (3) -Минимальная за период цена
                                         // PRICE_MEDIAN (4) -Медианная цена, (high+low)/2
                                         // PRICE_TYPICAL (5) -Типичная цена, (high+low+close)/3
                                         // PRICE_WEIGHTED (6) -Взвешенная цена закрытия, (high+low+close+close)/4
extern int  mode          = MODE_MAIN;    // индекс линии индикатора 0-MODE_MAIN, 1-MODE_SIGNAL
//===========================
Что-то с этим **BrokerMode** всё-же непонятка... Он используется ещё и в условиях открытий ордеров
if (**BrokerMode != 2 && BrokerMode != 3**) tic=OrderSend(Symbol(), OP_BUY, MaxLot, Ask, G_slippage_208, price_20, price_28, "Magic = " + Magic, Magic, 0, CLR_NONE);
                  else {
                     ticket_8 = OrderSend(Symbol(), OP_BUY, MaxLot, Ask, G_slippage_208, 0, 0, "Magic = " + Magic, Magic, 0, CLR_NONE);
                     bool_60 = OrderModify(ticket_8, OrderOpenPrice(), price_20, price_28, 0, CLR_NONE);
                     if (bool_60 == FALSE) Print("Error modifying BUY order : ", GetLastError());
                  }
но конкретно каких-либо определений для него нет. Или автор что-то упустил, или его уже ковыряли.

MACD у него по умолчанию отключён, перенёс **UseMACD** наверх, к настройкам MACDа.

P.S.  Кол-во ордеров у него сделал отдельно для бай и селл. Если надо будет общее - можно доделать и так.

## jenzo — 2015-10-17 09:55

> Цитата (RoboMaks):
> Проверьте.
> //---------------------------
> extern double  Risk      = 0;    // Процент использ. от макс.возм.лотa (от депозита) на одну сделку (первую)
>                                  // если 0- работать фиксированным лотом Lot
> extern double  MaxLt     = 1.0;  // Максимальный допустимый лот (для первого ордера) при авторасчёте лота ( Risk>0 )
> extern double  Lot       = 0.01; // Фиксированный лот
> //---------------------------
> extern bool  Trade_Sell  = true; // Разрешение на продажи
> extern int   MaxOrdSell  = 5;    // Макс. кол-во ордеров SELL
> extern bool  Trade_Buy   = true; // Разрешение на покупки
> extern int   MaxOrdBuy   = 5;    // Макс. кол-во ордеров BUY
>
> extern int TakeProfit = 28;
> extern int StopLoss = 0;
>
> //===========MACD============
> extern bool UseMACD       = FALSE;
> extern int  timeframe     = 0;  // таймфрейм MACD
> extern int  fast_period   = 14; // период быстрой средней
> extern int  slow_period   = 26; // период медленной средней
> extern int  signal_period = 9;  // период сигнальной линии
> extern int  applied_price = PRICE_CLOSE; // тип цены
>                                          // PRICE_CLOSE (0) -Цена закрытия
>                                          // PRICE_OPEN (1) -Цена открытия
>                                          // PRICE_HIGH (2) -Максимальная за период цена
>                                          // PRICE_LOW (3) -Минимальная за период цена
>                                          // PRICE_MEDIAN (4) -Медианная цена, (high+low)/2
>                                          // PRICE_TYPICAL (5) -Типичная цена, (high+low+close)/3
>                                          // PRICE_WEIGHTED (6) -Взвешенная цена закрытия, (high+low+close+close)/4
> extern int  mode          = MODE_MAIN;    // индекс линии индикатора 0-MODE_MAIN, 1-MODE_SIGNAL
> //===========================
> Что-то с этим **BrokerMode** всё-же непонятка... Он используется ещё и в условиях открытий ордеров
> if (**BrokerMode != 2 && BrokerMode != 3**) tic=OrderSend(Symbol(), OP_BUY, MaxLot, Ask, G_slippage_208, price_20, price_28, "Magic = " + Magic, Magic, 0, CLR_NONE);
>                   else {
>                      ticket_8 = OrderSend(Symbol(), OP_BUY, MaxLot, Ask, G_slippage_208, 0, 0, "Magic = " + Magic, Magic, 0, CLR_NONE);
>                      bool_60 = OrderModify(ticket_8, OrderOpenPrice(), price_20, price_28, 0, CLR_NONE);
>                      if (bool_60 == FALSE) Print("Error modifying BUY order : ", GetLastError());
>                   }
> но конкретно каких-либо определений для него нет. Или автор что-то упустил, или его уже ковыряли.
>
> MACD у него по умолчанию отключён, перенёс **UseMACD** наверх, к настройкам MACDа.
>
> P.S.  Кол-во ордеров у него сделал отдельно для бай и селл. Если надо будет общее - можно доделать и так.

Спасибо огромное **Robomaks**! ;)

## vladislavian — 2015-10-17 13:36

Подлечите люди добрые!)

## DomovenokBrest — 2015-10-17 14:04

> Цитата (vladislavian):
> Подлечите люди добрые!)

Пробуй...

PS 
Сеты если можешь - скинь (только с пометкой - ТФ и знак 5-ти или 4-х)

## vladislavian — 2015-10-17 14:09

Спасибо! Обязательно если что то выйдет.

## guide — 2015-10-17 17:36

**показатели реформа**

Здравствуйте Можно ли реформировать прилагаемой показатели, потому что они больше не работают после последнего обновления платформы MetaTrader Спасибо

## bot14 — 2015-10-17 19:44

Прилагаемые показатели реформировал. После произведенных реформ все работают в МТ билд 890. 
;)

## bilen1 — 2015-10-19 14:41

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

## bot14 — 2015-10-21 21:58

> Цитата (bilen1):
> Уважаемый, компилльните пожалуйста и моего приложен.

"Компильнуть" можно исходный код, mq4. В результате получится скомпилированный ех4.

## nurfirdaus — 2015-10-24 19:41

Эй чувак,
Пожалуйста новую сборку , спасибо.

## RoboMaks — 2015-10-24 20:22

> Цитата (nurfirdaus):
> Пожалуйста новую сборку , спасибо.

Держи, чувак... :) 
 там ещё шрифт "MV Boli" нужен, у меня его нет, квадратики показывает...

P.S.  Этот со шрифтом "Arial", если надо так...  (1)

## nurfirdaus — 2015-10-24 20:45

> Цитата (RoboMaks):
> Держи, чувак... :)
>  там ещё шрифт "MV Boli" нужен, у меня его нет, квадратики показывает...
>
> P.S.  Этот со шрифтом "Arial", если надо так...  (1)

Удивительно , спасибо. Вы можете сделать это индикатор работы ?

---

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