OrderCommission() must be subtracted?

 

In order to calculate the total profit/loss of an open position, which one of the following equations is correct?

double pl = OrderProfit()+OrderCommission()+OrderSwap();

or

double pl = OrderProfit()-OrderCommission()+OrderSwap();
 
I've only seen plus commission. Don't have a broker charging it so never have verified.
 

If the value of OrderCommission() is always positive (which is not for OrderSwap()), then the second equation must be correct always:

double pl = OrderProfit()-OrderCommission()+OrderSwap();
 
Rasoul:

If the value of OrderCommission() is always positive (which is not for OrderSwap()), then the second equation must be correct always:

It's always negative for me:

 

If you have any doubt or variation between brokers, force it to be positive with fabs()

 
honest_knave:

It's always negative for me:

If you have any doubt or variation between brokers, force it to be positive with fabs()


Thanks for providing real examples. Then I think the following equation must always work correctly:

double pl = OrderProfit()-MathAbs(OrderCommission())+OrderSwap();
 
Rasoul:


Thanks for providing real examples. Then I think the following equation must always work correctly:

No it's not. Your first proposal is the good one.
 

Well, let's cut to the chase... I think the confusion has come from "only seen plus commission [in formula]" being interpreted as "value of OrderCommission() is always positive".

Unless your broker pays you a commission for each trade (if so, please give me your broker's details!) it is going to be a negative number.

In which case just add them all together.

However, if somebody has found a broker anomaly which shows a charged commission as a positive number, then fabs() is one way to deal with it. Whether that causes issues with refunded commissions etc I have no idea.

Reason: