如何在MQL5中获得一定数量的未平仓交易

时间:2015-12-12 18:53:15

标签: mql5 metatrader5

我希望在策略测试期间在模拟帐户中获得 MQL5 的未结交易金额。

即使有未平仓交易,

PositionsTotal()OrdersTotal()始终会返回 0

建议的解决方案here不起作用。

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:1)

运行从Metaquotes'下载的Metatrader 5中的代码时出现问题。网站。在外汇经纪商的Metatrader 5实例中运行相同的代码解决了这个问题。

答案 1 :(得分:1)

根据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("\n\n positions for this currency pair:",PositionForThisCurrencyPair);
}