Любые вопросы новичков по MQL4 и MQL5, помощь и обсуждение по алгоритмам и кодам - страница 466
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Прикольно получилось . Из кода убрали
Стоп теперь дергается на каждом тике )))))
Ну добавьте.
Еще раз добрый вечер. Полная суть вопроса.
Выставляю советник (рабочий) в маркет. платформа МТ4. Выставлять можно один файл. Файл советника. Он должен пройти валидность, но не может, так как это советник без индикаторов. Они в отдельных файлах. Советник работает с четырьмя индикаторами. Их как то надо присоединить с советнику. Либо указать пути, то есть прописать в советнике... Что? и Куда? Подскажите, какая форма и как это сделать.
Из того что я понял необходимо воспользоваться "Ресурсами" . Но как это правильно все прописать, в какие места в советнике не знаю. Возможно Вы знаете и другие варианты решения ситуации.
Спасибо .
вот что пишет при не прохождении валидности
Еще раз добрый вечер. Полная суть вопроса.
Выставляю советник (рабочий) в маркет. платформа МТ4. Выставлять можно один файл. Файл советника. Он должен пройти валидность, но не может, так как это советник без индикаторов. Они в отдельных файлах. Советник работает с четырьмя индикаторами. Их как то надо присоединить с советнику. Либо указать пути, то есть прописать в советнике... Что? и Куда? Подскажите, какая форма и как это сделать.
Из того что я понял необходимо воспользоваться "Ресурсами" . Но как это правильно все прописать, в какие места в советнике не знаю. Возможно Вы знаете и другие варианты решения ситуации.
Спасибо .
вот что пишет при не прохождении валидности
печально. что вы написали советник и не можете добавить в него индикаторы , для его работы.
печально. что вы написали советник и не можете добавить в него индикаторы , для его работы.
Приветствую.
Задача: Чтоб при новом тике, если изменили входной параметр Slippage чтоб его значение присваивалось переменной Slippage1, чтоб значение Slippage1 выводилось в коммент, в журнал выводилось "Параметры изменены".
Что не получается: при Slippage1!=Slippage в журнал не выводится "Параметры изменены".
Вопрос: что я делаю не так?
Приветствую.
Задача: Чтоб при новом тике, если изменили входной параметр Slippage чтоб его значение присваивалось переменной Slippage1, чтоб значение Slippage1 выводилось в коммент, в журнал выводилось "Параметры изменены".
Что не получается: при Slippage1!=Slippage в журнал не выводится "Параметры изменены".
Вопрос: что я делаю не так?
Если изменили входной параметр, то в OnInit происходит присвоение переменной Slippage1 значения Slippag. Соответственно не равными они быть не могут.
Если изменили входной параметр, то в OnInit происходит присвоение переменной Slippage1 значения Slippag. Соответственно не равными они быть не могут.
Да, спасибо. Вот только-что дошло
Здравствуйте! Помогите, пожалуйста, разобраться с ошибкой, возникающей в тестере при попытке модификации ордера (перевод в безубыток): на место SL ставлю функцию OrderOpenPrice(), при этом в тестере выдаёь ошибку error1 (по документации это означает, что есть попытка передачи в качестве параметров функции неизмененные значения). Код прилагаю! Заранее благодарю!
void DeleteOrderFunction2() //функция удаления второй отложки И перевод второго ордера в безубыток вечером определённого дня
{
bool flag = false;
if (FlagDeleteSecondOrder2 == true)
{
if(DayOfWeek() == DAYOFWEEK && //если выдранный день недели
Hour() == 22 //если вечер
)
{
if(BuyCount() == 1 && //если есть открытый ордер на покупку
SellStopCount() == 1 // и есть отложка на продажу
)
{
for( int i = 0; i < OrdersTotal(); i++) //перебираем ордера
{
OrderSelectX(i, SELECT_BY_POS, MODE_TRADES);
switch(OrderType())
{
case OP_BUY: if(OrderProfit() > 0 &&
Bid > OrderOpenPrice()
)
{
OrderModifyX(OrderTicket(),OrderOpenPrice(),OrderOpenPrice(),OrderTakeProfit(),0,Arrow_Color);
flag =true;
}
break;
case OP_SELLSTOP: if(flag==true)
{
OrderDeleteX(OrderTicket(), Arrow_Color);
}
break;
}
}
}
if(SellCount() == 1 && //если есть открытый ордер на продажу
BuyStopCount() == 1 // и есть отложка на покупку
)
{ Print("ЕСТЬ!!!!");
for( int i = 0; i < OrdersTotal(); i++) //перебираем ордера
{
OrderSelectX(i, SELECT_BY_POS, MODE_TRADES);
switch(OrderType())
{
case OP_SELL: if (OrderProfit() > 0 &&
Ask < OrderOpenPrice()
)
{
OrderModifyX(OrderTicket(), OrderOpenPrice(), OrderOpenPrice(),OrderTakeProfit(),0, Arrow_Color);
flag = true;Print("flag =", flag);
}
break;
case OP_BUYSTOP: if(flag == true)
{
Print("flag =", flag);
OrderDeleteX(OrderTicket(), Arrow_Color);
}
break;
}
}
}
}
}
}