Советники: ExpMartin - страница 4

 
Andrey Martyushev:

Добрый день!
Подскажите как добавить в начале кода, чтобы скрипт изначально реально не выставлял ордера, а пока виртуально также с виртуальными стоплосами, и например когда 4 или 5 (n-ый) раз споподряд виртуально стоплос закроется - тогда уже начинать выставлять ордера реально...Возможно так?

Добрый день.

Возможно, можем сделать.

Необходимо прописать "виртуальную машину": открытие и закрытие виртуальных ордеров. Счетчик, который будет считать количество виртуальных ордеров, прописать сброс счетчика, если закрылся "виртуальный профитный ордер", чтобы начать сначала.

 
Dmitriy Epshteyn:

Добрый день.

Возможно, можем сделать.

Необходимо прописать "виртуальную машину": открытие и закрытие виртуальных ордеров. Счетчик, который будет считать количество виртуальных ордеров, прописать сброс счетчика, если закрылся "виртуальный профитный ордер", чтобы начать сначала.


сколько по стоимости или так?))))

 
у меня не выставляет стоп и профит.......почему?
 
Сергей Дыбленко:
у меня не выставляет стоп и профит.......почему?

он их выставляет - но ведет и сопровождает ВИРТУАЛЬНО ОТСЛЕЖИВАЯ. Брокеру эти стопы не отображаются. Когда ставите обращайте внимание на точность котирования символа торуемого у вашего брокера 5 - ти или 4 - х значное, такие и ставьте нули (их кол-во ) в значениях стопа и тейка

//----обслуживание виртуальных стопов ордера SELL
   if(ticket_sell>0)
      if(OrderSelect(ticket_sell,SELECT_BY_TICKET)==true)
         if(OrderCloseTime()==0)
            if(OrderOpenPrice()-TakeProfit*Point>=MarketInfo(Symbol(),MODE_ASK))
              {
               price=MarketInfo(Symbol(),MODE_ASK);
               slip=MarketInfo(Symbol(),MODE_SPREAD)*2;
               return(OrderClose(ticket_sell,OrderLots(),price,slip,Red));
              }
//----
   if(ticket_sell>0)
      if(OrderSelect(ticket_sell,SELECT_BY_TICKET)==true)
         if(OrderCloseTime()==0)
            if(OrderOpenPrice()+StopLoss*Point<=MarketInfo(Symbol(),MODE_ASK))
              {
               price=MarketInfo(Symbol(),MODE_ASK);
               slip=MarketInfo(Symbol(),MODE_SPREAD)*2;
               return(OrderClose(ticket_sell,OrderLots(),price,slip,Red));
              }
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| открыть ордер BUY                                                |
//+------------------------------------------------------------------+
int OpenBuy(double lots)
  {
   double price;
//----
   int slip;
//----
   price=MarketInfo(Symbol(),MODE_ASK);
   slip=MarketInfo(Symbol(),MODE_SPREAD)*2;
//----
   return(OrderSend(Symbol(),OP_BUY,lots,price,slip,0.0,0.0,"",Magic,0,Blue));
  }

вот пример их значений - если это пятизнак, то это 10 настоящих пипсов

extern double       Lots =0.1;  //стартовый лот
extern double     Factor =2.0;  //множитель лота
extern int         Limit =5;    //ограничение количества умножений лота
extern int      StopLoss =100;  //уровень ограничения убытков
extern int    TakeProfit =100;  //уровень фиксации прибыли
extern int     StartType =0;    //тип стартового ордера, 0-BUY, 1-SELL
extern int         Magic =1000; //индивидуальный номер эксперта
Причина обращения: