Конвертировать mq4 в mq5

  • Автор темы Автор темы ksv8028
  • Дата начала Дата начала
Уважаемые программисты прошу помощи!
Переделайте пожалуйста два индикатора из mq4 в mq5 переписать?
Заранее благодарю!
 

Вложения

Доброго дня!
Прошу по возможности перевести индикатор на mql5.
На МТ4 активно использую, теперь вот на МТ5 понадобился
 

Вложения

Привет AlexeNP, сэр, можете ли вы сделать этот осциллятор стрелками на основном графике?
с индикатором не разбирался, как он работает я даже понятия не имею... стрелки перенес на основной график
 

Вложения

Большая просьба, если возможно, переделать этот советник на mql5. Это сова для парного трейдинга, на основе корреляции. Нужно погонять в тестере. На демо тестить и оптимизировать в МТ4 очень долго. Этот код писал сам, как умел, но все работает правильно. Система прибыльная, но не без просадок конечно.. Один инструмент хеджирует другой, идея такая. Если нужно распишу подробнее.
 

Вложения

Большая просьба, если возможно, переделать этот советник на mql5. Это сова для парного трейдинга, на основе корреляции. Нужно погонять в тестере. На демо тестить и оптимизировать в МТ4 очень долго. Этот код писал сам, как умел, но все работает правильно. Система прибыльная, но не без просадок конечно.. Один инструмент хеджирует другой, идея такая. Если нужно распишу подробнее.
хорошие новости - для МТ5 есть библиотека MT4Orders
плохие новости - эксперт написан с ошибками, например при открытии позиции лот умножается на какой-то там коэффициент, а кто будет нормализовывать значение лота?
 
хорошие новости - для МТ5 есть библиотека MT4Orders
плохие новости - эксперт написан с ошибками, например при открытии позиции лот умножается на какой-то там коэффициент, а кто будет нормализовывать значение лота?
Лот умножается только в одной паре, чтоб уровнять значение профита у обоих примерно. То есть это и есть попытка нормализировать. Если выставить ТП на графике у обоих пар 200 п. скажем, то прибыль будет разная у них. От сюда и умножение на коэффициент. А дополнительные ордера, которые открываются при большем расхождении цен их лот умножается в 2 раза. Но оптимизация не помешала бы. Ошибки наверняка в коде есть, я не профи далеко. Но в целом все правильно работает. Про библиотеку MT4Orders не знаю. Можно переделать код автоматитески?
 
Последнее редактирование:
Большая просьба, если возможно, переделать этот советник на mql5. Это сова для парного трейдинга, на основе корреляции. Нужно погонять в тестере. На демо тестить и оптимизировать в МТ4 очень долго. Этот код писал сам, как умел, но все работает правильно. Система прибыльная, но не без просадок конечно.. Один инструмент хеджирует другой, идея такая. Если нужно распишу подробнее.
какой ТФ?
 
Лот умножается только в одной паре, чтоб уровнять значение профита у обоих примерно. То есть это и есть попытка нормализировать. Если выставить ТП на графике у обоих пар 200 п. скажем, то прибыль будет разная у них. От сюда и умножение на коэффициент. А дополнительные ордера, которые открываются при большем расхождении цен их лот умножается в 2 раза. Про библиотеку MT4Orders не знаю. Можно переделать код автоматитески?
не знаешь, найдешь...
но сначала поговорим за ошибки)
1) уравнивание... должно выполняться условие Lot1*PointValue1 = Lot2*PointValue2, где PointValue - цена пункта в валюте депозита соответствующего символа. Положим Lot1 у нас задан, тогда Lot2 = Lot1*PointValue1 / PointValue2
2) но, использовать полученное значение Lot2 использовать нельзя. У каждого символа есть минимальный лот, максимальный и шаг изменения лота. И окончательный лот нужно нормализовать в соответствие с этими данными
 
не знаешь, найдешь...
но сначала поговорим за ошибки)
1) уравнивание... должно выполняться условие Lot1*PointValue1 = Lot2*PointValue2, где PointValue - цена пункта в валюте депозита соответствующего символа. Положим Lot1 у нас задан, тогда Lot2 = Lot1*PointValue1 / PointValue2
2) но, использовать полученное значение Lot2 использовать нельзя. У каждого символа есть минимальный лот, максимальный и шаг изменения лота. И окончательный лот нужно нормализовать в соответствие с этими данными
Я просто подобрал значение Lot1 и тд под свой депозит, поскольку не знаю как грамотно все написать, чтоб лоты менялись автоматом. Сделал примитивно, но чтоб работало. Так же и с доливкой ордеров, тоже не знаю как правильно цикл написать. Если исправишь, буду благодарен! Смысл в том, что начальный лот при открытии второго колена умножается в 2 раза, и при открытии3-го в 4. Библиотеку нашел, но что с ней делать без понятия )) Если есть четкий мануал скинь плиз, но не уверен, что разберусь.
 
Последнее редактирование:
Я просто подобрал значение Lot1 и тд под свой депозит, поскольку не знаю как грамотно все написать, чтоб лоты менялись автоматом. Сделал примитивно, но чтоб работало. Так же и с доливкой ордеров, тоже не знаю как правильно цикл написать. Если исправишь, буду благодарен! Смысл в том, что начальный лот при открытии второго колена умножается в 2 раза, и при открытии3-го в 4. Библиотеку нашел, но что с ней делать без понятия )) Если есть четкий мануал скинь плиз, но не уверен, что разберусь.
давай еще раз я попробую объяснить... Лот не может принимать какое угодно значение. Его размер строго предопределен. Теперь смотрим что у тебя в советнике - как-то так Lot2 = 1.5*Lot1. Ты уверен, что значение Lot2 примет допустимое значение? я вот в этом не уверен, более того - с вероятностью 50% ты нарвешься на ошибку 131 ERR_INVALID_TRADE_VOLUME и то при условии, что Lot1 выставлен правильно. А это может быть совсем не так - к примеру, ты по запарке лишнюю циферку вписал и прочее... пример функции нормализующей размер лота
Код:
double NormalizeLots(string symbol,double lots)
  {
//---
   double lot_min=SymbolInfoDouble(symbol,SYMBOL_VOLUME_MIN),
          lot_max=SymbolInfoDouble(symbol,SYMBOL_VOLUME_MAX),
          lot_step=SymbolInfoDouble(symbol,SYMBOL_VOLUME_STEP);

   int step=MathMax(0,MathRound((lots-lot_min)/lot_step));

   double lot=MathMin(lot_min+step*lot_step,lot_max);
   return(lot);
//---
  }
 
давай еще раз я попробую объяснить... Лот не может принимать какое угодно значение. Его размер строго предопределен. Теперь смотрим что у тебя в советнике - как-то так Lot2 = 1.5*Lot1. Ты уверен, что значение Lot2 примет допустимое значение? я вот в этом не уверен, более того - с вероятностью 50% ты нарвешься на ошибку 131 ERR_INVALID_TRADE_VOLUME и то при условии, что Lot1 выставлен правильно. А это может быть совсем не так - к примеру, ты по запарке лишнюю циферку вписал и прочее... пример функции нормализующей размер лота
Код:
double NormalizeLots(string symbol,double lots)
  {
//---
   double lot_min=SymbolInfoDouble(symbol,SYMBOL_VOLUME_MIN),
          lot_max=SymbolInfoDouble(symbol,SYMBOL_VOLUME_MAX),
          lot_step=SymbolInfoDouble(symbol,SYMBOL_VOLUME_STEP);

   int step=MathMax(0,MathRound((lots-lot_min)/lot_step));

   double lot=MathMin(lot_min+step*lot_step,lot_max);
   return(lot);
//---
  }
Так прекрасно, если не сложно исправь пожалуйста. У меня Lot2 сначала задается во внешних параметрах в ручную, это для обеих пар, и потом в функции Ordersend в паре EURAUD умножается на 1.5. Лоты во внешних параметрах я не менял, поэтому да, могли возникнуть ошибки. Я понял, о чем ты говоришь. Вот первые ордера открылись, выглядит вот так.
 

Вложения

  • Screenshot_12.png
    Screenshot_12.png
    118,2 КБ · Просмотры: 58
Последнее редактирование:
то есть все лоты задаются вручную во внешних... я так задачу решил))
 
Всем привет!

Помогите переделать оба индикатора с 4 на 5 версию.

Индюки именные :)
 

Вложения

Уважаемые специалисты! Можно ли эти индикаторы перевести в формат mg5?
 

Вложения

Зделайте пожалста "тундру" на мт5 пожалста, лучший индюк разворота
и стрелки на пересечение. спасибо
 

Вложения

Всем привет!

Помогите переделать оба индикатора с 4 на 5 версию.

Индюки именные :)
Посмотрел я не досуге индикатор «Takbir». Там есть такое описание

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

и появился у меня вопрос…
Если я правильно понимаю, то должно быть так
00.png
Но есть ещё и такие показания индикатора

01.png
02.png

Вот и думаю, сделать согласно описания, скажут «Не соответствует оригиналу»… Сделать как есть, а зачем такой который рисует как ему вздумается, то так, а то по другому…
 
Приветствую, да основной отмечается тот что выше, после него должен быть противоположный (если к примеру был верхний, то следующий будет нижний) но если противоположный не сформировался и появился к примеру опять верхний, но ниже по уровню цены, то мы его все равно отмечаем. Я их как внеочередные выставляю

все внеочередные пунктиром отмечаются. так чтобы было видно что они хоть и имеют условия для отметки но до них не было противоположного уровня с условиями 5+5
 
Приветствую, да основной отмечается тот что выше, после него должен быть противоположный (если к примеру был верхний, то следующий будет нижний) но если противоположный не сформировался и появился к примеру опять верхний, но ниже по уровню цены, то мы его все равно отмечаем. Я их как внеочередные выставляю

все внеочередные пунктиром отмечаются. так чтобы было видно что они хоть и имеют условия для отметки но до них не было противоположного уровня с условиями 5+5
Я-то читать умею, потому и вопрос появился. А вот ты похоже больше трёх строк прочесть не осиливаешь. Зачем повторять, то с чего появился вопрос?
Повторяю вопрос:
Вот и думаю, сделать согласно описания, скажут «Не соответствует оригиналу»… Сделать как есть, а зачем такой который рисует как ему вздумается, то так, а то по другому…
или может вообще он нужен?
С Новым годом дорогой…
 
Последнее редактирование модератором:
Есть ли возможность этот индикатор сделать под МТ5 (Владиславу привет и спасибо!) )
И присоединяюсь к просьбе про Tundru
Готов продонатить
 

Вложения

Я-то читать умею, потому и вопрос появился. А вот ты похоже больше трёх строк прочесть не осиливаешь. Зачем повторять, то с чего появился вопрос?
Повторяю вопрос:

или может вообще он нужен?
С Новым годом дорогой…
Ответа я так и не дождался… Сделал как считаю нужно. Только заменил полоски типа «это такбир, а это нет» на обычный зиг-заг по такбирам.
Выглядит так:
00.png
 

Вложения

Назад
Верх