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

  • Автор темы Автор темы Veles-tm
  • Дата начала Дата начала

Sergan1311

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

Вложения

DomovenokBrest

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

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

Вложения

RoboMaks

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

Проверьте.

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

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

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

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

Вложения

jenzo

Местный знаток
Проверьте.

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

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

Элитный участник
А можно добавить настройку ордеров? Например: ставим 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

Местный знаток
Проверьте.
//---------------------------
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! ;)
 

guide

Новичок форума
показатели реформа

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

Вложения

bot14

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

Вложения

  • Indicators.rar
    Indicators.rar
    8,1 КБ · Просмотры: 79
  • PICT-001.png
    PICT-001.png
    57,4 КБ · Просмотры: 379

RoboMaks

Элитный участник

Вложения

  • USDJPYM15.png
    USDJPYM15.png
    51,7 КБ · Просмотры: 178
  • M-MATH v3.mq4
    M-MATH v3.mq4
    22,4 КБ · Просмотры: 69
  • USDJPYM15 (1).png
    USDJPYM15 (1).png
    51,6 КБ · Просмотры: 124
  • M-MATH v3 (1).mq4
    M-MATH v3 (1).mq4
    22,4 КБ · Просмотры: 69
Последнее редактирование:

nurfirdaus

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

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


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

Вложения

Верх