平均約定価格計算関数 getAverageOpenPrice

MetaTrader 4
GogoJungle
2019/08/02 20:57
16

平均約定価格を算出するための関数です。

double getAverageOpenPrice(
int magic,
string symbol
);

パラメータ
magic
平均約定価格を算出するポジションのマジックナンバーを指定します。

symbol
平均約定価格を算出するポジションの通貨ペア名を指定します。

戻り値
パラメータに指定したマジックナンバー・通貨ペアのポジションの平均約定価格を返します。
ポジションが存在しない場合には結果は0となります。
計算過程でエラーが生じた場合には結果は-1となります。

double getAverageOpenPrice(int magic, string symbol){
double total = 0;
double lots = 0;
for(int i = OrdersTotal() - 1; i >= 0; i–){
if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES) == false) return(-1);
if(OrderMagicNumber() != magic) continue;
if(OrderSymbol() != symbol) continue;
if(OrderType() == OP_BUY || OrderType() == OP_SELL){
total += OrderOpenPrice() * OrderLots();
lots += OrderLots();
}
}
if(total <= 0){
return(0);
}
return(total / lots);
}

コメント

関連項目

カテゴリ
投稿内容
新着順
投稿者
閲覧数
コメント
お気に入り
いいね
検索結果がありません。