mops0000

 
Уровень 6

  Торгую в компаниях:


Группа "Стол заказов MQL"

Рейтинг 2153



РЕКОМЕНДУЮ




Лучшее от mops0000



Советник закрывающий по балансу Комментариев 2
2017-03-01 09:40:03Рейтинг 0

Добавить алерты Комментариев 11
2021-12-04 18:53:07Рейтинг 0

correlation Комментариев 5
2022-01-02 16:14:16Рейтинг 0

Закрывающий по sl советник

Здравствуйте, нужен советник закрывающий все открытые ордера, выставленные другими советниками или руками за x секунд назад без SL. Т.е. если открыт ордер и в течении X секунд, у него не установился sl, то он закрывается. В настройках нужно только количество секунд с момента открытия ордера. И если, у советника не получается закрыть в момент, то чтобы пробывал закрывать, до того момента как получиться. Спасибо!
  • 0
  • Просмотров: 2909
  • 13 февраля 2017, 06:52
  • mops0000
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Вступите в группу "Стол заказов MQL", чтобы следить за обновлениями
ПРИСОЕДИНИТЬСЯ К ГРУППЕ
присоединиться
  Предыдущая запись в группе
Help!!! Help!!! Help!!!
Следующая запись в группе  
Strength_HeatMap
12 февраля 2017
13 февраля 2017

Брокер для ваших роботов, 15 лет на рынке

Комментарии (7)

+
0
Сделаю сегодня.
avatar

  35  AM2 Сообщений: 16443 - Андрей

  • 13 февраля 2017, 07:41
+
0
Вариант для одного символа.


//+------------------------------------------------------------------+
//|                                                      SLClose.mq4 |
//|                                              Copyright 2017, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2017, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict

input int Sec=15;
input int Slip=30;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---

//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
//---

  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
datetime OrderOpenTm()
  {
   datetime t=0;
   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderType()<2) t=OrderOpenTime();
        }
     }
   return(t);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void CloseAll()
  {
   bool cl;
   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol())
           {
            if(OrderType()==OP_BUY)
              {
               RefreshRates();
               cl=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Bid,Digits),Slip,White);
              }
            if(OrderType()==OP_SELL)
              {
               RefreshRates();
               cl=OrderClose(OrderTicket(),OrderLots(),NormalizeDouble(Ask,Digits),Slip,White);
              }
           }
        }
     }
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   for(int i=OrdersTotal()-1;i>=0;i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if((TimeCurrent()-OrderOpenTm())>Sec && OrderStopLoss()==0)
           {
            CloseAll();
           }
        }
     }
  }
//+------------------------------------------------------------------+


Редактирован: 13 февраля 2017, 20:21
avatar

  35  AM2 Сообщений: 16443 - Андрей

  • 13 февраля 2017, 20:21
+
0
Андрей, ты в OnTick сначала проверяешь все ордера любого символа на условие. И если стоплосс по ордеру не выставлен, то закрываешь все ордера по символу, на котором установлен советник. *think* 
avatar

  27  Oxy Сообщений: 3430 - ..ιllιlι.lι.ιllι.ιlι..

  • 14 февраля 2017, 02:03
+
0
avatar

  35  AM2 Сообщений: 16443 - Андрей

  • 14 февраля 2017, 17:04
+
0
я в личку mops0000 написала, за сколько готова выполнить заказ
avatar

  27  Oxy Сообщений: 3430 - ..ιllιlι.lι.ιllι.ιlι..

  • 14 февраля 2017, 18:41
+
0
А нельзя чтобы любой ордер закрывал, а то получается этот надо крепить к 25 парам в терминале, а их уже 25 открыто:) ? Спасибо!
avatar

  6  mops0000 Автор Сообщений: 31

  • 13 февраля 2017, 22:23
+
0
Доделал.
avatar

  35  AM2 Сообщений: 16443 - Андрей

  • 14 февраля 2017, 21:22

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий