我想在策略测试期间获得模拟账户上MQL5
中的未结交易量。
PositionsTotal()
和OrdersTotal()
总是返回0
,即使存在未结交易。
这里建议的解决方案不起作用。
任何帮助都将不胜感激。
在Metaquotes网站下载的Metatrader 5中运行代码时出现问题。在外汇经纪商的Metatrader 5实例中运行相同的代码解决了问题。
根据https://mql5tutorial.com/mql5-tutorial-how-to-simply-count-positions-with-mql5/,您可以使用以下代码进行
void OnTick()
{
int PositionForThisCurrencyPair = 0;
for (int i = PositionsTotal()-1; i>=0; i--)
{
string symbol = PositionGetSymbol(i);
if(Symbol() == symbol)
{
PositionForThisCurrencyPair+=1 ;
}
}
Comment("nn positions for this currency pair:",PositionForThisCurrencyPair);
}