//+------------------------------------------------------------------+ //| 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: