VBAG:
почему? для сделки Buy - цвет BuyColor. Пример:
Надо:
sergeev:
почему? для сделки Buy - цвет BuyColor.
почему? для сделки Buy - цвет BuyColor.
Скорее всего потому, что:
POSITION_TYPE_BUY = 0
Попробуйте пример на график бросить - всё наоборот получается.
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства позиций
- www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства позиций - Документация по MQL5
да.
Спасибо, исправим.
Всем доброго дня!
Не хочу создавать новую тему, поэтому напишу здесь. Уже много лет натыкаюсь на эти ошибки в Справочнике MQL5 -> Константы, перечисления и структуры -> Торговые константы -> Типы торговых операций (ошибки выделил жёлтым цветом). Кто-нибудь может исправить эти ошибки, как на сайте MQL5, так и в MetaEditor МТ5?
С уважением, Владимир.
Пример торговой операции TRADE_ACTION_PENDING для установки отложенного ордера: #property description "Пример установки отложенных ордеров" #property script_show_inputs #define EXPERT_MAGIC 123456 // MagicNumber эксперта input ENUM_ORDER_TYPE orderType=ORDER_TYPE_BUY_LIMIT; // тип ордера //+------------------------------------------------------------------+ //| Установка отложенных ордеров | //+------------------------------------------------------------------+ void OnStart() { //-- объявление и инициализация запроса и результата MqlTradeRequest request={}; MqlTradeResult result={}; //--- параметры для установки отложенного ордера request.action =TRADE_ACTION_PENDING; // тип торговой операции request.symbol =Symbol(); // символ request.volume =0.1; // объем в 0.1 лот request.deviation=2; // допустимое отклонение от цены request.magic =EXPERT_MAGIC; // MagicNumber ордера int offset = 50; // отступ от текущей цены для установки ордера, в пунктах double price; // цена срабатывания ордера double point=SymbolInfoDouble(_Symbol,SYMBOL_POINT); // размер пункта int digits=SymbolInfoInteger(_Symbol,SYMBOL_DIGITS); // кол-во знаков после запятой (точность) //--- проверка типа операции if(orderType==ORDER_TYPE_BUY_LIMIT) { request.type =ORDER_TYPE_BUY_LIMIT; // тип ордера price=SymbolInfoDouble(Symbol(),SYMBOL_ASK)-offset*point; // цена для открытия request.price =NormalizeDouble(price,digits); // нормализованная цена открытия } else if(orderType==ORDER_TYPE_SELL_LIMIT) { request.type =ORDER_TYPE_SELL_LIMIT; // тип ордера price=SymbolInfoDouble(Symbol(),SYMBOL_ASK)+offset*point; // цена для открытия request.price =NormalizeDouble(price,digits); // нормализованная цена открытия } else if(orderType==ORDER_TYPE_BUY_STOP) { request.type =ORDER_TYPE_BUY_STOP; // тип ордера price =SymbolInfoDouble(Symbol(),SYMBOL_ASK)+offset*point; // цена для открытия request.price=NormalizeDouble(price,digits); // нормализованная цена открытия } else if(orderType==ORDER_TYPE_SELL_STOP) { request.type =ORDER_TYPE_SELL_STOP; // тип ордера price=SymbolInfoDouble(Symbol(),SYMBOL_ASK)-offset*point; // цена для открытия request.price =NormalizeDouble(price,digits); // нормализованная цена открытия } else Alert("Этот пример только для установки отложенных ордеров"); // если выбран не отложенный ордер //--- отправка запроса if(!OrderSend(request,result)) PrintFormat("OrderSend error %d",GetLastError()); // если отправить запрос не удалось, вывести код ошибки //--- информация об операции PrintFormat("retcode=%u deal=%I64u order=%I64u",result.retcode,result.deal,result.order); }
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Пример:
Надо: