Calculation of Gold Profit

 
   m_adjust = Point() * (m_symbol.Digits() == 3 || m_symbol.Digits() == 5 ? 10 : 1);
   PipValue = ((m_symbol.TickValue() * m_adjust) / (m_symbol.TickSize()));

   pips_slvalue = StringToDouble(m_pips[0].GetValue());
   pips_tpvalue = StringToDouble(m_pips[1].GetValue());

   profit_slvalue = PipValue * pips_slvalue * m_lotsize;
   profits_tpvalue = PipValue * pips_tpvalue * m_lotsize;

In the Above Code I am getting the Lotsize I want in my EA, for all symbols but for Gold I am Geting a wrong value for profit_slValue 

I am not Understanding especialli that aticle that      says once of gold etc.