ДЕКОМПИЛИРОВАННЫЕ СОВЕТНИКИ ФОРЕКС

Лучшие Форекс брокеры 2021:

Содержание этой статьи:

Декомпиляторы EX4 в MQ4

Доступ к рынку Форекс подарил многим людям возможность заниматься трейдерской деятельностью. На первый взгляд это выглядит как возможность легко заработать деньги.

Так ли это на самом деле?

Производит впечатление та лёгкость, с которой можно начать работать трейдером на форексе. Но это впечатление обманчиво. Движение котировок носит в значительной степени случайный характер.

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

Нужно разбираться во многих сторонах трейдерской профессии:

  1. Знание мировой экономики и политики.
  2. Владение практическими навыками трейдинга.
  3. Умение грамотно использовать методы технического и фундаментального анализа.
  4. Создание своей системы работы.
  5. Воспитание в себе нужных психологических качеств.

Необходимость совершенствования

Эта профессия требует разнообразных знаний и навыков. В частности, важно отметить, что торговля ведётся обычно в соответствии с некоторым алгоритмом, который трейдер считает наиболее для себя эффективным.

7,

Как создать или правильно выбрать из существующих та-кой метод торговли? Один из способов состоит в том, чтобы получить максимальное количество информации о том, как это делают другие трейдеры.

Это и специализированные форумы и возможность заказать работу у профессионала. Есть сайты, где объясняются тонкости работы с теми или иными алгоритмами. Наиболее часто алгоритмы предлагаются в качестве программ-экспертов (советников) для Metatrader.

Эта платформа является на настоящее время наиболее распространённой среди тех, кто торгует на форексе. Существуют две её версии: четвёртая и пятая. Metatrader 4 используется наибольшим количеством трейдеров.

Использование советников в работе трейдера

Эксперты в этой программе могут предлагаться в двух видах: mq4 и ex4. Их основное различие состоит в том, что первый из них в текстовом виде, а второй — в скомпилированном. Файл ex4 можно прочесть и разобраться в том, как он работает.

1

Скомпилированный файл является практически «чёрным ящиком». С ним можно работать, но детально разобраться в его работе практически невозможно. В то же время, понимание принципов его работы позволило бы трейдеру продвинуться на шаг вперёд в развитии своего профессионализма.

1

Как здесь быть?

1

На помощь здесь может прийти специальная программа декомпилятор. Она как раз и выполняет преобразование скомпилированной программы-эксперта в текстовую. После этого трейдер получает возможность изучить её работу и использовать это в своей деятельности.

1

Возможные трудности

Однако, на практике ситуация не является такой простой. Прежде всего, декомпилировать можно не всякий советник. В некоторых случаях значительную часть закодированного алго-ритма помещают в файл DLL.

15,

А декомпилировать такой файл — это совсем другая и более сложная история. Кроме того, названия переменных в полученном после обработки файле будут такими, что Metatrader легко сможет определить, что код был декомпилированным и откажется его выполнять.

1

Такое свойство существует, начиная с 500 билда этой торговой платформы.

1

Преимущества использования декомпилятора

Для чего может понадобиться такая программа?

1

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

1

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

Как работать с этой программой?

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

2

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

2

Предположим, программу достать удалось. Расскажем, как с ней нужно работать.
Сначала запускаем декомпилятор. На экране видим небольшое прямоугольное окно с надписью: «drop ex4». Также видим четыре строки. Три из них нужно отметить.

23

Речь идёт о строках:

  • «Smart variable names rename»;
  • «Generate mqh fo library»;
  • «Append

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

2

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

2

Выводы

Если поискать в интернете возможность скачать декомпилятор, то мы очень быстро убедимся в том, что это весьма непросто.

2

В большинстве случаев эта программа предлагается за деньги. Или возможен ещё один вариант. С файлами работает другая сторона. Это делается, разумеется, за вознаграждение.

2

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

2

Поэтому прежде, чем использовать эту программу, нужно хорошо обдумать этот вопрос.

3,1

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

Читать Декомпиляция ex4 в mq4 нужна ли?

В Данной статье, речь пойдет о декомпиляторах для мт4, декомпиляции файлов из ex4 в mq4, плюсы и минусы декомпиляции.

Дорогой друг, в мире форекс очень много программ и стратегий, которые можно скачать бесплатно для мт4 и для мт5, но тебе не дает покоя один прибыльный советник. Который якобы на твоем демо счете дает хорошую прибыль? Тогда тебе к нам.

Почему Вы попали на данную страницу:

  1. "using of decompiled source code is prohibited" — "использование декомпилированного исходного кода запрещено"
  2. Эксперт самоудаляется с папки experts
  3. Файлы ex4 удаляются
  4. Советник не виден в терминале
  5. Советник не переносится на график
  6. Свойства советников не открываются
  7. Советники перестали работать

В недавнем прошлом, компания PureBeam выпускала декомпилятор ex4 to mq4 за 799 зеленых енотов. И единицы трейдеров покупали такую программу, как правило далее — они отбивали стоимость декомпилятора за счет платной декомпиляции. Но компания MetaQuotes выпускала новые билды терминала. Декомпилятор приходилось переделывать. Появлялись новые версии декомпилятора, старые версии — свободно гуляли в интернете. Разработчики советников для форекс бились головой об стенку, осознавая, что все их разработки начнут ломать и пользоваться советнкиами на халяву.

Декомпиляция ex4 советников

процесс несложный, если у Вас есть купленный декомпилятор файлов ex4 +в mq4 . Но если его нет? Об этом мы поговорим дальше. А сейчас я расскажу плюсы и минусы декомпиляции экспертов.

  1. Вы видите открытый код советника
  2. Можете "украсть" стратегию торговли у советника
  3. "Вылечить" советник от жадности и снова скомпилировать
  1. Вы получаете открытый код абсолютно не пригодный для редактирования
  2. Все функции и переменные имеют одно название с меняющейся цифрой последовательности.
  3. "Умные" разработчики — свои лучшие идеи записывают в DLL, процесс декомпиляции ДЛЛ очень сложный. Защита с помощью DLL — самая выгодная и мощная защита на данный момент.
  4. Отчасти ВЫ можете украсть только часть стратегии.
  5. "Умные" разработчики делают стойкую защиту, и лечение от жадности в конце концов приводит к сливу депозита.
  6. Вы никогда не можете претендовать на авторство стратегии.
  7. Вас могут навсегда забанить в платежных системах за воровство и декомпиляцию советников.
  8. Вы не сможете скомпилировать советник обратно! Вам прийдется обращаться к программистам за помощью
  9. "Хороший" программист никогда не станет заниматься этой работой. (Ну разве что за 1000 % от стоимости самого эксперта?)
  10. С 500 билда терминала МТ4 — пользоваться редактировать и компилировать декомпилированный код запрещено, о чем появляется соответствующая запись в журнале Едитора: using of decompiled source code is prohibited

В 500 билде терминала MetaTrader4 разработчики пошли дальше и смогли противостоять декомпиляторам форекс. Советники, которые скомпилированы билдом 485 и выше — более не декомпилируются. Это открывает новые возможности для программистов. И благодаря этому, программисты смогут ставить полную защиту на свои эксперты. А также декомпилированные советники, ниже 485 билда более не компилируются в терминале и их использование запрещено компанией разработчиков using of decompiled source code is prohibited

Что делать, если декомпиляция невозможна?

Вы можете копировать сделки с мт4 на мт4. Если у Вас есть эксперт демка, который работает только на демке — ВЫ можете копировать его сделки на реал с копировщиком сделок. Более того Вы можете копировать сделки с реверсом, устанавливать свой лот для копирования, копировать только профитные сделки, копировать с виртуальными стопами и тейками, регулировать процесс копирования на 1 и более терминалов. Зачем платить за декомпилятор и тратить время на восстановление эксперта? Разве это не хорошая альтернатива декомпилятору forex ? Подумайте, заплатить 799 долларов за декомпилятор, или 99 — 149 $ за лучший копировщик mt4? Решать Вам.

Exp — Copylot

лучший копировшик сделок с демо счетов, Вы можете копировать как демки, так и реалы, использовать инвесторские счета.

Работать на одном терминале — когда Ваш копировщик будет копировать Ваши сделки на другие терминалы.

Богатые функциональные возможности, точное копирование, Быстрая синхронизация сделок на терминалах МТ4.

На сайте предоставлено много видеороликов по данной программе.

Убедитесь в этом сами, скачав демо версию копировщика.

И знайте — демо версия копировщик это только лишь 10 % от полной версии.

Не думайте что скачав демо версию — после декомпиляции ВЫ получите Полную FULL версию. 😉

Ведь мы же с Вами знаем — что Expforexлучший программист mt4.

Декомпилятор из ех4 в mq4 и конвертер программ из MQL4 в MQL5

Возможно машинка и проста , но тут без программиста не обойтись.
Я как то тоже пробовал разобрать один советник так там столько ошибок появилось что мне потом еще труднее стало с ним работать.
Так что утилита это только 30% работы , а все остальное должен сделать программист, и то не каждый, а тот кто знаком с MQL
И также потому нужно будет снова сесть с программистом (если он не трейдер) и пересмотреть оригинал и сравнить с новым ,
проверить функциональность и сам алгоритм ,
если там что то изменилось вы будите первыми кто заметите и скажете программисту что нужно изменить и что долго по другому быть.
Это 80-90% работы , далее уже остальные проценты идут тесты, тесты и тесты..

Хотя как по мне то лучше написать все заново и кто знает может у вас получится лучше даже .

Взлом советника и индикатора mql4

Сразу скажу: речь пойдет не о прямом взломе программы с декомпиляцией и получением доступа к исходному коду.

Я расскажу о простом способе обойти защиту, которую устанавливают на демо версии советников и индикаторов.

Много таких советников есть в маркете MQL5. Некоторых советники вы можете скачать в интернете или у кого-то купить.

Самая популярная защита у советников: привязка к реальному номеру счета и торговля без ограничений на демо.

Самый простой способ обхода защиты: запуск двух терминалов и копировщика.

В первом терминале открываем демо счет с демоверсией советника.

Во втором терминале открываем реальный счет.

Ставим копировщик сделок . (программа, которая будет копировать сделки с демо на реал)

Результат: сделки открытые на демо переносятся на реальный счет.

Если защита более хитрая и автор советника запрещает одновременный запуск двух и более терминалов, тогда делаем так:

Открываем демку и запускаем советника

Эту же демку открываем на другом физическом компьютере. (например на VPS или виртуальной машине) Подключение к одному счету с разных компьютеров разрешено.

А на другом PC запускаем реал и ставим копировщика.

Еще один способ защиты

Дано: индикатор вшит в советник. При поступление сигнала советник рисует стрелочку на графике.

Если нам интересен индикатор, то делаем так: запрещаем советнику открытие сделок. А другим советником считываем с графика информацию о сигналах.

О защите советников, скриптов и индикаторов в Маркете на сайте MQL5.

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

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

Увы, но описать публично данный метод я не могу. Думающие, в тексте выше найдут подсказки о том как это сделать.

С просьбами о взломе прошу не обращаться.

Итог: любую защиту, любого советника можно обойти. Причем абсолютно не важно как сильно он защищен от взлома.

Именно по этой причине на данном сайте нет демо версий программ.

Данная статья написана по просьбе тех, кто обращается ко мне за демо версиями советников.

Удачной вам торговли и успехов

С уважением, Лихо Сергей

Взлом советника и индикатора mql4 : 38 комментариев

Здравствуйте,Сергей.Вы занимаетесь взломом советников.?Заранее благодарю

Нет, не занимаюсь. Как обойти защиту написано выше. И это далеко не все способы

А если защита советника построена таким образом, что он запускается только в тестере? Как быть?

Такая защита есть только у демо советников из MQL5 маркета. Эти советники изначально сделаны только для теста на истории.

Спасибо за ответ.

Если советник мультивалютный, соответственно на каждую валюту свой magic.
Будет ли копировщик сделок копировать и magic?

Копировщик умеет отличать валюты. Magic использовать не обязательно.
Можно настроить копировщик и для копирования magic номеров, правда не понимаю зачем это может быт нужно.

А вашу защиту можно на вашем роботе фибо обойти и использовать его без ограничения на реальных счетах ?

Да, можно. Об этом и написано в данной статье.
Но чтоб обойти защиту советника, вам нужен сам советник. Если в MQL маркете всегда можно скачать триал версию, то в моем случае даже версию для демо нужно приобретать.

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

Да, можно.
Об этом написано в данной статье.
Но намного проще защиту «обходить».
Про взлом своего советника я писал в твиттере, а он был скомпилирован в МТ4 1060.

глупая статья, а если демо ограничено по дате тестирования?

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

А вот сделайте по длл чтобы сов мог удалится из терминала и ПК вообще, при попытке его декомпилировать или скопировать на другом счете (дублирование)?

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

Так в том то и дело: устанавливать он может для тестирования, но не в корыстных целях для взлома или декомпиляций, копирований и дублирования сделок. Это я имел ввиду исключить.

То есть вы можете это сделать если я закажу вам дополнение к советнику?
Защита от складчин и копирования любыми путями.
Например: Чтобы демо версию нельзя было использовать на 2 компьютерах одновременно, это исключает копирование сделок. При попытке дублирования сделок демо версия удаляется полностью с ПК и минуя даже корзину. Это возможно реализовать?

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

Имеет место такая ситуация… На маркете был индикатор, причем в свободном доступе. Я использовал его как одно из звеньев своей стратегии. Но в один прекрасный момент разработчик удалил этот индюк с маркета и теперь, хоть он и присутствует в составе списка индикаторов, он не работает никак. Его даже невозможно прицепить к графику. Подскажите есть ли способ решения этой проблемы?

Только обращаться в поддержку метаквотса

И вообще… можно ли как-то перенести индикатор или советник скачанный с маркета на другой комп копированием? Допустим ситуация… купленный индюк или советник и по каким-то причинам меняется комп для торговли.. Мне что его заново покупать что ли??

Именно индкатор нет.
А сместе с системой перенести можно.
Но за это метаквоты банят.

Приветствую. Подскажите каким образом работают советники часть кода которых находится у продавца на сервере? Не миф ли это? Спасибо заранее

На мой взгляд это самая лучшее что может быть в плане защиты советников для MT4.
При старте советник цепляется к серверу и постоянно находится с ним в контакте. НА сервер передается данные о состояние счета, от сервера получаются сигналы на открытие и закрытие позиций.
(Ровно так же работает терминал МТ4/5 и почти любой другой сетевой софт)
Главное, преимущество такого подхода в том, что доступ к алгоритму программу исключен

Советник ОЛ неро на 95% работает через сервер.
Это не миф)

Благодарю заответ))))) Спасибобольшое

Благодарю заответ))))) Спасибобольшое

Как обойти защиту индикатора (не советника) имеющего временные рамки по дате?

Нужно подменить дату TimeCurrent() и время открытия свечи Time[0], таким образом чтоб при обращение к этим функциям индикатор получал дату из диапазона.
Делается это экспертом наброшенным на соседний график.
Точно работает в МТ4. (Мт5 нужно проверять)

Мало что понятно конечно)). Что за эксперт и где его взять((( Проблема в том что индикатор есть только в формате ex4 я не могу залезть в исходный код

Здравствуйте, напишите свой скайп пожалуйста

Здравствуйте Сергей, прошу вашего совета, как у профессионала. Я приобрел на маркете советник по ошибке для МТ5, мне нужно было для МТ4 (данный советник у продавца есть и для МТ5 и для МТ4, но менять продавец отказался, это проблематично как он выразился), есть ли способы скопировать, перенести советник из МТ5 на МТ4 ?? За ранее благодарен.

Здравствуйте, проконсультируйте пож. как установить защиту на индикатор ?

Напишите в телеграм, подскажу

добрый , у меня советник ,перестал работать , надо переписать на новый билд , но исходный код ни где не могу найти, его как нибудь можно сделать , чтобы перепесать на новый билд

А если сов использует трал? Я про копирование с демо. Будет ли работать он при копировании?

Использую советник на МТ4 по подписке. То есть после установки система запрашивает ключ активации. Этот ключ действует пока есть подписка. Но беда в том, что и подписка имеет ограниченное время- максимум полгода. А мне этот советник нужен на неопределённо долгое время. Продать его мне не желают. Можно ли обойти подобную защиту?

Здравствуйте, у меня есть индикатор T_BO, трендовый без перерисовки, который работал с привязкой к демосчету мт-4, но сейчас счет поменялся и индикатор не работает. Подскажите как можно восстановить его работу?

Как компилировать старые MQ4 файлы под новые билды Metatrader 4

Доброго времени суток. Продолжаем решать проблемы новых билдов (574, 577 и выше) торгового терминала Metatrader 4. С новым расположением папок для форекс индикаторов, советников и т.д. мы разобрались, но всплыла еще одна проблема – в связи с изменениями в языке MQL4, некоторые старые файлы стратегий и роботов в формате MQ4 (исходный код) не компилируются новыми билдами терминала MT4.

И соответственно вы не можете применять их в торговле, так как терминал не может создать исполняемый файл с расширением EX4. Но решение этой проблемы существует.

В чем разница между файлами EX4 и MQ4 ?

Наверняка, скачав какой-либо индикатор, вы иногда обнаруживали не один файл индикатора, а два. Например Indicator.mq4 и Indicator.ex4 . Зачем нужно два файла?

Дело в том, что файл с расширением MQ4 – это исходный код. Если у вас есть такой файл, вы можете внести изменения в него, конечно же если у вас есть знания по программированию на языке MQL. Для того чтобы вы могли применять индикатор (или советник, или скрипт) непосредственно на практике, т.е. присоединять к графику, необходим файл с расширением EX4.

EX4 – это исполняемый файл.

Можно сказать, что файл MQ4 – это мука, а файл EX4 – это буханка хлеба. Терминал, как человек – муку есть не хочет, а вот хлеб скушает с удовольствием)

В комплекте с терминалом, у нас есть аналог печи – Metaeditor. С помощью метаэдитора терминал делает из MQ4 файла файл EX4.

И проблема в том, что новая “печь” (Metaeditor в последних билдах) не полностью совместима со старой “мукой” (старыми файлами MQ4). И если у вас нет файла EX4, часть старых индикаторов вы не сможете использовать в новых версиях MT4.

Кто виноват и что делать?

Решение простое и логичное – использовать старую “печь”, т.е. Metaeditor из прошлых билдов. Далее следует пошаговая инструкция для создания рабочего EX4 для новых билдов терминала, с помощью старого билда Metaeditor.

Тема: Metatrader4. защита от EX4-декомпилятора

Опытные советники, индикаторы и скрипты для системы Metatrader созданы, используя встроенный язык MQL. Тогда, код MQ4 исходного текста откомпилирован в выполнимый двоичный код EX4. Файл с расширением EX4 содержит логику программы, понятную на интерпретатор Metatrader только. Мы не будем видеть, что ничто использует обычного редактора текста. Это удобно в случае, если, если программист или торговец обеспечивают их программу для использования, но не хотят, чтобы пользователь знал подробности коммерческой стратегии
Проблема.
К сожалению, есть методы декомпилирования файлов EX4 назад к MQ4, которые позволяют видеть логику программы. Это — большая проблема для тех, кто хочет сохранить подробности их торговой стратегии конфиденциальными
Декомпилирование делает бессмысленным создать бизнес, который основан на продажах опытных советников или если их для использования. Существующие компании несут большие потери

Поделитесь приемами защиты mq4 файлов при которой не один декомпилятор не зломает Ваш продукт(ТС,советник,индикатор,скрипт)

Получено лайков: 1

  • Просмотр профиля
  • Сортировка сообщений
  • Найти все темы

Опытные советники, индикаторы и скрипты для системы Metatrader созданы, используя встроенный язык MQL. Тогда, код MQ4 исходного текста откомпилирован в выполнимый двоичный код EX4. Файл с расширением EX4 содержит логику программы, понятную на интерпретатор Metatrader только. Мы не будем видеть, что ничто использует обычного редактора текста. Это удобно в случае, если, если программист или торговец обеспечивают их программу для использования, но не хотят, чтобы пользователь знал подробности коммерческой стратегии
Проблема.
К сожалению, есть методы декомпилирования файлов EX4 назад к MQ4, которые позволяют видеть логику программы. Это — большая проблема для тех, кто хочет сохранить подробности их торговой стратегии конфиденциальными
Декомпилирование делает бессмысленным создать бизнес, который основан на продажах опытных советников или если их для использования. Существующие компании несут большие потери

Поделитесь приемами защиты mq4 файлов при которой не один декомпилятор не зломает Ваш продукт(ТС,советник,индикатор,скрипт)

ДЕКОМПИЛИРОВАННЫЕ СОВЕТНИКИ ФОРЕКС

Completing the CAPTCHA proves you are a human and gives you temporary access to the web property.

What can I do to prevent this in the future?

If you are on a personal connection, like at home, you can run an anti-virus scan on your device to make sure it is not infected with malware.

If you are at an office or shared network, you can ask the network administrator to run a scan across the network looking for misconfigured or infected devices.

Another way to prevent getting this page in the future is to use Privacy Pass. You may need to download version 2.0 now from the Chrome Web Store.

Честные Форекс брокеры:

Cloudflare Ray ID: 679b8eb87ecd4dd0 • Your IP : 46.175.165.20 • Performance & security by Cloudflare

Декомпиляция советников. За и Против!

Всем привет! Вижу здесь не первый раз уже об авторских правах и о декомпиляции заговорили. Хочу высказать своё мнение. Во-первых: купив игрушку, я вправе оторвать ей колесо. Во-вторых: если я ломаю или обращаюсь с прозьбой о взломе этой игрушки , которую сам лично покупал за 1.500$, значит на это есть веская причина. Хотел бы я посмотреть на предъявителя авторских прав, который впарил данную МТС за выше указаную сумму и при торговле эта МТС сливает с моего депо ещё 14.000$. Кто мне будет возмещать убытки? Не предъявитель ли? Поэтому вопрос спорный — кто, кому и что будет предъявлять, да и стоит ли предъявлять вообще. С уважением.

alex72

Новичок
  • 11.04.2009
  • #2

Ответ: Обмен: советники, МТС, индикаторы

Да, ради Бога, отрывайте. только потом к производителю какие притензии .

Надежные Форекс площадки:

Такая веская, что когда вы покупали её за 1,5к $, в голову не приходило её ломать. . или вы Робин Гуд, который скупает не дешёвые "игрушки" для взлома и раздаёт их потом "бедным" .

Kupec

Интересующийся
  • 12.04.2009
  • #3

Ответ: Обмен: советники, МТС, индикаторы

Вот видите, какая дискуссия пошла. Ппедъявить могут только за плагиат, если я вскрыл ТС, изменил, допустим входные параметры и продаю её под своей маркой, тогда — бесспорно, я извлекаю материальную выгоду, а автор несёт значительные убытки и меня подтянут. И ещё — вы, возможно, лучше меня знаете, что ЛЮБАЯ МТС с прошествием не определённого промежутка времени, приходит в негодность, такова особенность рынка. И если я вскрыл систему, подкорректировал её и продолжаю пользоваться или даже раздаю (за то, что я Робин Гуд, мне тем более никто не предъявит, т.к. я приобрёл этот товар и не утверждаю своего авторства) и не извлекаю из этого прибыли, а автор не несет значительные убытки, т.к. ЕГО МТС всё ещё продолжает профитно работать, хоть и с изменёнными параметрами. О последнем он (автор) может никогда и не узнает, но данные обстоятельства явно поднимут рейтинг его брэнда среди определённой аудитории. С уважением.

alex72

Новичок
  • 12.04.2009
  • #4

Ответ: Обмен: советники, МТС, индикаторы

Вы о чём пишите . перечитайте. мрак. да, что бы внести хоть какоето изменение в продукт, вам надо просить разрешение на это у производителя. АфАнАрЕтЬ . с начала темы почитайте. а не с последней страницы. Робин Гуд. ёлки-палки . были здесь уже и Робины. и Гуды.

Aisller

Главный модератор
  • 12.04.2009
  • #5

Kupec

Интересующийся
  • 15.04.2009
  • #6

Ответ: Декомпиляция советников. За и Против!

Повелись значит. Просто не нравится мне, да и вряд ли кому понравится, когда половину УК РФ выкладывают с угрозами в чей то адрес — весь надо выкладывать.

Kupec

Интересующийся
  • 18.04.2009
  • #7

Ответ: Декомпиляция советников. За и Против!

Да и вообще считаю, что автор, который разбирается не только в програмировании, но и в рынке и понимающий тот факт, что рынок изменчив, в шапке советника делает такую запись:
ДЛЯ НЕКОММЕРЧЕСКОГО ИСПОЛЬЗОВАНИЯ, ПУБЛИКАЦИЯ РАЗРЕШЕНА ТОЛЬКО С |
//| УКАЗАНИЕМ ПЕРВОИСТОЧНИКА (XXXXXXXX) |
//| И ИМЕНИ АВТОРА (Cxxxxx_Fxxxx [XX]) |
//| РЕДАКТИРОВАНИЕ ИСХОДНОГО КОДА РАЗРЕШАЕТСЯ ТОЛЬКО ПРИ УСЛОВИИ |
//| СОХРАНЕНИЯ ДАННОГО ТЕКСТА, АДРЕСОВ И ССЫЛОК. ПРОДАЖА, ИНДИКАТОРА, |
//| ОТДЕЛЬНЫХ ЧАСТЕЙ ИСХОДНОГО КОДА, ГРАФИКОВ, ИМ ПОСТРОЕННЫХ ЗАПРЕЩЕНА |
//| АВТОР НЕ НЕСЁТ ОТВЕТСТВЕННОСТИ ЗА ВОЗМОЖНЫЕ УБЫТКИ, ПОЛУЧЕННЫЕ |
//| В РЕЗУЛЬТАТЕ РАБОТЫ ИНДИКАТОРА
А те "авторы", которые предъявляют претензии за изменение исходного кода — вымогатели и шарлатаны! И зарабатывают они не трейдингом, а продажей своих липовых "граалей" и вымогательством ещё. И может ли такой "автор", который не торгует на рынке, написать толкового советника?

Aisller

Главный модератор
  • 18.04.2009
  • #8

Советники для малых депозитов. Что такое? Как выбрать? Зачем их использовать?

Ответ: Декомпиляция советников. За и Против!

Kupec

Интересующийся
  • 19.04.2009
  • #9

Ответ: Декомпиляция советников. За и Против!

Скорее ситуацию я оцениваю со стороны реальности и здравого смысла.

Aisller

Главный модератор
  • 20.04.2009
  • #10

Ответ: Декомпиляция советников. За и Против!

Смысл продавать, потому что каждый ценит свое личное время и силы. Если Вы конечно альтруист,э то нет вопросов.

Почему то Вы также силы еще тратите на эту ветку.

Kupec

Интересующийся
  • 21.04.2009
  • #11

Ответ: Декомпиляция советников. За и Против!

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

Aisller

Главный модератор
  • 22.04.2009
  • #12

Ответ: Декомпиляция советников. За и Против!

Тут я не понял, мы разговариваем про роботов по-моему. Робот у каждого будет работать одинаково, от личностных факторов зависеть не будет.

Все Форекс Советники Сливают Деньги! И Ваш Торговый Робот НЕ ИСКЛЮЧЕНИЕ!

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

Кстати, принцип декомпиляции, иногда просто убивает дальнешую разработку. Кто-то пишет, продает, с последующим периодическим обновлением и дополнением, а получает.

Kupec

Интересующийся
  • 22.04.2009
  • #13

Ответ: Декомпиляция советников. За и Против!

Aisller

Главный модератор
  • 22.04.2009
  • #14

Ответ: Декомпиляция советников. За и Против!

Kupec

Интересующийся
  • 22.04.2009
  • #15

Ответ: Декомпиляция советников. За и Против!

Aisller

Главный модератор
  • 22.04.2009
  • #16

Ответ: Декомпиляция советников. За и Против!

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

forexstepltd

Интересующийся
  • 05.05.2009
  • #17

Ответ: Декомпиляция советников. За и Против!

Мда начинаю подозревать что не зря на данный форум пришел, очень даже интересна ваша позиция Купец, по вашему декомпиляция это как раздача белого хлеба хоть платно хоть бесплатно, я просто раньше сам продавал свои системы, и как правильно сказал Айслер вы просто сами не писали стратегии, у автора всяка идея оригинальна минимум для него максимум для всех, он подводит ее к логическому объяснению и обкладывает кодом, если вы не программер вам не понять что такое грамотно обложить кодом идею, на это уходят месяцы поверьте, и когда какой нибудь простите засранец во первых кричит что это его система, и с пеной у рта доказывает это причем не вооруженным глазом видно (а автору в 90% случаев видно) что система была декомпильнута и авторство переписано. Либо раздает бесплатно это уж поверьте не менее обидно, вы говорите брэнд автора протаскивает не угадали, потому как все начинают юзать декомпильнутую версию, и автор мягко говоря в пролете, и самое смешное это когда к вам как к автору системы какой бы то не было обращается товарищ со словами купил где то там вашу систему как ее настроить.

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

Стыдно вам должно быть вообще за подобные мысли, почему компания майкрософт например ловит пиратов (а декомпиляция и дальнейшее распространение в любой форме ничто иное как пиратство) и штрафует на кругленькие суммы, а никто не думал что данной компании тоже обидно у них конечно именно чепловека-ресурсов затрачено больше но суть остается той же!

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

Защищайтесь, господа разработчики!

Вопросы защиты своей интеллектуальной собственности все еще остаются большой проблемой. В статье описаны основные принципы защиты разработок на MQL4, используя которые можно если не совсем побороть воровство результатов многодневного труда разработчика злоумышленником, то, по крайней мере, настолько усложнить вору его «труд», чтобы ему просто не захотелось заниматься этим.

Введение

Когда я только начинал знакомиться с MQL, через розовые очки начинающего MQL-программиста мне виделась «приятная во всех отношениях» картина: мне толково рассказывают, как надо торговать. Я не менее толково пишу соответствующую программу, после этого каждый получивший ее себе для работы с первой, заработанной с ее помощью прибыли, перечисляет мне часть своего первого заработка как благодарность за качественно написанный продукт.

Начинающий трейдер, заработавший первый раз 5 баксов на первом депозите в 20$, восторженно перечисляет мне 2$, а какой-нибудь зубр от торговли, в очередной раз сняв 2К, благодарит аж на целых 200$. Все выглядело вполне честно: я делаю работу, которую не может сделать трейдер-непрограммист, который с ее помощью зарабатывает больше\чаще\легче\постоянее, чем без нее. Вместе мы сработали успешно и вместе получили отличный финансовый результат, который можно разделить по справедливости. Я даже придумал для этого специальные условия распространения — FairWare.

Каково же было мое удивление, когда, несмотря на достаточно приличное число скачиваний моих первых инструментов и постоянные вопросы-консультации по ним, я за год получил всего один платеж на 3$, в котором человек явно сослался на мои условия FairWare. В общем, с честностью неизвестного мне качальщика и пользователя моих продуктов обнаружились явные проблемы, и я решил установить хотя бы какую-то минимальную планку оплаты за использование моих инструментов на реальных счетах.

Для этого пришлось вставить в них защиту и перейти на принципы Shareware. По мере «взросления» моих инструментов все более взрослыми становились и пожелания к их защите, и на сегодняшний день у меня накопилось несколько проверенных способов, которыми я решил поделится с собратьями по MQL-кодингу. Все мы в той или иной степени проходим описанный мною в начале этой статьи путь, и собранная в едином месте информация по этой проблеме наверняка многим очень сильно облегчит «защитные страдания».

Итак, приступим: от простого к сложному.

Защита строковых констант

Первое, что хочется защитить, — это свое авторство. Не только для того чтобы погордиться и похвастаться, что это я, мол, такой крутой программер написал такую вещь, но еще и для того, чтобы пользователи имели возможность обратной связи с автором-разработчиком. Как гласит закон Мэрфи, «всякая найденная вами последняя ошибка на самом деле является предпоследней», и вполне вероятно, что не вы наткнетесь на нее при тестировании, а другой пользователь обнаружит то, что проскользнуло мимо вас. В этом случае надо сделать так чтобы текст строки, которую выводит ваш эксперт с вашим e-mail или адресом сайта, остался неизменным. Возьмем простейший код:

Все честно, открыто. Сброс скрипта выводит ваш комментарий. Однако заглянув вовнутрь файла ex4 мы видим все тексты в открытом виде.

Любой HEX-редактор позволит без труда заменить видимые тексты на какие-то свои, и модифицированный скрипт будет выдавать уже совсем не ваш копирайт.

Теперь давайте задумаемся: что такое текстовая строка? Это последовательность сцепленных друг с другом символов. Кто мешает написать нам такую операцию «посимвольно»?! Однако прежде чем делать это, подготовим сборщик закодированных строк. Вот его текст:

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

Чтобы понять, как это сработает, давайте посмотрим на исходник с закодированной строкой.

Как мы видим, сначала объявляем строковый массив из всех возможных 256 символов основной таблицы и заполняем каждый его элемент соответствующим символом. Затем вставляем вместо исходной строки тот закодированный текст с комментарием, который мы скопировали из лога на закладке Эксперты окна Терминал, компилируем и смотрим результат.

В результате содержимое оказалось зашифрованным, и мы уже нигде не видим нашей закодированной строки. Ведь ее уже нет — вместо нее есть набор команд, которые ее собирают. Оставшиеся незашифрованными строки — это константы из #property copyright и #property link — их, к сожалению, так закодировать нельзя, поскольку они задаются именно строками, и там никакие коды сборки недопустимы.

Вот так, теперь каждую строку, которую мы хотим защитить от возможного изменения HEX-редактором, можно закодировать таким образом. Для этого нужно только с помощью скрипта Protect-002.mq4 получить ее зашифрованный вид. При использовании такой сборки нужно иметь в виду, что такая операция сцепления символов занимает определенное время. Поэтому нельзя такие конструкции напрямую вставлять в тело эксперта, чтобы не дергать их по сто раз на каждом тике. Достаточно объявить нужные строковые переменные и проинитить их один раз такой закодированной сборкой при ините индикатора или эксперта и в дальнейшем пользоваться уже этими переменными.

Защита от несанкционированного использования

Ну вот, свое авторство мы защитили и подошли к другой проблеме. Написанный вами советник может быть кем то скопирован без вашего ведома (например, когда вы отлучились от компьютера в торговом зале ДЦ), и в дальнейшем он начинает свою жизнь без вашего ведома. Если вы собирались пользоваться им только лично для себя или продавать его, такая «утечка» будет, конечно же, не в ваших интересах.

Механизмов защиты от несанкционированного использования существует достаточно много: от простых генераторов серийных номеров, до защит с использованием онлайн сервисов и\или электронных ключей защиты. Последний способ — самый надежный, но одновременно и самый трудоемкий. Однако у терминала MetaTrader есть определенная, только ему присущая, специфика, которая вместе со спецификой самого объекта защиты позволяет использовать более простой, но, тем не менее, надежный способ.

Реально нужно сделать так, чтобы копия вашего советника или индикатора работала только у того, кому вы ее передали или продали. Для однозначного определения владельца у нас есть совершенно уникальная для каждого пользователя вещь: номер его рабочего счета. А в паре с именем торгового сервера он вообще становится уникальным «электронным паспортом» владельца эксперта.

Вот пример простейшего кода, реализующего эту схему защиты:

Здесь мы воспользовались нашим предыдущим способом скрытия номера счета и названия торгового сервера в виде зашифрованных строк и можем быть относительно уверены, что ваш ex4 нельзя будет «поправить» так, чтобы он работал на других счетах и серверах.

Вопрос организации такой защиты (каждый раз пересобирать эксперта под каждого разрешенного клиента или придумать какую-то универсальную схему защиты с использованием механизма закодированных строк) выходит за рамки этой статьи. Да и нельзя открыто обсуждать логику работы таких универсальных защит. Ведь знакомиться с ней будут не только разработчики, но и взломщики — ну а зачем нам облегчать им работу по взлому наших программ?

Защита по времени

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

Вот текст скрипта с этим механизмом защиты.

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

Советник Samurai Bot V2. Forex Robot Поставил и Забыл

Защита от декомпиляции

К сожалению, все эти способы успешно работают только тогда, когда взломщик не имеет доступа к исходному коду эксперта. Однако, как говаривал небезызвестный дядя Степан из кинофильма «Формула любви»: что один построил — другой завсегда поломать может. В сети гуляет утилита для декомпиляции ex4-файлов. Ее авторы даже снабдили ее собственной защитой и продают ее.

Но дядя Степан был прав — и их утилиту тоже взломали и теперь каждый, кто ухитрился ее раздобыть, может декомпилировать вашего эксперта и получить его исходный код. В этот декомпилированный код можно внести нужные правки (например, просто выбросить блок анализа дат, счетов и серверов) и, перекомпилировав его, получить полностью беззащитный вариант вашего советника.

Разработчики компилятора MQL4 как могут борются с этой проблемой. Детали этой борьбы, естественно, наружу никогда не будут вынесены. Но, к сожалению, зачастую исходник все таки можно восстановить. Правда текст его будет несколько неудобочитаем: все идентификаторы вместо осмысленных имен будут называться механически созданными именами. Это, конечно же, сильно затрудняет процедуру разбора и восстановления алгоритма работы. В больших по объему файлах, со множеством функций, это может стать практически нерешаемой задачей. Однако когда эксперт небольшой, его можно восстановить практически до исходного состояния.

И здесь на первое место выходит искусство программиста. Задача разработчика системы защиты состоит в том, чтобы зная, в каком виде декомпилятором будет восстановлен исходный текст, написать его так, чтобы возможность нахождения и отключения защиты была для взломщика максимально затруднена. Эта часть статьи конечно уже не будет подробно излагаться — методы такой защиты вам придется придумывать самим.

Самые общие рекомендации — разброс кода защиты по всему модулю. Взломщика нужно умотать работой по анализу вашего кода так, чтобы ему не захотелось возиться со взломом. Значения контрольных переменных нужно собирать в разных местах исходного кода, причем, чем неожиданнее место, тем труднее будет догадаться, что это кусочек защитного кода.

Например, сборку даты окончания можно разбить на два оператора: год задать в самом начале эксперта, а месяц, день и время — дописывать по ходу вычислений торговых сигналов. Сам анализ нарушений тоже можно сделать в одном месте кода, а действия по его результату (досрочный выход или ограничение функциональности) — в другом.

Существующий декомпилятор ex4-файлов не умеет восстанавливать имена переменных, но имена функций он все-таки восстанавливает. Точнее, они, в отличие от имен переменных, просто есть в ex4-файле, откуда и выбираются декомпилятором. Поэтому, если вы используете функцию IsDemoMode(), то тем самым вы даете прямое указание, где искать отключалку вашей защиты.

Если мы немного перепишем наш скрипт с проверкой демо-периода по дате вот так «неправильно»:

то декомпилятор выдаст нам вот такой текст:

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

Форекс советник Predator — обзор нового торгового робота Хищник на Forex

MQLEnigma — кодировщик MQ4 текстов

Для того чтобы бороться с существующим декомпилятором, нам придется научиться заменять имена используемых функций. Сделать это средствами MQL4 практически невозможно (ну разве что вы сами контекстной заменой замените нормальные названия на откровенную белиберду). Поэтому мне пришлось написать программу-кодировщик на языке VB.NET.

Почему на нем? Просто потому, что последние несколько лет я на основной работе очень интенсивно программирую на VBA и VB.NET, поэтому на нем я смог это сделать максимально быстро и комфортно. К тому же сборка производилась в Express редакции Visual Studio, на которую не нужно приобретать лицензию.

Единственное неудобство для будущих пользователей этой программы — необходимость иметь установленным в системе .NET FrameWork версии 3.5. Но он, несмотря на свой приличный объем, может быть уже установлен на современных машинках с современным софтом, который зачастую пишется на .NET и устанавливает его при своей инсталляции. Если в вашей системе его нет, вы можете загрузить его здесь и установить самостоятельно.

MQLEnigma — это консольное приложение. Ему передается один обязательный параметр — имя файла для кодирования. После этого с текстом производятся следующие манипуляции:

Вставляются все include-файлы. Если у вас есть глобальные переменные, которые используются в разных файлах в других экспертах, их нужно собрать в один общий, чтобы замена коснулась только сборки одного этого конкретного эксперта, а другие — продолжали использовать включаемый файл с незашифрованными именами.

Из полученного общего текста вырезаются все комментарии (чтобы не нарваться на какой-нибудь // int i=0;).

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

Из блока внешних текстов удаляются все описания импортируемых функций. Их имена заданы снаружи и кодировать их нельзя.

В обоих блоках текстов (внутреннем и внешнем) находятся описания стандартных типов int, string, . из них удаляются инициализации переменных и размерности массивов.

В конструкциях define удаляется ключевое слово define и назначение параметра так, чтобы осталось только определяемое имя. Также удаляются зарезервированные слова (чтобы вы не заменили случайно название цвета Magenta на какой-то мусор).

В результате всех обработок остаются только имена переменных, внутренних функций и объявленных констант. Эти имена собираются в общий список, из него удаляются дубли (описание int i=0; может встретиться внутри нескольких функций). По ходу создаются «мусорные» имена переменных для замен и определяются длины найденных идентификаторов, чтобы выполнять замены начиная с самых длинных. Иначе, при наличии двух переменных str и str2str, может получиться неправильное имя у более длинного str2str, если сначала в нем будут заменены две его «части» str.

Собственно все: в отдельный файл с суффиксом Open пишется очищенный полный текст файла эксперта со всеми вставленными в него инклюдами. После этого выполняется замена идентификаторов. В отдельный файл с суффиксом Encodings выводится табличка соответствий имен найденных идентификаторов и записывается закодированный файл с суффиксом Encoded. Именно этот файл вы должны будете откомпилировать и распространять полученный из него ex4.

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

Чтобы не заменять имена переменных в текстовых константах типа:

я использовал такой прием: перед заменой переменных после каждого символа внутри символьной константы я вставлял символ с кодом 3. Его нельзя просто набрать на клавиатуре и, значит, его не может быть в вашем тексте. В результате константа «LotSize = » превратилась в » #L#o#t#S#i#z#e# #=# #» (где # означает это самый символ с кодом 3). Теперь если я буду искать подстроку для замены LotSize в строковой константе я ее просто не найду и она так и останется незамеченной. После того, как все замены настоящих переменных будут выполнены, я просто повырезаю все символы с кодом 3 и исходный текст строковых констант восстановится.

Когда мы заменили в тексте из предыдущего примера найденные переменные по вот такому списку (первая цифра — это количество найденных вхождений идентификатора в исходном тексте):

то получили вот такой файл

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

После его декомпиляци получается вот такой текст:

В нем уже не осталось ни одного осмысленного имени (ну кроме зарезервированного start да стандартных имен функций) и хотя разобраться с этим файлом-примером, наверно, можно без особого напряга, но более сложный текст с массой переменных будет совершенно неадекватен. За его взлом запросят такие деньги, что пользователю будет дешевле и проще купить нормальный эксперт у самого автора эксперта, получив при этом от него официальную поддержку.

Заключение

Скажу честно, текст MQLEnigma писался мною в худших традициях Extreme-программирования. Я рассчитывал на то, что исходный текст, подаваемый ему на вход, является синтаксически «правильным». Ну, например, там не может быть незакрытых скобок функций, объявлений типов без имен переменных (int 😉 и т.п. Алгоритм вырабатывался «по ходу» — я взял свой самый объемный проект и на нем постепенно вырезал все лишнее, глядя на получавшийся текст, в котором, в конце концов, должны были остаться только имена переменных. Поэтому я не вставлял многочисленные обработки исключительных ситуаций и возможных ошибок.

Кроме того, предстоящий выход MQL5 превратил эту работу в одноразовую, которая очень скоро «пойдет в корзину». По этой же причине был выбран VB.NET — я на нем (точнее на VBA) почти ежедневно буквально щелкаю программки как орешки, и писать на нем мне было легче, быстрее и комфортнее.

Несмотря на этот разгильдяйский способ написания, MQLEnigma получилась рабочей программой, и пока что мне не удалось нарваться на исходник, который был бы как то неправильно обработан, чтобы его компиляция приводила бы к ошибкам. Но это не означает, что он абсолютно правильный. Именно поэтому я даю его исходный текст. Если у вас MQLEnigma сработает неправильно, вы сможете сами выяснить причину и, при необходимости, самостоятельно поправить ее (если такое произойдет, не забудьте пожалуйста оповестить о сделанной вами модификации в обсуждении этой статьи).

Приведенные в этой статье способы — это только вершина айсберга, которая, тем не менее, позволяет достаточно эффективно защищать свои разработки. Возвращаясь к тому, о чем я писал в самом начале статьи, я могу сказать то же самое, что писал в заключении своей самой первой лицензии FairWare: «Автор, как мог, помог вам, написав эти программы, которые вы может никогда бы сами не придумали и не написали. Теперь — ваш очередь помогать Автору, так как можете вы 🙂«.

В коде MQLEnigma могут быть некоторые логические ошибки, которые не проявились на тех текстах, которые были у меня под рукой для тестирования при его написании и отладке. Если вы найдете их, сообщите мне об этом, чтобы я мог внести правки и обновить файл, приложенный к этой статье. Если вы знаете другие способы защиты, которые могут быть открыто опубликованы без того, чтобы стать помощью для взломщиков, оставьте комментарий к этой статье. Я и другие члены нашего MQL4-сообщества будут вам только признательны за ваш вклад в «наше общее дело».

Ну и совсем уж в заключение: тема защиты исходного кода своих разработок — очень непростая. Делиться всеми секретами открыто нельзя, потому что тем самым вы объясняете потенциальным взломщикам, как можно с вами бороться. Я решил опубликовать эту статью только потому, что для декодеров ничего нового я не открываю. Однако это первые, всем известные способы защиты, которые достаточно эффективно работают и могут быть полезны, особенно начинающим MQL-программистам.

MQL Code Corrector Free

При работе на Форексе широко используются разнообразные советники и индикаторы, написанные на языке программирования MQL. Подавляющее большинство из них созданы для терминала Meta Trader 4 и имеют расширение *.mq4. После запуска терминала файл *.mq4 автоматически компилируется, в результате в соответствующей папке терминала появляется одноименный исполнимый файл с расширением *.ex4.

Авторы индикаторов и советников часто распространяют их именно в виде исполнимых файлов *.ex4. Если у пользователя возникает необходимость доработать такую программу, ее приходится возвращать в исходный код с помощью декомпиляторов. Разумеется, авторы ПО не поддерживают декомпиляцию, считая это нарушением своих прав. Производители терминала Meta Trader 4 приняли их сторону, поэтому все последние билды МТ4 не работают с декомпилированными файлами – при попытке их запуска появляется сообщение о запрете использования кода: «using of decompiled source code is prohibited».

Разработчиков ПО можно понять, однако большинству пользователей декомпиляция нужна только для того, чтобы оптимизировать под себя исходную программу. Более того, в сети можно найти множество декомпилированных индикаторов и советников, которые уже многие годы активно используются трейдерами и авторы которых не предъявляют по этому поводу никаких претензий хотя бы в силу того, что уже есть более новые версии этих инструментов. И вот теперь по прихоти разработчиков МТ 4 все эти программы вдруг перестали работать!

Для того чтобы избавить трейдеров от массы возникших неудобств, и была написана представленная вашему вниманию программа MQL Code Corrector Free. Она приводит декомпилированный код в корректный вид, после обработки ею терминал МТ 4 снова успешно запускает все те советники и индикаторы, с которыми до этого отказывался работать.

Пользоваться программой очень просто. Скачайте ее, запустите. Единственным требованием к работе программы является установленный Microsoft .NET Framework 3.5 (установлен по умолчанию на многих компьютерах), если его нет — можете скачать с сайта microsoft. Вот как выглядит программа:

Нажмите кнопку раскрывающегося списка в строке «Исходный файл» и выберите файл *.mq4, полученный в результате декомпиляции исходного файла *.ex4. В строке «Результирующий файл» тут же появится путь к конечному файлу. По умолчанию он будет находиться в той же директории, но иметь немного измененное название – с добавлением окончания «_out», но вы можете легко изменить путь (и имя) также как и в первом случае. Нажмите кнопку «Обработать», весь процесс занимает считанные мгновения. Теперь перенесите полученный файл в нужную папку МТ 4, запустите терминал. Обработанный программой файл будет прекрасно работать.

Программа MQL Code Corrector Free распространяется совершенно бесплатно. Принимаются замечания и предложения по улучшению ее функционала (пишите в комментариях или на почту traderfx.info@yandex.ru). Самая последняя версия программы будет всегда выкладываться на этой странице сайта traderfx.info.

Обновления.

20.11.2022 — доработано удаление надписи «Generated by EX4-TO-MQ4 decompiler. » в декомпилированном коде. Сейчас удаляются такие комментарии вне зависимости от версии декомпилятора.

Рейтинг Форекс брокеров: