MassQuote.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. #ifndef FIX42_MASSQUOTE_H
  2. #define FIX42_MASSQUOTE_H
  3. #include "Message.h"
  4. namespace FIX42
  5. {
  6. class MassQuote : public Message
  7. {
  8. public:
  9. MassQuote() : Message(MsgType()) {}
  10. MassQuote(const FIX::Message& m) : Message(m) {}
  11. MassQuote(const Message& m) : Message(m) {}
  12. MassQuote(const MassQuote& m) : Message(m) {}
  13. static FIX::MsgType MsgType() { return FIX::MsgType("i"); }
  14. MassQuote(
  15. const FIX::QuoteID& aQuoteID )
  16. : Message(MsgType())
  17. {
  18. set(aQuoteID);
  19. }
  20. FIELD_SET(*this, FIX::QuoteReqID);
  21. FIELD_SET(*this, FIX::QuoteID);
  22. FIELD_SET(*this, FIX::QuoteResponseLevel);
  23. FIELD_SET(*this, FIX::DefBidSize);
  24. FIELD_SET(*this, FIX::DefOfferSize);
  25. FIELD_SET(*this, FIX::NoQuoteSets);
  26. class NoQuoteSets: public FIX::Group
  27. {
  28. public:
  29. NoQuoteSets() : FIX::Group(296,302,FIX::message_order(302,311,312,309,305,310,313,314,315,316,317,436,435,308,306,362,363,307,364,365,367,304,295,0)) {}
  30. FIELD_SET(*this, FIX::QuoteSetID);
  31. FIELD_SET(*this, FIX::UnderlyingSymbol);
  32. FIELD_SET(*this, FIX::UnderlyingSymbolSfx);
  33. FIELD_SET(*this, FIX::UnderlyingSecurityID);
  34. FIELD_SET(*this, FIX::UnderlyingIDSource);
  35. FIELD_SET(*this, FIX::UnderlyingSecurityType);
  36. FIELD_SET(*this, FIX::UnderlyingMaturityMonthYear);
  37. FIELD_SET(*this, FIX::UnderlyingMaturityDay);
  38. FIELD_SET(*this, FIX::UnderlyingPutOrCall);
  39. FIELD_SET(*this, FIX::UnderlyingStrikePrice);
  40. FIELD_SET(*this, FIX::UnderlyingOptAttribute);
  41. FIELD_SET(*this, FIX::UnderlyingContractMultiplier);
  42. FIELD_SET(*this, FIX::UnderlyingCouponRate);
  43. FIELD_SET(*this, FIX::UnderlyingSecurityExchange);
  44. FIELD_SET(*this, FIX::UnderlyingIssuer);
  45. FIELD_SET(*this, FIX::EncodedUnderlyingIssuerLen);
  46. FIELD_SET(*this, FIX::EncodedUnderlyingIssuer);
  47. FIELD_SET(*this, FIX::UnderlyingSecurityDesc);
  48. FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDescLen);
  49. FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDesc);
  50. FIELD_SET(*this, FIX::QuoteSetValidUntilTime);
  51. FIELD_SET(*this, FIX::TotQuoteEntries);
  52. FIELD_SET(*this, FIX::NoQuoteEntries);
  53. class NoQuoteEntries: public FIX::Group
  54. {
  55. public:
  56. NoQuoteEntries() : FIX::Group(295,299,FIX::message_order(299,55,65,48,22,167,200,205,201,202,206,231,223,207,106,348,349,107,350,351,132,133,134,135,62,188,190,189,191,60,336,64,40,193,192,15,0)) {}
  57. FIELD_SET(*this, FIX::QuoteEntryID);
  58. FIELD_SET(*this, FIX::Symbol);
  59. FIELD_SET(*this, FIX::SymbolSfx);
  60. FIELD_SET(*this, FIX::SecurityID);
  61. FIELD_SET(*this, FIX::IDSource);
  62. FIELD_SET(*this, FIX::SecurityType);
  63. FIELD_SET(*this, FIX::MaturityMonthYear);
  64. FIELD_SET(*this, FIX::MaturityDay);
  65. FIELD_SET(*this, FIX::PutOrCall);
  66. FIELD_SET(*this, FIX::StrikePrice);
  67. FIELD_SET(*this, FIX::OptAttribute);
  68. FIELD_SET(*this, FIX::ContractMultiplier);
  69. FIELD_SET(*this, FIX::CouponRate);
  70. FIELD_SET(*this, FIX::SecurityExchange);
  71. FIELD_SET(*this, FIX::Issuer);
  72. FIELD_SET(*this, FIX::EncodedIssuerLen);
  73. FIELD_SET(*this, FIX::EncodedIssuer);
  74. FIELD_SET(*this, FIX::SecurityDesc);
  75. FIELD_SET(*this, FIX::EncodedSecurityDescLen);
  76. FIELD_SET(*this, FIX::EncodedSecurityDesc);
  77. FIELD_SET(*this, FIX::BidPx);
  78. FIELD_SET(*this, FIX::OfferPx);
  79. FIELD_SET(*this, FIX::BidSize);
  80. FIELD_SET(*this, FIX::OfferSize);
  81. FIELD_SET(*this, FIX::ValidUntilTime);
  82. FIELD_SET(*this, FIX::BidSpotRate);
  83. FIELD_SET(*this, FIX::OfferSpotRate);
  84. FIELD_SET(*this, FIX::BidForwardPoints);
  85. FIELD_SET(*this, FIX::OfferForwardPoints);
  86. FIELD_SET(*this, FIX::TransactTime);
  87. FIELD_SET(*this, FIX::TradingSessionID);
  88. FIELD_SET(*this, FIX::FutSettDate);
  89. FIELD_SET(*this, FIX::OrdType);
  90. FIELD_SET(*this, FIX::FutSettDate2);
  91. FIELD_SET(*this, FIX::OrderQty2);
  92. FIELD_SET(*this, FIX::Currency);
  93. };
  94. };
  95. };
  96. }
  97. #endif