History_Draw_Create





//+------------------------------------------------------------------+
//|                                                          111.mq4 |
//|                                          Copyright © 2007, DRKNN |
//|                                                    drknn@mail.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2007, DRKNN"
#property link      "drknn@mail.ru"
#include <Errors.mqh>
//#property show_inputs
//extern int ChisloSvech=300;
/*
  Ñêðèïò ïðîõîäèò ïî èñòîðèè ñäåëîê è íàíîñèò íà ãðàôèê ñòàòèñòèêó òîðãîâ êàê â òåñòåðå.
*/

//+------------------------------------------------------------------+
//|                 Íà÷àëî ðàáîòû ñêðèïòà                            |
//+------------------------------------------------------------------+
int start()
  {
  
  string SMB=Symbol();
  double OpenBuy=0.0,CloseBuy=0.0,OpenSell=0.0,CloseSell=0.0;//êîîðäèíàòû îòðåçêîâ
  int i,Ticket;
  int HistTotal=0;
  string L_name,Tip,Open_name,Close_name;
  datetime TimeOpenBuy=0,TimeCloseBuy=0,TimeOpenSell=0,TimeCloseSell=0;
  HistTotal=OrdersHistoryTotal();
  //Alert("HistTotal = ",HistTotal);
  for (i=0; i<HistTotal; i++) {//Íà÷àëî öèêëà
    if (!OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) {WriteError(i);}
    if (OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) {//íà÷àëî ðàáîòû ñ âûáðàííûì îðäåðîì
      if(OrderSymbol()!=SMB){continue;}
      
      if(OrderType()==OP_BUY ){
      // ------------- ïîëó÷àåì ïàðàìåòðû ëèíèé --------------
        OpenBuy=OrderOpenPrice();
        CloseBuy=OrderClosePrice();
        Ticket=OrderTicket();
        TimeOpenBuy=OrderOpenTime();
        TimeCloseBuy=OrderCloseTime();
        // ---- ãåíåðèðóåì èìåíà îáúåêòîâ ------
        Tip="Buy";//òèï ñäåëêè
        L_name="L_"+Tip+" ¹ "+Ticket;
        Open_name="Open"+Tip+" ¹ "+Ticket;//ñòðåëêà, îòêðûâàþùàÿ ñäåëêó
        Close_name="Close"+Tip+" ¹ "+Ticket;//ñòðåëêà, çàêðûâàþùàÿ ñäåëêó
        // ---- ñîçäà¸ì îòêðûâàþùóþ ñòðåëêó ------------
        ObjectCreate(Open_name,OBJ_ARROW,0,TimeOpenBuy,OpenBuy);//îòêðûâàþùàÿ ñòðåëêà Áàé-îðäåðà
        ObjectSet(Open_name,OBJPROP_ARROWCODE,1);//êîä ñòðåëêè 232 
        ObjectSet(Open_name,OBJPROP_COLOR,Blue);//öâåò ñòðåëêè
        // ---- ñîçäà¸ì çàêðûâàþùóþ ñòðåëêó ------------
        ObjectCreate(Close_name,OBJ_ARROW,0,TimeCloseBuy,CloseBuy);//çàêðûâàþùàÿ ñòðåëêà Áàé-îðäåðà
        ObjectSet(Close_name,OBJPROP_ARROWCODE,3);//êîä ñòðåëêè  231
        ObjectSet(Close_name,OBJPROP_COLOR,Blue);//öâåò ñòðåëêè
        // ---- ñîçäà¸ì ëèíèè ------------ 
        ObjectCreate(L_name,OBJ_TREND,0,TimeOpenBuy,OpenBuy,TimeCloseBuy,CloseBuy);//
        ObjectSet(L_name,OBJPROP_RAY,false);//çàïðåùàåì ðèñîâàòü ëó÷
        ObjectSet(L_name,OBJPROP_WIDTH,0);//óñòàíàâëèâàåì òîëùèíó ëèíèè ()
        ObjectSet(L_name,OBJPROP_STYLE,0);//óñòàíàâëèâàåì òèï ëèíèè (îòðåçêè)
        ObjectSet(L_name,OBJPROP_STYLE,STYLE_DOT);//óñòàíàâëèâàåì òèï øòðèõîâêè(ïóíêòèðíàÿ ëèíèÿ)
        ObjectSet(L_name,OBJPROP_COLOR,Blue);//óñòàíàâëèâàåì öâåò(ñèíèé/êðàñíûé)
      }
      if(OrderType()==OP_SELL){
        // ------------- ïîëó÷àåì ïàðàìåòðû ëèíèé ------------
        OpenSell=OrderOpenPrice();
        CloseSell=OrderClosePrice();
        Ticket=OrderTicket();
        TimeOpenSell=OrderOpenTime();
        TimeCloseSell=OrderCloseTime();
        // ---- ãåíåðèðóåì èìåíà îáúåêòîâ ------
        Tip="Sell";//òèï ñäåëêè
        L_name="L_"+Tip+" ¹ "+Ticket;
        Open_name="Open"+Tip+" ¹ "+Ticket;//ñòðåëêà, îòêðûâàþùàÿ ñäåëêó
        Close_name="Close"+Tip+" ¹ "+Ticket;//ñòðåëêà, çàêðûâàþùàÿ ñäåëêó
        // ---- ñîçäà¸ì îòêðûâàþùóþ ñòðåëêó ------------
        ObjectCreate(Open_name,OBJ_ARROW,0,TimeOpenSell,OpenSell);//îòêðûâàþùàÿ ñòðåëêà Sell-îðäåðà
        ObjectSet(Open_name,OBJPROP_ARROWCODE,1);//êîä ñòðåëêè 232 
        ObjectSet(Open_name,OBJPROP_COLOR,Red);//öâåò ñòðåëêè
        // ---- ñîçäà¸ì çàêðûâàþùóþ ñòðåëêó ------------
        ObjectCreate(Close_name,OBJ_ARROW,0,TimeCloseSell,CloseSell);//çàêðûâàþùàÿ ñòðåëêà Sell-îðäåðà
        ObjectSet(Close_name,OBJPROP_ARROWCODE,3);//êîä ñòðåëêè  231
        ObjectSet(Close_name,OBJPROP_COLOR,Red);//öâåò ñòðåëêè
        
        // ---- ñîçäà¸ì ëèíèè ------------
        ObjectCreate(L_name,OBJ_TREND,0,TimeOpenSell,OpenSell,TimeCloseSell,CloseSell);//
        ObjectSet(L_name,OBJPROP_RAY,false);//çàïðåùàåì ðèñîâàòü ëó÷
        ObjectSet(L_name,OBJPROP_WIDTH,0);//óñòàíàâëèâàåì òîëùèíó ëèíèè ()
        ObjectSet(L_name,OBJPROP_STYLE,0);//óñòàíàâëèâàåì òèï ëèíèè (îòðåçêè)
        ObjectSet(L_name,OBJPROP_STYLE,STYLE_DOT);//óñòàíàâëèâàåì òèï øòðèõîâêè(ïóíêòèðíàÿ ëèíèÿ)
        ObjectSet(L_name,OBJPROP_COLOR,Red);//óñòàíàâëèâàåì öâåò(ñèíèé/êðàñíûé)
        
      }  
    
    //Print("L_name = ",L_name);
    //ObjectCreate
    }//êîíåö ðàáîòû ñ âûáðàííûì îðäåðîì
  }//Êîíåö öèêëà
  
  
   return(0);
  }
//+------------------------------------------------------------------+
//|                 Êîíåö ðàáîòû ñêðèïòà                             |
//+------------------------------------------------------------------+





Sample





Analysis



Market Information Used:



Indicator Curves created:


Indicators Used:



Custom Indicators Used:

Order Management characteristics:
Checks for the total of closed orders


Other Features: