Правильно возвращаете значения из не void-функций, но всё же лучше переходить на новые рельсы - там ничего сложного.
Пишите, не забывайте вставлять директиву #property strict в самом начале кода - где прописаны все директивы, читайте коды ошибок - их описания есть в документации, и всё будет нормально и не сложно.
MetaQuotes Language 4 (MQL4) - встроенный язык программирования торговых стратегий, разработанный компанией MetaQuotes Software Corp. на основе своего многолетнего опыта в создании торгово-информационных платформ. Этот язык позволяет писать собственные программы-эксперты (Expert Advisors), автоматизирующие управление торговыми процессами и...
Здравствуйте,я в программировании новичок. Нигде не нашёл готового кода. Идея такая - нужно из советника управлять пользовательским индикатором, точнее менять его экстерн параметры (один) при наступлении какого-то события. Логика вкратце - если лот (или например число позиций) > заданного значения, в индикаторе ( находящемся в другом окне и никак не связанного с данным советником), изменяется внешняя настройка на "лету" без переинициализации индюка. Может можно попробовать через
string ServiceCustomIndicatorByIndexA(int nIndex);// я даже не знаю тут ANSI или UNICODE нужно
и
int ServiceGetNamesIndicatorsMA(int hwndChart,int nWindow,string &asIndicators[],int nSize);
а как это реализовать не знаю, может кто из программистов простенький блок кода напишет для примера. с/у Денис
Для авторизации и пользования сайтом MQL5.com необходимо разрешить использование файлов Сookie.
Пожалуйста, включите в вашем браузере данную настройку, иначе вы не сможете авторизоваться.
Вы вошли в аккаунт. Двухфакторная аутентификация отключена. Настройте её заново и отсканируйте новый QR-код или продолжите с отключённой двухфакторной аутентификацией.
Быстрее разобраться и понять
запишу цены, как их потом брать, когда какую?
чтобы в этот цикл вставлять вместо rДобрый день! Сделал функцию которая должна увеличивать стоп лосс после того к прошлый ордер закрылся в минус.
Увеличивает на установленный шаг, до достижения максимума. В итоге всегда ставит первоначально значение стоп лосса.
Что не так? Спасибо!
//+------------------------------------------------------------------+
double SL()
{
double sL;
if(OrdersHistoryTotal()==0)
{
sL=StopLoss;
}
if(OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY))
{
if(OrderProfit()>=0)
{
sL=StopLoss;
}
if(OrderProfit()<0 && OrderType()==OP_BUY)
{
sL=OrderOpenPrice()-OrderStopLoss()+SLStep;
}
if(OrderProfit()<0 && OrderType()==OP_SELL)
{
sL=OrderStopLoss()-OrderOpenPrice()+SLStep;
}
}
if(sL>maxStep)
{
sL=StopLoss;
}
return(sL);
}
//+------------------------------------------------------------------+
Что я пишу не так ?
Должно получиться такое http://prntscr.com/lu1kb9
Попробовал под текущий шаблон вставить данные
Но все равно не то. помогитеДобрый день.
Осваиваю эм-кью-эль по учебнику Сергея Ковалева.
Взял от туда советник, скомпилировал, он даже вроде работает, но при компиляции выдает какие-то замечания, не ошибки, а именно предупреждения.
Что надо изменить чтобы компилировалось без замечаний? Заранее спасибо.
А где находить коды ошибок? где эта документация?
В меню данного сайта - вверх гляньте
В меню данного сайта - вверх гляньте
Артём, там документация по mql5, а вопросы в разделе mql4
Sergey Branin:
А где находить коды ошибок? где эта документация?
Тут документация по mql4. А лучше нажать F1 находясь в MetaEditor`e
Артём, там документация по mql5? а вопросы в разделе mql4
Тут документация по mql4. А лучше нажать F1 находясь в MetaEditor`e
А-а-а... Ну всё равно - тоже совсем не сложно - быстрее палец к F1 протянуть и всё найти что нужно, чем сутки ждать ответа на форуме. Не понимаю я ..
а как это реализовать не знаю, может кто из программистов простенький блок кода напишет для примера. с/у Денис