你这个问题实际上核心就在,如何计算最近一次出场的订单的开仓价格。如下给出我们写的,计算这个价格的自定义函数,请参考:
//------------------获得历史最近一次出场单的进厂价格
int GetLastHistOrderOpenPrice()//返回-1表示最近没有出场单 相当于程序第一次入场
{
for(int i=OrdersHistoryTotal()-1;i>=0;i--)
{
OrderSelect(i, SELECT_BY_POS, MODE_HISTORY);
if(OrderSymbol()==Symbol())
{
return(OrderOpenPrice());
}
}
return(-1);
} |