Ekzo Опубликовано 18 сентября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 18 сентября, 2020 Добрый день , подскажите что нужно прописать в коде что бы он не перекрашивал ( не убирал сигналы) заранее спасибо , ниже сам код сигналов //============ 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) /////////////////////////////////////////////////////////////////////////////////////////// Ссылка на сообщение Поделиться на другие сайты More sharing options...
MikR0ReR Опубликовано 18 сентября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 18 сентября, 2020 @Ekzo Приветствую. Вы не туда обратились. Мы здесь не изучаем язык программирования Pine (из платформы TradingView). Мы изучаем MQ4 из платформы MetaTrader 4. 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
diodio Опубликовано 21 сентября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 21 сентября, 2020 Всем доброго времени! Такой вопрос интересует, в советнике используются индикаторы с поддержкой dll библиотеки, при установке советника в окно терминала где уже присутствуют те самые индикаторы, начинается интересная вещь, индикаторы начинают моргать, то появляются то исчезают, но не часто. Без установки советника индикаторы ведут себя нормально. Я так понимаю при прохождении кода советником возникает запрос на сигналы и следствием из этого индикаторы ведут так себя подобным образом. Это нормально? Может прописать какую-то задержку или ничего страшного))) ? Изменено 21 сентября, 2020 пользователем diodio Ссылка на сообщение Поделиться на другие сайты More sharing options...
apologietest Опубликовано 24 сентября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 24 сентября, 2020 Здравствуйте, коллеги! На прошлой неделе скачал курс по MQL4. С первыми двумя уроками проблем не было. а на третьем "завис" уже третий день. На 37-й минуте сэнсэй делает промежуточную компиляцию и у него выскакивает несколько предупреждений. А у меня 8 ошибок. Пересмотрел не один раз эту часть урока. Проверил все до последнего знака. Как бы все правильно. А ошибки не уходят. Прикреплю файл. Может кто подскажет. А то дальше двигаться не могу. test3.mq4 Ссылка на сообщение Поделиться на другие сайты More sharing options...
diodio Опубликовано 24 сентября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 24 сентября, 2020 51 минуту назад, apologietest сказал: Здравствуйте, коллеги! На прошлой неделе скачал курс по MQL4. С первыми двумя уроками проблем не было. а на третьем "завис" уже третий день. На 37-й минуте сэнсэй делает промежуточную компиляцию и у него выскакивает несколько предупреждений. А у меня 8 ошибок. Пересмотрел не один раз эту часть урока. Проверил все до последнего знака. Как бы все правильно. А ошибки не уходят. Прикреплю файл. Может кто подскажет. А то дальше двигаться не могу. Все уроки построены таким образом чтоб обучающийся не только смог повторять как мартышка то, что написал сэнсэй, но и находить самостоятельно ошибки. Ошибки, допущенные в уроках не случайно, не выше уровня пройденного вами материала. Файл исправил. test3.mq4 Изменено 24 сентября, 2020 пользователем diodio 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
apologietest Опубликовано 24 сентября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 24 сентября, 2020 Благодарю за помощь! Действительно, то скобку пропустил, то букву не ту написал. Явно, что не выше уровня пройденного мною материала. Ссылка на сообщение Поделиться на другие сайты More sharing options...
apologietest Опубликовано 25 сентября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 25 сентября, 2020 Попробовал поискать ответ в ветке, пройдя ее от первой страницы до сегодня. Но после 15-й страницы понял, что сил не хватит... )) Есть урок как работать с отложенными ордерами? Ссылка на сообщение Поделиться на другие сайты More sharing options...
MikR0ReR Опубликовано 25 сентября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 25 сентября, 2020 @apologietest https://tlap.com/mql4-ea-po-strategii-piramiding/ https://tlap.com/programmirovanie-na-mql-kurs/ https://tlap.com/category/uroki-po-mql/ В принципе, не отличается работа с отложками от рыночных. Изменено 25 сентября, 2020 пользователем MikR0ReR Ссылка на сообщение Поделиться на другие сайты More sharing options...
apologietest Опубликовано 25 сентября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 25 сентября, 2020 Благодарю! Когда-то давно пытался программировать. Тогда у домашних компьютеров носителем были магнитофонные кассеты. Детям игрушки писал. )) А сейчас жизнь снова развернула в эту сторону. Только уже игрушки для себя ... Ссылка на сообщение Поделиться на другие сайты More sharing options...
ademen Опубликовано 3 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 3 октября, 2020 Как реализована функция "Список параметров" ? Тип судя всего string, но как потом параметры вносятся в iCustom? Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rigal Опубликовано 4 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 4 октября, 2020 13 часов назад, ademen сказал: Как реализована функция "Список параметров" ? Тип судя всего string, но как потом параметры вносятся в iCustom? Я не совсем понял вопрос, контекст отсутствует. По идее нужно знать не только параметр, но и тип, который это кастом принимает. А так - ну мы берем этот список, разбиваем на строки по разделителю и передаем все в iCustom Очевидно нужно сделать несколько разных функций обращения, по количеству параметров. Ссылка на сообщение Поделиться на другие сайты More sharing options...
ademen Опубликовано 4 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 4 октября, 2020 8 минут назад, Rigal сказал: Я не совсем понял вопрос, контекст отсутствует. @Rigalмне нужно во внешние параметры передать параметры индикатора, делать по каждого параметра свой intup не вариант так как параметров может быть много. Парни как то умудрились все всунуть в 1 строковую переменну.BotBinaryEA_MT4_1.3.ex4 8 минут назад, Rigal сказал: По идее нужно знать не только параметр, но и тип, который это кастом принимает. А так - ну мы берем этот список, разбиваем на строки по разделителю и передаем все в iCustom Очевидно нужно сделать несколько разных функций обращения, по количеству параметров. Отрезок инструкции к боту Можете помочь на примере кода, как разбить на строки по разделителю? И что передать в iCustom? 12 минут назад, Rigal сказал: Очевидно нужно сделать несколько разных функций обращения, по количеству параметров. Не совсем понял, что имеете ввиду? Конечная цель которую я хочу получить - сделать универсального советника в который можно передать Названия робота, параметры, на какой свечи открывать. Если знаете вариант как сделать проще/быстрее - буду лишь благодарен. Ссылка на сообщение Поделиться на другие сайты More sharing options...
ademen Опубликовано 4 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 4 октября, 2020 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: .... Изменено 4 октября, 2020 пользователем ademen Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rigal Опубликовано 4 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 4 октября, 2020 1 час назад, ademen сказал: @Rigalмне нужно во внешние параметры передать параметры индикатора, делать по каждого параметра свой intup не вариант так как параметров может быть много. Парни как то умудрились все всунуть в 1 строковую переменну.BotBinaryEA_MT4_1.3.ex4 Отрезок инструкции к боту Можете помочь на примере кода, как разбить на строки по разделителю? И что передать в 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 Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rigal Опубликовано 4 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 4 октября, 2020 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 Ссылка на сообщение Поделиться на другие сайты More sharing options...
ademen Опубликовано 4 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 4 октября, 2020 Спойлер @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 Ваш подход тоже там используется Изменено 4 октября, 2020 пользователем ademen Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rigal Опубликовано 4 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 4 октября, 2020 1 час назад, ademen сказал: Показать контент @Rigalбольшое спасибо. Видимо iCustom может работать с double даже если в индикатора другой тип, не знал, спасибо что указали. @Rigalдобавил код, https://tlap.com/forum/ugolok-programmista/13/obuchenie-yazyku-mql4-pod-metatrader-4/4034/?do=findComment&comment=465756 Ваш подход тоже там используется К слову, можно, конечно, элегантнее, если использовать темплейты: https://docs.mql4.com/basis/oop/templates У каждого параметра можно спросить typename при желании и сконвертировать соответственно. То есть, в строке параметров можно использовать два разных разделителя и сделать что-то вроде bool:true/int:10/double:43.72/string:lorem ipsum Потом разбирать в два раздельных массива и в функции вызова iCustom конвертировать соответственно. Это как раз то, что я подразумевал под универсальным кодом. Я ни разу не сталкивался с практической необходимостью такого кода - кроме, разве что, если вы пишете "советник-конструктор", который позволит конечному пользователю торговать любыми индикаторами по произвольным правилам. Таких уже написано некоторое количество, написано неплохо и нет смысла писать еще, имхо Ссылка на сообщение Поделиться на другие сайты More sharing options...
ademen Опубликовано 4 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 4 октября, 2020 19 минут назад, Rigal сказал: К слову, можно, конечно, элегантнее, если использовать темплейты: https://docs.mql4.com/basis/oop/templates У каждого параметра можно спросить typename при желании и сконвертировать соответственно. Интересный материал, для изучения, спасибо. 19 минут назад, Rigal сказал: Я ни разу не сталкивался с практической необходимостью такого кода - кроме, разве что, если вы пишете "советник-конструктор", который позволит конечному пользователю торговать любыми индикаторами по произвольным правилам. Таких уже написано некоторое количество, написано неплохо и нет смысла писать еще, имхо Советников конструкторов много, и даже много с открытом кодом. Но я же хочу написать конструктор индикатор. У меня 3 индикатора, + анализ убыточных сигналов (ждем х убыточных потом только входим). Подобного не встречал. Если видели подобного индикатора конструктора - буду благодарен, если поделитесь. Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rigal Опубликовано 4 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 4 октября, 2020 55 минут назад, ademen сказал: Интересный материал, для изучения, спасибо. Советников конструкторов много, и даже много с открытом кодом. Но я же хочу написать конструктор индикатор. У меня 3 индикатора, + анализ убыточных сигналов (ждем х убыточных потом только входим). Подобного не встречал. Если видели подобного индикатора конструктора - буду благодарен, если поделитесь. Ну это понятно, а зачем надстраивать абстракцию? Проще было бы определить логику торговой стратигии один раз, чтобы она работала с абстрактным классом "индикаторная стратегия". Индикаторная стратегия реализует методы, например, bool IsOpenSignal(int _type) и bool IsCloseSignal(int _type), которые отвечают на вопрос, надо ли открываться в продажу/покупку и закрывать продажи/покупки, с точки зрения логики конкретного индикатора. А потом наплодить реализаций под каждый индикатор и встраивать их по желанию Я прицеплю пример, там как раз есть понятие TradingStrategy, которая реализует торговую стратегию целиком, с выбором "на баре такого-то тф", или "на тике", со всяческими тралами и прочим - и шаблон индикаторной стратегии, с реализацией стратегии ультрона. Этот пример - это то, что я использую в своей корзинке, я месяца полтора назад изолировал набор, показывал код. Там с тех пор были какие-то новшества, но как иллюстрация идеи модульного подхода, в котором сигнальная часть отделена от торговой логики - подойдет идеально. MQL4.zip 1 Ссылка на сообщение Поделиться на другие сайты More sharing options...
ademen Опубликовано 4 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 4 октября, 2020 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() ); } } Изменено 4 октября, 2020 пользователем ademen Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rigal Опубликовано 5 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 5 октября, 2020 6 часов назад, ademen сказал: Почему не используете целочисленное? С целью эффективного применения для вычислений и всевозможных проверок. 0 - buy 1 - sell Я как раз использую - видите, параметр. Вы, видимо, имели в виду: почему бы не возвращать сразу значение, чего открывать и чего закрывать? Три причины: - может быть «ничего», может быть «оба» - логика расчета направления каких-то комбинаций индикаторов может быть заметно сложнее, чем у машки, которую вы привели в качестве примера - удобнее вписывается в логику торговой части 6 часов назад, ademen сказал: Данный подход позволяет сильно сократить код, за счет того что на бай и на селл пишется вместе а не раздельно. Где то была интересная статья по этому поводу, найду - прикреплю, или может кто то поделится ссылкой. А у меня и не раздельно. Вы загляните в код выбор между bool в ответ на передаваемый параметр или int в качестве возвращаемого значения не диктует реализацию совсем Ссылка на сообщение Поделиться на другие сайты More sharing options...
hikmet_eskerov Опубликовано 10 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 10 октября, 2020 НУЖНО ЛИ БОЯТЬСЯ Программах как HEX-EDITOR? Сможет ли такие программы изменить копирайтинг? Изменено 10 октября, 2020 пользователем hikmet_eskerov Ссылка на сообщение Поделиться на другие сайты More sharing options...
Rever27 Опубликовано 11 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 11 октября, 2020 В 10.10.2020 в 17:36, hikmet_eskerov сказал: Сможет ли такие программы изменить копирайтинг? Вы же сами смогли через эту программу открыть скомпилированный код. Естественно, вы можете изменить текстовые надписи, которые корректно отображаются для вас. А опытный прогер, у которого талант, сможет изменить и внутренности вашего кода. Если так сильно боитесь за код - предоставляйте его только через сайт MQL5.Community Ссылка на сообщение Поделиться на другие сайты More sharing options...
nixxer Опубликовано 11 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 11 октября, 2020 В 10.10.2020 в 19:36, hikmet_eskerov сказал: НУЖНО ЛИ БОЯТЬСЯ Программах как HEX-EDITOR? Сможет ли такие программы изменить копирайтинг? Можете не волноваться, никто его не изменит, кроме специалистов. Если паранойя велика, не выкладывайте свои творения в интернет 2 Ссылка на сообщение Поделиться на другие сайты More sharing options...
ademen Опубликовано 11 октября, 2020 Поделиться Обучение языку MQL4 под MetaTrader 4 Опубликовано 11 октября, 2020 53 минуты назад, Rever27 сказал: Если так сильно боитесь за код - предоставляйте его только через сайт MQL5.Community Метаквоты делаю разную степень защиты декомпила для маркета и терминала? Ссылка на сообщение Поделиться на другие сайты More sharing options...
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать учетную запись
Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти