Смотри, как бесплатно скачать роботов
Ищи нас в Telegram!
Ставь лайки и следи за новостями
Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят
Понравился скрипт?
Оцени его работу в терминале MetaTrader 5
Скрипты

Pending orders UP - скрипт для MetaTrader 5

Просмотров:
3782
Рейтинг:
(36)
Опубликован:
2017.08.28 14:01
Обновлен:
2021.08.24 08:29
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

Скрипт "Pending orders UP" выставляет сетку ордеров ВВЕРХ от текущей цены.

Gap, Step, Stop Loss, Take Profit and Deviation - in Points (1.00055-1.00045=10 points)


Входные параметры

  • Gap for pending orders UP from the current price - отступ от текущей цены для первого отложенного ордера;
  • Step between orders UP - шаг между отложенными ордерами;
  • Type of pending orders UP - тип отложенного ордера (может быть или Buy Stop или Sell Limit);
  • UP quantity - количество выставляемых ордеров;
  • Lots - объем каждого отложенного ордера;
  • Stop Loss  - стоп лосс;
  • Take Profit  - тейк профит.

Скрипт осуществляет максимально быструю отправку торговых приказов на размещение отложенных ордеров благодаря включению асинхронного режима торговых операций:

m_trade.SetAsyncMode(true);

Вот пример отправки торговых приказов для пяти отложенных ордеров:

2018.02.26 13:16:17.307 script Pending orders UP (EURCAD,H1) loaded successfully
2018.02.26 13:16:18.963 '7884130': buy stop 0.01 EURCAD at 1.56094 sl: 1.55894 tp: 1.56294
2018.02.26 13:16:18.963 '7884130': buy stop 0.01 EURCAD at 1.56394 sl: 1.56194 tp: 1.56594
2018.02.26 13:16:18.963 '7884130': buy stop 0.01 EURCAD at 1.56694 sl: 1.56494 tp: 1.56894
2018.02.26 13:16:18.963 '7884130': buy stop 0.01 EURCAD at 1.56994 sl: 1.56794 tp: 1.57194
2018.02.26 13:16:18.964 '7884130': buy stop 0.01 EURCAD at 1.57294 sl: 1.57094 tp: 1.57494
2018.02.26 13:16:18.965 script Pending orders UP (EURCAD,H1) removed

Пять приказов БЫЛИ ОТПРАВЛЕНЫ за 1 миллисекунду!

А теперь полный отчет, от начала старта скрипта и до его выгрузки (время отправки первого торгового приказа 2018.02.26 13:16:18.963):

2018.02.26 13:16:17.307 script Pending orders UP (EURCAD,H1) loaded successfully
2018.02.26 13:16:18.963 '7884130': buy stop 0.01 EURCAD at 1.56094 sl: 1.55894 tp: 1.56294
2018.02.26 13:16:18.963 '7884130': buy stop 0.01 EURCAD at 1.56394 sl: 1.56194 tp: 1.56594
2018.02.26 13:16:18.963 '7884130': buy stop 0.01 EURCAD at 1.56694 sl: 1.56494 tp: 1.56894
2018.02.26 13:16:18.963 '7884130': buy stop 0.01 EURCAD at 1.56994 sl: 1.56794 tp: 1.57194
2018.02.26 13:16:18.964 '7884130': buy stop 0.01 EURCAD at 1.57294 sl: 1.57094 tp: 1.57494
2018.02.26 13:16:18.965 script Pending orders UP (EURCAD,H1) removed
2018.02.26 13:16:19.051 '7884130': accepted buy stop 0.01 EURCAD at 1.56094 sl: 1.55894 tp: 1.56294
2018.02.26 13:16:19.051 '7884130': order #212450980 buy stop 0.01 / 0.01 EURCAD at market done in 87.964 ms
2018.02.26 13:16:19.051 '7884130': accepted buy stop 0.01 EURCAD at 1.56394 sl: 1.56194 tp: 1.56594
2018.02.26 13:16:19.052 '7884130': order #212450981 buy stop 0.01 / 0.01 EURCAD at market done in 89.147 ms
2018.02.26 13:16:19.054 '7884130': accepted buy stop 0.01 EURCAD at 1.56694 sl: 1.56494 tp: 1.56894
2018.02.26 13:16:19.064 '7884130': order #212450982 buy stop 0.01 / 0.01 EURCAD at market done in 100.414 ms
2018.02.26 13:16:19.069 '7884130': accepted buy stop 0.01 EURCAD at 1.56994 sl: 1.56794 tp: 1.57194
2018.02.26 13:16:19.070 '7884130': accepted buy stop 0.01 EURCAD at 1.57294 sl: 1.57094 tp: 1.57494
2018.02.26 13:16:19.075 '7884130': order #212450983 buy stop 0.01 / 0.01 EURCAD at market done in 111.374 ms
2018.02.26 13:16:19.077 '7884130': order #212450984 buy stop 0.01 / 0.01 EURCAD at market done in 113.043 ms

время подтверждения размещения последнего отложенного ордера 2018.02.26 13:16:19.077. Итого, все операции заняли ВСЕГО 114 миллисекунд!

Также в начале работы осуществляется проверка корректности введенного объема для отложенных ордеров:

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   if(InpLots<=0.0)
     {
      Print("The \"Lots\" can't be smaller or equal to zero");
      return;
     }
//---
   if(!m_symbol.Name(Symbol())) // sets symbol name
      return;
   if(!RefreshRates())
      return;

   string err_text="";
   if(!CheckVolumeValue(InpLots,err_text))
     {
      Print(err_text);
      return;
     }
//---
Expert Expert

Библиотека чтения/записи параметров произвольных советников.

History Deals and Orders History Deals and Orders

Скрипт "History Deals and Orders" выводит абсолютно все свойства для сделок и ордеров из торговой истории в заданном временном интервале.

Pending orders DOWN Pending orders DOWN

Скрипт выставляет несколько отложенных ордеров вниз от текущей цены.

MA Zigzag Trend MA Zigzag Trend

Очередной индикатор тренда ZigZag, основанный на точках экстремумов индикатора SMA.