平均持仓价格
循环查询持仓单,计算每一个持仓单的 开仓价格*开仓量 汇总。然后除以 持仓总量。此计算方法考虑了不同持仓单量不同的影响,将价格分摊到不同持仓量上。
补充:
算出平均持仓价格,就可以计算平均盈利点数。(用现价与平均持仓价格相减即可)。这里要注意的是,总持仓量的不同,所以平均盈利点数只是针对价格,未考虑持仓量的因素。
double HoldingOrderAvgPrice()
{
double Tmp=0;
double TotalLots=0;
for(int i=OrdersTotal()-1;i>=0;i--)
{
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic )
{
Tmp+==OrderOpenPrice()*OrderLots();
TotalLots+=OrderLots();
}
}
return(Tmp/TotalLots);
}
页:
[1]