Example #1
0
double AccountTradeInfo::GetTradeDayCommission() const
{
    QMutexLocker oLocker(&m_mLock);
    double dCommission = 0;
    for(auto iPos = m_lPositions.begin() ; iPos != m_lPositions.end() ; iPos++)
    {
        Position *pPosition = *iPos;
        if(pPosition->GetTimestamp().date() == m_pInstrument->GetTradeDay())
        {
            dCommission += pPosition->GetCommission();
        }
    }
    for(auto iPos = m_lTradeDayTransactions.begin() ; iPos !=  m_lTradeDayTransactions.end() ; iPos++)
    {
        Transaction *pTransaction = *iPos;
        dCommission +=pTransaction->GetOpenCommission();
        dCommission += pTransaction->GetCloseCommission();
    }
    return dCommission;
}