Просмотр сообщений

В этом разделе можно просмотреть все сообщения, сделанные этим пользователем.


Сообщения - OXOTHUK87

Страницы: [1]
1
Может сейчас прикрепилось.

2
Спасибо kozak. Исправил не красивые ошибки и добавил переменную для коментариев. Если кто будет пользоваться, не забудьте в строке Tip_operacii(именно в этой, не в Tiр) в зависимости от операции(Селл, Бай менять 1 или 0). Вроде пока все.

3
Это не советник, а скрипт(чтобы открывал сделки там в Сервисе нужно галочку поставить);правда там глюк какой то по открытию селла, если кто увидет исправьте или скажите. По поводу линий: как я понял вскольз о системе, сначала рисуются границы(нижняя и верхняя), после линия для цены открытия(белая), вертикальная так просто для помощи построения. После нажатия ОК открываются три ордера(ТР считаются по ... внизу скрипта посмотрите, кто хочет свое добавте, SL вначале его процент от прогноза по умолчанию 33%, взял от туда же). Если нужно то могу сделать чтобы рисовал цели(по ТР) и не открывал позиции. Скажите как прикреплять файлы, я его может до ума доведу, по просьбам

4
Я тут на основе prognozmm.xls и скрипта по ГУО(графическое управление) накидал скрипт,в помощь по авто-открытию трех ордеров.Просьба если кто может отправить на OXOTHUK@inbox.ru правила открытия ордеров, а то что то не видно простому. НУ и к скрипту, там просто, сначала в Сервис ставишь подтверждение о торговле советником; примерно кидаешь скрипт на график; ставишь тип операции(Бай=0, Селл=1), если хочешь меняешь цвета будующих линий и можно изменить % стопа;ТЫКАЕШЬ НА ГРАФИК; перетаскиваешь линии на нужные места и ок, иначе он просто удалит именно то что нарисовал сам.
 //+------------------------------------------------------------------+
//|                                         ГУО_открытие_ордеров.mq4 |
//|                                                       МДВ ©2007. |
//|                                    http://www.OXOTHUK87@imbox.ru |
//+------------------------------------------------------------------+
#property copyright "МДВ ©2007."
#property link      "http://www.OXOTHUK87@imbox.ru"

#property show_inputs
 
 extern string Tip = "+++++Бай=0+++Селл=1+++++++";
 extern int Tip_operacii=0;                  //тип операции Бай=0 Селл=1
 
 extern string Level_Color = "+++++Цвета_границ+++++++";
 // Цвета отображения границ на графике:
 extern color Up_Level_Color = Lime;        //верхняя граница участка
 extern color Down_Level_Color = DeepPink;  // нижняя граница участка

 extern string Open_Line_Color = "+++++Цвет_открытия_линии_свечи+++";
 // Цвет линии открытия:
 extern color Price_Open_Color = White;
 
 extern string Vertical_Line = "+++++Цвет_вертикальной_линии+++";
 // Цвет вертикальной линии:
 extern color Vertical_Line_Color = Yellow;


// вторая часть скрипта посвещена открытию сделок:

 extern int  Procent_Stop_Lossa=33;  //процент стоп лоса от прогноза
 extern double  Lot=0.1;             //Величина лота


//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
#include <WinUser32.mqh>
int start()
  {
//----
   int Box;
   double Price_Open,Up_Level,Down_Level;
   datetime Time_Verticali;
   
   Print("++++++++++++++++++++++++++++++++++++++++++++");
   delete();
   
   //это вдруг если тип сделки неопределен:
   if(Tip_operacii!=0 && Tip_operacii!=1)
    {
      Box=MessageBox("Tip_operacii должен быть\n"+" равен 0(Buy) либо 1(Sell)\n"+"Начать Заново"
                     ,"Ошибка",0x00000000|0x00000010|0x00040000);
     
     if(Box==1)return(-1);
    }
   
   
   
   //начальные параметры:   
   
   Price_Open=PriceOnDropped();              //узнали цену куда кинули скрипт мышью
   if(Price_Open<=0)Price_Open=Ask+30*Point; //если меньше нуля то пусть будет Ask+30*Poin
   
   Up_Level=Price_Open+50*Point;            // просто установили премерные уровни
   Down_Level=Price_Open-50*Point;
   
   Time_Verticali=TimeOnDropped( );         //возвращает значение времени  в точки бросания
                                            //скрипта

 
   
   //создание всевозможных линий:
   
   //Линия открытия свечи:
    ObjectCreate("Price_Open",OBJ_HLINE,0,0,Price_Open,0,0,0,0);
    ObjectSet("Price_Open",OBJPROP_COLOR,Price_Open_Color);
    ObjectSetText("Price_Open","Price_Open",7,"Arial",Price_Open_Color);
   
   //Верхняя граница:
    ObjectCreate("Up_Level",OBJ_HLINE,0,0,Up_Level,0,0,0,0);
    ObjectSet("Up_Level",OBJPROP_COLOR,Up_Level_Color);
    ObjectSetText("Up_Level","Up_Level",7,"Arial",Up_Level_Color);
   
   
    //нижняя граница:
    ObjectCreate("Down_Level",OBJ_HLINE,0,0,Down_Level,0,0,0,0);
    ObjectSet("Down_Level",OBJPROP_COLOR,Down_Level_Color);
    ObjectSetText("Down_Level","Down_Level",7,"Arial",Down_Level_Color);
   
   //вертикальная линия, она просто вспомогательная:
    ObjectCreate("Vertical",OBJ_VLINE,0,Time_Verticali,0,0,0,0,0);
    ObjectSet("Vertical",OBJPROP_COLOR,Vertical_Line_Color);
   
   
   
   
   //создание бокса:
   string Text_Box="Сначала щелкните по графику.Перетащите \n"+"линии на нужные места и нажмите \"OK\".\n"
   +"Для отказа от скрипта и удаления \n"+"нарисовавшихся линий нажмите \"Отмена\".";
   
     Box=MessageBox(Text_Box,"Установка уравней",0x00000001|0x00000040|0x00040000);
   if(Box!=1){delete();return(0);} //если отмена удаляем объекты, путем вызова ф-ии delete()
   
   
   
   
   //Анализируем данные после перестановки линий:
   
   Price_Open=NormalizeDouble(ObjectGet("Price_Open",OBJPROP_PRICE1),MarketInfo(Symbol(),MODE_DIGITS));
   Up_Level=NormalizeDouble(ObjectGet("Up_Level",OBJPROP_PRICE1),MarketInfo(Symbol(),MODE_DIGITS));
   Down_Level=NormalizeDouble(ObjectGet("Down_Level",OBJPROP_PRICE1),MarketInfo(Symbol(),MODE_DIGITS));
   
  // это если верхняя граница вдруг окажется ниже других линий:
  Print("Price_Open=",Price_Open,"  Up_Level=",Up_Level,"  Down_Level=",Down_Level);
   if(Up_Level<=Price_Open ||Up_Level<=Down_Level )
    {
     Box=MessageBox("Неправильно установлена верхняя граница","Ошибка",0x00000005|0x00000010|0x00040000);
     if(Box==4){ObjectsRedraw();start();}
     delete();return(-1);
    }
   
 
  //часть скрипта отвечающая за расчет уравней стоп_лосса и тейк_профита и открытия сделок:
   int ticket;                    //для открытия сделок
   double prognoz;                //прогнозируемое количество пунктов которое цена пройдет
   double Stop_Loss,TP1,TP2,TP3;  //стоп лосс,тейк профиты: первого ,второго и третьего уравня
   
   
   prognoz=Up_Level-Down_Level;
   Stop_Loss=prognoz/100*Procent_Stop_Lossa;
   TP1=prognoz*0.382;
   TP2=prognoz*0.618;
   TP3=prognoz;
   
   //округление:
   Stop_Loss=NormalizeDouble(Stop_Loss,MarketInfo(Symbol(),MODE_DIGITS));
   TP1=NormalizeDouble(TP1,MarketInfo(Symbol(),MODE_DIGITS));
   TP2=NormalizeDouble(TP2,MarketInfo(Symbol(),MODE_DIGITS));
   TP3=NormalizeDouble(TP3,MarketInfo(Symbol(),MODE_DIGITS));
   
 
  // Если тип операции Бай:
   if(Tip_operacii==0)
    {
      Print("Stop_Loss=",Price_Open-Stop_Loss,"  TP1=",Price_Open+TP1);
       Print("Stop_Loss=",Price_Open-Stop_Loss,"  TP2=",Price_Open+TP2);
        Print("Stop_Loss=",Price_Open-Stop_Loss,"  TP3=",Price_Open+TP3);
   
      ticket=OrderSend(Symbol(),OP_BUY,Lot,Ask,5,Price_Open-Stop_Loss,Price_Open+TP1,"МУТЕКИ(ДЕМАРК)",0,0,Blue);
      if (ticket<0)Alert("ГУО_ОО: LastError = ", GetLastError());
   
      ticket=OrderSend(Symbol(),OP_BUY,Lot,Ask,5,Price_Open-Stop_Loss,Price_Open+TP2,"МУТЕКИ(ДЕМАРК)",0,0,Blue);
      if (ticket<0)Alert("ГУО_ОО: LastError = ", GetLastError());
     
      ticket=OrderSend(Symbol(),OP_BUY,Lot,Ask,5,Price_Open-Stop_Loss,Price_Open+TP2,"МУТЕКИ(ДЕМАРК)",0,0,Blue);
      if (ticket<0)Alert("ГУО_ОО: LastError = ", GetLastError());
   
    }
 
  // Если тип операции Селл:
  if(Tip_operacii==1)
    {
      Print("Stop_Loss=",Price_Open+Stop_Loss,"  TP1=",Price_Open-TP1);
      Print("Stop_Loss=",Price_Open+Stop_Loss,"  TP2=",Price_Open-TP2);
      Print("Stop_Loss=",Price_Open+Stop_Loss,"  TP3=",Price_Open-TP3);
     
     
      ticket=OrderSend(Symbol(),OP_BUY,Lot,Bid,5,Price_Open+Stop_Loss,Price_Open-TP1,"МУТЕКИ(ДЕМАРК)",0,0,Blue);
      if (ticket<0)Alert("ГУО_ОО: LastError = ", GetLastError());
     
      ticket=OrderSend(Symbol(),OP_BUY,Lot,Bid,5,Price_Open+Stop_Loss,Price_Open-TP2,"МУТЕКИ(ДЕМАРК)",0,0,Blue);
      if (ticket<0)Alert("ГУО_ОО: LastError = ", GetLastError());
     
      ticket=OrderSend(Symbol(),OP_BUY,Lot,Bid,5,Price_Open+Stop_Loss,Price_Open-TP2,"МУТЕКИ(ДЕМАРК)",0,0,Blue);
      if (ticket<0)Alert("ГУО_ОО: LastError = ", GetLastError());
   
    }
 
   
   
   
//----
   return(0);
  }
 
 
  int delete()
  {
   //удаление созданных ранее объектов
   ObjectDelete("Price_Open");
   ObjectDelete("Up_Level");
   ObjectDelete("Down_Level");
   ObjectDelete("Vertical");
   return(0);
  }
//+------------------------------------------------------------------+

не нашел как крепить файл

Страницы: [1]