[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 50
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
В самом советнике выложен полностью весь код.
Всем большое спасибо за помощь.
Здравствуйте. Помогите пожалуйста страдающему человеку.
У меня вот такая проблема, я только начинаю изучать MQL, и решин написать свой первый простенький советник, но возникла проблема
в коде не открываются отложенные ордера обьясните почему и в чем проблема.
int OpenStops()
{
if(OrderSelect(CalculateCurrentOrders1(Symbol()),SELECT_BY_POS,MODE_TRADES)==true && OrderType()==OP_BUY) // Проверка на то что открытый ордер на покупку
int ticket;
double LotSize=OrderLots(); // Размер лота открытого ордера
double OpenPrice=OrderOpenPrice(); // Цена открытия открытого ордера
ticket=OrderSend(Symbol(),OP_SELLSTOP,LotSize*2,OpenPrice-DS*Point,0,SL*Point,TP*Point,"",MAGIC,0,Red); // Открытие отложки на продажу в противополжну сторону до открытого ордера
ticket=OrderSend(Symbol(),OP_BUYSTOP,Lot,OpenPrice+TP*Point,0,SL*Point,TP*Point,"",MAGIC,0,Blue); // Открытие отложки на покупку в сторону продолжения до открытого ордера
if(OrderSelect(CalculateCurrentOrders1(Symbol()),SELECT_BY_POS,MODE_TRADES)==true && OrderType()==OP_SELL) // Проверка на то что открытый ордер на продажу
ticket=OrderSend(Symbol(),OP_SELLSTOP,Lot,OpenPrice-TP*Point,0,SL*Point,TP*Point,"",MAGIC,0,Red); // Открытие отложки на покупку в сторону продолжения до открытого ордера
ticket=OrderSend(Symbol(),OP_BUYSTOP,LotSize*2,OpenPrice+DS*Point,0,SL*Point,TP*Point,"",MAGIC,0,Blue); // Открытие отложки на покупку в противополжну сторону до открытого ордера
}
Для начала научитесь вставлять правильно код - через Контрл+Альт+М - потом уже все остальное...
Для начала научитесь вставлять правильно код - через Контрл+Альт+М - потом уже все остальное...
Подскажите скрипт или советник который бы отображал информацию на экране (спред, уровень стопов, открытые сделки, прибыль по сделкам, прибыль за сегодня, и т.д.). Спасибо.
Спасибо за помощь, это мне очень помогло
У меня вот такая проблема, я только начинаю изучать MQL, и решин написать свой первый простенький советник, но возникла проблема
в коде не открываются отложенные ордера обьясните почему и в чем проблема. Так лучше
в коде не открываются отложенные ордера обьясните почему и в чем проблема.
По порядку:
У OrderSelect CalculateCurrentOrders1 выходит за допустимые пределы, максимальный "POS" будет CalculateCurrentOrders1(Symbol())-1. Сама конструкция if: если выпоняется условие, вы объявляете переменную "ticket"? Где-то явно напрашиваются фигурные скобки. Просто даже не могу понять что вы пытаетесь сделать. Видно, вы пока в начале длинного пути, можно было бы за вас это написать, но смысла в этом коде нет, стало быть это "учебная задача", значит вы хотите это сделать это самостоятельно. И это правильно. Воспользуйтесь учебником, посмотрите советник использующий отложки, появятся более конкретные вопросы - будем рады помочь.
З.Ы. сама запутался в ваших скобках, пост подправил.
Подскажите скрипт или советник который бы отображал информацию на экране (спред, уровень стопов, открытые сделки, прибыль по сделкам, прибыль за сегодня, и т.д.). Спасибо.
Все кроме отображения спреда, есть во вкладках терминала. Сомневаюсь, что скрипт отобразить это более наглядно.
А спред в пипсах можно вывести на чарт, через дополнительную строчку в советнике:
Comment((Ask - Bid) / Point);
Я горжусь знакомством с Вами.
это же не жаль времени - всё расжевать.
Так держать!
Спасибо!
Я тоже.
sergeev - respect и уважуха))
P.S. Sorry если немного не ф тему))
По порядку:
У OrderSelect CalculateCurrentOrders1 выходит за допустимые пределы, максимальный "POS" будет CalculateCurrentOrders1(Symbol())-1. Сама конструкция if: если выпоняется условие, вы объявляете переменную "ticket"? Где-то явно напрашиваются фигурные скобки. Просто даже не могу понять что вы пытаетесь сделать. Видно, вы пока в начале длинного пути, можно было бы за вас это написать, но смысла в этом коде нет, стало быть это "учебная задача", значит вы хотите это сделать это самостоятельно. И это правильно. Воспользуйтесь учебником, посмотрите советник использующий отложки, появятся более конкретные вопросы - будем рады помочь.
З.Ы. сама запутался в ваших скобках, пост подправил.
Большое спасибо за то что обратили на мое сообщение внимание.
Замысел наверное намного проще моего кода))) Суть этого кода заключаеться в том что б отложки выставлялись относительно последнего уже открытого ордера, соответственно относительно цены открытия и обьема уже открытого последнего ордера.