DerivativeSecurityListRequest.h 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. #ifndef FIX43_DERIVATIVESECURITYLISTREQUEST_H
  2. #define FIX43_DERIVATIVESECURITYLISTREQUEST_H
  3. #include "Message.h"
  4. namespace FIX43
  5. {
  6. class DerivativeSecurityListRequest : public Message
  7. {
  8. public:
  9. DerivativeSecurityListRequest() : Message(MsgType()) {}
  10. DerivativeSecurityListRequest(const FIX::Message& m) : Message(m) {}
  11. DerivativeSecurityListRequest(const Message& m) : Message(m) {}
  12. DerivativeSecurityListRequest(const DerivativeSecurityListRequest& m) : Message(m) {}
  13. static FIX::MsgType MsgType() { return FIX::MsgType("z"); }
  14. DerivativeSecurityListRequest(
  15. const FIX::SecurityReqID& aSecurityReqID,
  16. const FIX::SecurityListRequestType& aSecurityListRequestType )
  17. : Message(MsgType())
  18. {
  19. set(aSecurityReqID);
  20. set(aSecurityListRequestType);
  21. }
  22. FIELD_SET(*this, FIX::SecurityReqID);
  23. FIELD_SET(*this, FIX::SecurityListRequestType);
  24. FIELD_SET(*this, FIX::UnderlyingSymbol);
  25. FIELD_SET(*this, FIX::UnderlyingSymbolSfx);
  26. FIELD_SET(*this, FIX::UnderlyingSecurityID);
  27. FIELD_SET(*this, FIX::UnderlyingSecurityIDSource);
  28. FIELD_SET(*this, FIX::UnderlyingProduct);
  29. FIELD_SET(*this, FIX::UnderlyingCFICode);
  30. FIELD_SET(*this, FIX::UnderlyingSecurityType);
  31. FIELD_SET(*this, FIX::UnderlyingMaturityMonthYear);
  32. FIELD_SET(*this, FIX::UnderlyingMaturityDate);
  33. FIELD_SET(*this, FIX::UnderlyingPutOrCall);
  34. FIELD_SET(*this, FIX::UnderlyingCouponPaymentDate);
  35. FIELD_SET(*this, FIX::UnderlyingIssueDate);
  36. FIELD_SET(*this, FIX::UnderlyingRepoCollateralSecurityType);
  37. FIELD_SET(*this, FIX::UnderlyingRepurchaseTerm);
  38. FIELD_SET(*this, FIX::UnderlyingRepurchaseRate);
  39. FIELD_SET(*this, FIX::UnderlyingFactor);
  40. FIELD_SET(*this, FIX::UnderlyingCreditRating);
  41. FIELD_SET(*this, FIX::UnderlyingInstrRegistry);
  42. FIELD_SET(*this, FIX::UnderlyingCountryOfIssue);
  43. FIELD_SET(*this, FIX::UnderlyingStateOrProvinceOfIssue);
  44. FIELD_SET(*this, FIX::UnderlyingLocaleOfIssue);
  45. FIELD_SET(*this, FIX::UnderlyingRedemptionDate);
  46. FIELD_SET(*this, FIX::UnderlyingStrikePrice);
  47. FIELD_SET(*this, FIX::UnderlyingOptAttribute);
  48. FIELD_SET(*this, FIX::UnderlyingContractMultiplier);
  49. FIELD_SET(*this, FIX::UnderlyingCouponRate);
  50. FIELD_SET(*this, FIX::UnderlyingSecurityExchange);
  51. FIELD_SET(*this, FIX::UnderlyingIssuer);
  52. FIELD_SET(*this, FIX::EncodedUnderlyingIssuerLen);
  53. FIELD_SET(*this, FIX::EncodedUnderlyingIssuer);
  54. FIELD_SET(*this, FIX::UnderlyingSecurityDesc);
  55. FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDescLen);
  56. FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDesc);
  57. FIELD_SET(*this, FIX::NoUnderlyingSecurityAltID);
  58. class NoUnderlyingSecurityAltID: public FIX::Group
  59. {
  60. public:
  61. NoUnderlyingSecurityAltID() : FIX::Group(457,458,FIX::message_order(458,459,0)) {}
  62. FIELD_SET(*this, FIX::UnderlyingSecurityAltID);
  63. FIELD_SET(*this, FIX::UnderlyingSecurityAltIDSource);
  64. };
  65. FIELD_SET(*this, FIX::Currency);
  66. FIELD_SET(*this, FIX::Text);
  67. FIELD_SET(*this, FIX::EncodedTextLen);
  68. FIELD_SET(*this, FIX::EncodedText);
  69. FIELD_SET(*this, FIX::TradingSessionID);
  70. FIELD_SET(*this, FIX::TradingSessionSubID);
  71. FIELD_SET(*this, FIX::SubscriptionRequestType);
  72. };
  73. }
  74. #endif