//+------------------------------------------------------------------+
//|                           Скрипт частичного закрытия ордеров.mq4 |
//|                                                      С_е_р_г_у_й |
//|             http://forum.tradelikeapro.ru/index.php?topic=6856.0 |
//+------------------------------------------------------------------+
#property copyright "С_е_р_г_у_й"
#property link      "http://forum.tradelikeapro.ru/index.php?topic=6856.0"
#property description "Частичное закрытие сеток из Buy Sell ордеров с автоопределением"
#property strict

extern  int    Magic     = 123;//Уникальный номер;
extern  int    Delta     = -10;//процент профита от закрываемых ордеров;
//+------------------------------------------------------------------+
#property script_show_inputs
//--- с какими ордерами работаем
enum general_direction 
  { 
  ordersBUY  = OP_BUY,  //Ордера на покупку
  ordersSELL = OP_SELL, //Ордера на продажу
  AUTO       = -1,      //В автоматичуском режиме
  };
//--- input parameters
input general_direction Direct = AUTO;

//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()   
{
   double p = ChartPriceOnDropped();
   
// <------------- Я решил без switch обойтись, а то масло-масляное получится
// В общем надо в цикле по всем ордерам (рыночным) найти ордер, цена открытия которого будет ближе всего к "p"

   if (Direct < 0)      //Режим АВТО-определения направления предстоящей сделки
      {
         //Вот здесь цикл делай
         
      }
  
// <-------------


//Здесь вместо Алерта инфу загнал в MessageBox, потом будем форматировать
   string ss = " Магик =" + IntegerToString(Magic) + "\nСимвол =" + Symbol() + "\nПериод =" + IntegerToString(Period()) + 
               "\nкоординаты: цена = " + DoubleToString(p,5);
   int rat=MessageBox("закрытие ордеров " + ss,"Скрипт частичного закрытия ордеров", MB_OKCANCEL);
   
   if(rat == IDOK)Alert ("закрываем ");
   if(rat == IDCANCEL)Alert("пока");

   return;  
}
//+------------------------------------------------------------------+
