下载MetaTrader 5
要添加评论,请登录注册
您想要编写技术指标吗?在MQL5 参考中找出解决方案!
xin2014
42
xin2014 2015.01.05 03:05 

一直以为OrderProfit()的值就是OrderClosePrice()-OrderOpenPrice(),

但好像数据对不上,有谁知道具体是怎么运算的吗?

拜托了!

Xiangdong Guo
3737
Xiangdong Guo 2015.01.05 22:26  
xin2014:

一直以为OrderProfit()的值就是OrderClosePrice()-OrderOpenPrice(),

但好像数据对不上,有谁知道具体是怎么运算的吗?

拜托了!

还要乘上交易量,最后还要将此交易品种换算成你账户本金对应的货币值(比如有些人本金为USD,有些则是EUR啥的)。
xin2014
42
xin2014 2015.01.06 08:34  
tradelife:
还要乘上交易量,最后还要将此交易品种换算成你账户本金对应的货币值(比如有些人本金为USD,有些则是EUR啥的)。

非常感谢,但可以给出具体的计算式吗?

我从别处看到下面这个算式:

      (OrderClosePrice()-OrderOpenPrice())*OrderLots()*MarketInfo(OrderSymbol(),MODE_TICKVALUE)/Point;


请问这个算式正确吗?如果不正确可否告知正确算式?非常感谢!

Xiangdong Guo
3737
Xiangdong Guo 2015.01.06 13:30  
xin2014:

非常感谢,但可以给出具体的计算式吗?

我从别处看到下面这个算式:

      (OrderClosePrice()-OrderOpenPrice())*OrderLots()*MarketInfo(OrderSymbol(),MODE_TICKVALUE)/Point;


请问这个算式正确吗?如果不正确可否告知正确算式?非常感谢!

你需要用此公式来验证,这比问来的答案更理解深刻。

找几个典型货币对,如 EURUSD,USDCHF,EURJPY,XAUUSD。

然后再用模拟账户,测试本币不同时,会有何变化。即,分别用USD,EUR,JPY 开账户。

enbo lu
版主
1943
enbo lu 2015.01.06 16:03  
xin2014:

非常感谢,但可以给出具体的计算式吗?

我从别处看到下面这个算式:

      (OrderClosePrice()-OrderOpenPrice())*OrderLots()*MarketInfo(OrderSymbol(),MODE_TICKVALUE)/Point;


请问这个算式正确吗?如果不正确可否告知正确算式?非常感谢!

不准确,区别在于并不是所有交易标的的TICKSIZE都等于Point :

 //------每point价值

double tick_value = MarketInfo(Symbol(),MODE_TICKVALUE);

double tick_size  = MarketInfo(Symbol(),MODE_TICKSIZE);

double value_per_point = tick_value/(tick_size/Point());   

然后计算:

  (OrderClosePrice()-OrderOpenPrice())/Point()*value_per_point*OrderLots();

要求某订单的最终盈亏,还要考虑swap和comission 。

/
要添加评论,请登录注册