Обсуждение статьи "Как опубликовать свой продукт в сервисе Маркет" - страница 46
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
#property indicator_separate_window
#property indicator_chart_window
а как для разных буферов указать 2 разных отображения?
Никак. ObjectCreate в помощь. Рисуйте объектами.
Уровень FreezeLevel не проверяете - если цена слишком близко к, например, уровню СтопЛосс, то СтопЛосс невозможно модифицировать. Расстояние заморозки как раз определяется уровнем FreezeLevel
тут ведь не стоп изменяется, а именно закрывается сделка или я не прав?
тут ведь не стоп изменяется, а именно закрывается сделка или я не прав?
Привет, ребята!
Надеюсь, все хорошо.
Я только что создал советника, как лучше всего лицензировать его для рынка mql? Я хочу представить этот советник для продажи на рынке, но я не хочу добавлять неправильный тип лицензирования, если это не нужно. Что вы, ребята, можете посоветовать?
Привет, ребята!
Надеюсь, все хорошо.
Я только что создал советника, как лучше всего лицензировать его для рынка mql? Я хочу представить этот советник для продажи на рынке, но я не хочу добавлять неправильный тип лицензирования, если это не нужно. Что вы, ребята, можете посоветовать?
Существует только один способ предложения/лицензирования в MQL5 Market, читайте правила:
https://www.mql5.com/ru/market/rules
Написал советника на MQL4. Хочу выложить в Маркете. Для работы советника требуются два пользовательских индикатора, которых нет в терминале. Не пойму, как прикрепить их к советнику, перед отправкой на проверку. И еще. В правилах написано, что советник должен быть ex5. Если он на MQL4 написан, как его в ex5 сделать?
Рано Вам еще в маркет, если такие вопросы задаете.
Рано Вам еще в маркет, если такие вопросы задаете.
Разобрался. Прикрепил индикаторы в советник через #resource . Одно Но.. До этого советник шустрый был, быстро в Тестере летал, а сейчас скорость в десятки раз снизилась. Вроде все по правилам сделал, как в Справочнике написано, функцию вставил для поиска пути к индикатору GetRelativeProgramPath() - но скорость черепашья, один день тестирует 5 минут..
Разобрался. Прикрепил индикаторы в советник через #resource . Одно Но.. До этого советник шустрый был, быстро в Тестере летал, а сейчас скорость в десятки раз снизилась. Вроде все по правилам сделал, как в Справочнике написано, функцию вставил для поиска пути к индикатору GetRelativeProgramPath() - но скорость черепашья, один день тестирует 5 минут..
данные индикатора опрашиваются на каждом тике?
данные индикатора опрашиваются на каждом тике?
Да. Все осталось как прежде в коде. Поменялось только расположение индикатора. Раньше он запрашивался из терминала из \\Indicators , а теперь из самой программы ex4.
#resource "\\Indicators\\##Contrast.ex4"
///////////
string path=GetRelativeProgramPath();
path=path+"::Indicators\\##Contrast.ex4";
ContrastMain_15 =NormalizeDouble(iCustom(NULL,15,path,coeff_1,0,0),Digits);
ContrastSignal_15 =NormalizeDouble(iCustom(NULL,15,path,coeff_1,1,0),Digits);
//////////
string GetRelativeProgramPath()
{
int pos2;
//--- получаем абсолютный путь к программе
string path=MQLInfoString(MQL_PROGRAM_PATH);
//--- находим позицию подстроки "\MQL4\"
int pos =StringFind(path,"\\MQL4\\");
//--- подстрока не найдена - ошибка
if(pos<0)
return(NULL);
//--- пропускаем каталог "\MQL4"
pos+=5;
//--- пропускаем лишние '\'
while(StringGetCharacter(path,pos+1)=='\\')
pos++;
//--- если это ресурс, возвращаем путь относительно MQL4-каталога
if(StringFind(path,"::",pos)>=0)
return(StringSubstr(path,pos));
//--- найдем разделитель для первого подкаталога в MQL4 (например, MQL4\Indicators)
//--- если его нет, то вернем путь относительно MQL4-каталога
if((pos2=StringFind(path,"\\",pos+1))<0)
return(StringSubstr(path,pos));
//--- вернем путь относительно подкаталога (например, MQL4\Indicators)
return(StringSubstr(path,pos2+1));
}
Да. Все осталось как прежде в коде. Поменялось только расположение индикатора. Раньше он запрашивался из терминала из \\Indicators , а теперь из самой программы ex4.
#resource "\\Indicators\\##Contrast.ex4"
///////////
string path=GetRelativeProgramPath();
path=path+"::Indicators\\##Contrast.ex4";
ContrastMain_15 =NormalizeDouble(iCustom(NULL,15,path,coeff_1,0,0),Digits);
ContrastSignal_15 =NormalizeDouble(iCustom(NULL,15,path,coeff_1,1,0),Digits);
//////////
string GetRelativeProgramPath()
{
int pos2;
//--- получаем абсолютный путь к программе
string path=MQLInfoString(MQL_PROGRAM_PATH);
//--- находим позицию подстроки "\MQL4\"
int pos =StringFind(path,"\\MQL4\\");
//--- подстрока не найдена - ошибка
if(pos<0)
return(NULL);
//--- пропускаем каталог "\MQL4"
pos+=5;
//--- пропускаем лишние '\'
while(StringGetCharacter(path,pos+1)=='\\')
pos++;
//--- если это ресурс, возвращаем путь относительно MQL4-каталога
if(StringFind(path,"::",pos)>=0)
return(StringSubstr(path,pos));
//--- найдем разделитель для первого подкаталога в MQL4 (например, MQL4\Indicators)
//--- если его нет, то вернем путь относительно MQL4-каталога
if((pos2=StringFind(path,"\\",pos+1))<0)
return(StringSubstr(path,pos));
//--- вернем путь относительно подкаталога (например, MQL4\Indicators)
return(StringSubstr(path,pos2+1));
}