123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- #ifndef FIX40_EXECUTIONREPORT_H
- #define FIX40_EXECUTIONREPORT_H
- #include "Message.h"
- namespace FIX40
- {
- class ExecutionReport : public Message
- {
- public:
- ExecutionReport() : Message(MsgType()) {}
- ExecutionReport(const FIX::Message& m) : Message(m) {}
- ExecutionReport(const Message& m) : Message(m) {}
- ExecutionReport(const ExecutionReport& m) : Message(m) {}
- static FIX::MsgType MsgType() { return FIX::MsgType("8"); }
- ExecutionReport(
- const FIX::OrderID& aOrderID,
- const FIX::ExecID& aExecID,
- const FIX::ExecTransType& aExecTransType,
- const FIX::OrdStatus& aOrdStatus,
- const FIX::Symbol& aSymbol,
- const FIX::Side& aSide,
- const FIX::OrderQty& aOrderQty,
- const FIX::LastShares& aLastShares,
- const FIX::LastPx& aLastPx,
- const FIX::CumQty& aCumQty,
- const FIX::AvgPx& aAvgPx )
- : Message(MsgType())
- {
- set(aOrderID);
- set(aExecID);
- set(aExecTransType);
- set(aOrdStatus);
- set(aSymbol);
- set(aSide);
- set(aOrderQty);
- set(aLastShares);
- set(aLastPx);
- set(aCumQty);
- set(aAvgPx);
- }
- FIELD_SET(*this, FIX::OrderID);
- FIELD_SET(*this, FIX::ClOrdID);
- FIELD_SET(*this, FIX::ClientID);
- FIELD_SET(*this, FIX::ExecBroker);
- FIELD_SET(*this, FIX::ListID);
- FIELD_SET(*this, FIX::ExecID);
- FIELD_SET(*this, FIX::ExecTransType);
- FIELD_SET(*this, FIX::ExecRefID);
- FIELD_SET(*this, FIX::OrdStatus);
- FIELD_SET(*this, FIX::OrdRejReason);
- FIELD_SET(*this, FIX::Account);
- FIELD_SET(*this, FIX::SettlmntTyp);
- FIELD_SET(*this, FIX::FutSettDate);
- FIELD_SET(*this, FIX::Symbol);
- FIELD_SET(*this, FIX::SymbolSfx);
- FIELD_SET(*this, FIX::SecurityID);
- FIELD_SET(*this, FIX::IDSource);
- FIELD_SET(*this, FIX::Issuer);
- FIELD_SET(*this, FIX::SecurityDesc);
- FIELD_SET(*this, FIX::Side);
- FIELD_SET(*this, FIX::OrderQty);
- FIELD_SET(*this, FIX::OrdType);
- FIELD_SET(*this, FIX::Price);
- FIELD_SET(*this, FIX::StopPx);
- FIELD_SET(*this, FIX::Currency);
- FIELD_SET(*this, FIX::TimeInForce);
- FIELD_SET(*this, FIX::ExpireTime);
- FIELD_SET(*this, FIX::ExecInst);
- FIELD_SET(*this, FIX::Rule80A);
- FIELD_SET(*this, FIX::LastShares);
- FIELD_SET(*this, FIX::LastPx);
- FIELD_SET(*this, FIX::LastMkt);
- FIELD_SET(*this, FIX::LastCapacity);
- FIELD_SET(*this, FIX::CumQty);
- FIELD_SET(*this, FIX::AvgPx);
- FIELD_SET(*this, FIX::TradeDate);
- FIELD_SET(*this, FIX::TransactTime);
- FIELD_SET(*this, FIX::ReportToExch);
- FIELD_SET(*this, FIX::Commission);
- FIELD_SET(*this, FIX::CommType);
- FIELD_SET(*this, FIX::NetMoney);
- FIELD_SET(*this, FIX::SettlCurrAmt);
- FIELD_SET(*this, FIX::SettlCurrency);
- FIELD_SET(*this, FIX::Text);
- FIELD_SET(*this, FIX::NoMiscFees);
- class NoMiscFees: public FIX::Group
- {
- public:
- NoMiscFees() : FIX::Group(136,137,FIX::message_order(137,138,139,0)) {}
- FIELD_SET(*this, FIX::MiscFeeAmt);
- FIELD_SET(*this, FIX::MiscFeeCurr);
- FIELD_SET(*this, FIX::MiscFeeType);
- };
- };
- }
- #endif
|