//+------------------------------------------------------------------+ //| OrderDel.mq4 | //| Copyright ゥ 2010, MetaQuotes Software Corp. | //| http://www.metaquotes.net | //+------------------------------------------------------------------+ #property copyright "Copyright ゥ 2010, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" // 修正履歴 // 2011.04.11 コメントを指定した場合、そのコメントに該当する注文のみ削除する // clear = 0を固定とする。 //       int start() を int init()に変更 int start()を追加 // 2012.01.22 削除の条件に、通貨ペアを追加 extern string OrdSymbolL= "↓通貨ペア(全削除の場合,空文字を指定)"; extern string OrdSymbol="EURCHF"; extern string OrdComL= "↓コメント(全削除の場合,空文字を指定)"; extern string OrdCom="kome1"; int clear = 0; int init() { if(clear == 0) { int total = OrdersTotal(); if(total > 0) { for(int ii = total -1; ii >= 0; ii-- ) { bool selected = OrderSelect(ii, SELECT_BY_POS, MODE_TRADES); if(selected) { int type = OrderType(); switch(type) { case OP_BUY: case OP_SELL: case OP_BUYLIMIT: case OP_BUYSTOP: case OP_SELLLIMIT: case OP_SELLSTOP: default: //コメント、通貨 の指定なしの場合、全て削除。 if (OrdCom == "" && OrdSymbol == "") { OrderDelete(OrderTicket()); } //コメントの指定ありの場合、指定分だけ削除。 else if (OrdCom != "" && OrdSymbol == "") { if (OrderComment() == OrdCom) { OrderDelete(OrderTicket()); } } //通貨の指定ありの場合、指定分だけ削除。 else if (OrdCom == "" && OrdSymbol != "") { if (StringSubstr(OrderSymbol(),0,6) == OrdSymbol) { OrderDelete(OrderTicket()); } } //コメント、通貨の両方指定ありの場合、指定分だけ削除。 else if (OrdCom != "" && OrdSymbol != "") { if (StringSubstr(OrderSymbol(),0,6) == OrdSymbol && OrderComment() == OrdCom ) { OrderDelete(OrderTicket()); } } } //switch(type) } //if(selected) } //for(int ii = total -1; ii >= 0; ii-- ) } //if(total > 0) clear = 1; }//if(clear == 0) } //int start() Alert("*** END ***"); return(0); }//+------------------------------------------------------------------+ int start() { return(0); }