//+------------------------------------------------------------------+ //| ShowOrdersOnChart.mq4 | //| Rukuki_Ake | //| http://firefun.ru | //+------------------------------------------------------------------+ #property copyright "Rukuki_Ake" #property link "http://firefun.ru" #property indicator_chart_window int iOrdersTotal = 0; int iOpenedOrders = 0; // количество открытых ордеров по данному инструменту int aOpenedOrderTypes[0]; string aOpenedOrderSymbols[0]; datetime aOpenedOrderOpenTimes[0]; double aOpenedOrderOpenPrices[0]; int aOpenedOrderTickets[0]; double aOpenedOrderProfits[0]; double aOpenedOrderSwaps[0]; double aOpenedOrderLots[0]; int iOrdersHistoryTotal = 0; int iClosedOrders = 0; int aClosedOrderTypes[0]; string aClosedOrderSymbols[0]; datetime aClosedOrderOpenTimes[0]; datetime aClosedOrderCloseTimes[0]; double aClosedOrderOpenPrices[0]; double aClosedOrderClosePrices[0]; int aClosedOrderTickets[0]; double aClosedOrderProfits[0]; double aClosedOrderSwaps[0]; double aClosedOrderLots[0]; string sSymbol; int init() { sSymbol = Symbol(); } int deinit() { fDeleteOrderObjects (); } void fInitOrders(bool bAll=true) { int iOrderType; int iCounter = 0; string sOrderSymbol; /* Открытые ордера */ iOrdersTotal=OrdersTotal(); if (iOpenedOrders>0) { ArrayResize(aOpenedOrderTypes,0); ArrayResize(aOpenedOrderSymbols,0); ArrayResize(aOpenedOrderOpenTimes,0); ArrayResize(aOpenedOrderOpenPrices,0); ArrayResize(aOpenedOrderTickets,0); ArrayResize(aOpenedOrderProfits,0); ArrayResize(aOpenedOrderSwaps,0); ArrayResize(aOpenedOrderLots,0); iOpenedOrders=0; } for(int i=0;i0) { ArrayResize(aClosedOrderTypes,0); ArrayResize(aClosedOrderSymbols,0); ArrayResize(aClosedOrderOpenTimes,0); ArrayResize(aClosedOrderCloseTimes,0); ArrayResize(aClosedOrderOpenPrices,0); ArrayResize(aClosedOrderClosePrices,0); ArrayResize(aClosedOrderTickets,0); ArrayResize(aClosedOrderProfits,0); ArrayResize(aClosedOrderSwaps,0); ArrayResize(aClosedOrderLots,0); iClosedOrders=0; } for(int j=0;j=0) { ObjectSet("rukukiLine"+aOpenedOrderTickets[i],OBJPROP_COLOR,Green); ObjectSet("rukukiArrow"+aOpenedOrderTickets[i],OBJPROP_COLOR,Green); } else { ObjectSet("rukukiLine"+aOpenedOrderTickets[i],OBJPROP_COLOR,Maroon); ObjectSet("rukukiArrow"+aOpenedOrderTickets[i],OBJPROP_COLOR,Maroon); } } if (bAll) { for(int j=0;j=0) { ObjectSet("rukukiLine"+aClosedOrderTickets[j],OBJPROP_COLOR,Green); ObjectSet("rukukiArrow"+aClosedOrderTickets[j],OBJPROP_COLOR,Green); ObjectSet("rukukiX"+aClosedOrderTickets[j],OBJPROP_COLOR,Lime); } else { ObjectSet("rukukiLine"+aClosedOrderTickets[j],OBJPROP_COLOR,Maroon); ObjectSet("rukukiArrow"+aClosedOrderTickets[j],OBJPROP_COLOR,Maroon); ObjectSet("rukukiX"+aClosedOrderTickets[j],OBJPROP_COLOR,Red); } } } } void fDeleteOrderObjects (bool bAll = true) { for(int i=0;i