◎機能仕様
- MT4の売買履歴から損益合計額を取得して、設定した損失合計額を超えた場合、該当EAを停止する(例えば、10万円の損失合計を超えたら、該当EAを停止する)。
◎詳細仕様
1、変数の宣言
//損失合計額
extern double LimitLoss=-100000;
2、関数定義
double checkOrderHistoryTotal(){
int j;
double profit=0;
double totalProfit=0;
for(j=0; j < OrdersHistoryTotal(); j++) {
//売買履歴を選択する。
if(OrderSelect(j,SELECT_BY_POS,MODE_HISTORY) == false) return(false);
//売買履歴の中から決済部分のみ取得
if(OrderSymbol() == Symbol() && (OrderType()==OP_BUY || OrderType()==OP_SELL)){
//損益を取得
profit=OrderProfit();
//トータル損益に足し込む。
totalProfit = totalProfit + profit;
Print(“totalProfit=”,totalProfit,” “,”profit=”,profit);
}
}
return(totalProfit);
}
3、OnTick関数内に記述
double tl =checkOrderHistoryTotal();
//トータル損益が損失合計額を超えていたら、処理を終了する。
if(tl > LimitLoss){
//safety
return;
}