#property link "http://www.earunning.com" //+------------------------------------------------------------------+ //| expert initialization function | //+------------------------------------------------------------------+ extern bool clearex=false; extern int pausebetweenline=100; int init() { //---- ObjectCreate("swsl",OBJ_LABEL,0, 0,0); ObjectSet("swsl",OBJPROP_COLOR,Red); ObjectSet("swsl",OBJPROP_XDISTANCE,200); ObjectSet("swsl",OBJPROP_YDISTANCE,20); ObjectSetText("swsl","SL Read from: wait..."); ObjectCreate("swtp",OBJ_LABEL,0, 0,0); ObjectSet("swtp",OBJPROP_COLOR,Red); ObjectSet("swtp",OBJPROP_XDISTANCE,200); ObjectSet("swtp",OBJPROP_YDISTANCE,40); ObjectSetText("swtp","TP Read from: wait..."); //---- return(0); } //+------------------------------------------------------------------+ //| expert deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- ObjectDelete("swsl"); ObjectDelete("swtp"); //---- return(0); } //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ int start() { //---- string objslname=""; string objtpname=""; string selname=""; int objslnamelen=0; int objtpnamelen=0; int i,j, k; ObjectSetText("swsl","SL Read from: wait..."); ObjectSetText("swtp","TP Read from: wait..."); if(OrdersTotal()>0 ){ for(i=0;i=0){ ObjectSetText("swsl","SL Read from: "+selname); Sleep(pausebetweenline); double sl=0; if (ObjectType(selname)==OBJ_HLINE){ sl=ObjectGet(selname, OBJPROP_PRICE1); } if (ObjectType(selname)==OBJ_TREND){ p1=ObjectGet(selname, OBJPROP_PRICE1); t1=ObjectGet(selname, OBJPROP_TIME1); p2=ObjectGet(selname, OBJPROP_PRICE2); t2=ObjectGet(selname, OBJPROP_TIME2); tbar=(t2-Time[0])/60/Period(); if (tbar>0){ for (k=0;k0 && sl>0 && clearex) OrderModify(OrderTicket(), OrderOpenPrice(),0,OrderTakeProfit(), OrderExpiration()); if(OrderType()==OP_BUY && Bid<=sl && sl>0){ OrderClose(OrderTicket(),OrderLots(),Bid,0); } if(OrderType()==OP_SELL && Ask>=sl && sl>0){ OrderClose(OrderTicket(),OrderLots(),Ask,0); } } if (StringFind(selname,objtpname)>=0){ ObjectSetText("swtp","TP Read from: "+selname); Sleep(pausebetweenline); //if (StringSubstr(selname,0,objtpnamelen)==objtpname){ double tp=0; if (ObjectType(selname)==OBJ_HLINE){ tp=ObjectGet(selname, OBJPROP_PRICE1); } if (ObjectType(selname)==OBJ_TREND){ p1=ObjectGet(selname, OBJPROP_PRICE1); t1=ObjectGet(selname, OBJPROP_TIME1); p2=ObjectGet(selname, OBJPROP_PRICE2); t2=ObjectGet(selname, OBJPROP_TIME2); tbar=(t2-Time[0])/60/Period(); if (tbar>0){ for (k=0;k0 && tp>0 && clearex) OrderModify(OrderTicket(), OrderOpenPrice(),OrderStopLoss(),0, OrderExpiration()); if(OrderType()==OP_BUY && Bid>=tp && tp>0){ OrderClose(OrderTicket(),OrderLots(),Bid,0); } if(OrderType()==OP_SELL && Ask<=tp && tp>0){ OrderClose(OrderTicket(),OrderLots(),Ask,0); } }//End if }//End if }//End for }//End if }//End for }//End if //---- return(0); } //+------------------------------------------------------------------+