Перейти к содержанию

Обучение языку MQL4 под MetaTrader 4


Рекомендуемые сообщения

Обучение языку MQL4 под MetaTrader 4 Опубликовано

Добрый день , подскажите что нужно прописать в коде что бы он не перекрашивал ( не убирал сигналы) заранее спасибо , ниже сам код сигналов 

//============ signal Generator ==================================//
period = input('720')
ch1 = security(tickerid, period, open)
ch2 = security(tickerid, period, close)
longCondition = crossover(security(tickerid, period, close),security(tickerid, period, open))
if (longCondition)
    strategy.entry("BUY", strategy.long)
shortCondition = crossunder(security(tickerid, period, close),security(tickerid, period, open))
if (shortCondition)
    strategy.entry("SELL", strategy.short)

///////////////////////////////////////////////////////////////////////////////////////////

Ссылка на сообщение
Поделиться на другие сайты

  • Ответов 6,8k
  • Создано
  • Последний ответ

Популярные авторы

Популярные авторы

Популярные посты

Смотрим видео-уроки, изучаем MQL:       Скачать видеокурс «MQL программирование. Как самому написать форекс советник/ индикатор/ скрипт»   P.S. Тема про Обучение MQ

Перейти

Циклы цикл for Иногда необходимо повторять одно и то же действие несколько раз подряд. Для этого используют циклы. К примеру, мы хотим проанализировать последние 10 баров и выяснить наименьшую цен

Перейти

Речь идет о том, что не будет значимых нововведений. А только баги периодически будут править. А вот все новое мол - в МТ5. Когда они вживую сказали то же самое на конференции в Москве, я уточнил: "То

Перейти
Обучение языку MQL4 под MetaTrader 4 Опубликовано

@Ekzo Приветствую. Вы не туда обратились. Мы здесь не изучаем язык программирования Pine (из платформы TradingView). Мы изучаем MQ4 из платформы MetaTrader 4.

  • Лайк 1
Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано

Всем доброго времени! Такой вопрос интересует, в советнике используются индикаторы с поддержкой dll библиотеки, при установке советника в окно терминала где уже присутствуют те самые индикаторы, начинается интересная вещь, индикаторы начинают моргать, то появляются то исчезают, но не часто. Без установки советника индикаторы ведут себя нормально. Я так понимаю при прохождении кода советником возникает запрос на сигналы и следствием из этого индикаторы ведут так себя подобным образом. Это нормально? Может прописать какую-то задержку или ничего страшного))) ?

Изменено пользователем diodio
Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано

Здравствуйте, коллеги!
На прошлой неделе скачал курс по MQL4.
С первыми двумя уроками проблем не было. а на третьем "завис" уже третий день.
На 37-й минуте сэнсэй делает промежуточную компиляцию и у него выскакивает несколько предупреждений.
А у меня 8 ошибок.
Пересмотрел не один раз эту часть урока. Проверил все до последнего знака. Как бы все правильно. А ошибки не уходят.
Прикреплю файл.  Может кто подскажет. А то дальше двигаться не могу.

test3.mq4

Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
51 минуту назад, apologietest сказал:

Здравствуйте, коллеги!
На прошлой неделе скачал курс по MQL4.
С первыми двумя уроками проблем не было. а на третьем "завис" уже третий день.
На 37-й минуте сэнсэй делает промежуточную компиляцию и у него выскакивает несколько предупреждений.
А у меня 8 ошибок.
Пересмотрел не один раз эту часть урока. Проверил все до последнего знака. Как бы все правильно. А ошибки не уходят.
Прикреплю файл.  Может кто подскажет. А то дальше двигаться не могу.

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

Файл исправил.

test3.mq4

Изменено пользователем diodio
  • Лайк 1
Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано

Благодарю за помощь!
Действительно, то скобку пропустил, то букву не ту написал.
Явно, что не выше уровня пройденного мною материала. :-H

Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано

Попробовал поискать ответ в ветке, пройдя ее от первой страницы до сегодня.
Но после 15-й страницы понял, что сил не хватит... ))
Есть урок как работать с отложенными ордерами?

Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано

В принципе, не отличается работа с отложками от рыночных.

Изменено пользователем MikR0ReR
Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано

Благодарю!
Когда-то давно пытался программировать. Тогда у домашних компьютеров носителем были магнитофонные кассеты.
Детям игрушки писал. ))

А сейчас жизнь снова развернула в эту сторону.
Только уже игрушки для себя ...

Ссылка на сообщение
Поделиться на другие сайты

  • 2 weeks later...
Обучение языку MQL4 под MetaTrader 4 Опубликовано

image.thumb.png.d44381c5725acf2211c0f327371e16fb.png

 

Как реализована функция "Список параметров" ? Тип судя всего string, но как потом параметры вносятся в iCustom?

Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
13 часов назад, ademen сказал:

image.thumb.png.d44381c5725acf2211c0f327371e16fb.png

 

Как реализована функция "Список параметров" ? Тип судя всего string, но как потом параметры вносятся в iCustom?

Я не совсем понял вопрос, контекст отсутствует.

По идее нужно знать не только параметр, но и тип, который это кастом принимает.

А так - ну мы берем этот список, разбиваем на строки по разделителю и передаем все в iCustom

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

 

Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
8 минут назад, Rigal сказал:

Я не совсем понял вопрос, контекст отсутствует.

@Rigalмне нужно во внешние параметры передать параметры индикатора, делать по каждого параметра свой intup не вариант так как параметров может быть много. Парни как то умудрились все всунуть в 1 строковую переменну.BotBinaryEA_MT4_1.3.ex4

 

8 минут назад, Rigal сказал:

По идее нужно знать не только параметр, но и тип, который это кастом принимает.

А так - ну мы берем этот список, разбиваем на строки по разделителю и передаем все в iCustom

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

Отрезок  инструкции к боту image.thumb.png.87ddf752239f170ee7d0475ceb6d9ada.png

Можете помочь на примере кода, как разбить на строки по разделителю? И что передать в iCustom?

12 минут назад, Rigal сказал:

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

Не совсем понял, что имеете ввиду?

 

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

Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
2 часа назад, ademen сказал:

Можете помочь на примере кода, как разбить на строки по разделителю? И что передать в iCustom?

Нашел как сделать из эксперта ув. @sbonch

https://tlap.com/forum/sovetniki-foreks/11/sovetnik-exp_icustom-realizator-vashih-graalnyh-idey/19577/?tab=comments#comment-428578

Кому полезно :

extern string     _O_iCustomParam            = "введите список параметров через разделитель /"; // список параметров через разделитель "/". Для переменных типа bool вместо значения true используется 1, вместо false - 0. Если в параметрах индикатора есть строковые переменные, эксперт работать не будет!!!






void PrepareOpenParameters(){

   string tmp[];   
   StringSplit(_O_iCustomParam,'/',tmp);
   fConvertColorAndDate(tmp);
   fCopyStrToDouble(tmp,_O_ParArr);

   ....
} 


void fCopyStrToDouble(string & aStr[],double & aDoub[]){
   ArrayResize(aDoub,ArraySize(aStr));
      for(int i=0;i<ArraySize(aStr);i++){
         aDoub[i]=StrToDouble(aStr[i]);
      }
}


void fConvertColorAndDate(string & aArr[]){
   for(int i=0;i<ArraySize(aArr);i++){
      aArr[i]=StringTrimLeft(StringTrimRight(aArr[i]));
         if(StringFind(aArr[i],"color:",0)==0){
            aArr[i]=StringSubstr(aArr[i],6,StringLen(aArr[i])-6);
            aArr[i]=fColFromString(aArr[i]);
         }
         else if(StringFind(aArr[i],"date:",0)==0){
            aArr[i]=StringSubstr(aArr[i],5,StringLen(aArr[i])-5);
            aArr[i]=StrToTime(aArr[i]);
         }
   }
}




double fGetCustomValue(int aTimeFrame,string aName,int aIndex,double & aParArr[],int aShift){
   double tv;
   switch (ArraySize(aParArr)){
      case 0:
         tv=iCustom(NULL,aTimeFrame,aName,aIndex,aShift);
      break;
      case 1:
         tv=iCustom(NULL,aTimeFrame,aName,aParArr[0],aIndex,aShift);      
      break;
      case 2:
         tv=iCustom(NULL,aTimeFrame,aName,
            aParArr[0],
            aParArr[1],
            aIndex,aShift);      
      break;      
      case 3:
         tv=iCustom(NULL,aTimeFrame,aName,
            aParArr[0],
            aParArr[1],
            aParArr[2],
            aIndex,aShift);  
      break;        
      case 4:
         tv=iCustom(NULL,aTimeFrame,aName,
            aParArr[0],
            aParArr[1],
            aParArr[2],
            aParArr[3],
            aIndex,aShift);  
      break;        
      case 5:
         tv=iCustom(NULL,aTimeFrame,aName,
            aParArr[0],
            aParArr[1],
            aParArr[2],
            aParArr[3],
            aParArr[4],
            aIndex,aShift); 
      break;        
      case 6:

....

 

Изменено пользователем ademen
Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
1 час назад, ademen сказал:

@Rigalмне нужно во внешние параметры передать параметры индикатора, делать по каждого параметра свой intup не вариант так как параметров может быть много. Парни как то умудрились все всунуть в 1 строковую переменну.BotBinaryEA_MT4_1.3.ex4

 

Отрезок  инструкции к боту image.thumb.png.87ddf752239f170ee7d0475ceb6d9ada.png

Можете помочь на примере кода, как разбить на строки по разделителю? И что передать в iCustom?

Не совсем понял, что имеете ввиду?

 

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

теперь понятно.

Проблема еще в том, что некоторые индикаторы могут принимать double.

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

Например, один из индикаторов будет принимать два double, два bool и три int

А другой - какой-то другой набор.

Но вот в примере у вас все явно ограничивается bool и int.

Я бы ожидал, что double тоже не повредит, поэтому моя реализация ниже должна работать для bool, int, long, double - всех численных типов, некоторые из которых будут обрезаться, но это не имеет значения для входных параметров индикатора.

 

Давайте попробуем это реализовать.

Для начала разберем строку на параметры в Init, а потом получим значения нашего iCustom на нулевом и первом баре в OnTick

input string IndicatorName = "myCustomIndicator";
input ENUM_TIMEFRAMES TimeFrame = PERIOD_CURRENT;
input string Parameters = "1/2/47/16/0";

//an array to keep parsed parameters in
string params[];

int OnInit() {
  	//split parameters
	StringSplit(Parameters, '/', params); 
	if(ArraySize(params) < 1) {
      Print("Failed to parse parameters, seems empty");
      return (INIT_FAILED);
    }
  	if(StringLen(IndicatorName) == 0) {
      Print("Indicator name is empty");
      return (INIT_FAILED);
    }
    return(INIT_SUCCEEDED); 
}

void OnTick() {
//now let's call the iCustom of our choice
  double value0 = CalculateICustom(0);
  double value1 = CalculateICustom(1);
}

//returns iCustom on a given bar
//if you need more than 4 parameters supported, just add more "case" levels in the switch statement
double CalculateICustom(int _bar) {
  double result = EMPTY_VALUE;
  switch(ArraySize(params)) {
  case 1:
   result = iCustom(NULL, TimeFrame, IndicatorName, StringToDouble(params[0]), _bar);
  break;
  case 2:
   result = iCustom(NULL, TimeFrame, IndicatorName, StringToDouble(params[0]), StringToDouble(params[1]), _bar);
  break;
  case 3:
   result = iCustom(NULL, TimeFrame, IndicatorName, StringToDouble(params[0]), StringToDouble(params[1]),  StringToDouble(params[2]), _bar);
  break;
  case 4:
   result = iCustom(NULL, TimeFrame, IndicatorName, StringToDouble(params[0]), StringToDouble(params[1]),  StringToDouble(params[2]),  StringToDouble(params[3]), _bar);
  break;
  default:
   Print("Too many parameters: ", ArraySize(params), ", not implemented yet");
  }
  return (result);
}

 

Я ограничился реализацией для 4х и менее параметров. Если нужно поддерживать больше, можно докидать соответствующих case в switch, там просто будет все длиннее отрастать вызов

  • Спасибо 1
Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
4 минуты назад, ademen сказал:

Нашел как сделать из эксперта ув. @sbonch

https://tlap.com/forum/sovetniki-foreks/11/sovetnik-exp_icustom-realizator-vashih-graalnyh-idey/19577/?tab=comments#comment-428578

Кому полезно :

 

 

void PrepareOpenParameters(){

   string tmp[];   
   StringSplit(_O_iCustomParam,'/',tmp);
   fConvertColorAndDate(tmp);
   fCopyStrToDouble(tmp,_O_ParArr);

   if(_O_Opt_1_Use){
      if(_O_Opt_1_Index<ArraySize(_O_ParArr))_O_ParArr[_O_Opt_1_Index]=_O_Opt_1_Value;
   }
   if(_O_Opt_2_Use){
      if(_O_Opt_2_Index<ArraySize(_O_ParArr))_O_ParArr[_O_Opt_2_Index]=_O_Opt_2_Value;
   }
   if(_O_Opt_3_Use){
      if(_O_Opt_3_Index<ArraySize(_O_ParArr))_O_ParArr[_O_Opt_3_Index]=_O_Opt_3_Value;
   }
   if(_O_Opt_4_Use){
      if(_O_Opt_4_Index<ArraySize(_O_ParArr))_O_ParArr[_O_Opt_4_Index]=_O_Opt_4_Value;
   }
   if(_O_Opt_5_Use){
      if(_O_Opt_5_Index<ArraySize(_O_ParArr))_O_ParArr[_O_Opt_5_Index]=_O_Opt_5_Value;
   }  

 

Ну тут явно под определенный набор заточено - это как раз трансляция в набор, который заранее известен.

Хотя мне не вполне понятно, зачем: если набор заранее известен, как и типы - нужно просто вынести параметры индикатора в параметры советника.

А разбор строки здесь - это StringSplit

Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
Спойлер

 

 

@Rigalбольшое спасибо.

Видимо iCustom может работать с double даже если в индикатора другой тип, не знал, спасибо что указали.

12 минут назад, Rigal сказал:

Ну тут явно под определенный набор заточено - это как раз трансляция в набор, который заранее известен.

Хотя мне не вполне понятно, зачем: если набор заранее известен, как и типы - нужно просто вынести параметры индикатора в параметры советника.

А разбор строки здесь - это StringSplit

@Rigalдобавил код, https://tlap.com/forum/ugolok-programmista/13/obuchenie-yazyku-mql4-pod-metatrader-4/4034/?do=findComment&comment=465756

Ваш подход тоже там используется=b

Изменено пользователем ademen
Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
1 час назад, ademen сказал:
  Показать контент

 

 

@Rigalбольшое спасибо.

Видимо iCustom может работать с double даже если в индикатора другой тип, не знал, спасибо что указали.

@Rigalдобавил код, https://tlap.com/forum/ugolok-programmista/13/obuchenie-yazyku-mql4-pod-metatrader-4/4034/?do=findComment&comment=465756

Ваш подход тоже там используется=b

К слову, можно, конечно, элегантнее, если использовать темплейты: https://docs.mql4.com/basis/oop/templates

У каждого параметра можно спросить typename при желании и сконвертировать соответственно.

То есть, в строке параметров можно использовать два разных разделителя и сделать что-то вроде bool:true/int:10/double:43.72/string:lorem ipsum

Потом разбирать в два раздельных массива и в функции вызова iCustom конвертировать соответственно.

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

 

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

Таких уже написано некоторое количество, написано неплохо и нет смысла писать еще,  имхо :)

Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
19 минут назад, Rigal сказал:

К слову, можно, конечно, элегантнее, если использовать темплейты: https://docs.mql4.com/basis/oop/templates

У каждого параметра можно спросить typename при желании и сконвертировать соответственно.

Интересный материал, для изучения, спасибо.

19 минут назад, Rigal сказал:

 

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

Таких уже написано некоторое количество, написано неплохо и нет смысла писать еще,  имхо :)

Советников конструкторов много, и даже много с открытом кодом. Но я же хочу написать конструктор индикатор. У меня 3 индикатора, + анализ убыточных сигналов (ждем х убыточных потом только входим). Подобного не встречал. Если видели подобного индикатора конструктора - буду благодарен, если поделитесь.:)

 

Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
55 минут назад, ademen сказал:

Интересный материал, для изучения, спасибо.

Советников конструкторов много, и даже много с открытом кодом. Но я же хочу написать конструктор индикатор. У меня 3 индикатора, + анализ убыточных сигналов (ждем х убыточных потом только входим). Подобного не встречал. Если видели подобного индикатора конструктора - буду благодарен, если поделитесь.:)

 

Ну это понятно, а зачем надстраивать абстракцию?

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

Индикаторная стратегия реализует методы, например, bool IsOpenSignal(int _type) и bool IsCloseSignal(int _type), которые отвечают на вопрос, надо ли открываться в продажу/покупку и закрывать продажи/покупки, с точки зрения логики конкретного индикатора.

А потом наплодить реализаций под каждый индикатор и встраивать их по желанию

Я прицеплю пример, там как раз есть понятие TradingStrategy, которая реализует торговую стратегию целиком, с выбором "на баре такого-то тф", или "на тике", со всяческими тралами и прочим - и шаблон индикаторной стратегии, с реализацией стратегии ультрона.

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

Там с тех пор были какие-то новшества, но как иллюстрация идеи модульного подхода, в котором сигнальная часть отделена от торговой логики - подойдет идеально.

 

 

MQL4.zip

  • Спасибо 1
Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
5 часов назад, Rigal сказал:

Ну это понятно, а зачем надстраивать абстракцию?

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

Индикаторная стратегия реализует методы, например, bool IsOpenSignal(int _type) и bool IsCloseSignal(int _type), которые отвечают на вопрос, надо ли открываться в продажу/покупку и закрывать продажи/покупки, с точки зрения логики конкретного индикатора.

@Rigalчто вы понимаете под абстракцией? Сейчас у меня проблема как связать внешние параметры с логикой советника. Но я кажется уже все решил. Завтра буду проверять:)

5 часов назад, Rigal сказал:

bool IsOpenSignal(int _type) и bool IsCloseSignal(int _type)

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

0 - buy 

1 - sell

 

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

 

int sign( double v )
{
    if( v < 0 ) return( -1 );
    return( 1 );
}
 
double iif( bool condition, double ifTrue, double ifFalse )
{
    if( condition ) return( ifTrue );
    
    return( ifFalse );
}
 
string iifStr( bool condition, string ifTrue, string ifFalse )
{
    if( condition ) return( ifTrue );
    
    return( ifFalse );
}
 
int orderDirection()
{
    return( 1 - 2 * ( OrderType() % 2 ) );
}

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

 

Вот так к примеру с помощью функций выше ищем сигнал от индикатора :

 

double slowMA = iMA( Symbol(), Period(), SlowMovingPeriod, 0, MODE_SMA,
    PRICE_CLOSE, 0 );
double fastMA = iMA( Symbol(), Period(), FastMovingPeriod, 0, MODE_SMA,
    PRICE_CLOSE, 0 );
 
if( MathAbs( fastMA - slowMA ) > Threshold * Point )
{
    int tradeDirection = sign( fastMA - slowMA );
    int ticket = OrderSend( Symbol(), iif( tradeDirection > 0, OP_BUY, OP_SELL ),
        Lots, iif( tradeDirection > 0, Ask, Bid ), Slippage, 0, 0 );
 
    if( ticket == -1 )
    {
        Print( "Failed to open " + iifStr( tradeDirection > 0, "BUY", "SELL" ) +
            " order, error code: " + GetLastError() );
    }
}
Изменено пользователем ademen
Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
6 часов назад, ademen сказал:

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

0 - buy 

1 - sell

Я как раз использую - видите, параметр. Вы, видимо, имели в виду: почему бы не возвращать сразу значение, чего открывать и чего закрывать?

Три причины: 

- может быть «ничего», может быть «оба»

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

- удобнее вписывается в логику торговой части

 

6 часов назад, ademen сказал:

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

А у меня и не раздельно. Вы загляните в код :)

выбор между bool в ответ на передаваемый параметр или int в качестве возвращаемого значения не диктует реализацию совсем

Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано

НУЖНО ЛИ БОЯТЬСЯ Программах как HEX-EDITOR? Сможет ли такие программы изменить копирайтинг?Screenshot_9.png.c28dc988a8259d33f985de0538bc3fca.png

Изменено пользователем hikmet_eskerov
Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
В 10.10.2020 в 17:36, hikmet_eskerov сказал:

Сможет ли такие программы изменить копирайтинг?

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

Если так сильно боитесь за код - предоставляйте его только через сайт MQL5.Community

Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
В 10.10.2020 в 19:36, hikmet_eskerov сказал:

НУЖНО ЛИ БОЯТЬСЯ Программах как HEX-EDITOR? Сможет ли такие программы изменить копирайтинг?

Можете не волноваться, никто его не изменит, кроме специалистов. Если паранойя велика, не выкладывайте свои творения в интернет

  • Лайк 2
Ссылка на сообщение
Поделиться на другие сайты

Обучение языку MQL4 под MetaTrader 4 Опубликовано
53 минуты назад, Rever27 сказал:

Если так сильно боитесь за код - предоставляйте его только через сайт MQL5.Community

Метаквоты делаю разную степень защиты декомпила для маркета и терминала?

Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

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

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Специальное предложение


  • Рекомендуемые брокеры

  • ×
    ×
    • Создать...