void onTradeClosing (
     MamdaSubscription*              subscription,
     MamdaTradeListener&             listener,
     const MamaMsg&                  msg,
     const MamdaTradeClosing&        event,
     const MamdaTradeRecap&          recap)
 {
     cout << "Closing trade (" << recap.getSymbol ()
          << " ("              << recap.getPartId () << ")): "
          << "price: "         << event.getClosePrice().getAsString()
          << "; accVol: "      << recap.getAccVolume ()
          << "\n";
 }
 void onTradePossiblyDuplicate (
     MamdaSubscription*                  subscription,
     MamdaTradeListener&                 listener,
     const MamaMsg&                      msg,
     const MamdaTradePossiblyDuplicate&  event,
     const MamdaTradeRecap&              recap)
 {
     cout << "Possibly duplicate trade (" << subscription->getSymbol ()
          << " / "         << event.getMsgQual().getAsString()
          << "("           << event.getMsgQual().getValue()
          << ")): price: " << event.getTradePrice().getAsString()
          << "; accVol: "  << recap.getAccVolume ()
          << " (seq#: "    << event.getEventSeqNum()
          << "; time: "    << event.getEventTime().getAsString()
          << ")\n";
 }
예제 #3
0
 void onTradeOutOfSequence (
     MamdaSubscription*              subscription,
     MamdaTradeListener&             listener,
     const MamaMsg&                  msg,
     const MamdaTradeOutOfSequence&  event,
     const MamdaTradeRecap&          recap) 
 {
     cout << "Out of sequence trade (" << subscription->getSymbol ()
          << " / "         << event.getMsgQual().getAsString()
          << "("           << event.getMsgQual().getValue()
          << ")): price: " << event.getTradePrice().getAsString()
          << "; accVol: "  << recap.getAccVolume()
          << " (seq#: "    << event.getEventSeqNum()
          << "; time: "    << event.getEventTime().getAsString()
          << ")\n"
          << flush;
 }