1 #ifndef FIX44_NEWORDERSINGLE_H 2 #define FIX44_NEWORDERSINGLE_H 3 4 #include "Message.h" 5 6 namespace FIX44 7 { 8 9 class NewOrderSingle : public Message 10 { 11 public: NewOrderSingle()12 NewOrderSingle() : Message(MsgType()) {} NewOrderSingle(const FIX::Message & m)13 NewOrderSingle(const FIX::Message& m) : Message(m) {} NewOrderSingle(const Message & m)14 NewOrderSingle(const Message& m) : Message(m) {} NewOrderSingle(const NewOrderSingle & m)15 NewOrderSingle(const NewOrderSingle& m) : Message(m) {} MsgType()16 static FIX::MsgType MsgType() { return FIX::MsgType("D"); } 17 NewOrderSingle(const FIX::ClOrdID & aClOrdID,const FIX::Side & aSide,const FIX::TransactTime & aTransactTime,const FIX::OrdType & aOrdType)18 NewOrderSingle( 19 const FIX::ClOrdID& aClOrdID, 20 const FIX::Side& aSide, 21 const FIX::TransactTime& aTransactTime, 22 const FIX::OrdType& aOrdType ) 23 : Message(MsgType()) 24 { 25 set(aClOrdID); 26 set(aSide); 27 set(aTransactTime); 28 set(aOrdType); 29 } 30 31 FIELD_SET(*this, FIX::ClOrdID); 32 FIELD_SET(*this, FIX::SecondaryClOrdID); 33 FIELD_SET(*this, FIX::ClOrdLinkID); 34 FIELD_SET(*this, FIX::NoPartyIDs); 35 class NoPartyIDs: public FIX::Group 36 { 37 public: NoPartyIDs()38 NoPartyIDs() : FIX::Group(453,448,FIX::message_order(448,447,452,802,0)) {} 39 FIELD_SET(*this, FIX::PartyID); 40 FIELD_SET(*this, FIX::PartyIDSource); 41 FIELD_SET(*this, FIX::PartyRole); 42 FIELD_SET(*this, FIX::NoPartySubIDs); 43 class NoPartySubIDs: public FIX::Group 44 { 45 public: NoPartySubIDs()46 NoPartySubIDs() : FIX::Group(802,523,FIX::message_order(523,803,0)) {} 47 FIELD_SET(*this, FIX::PartySubID); 48 FIELD_SET(*this, FIX::PartySubIDType); 49 }; 50 }; 51 FIELD_SET(*this, FIX::TradeOriginationDate); 52 FIELD_SET(*this, FIX::TradeDate); 53 FIELD_SET(*this, FIX::Account); 54 FIELD_SET(*this, FIX::AcctIDSource); 55 FIELD_SET(*this, FIX::AccountType); 56 FIELD_SET(*this, FIX::DayBookingInst); 57 FIELD_SET(*this, FIX::BookingUnit); 58 FIELD_SET(*this, FIX::PreallocMethod); 59 FIELD_SET(*this, FIX::AllocID); 60 FIELD_SET(*this, FIX::NoAllocs); 61 class NoAllocs: public FIX::Group 62 { 63 public: NoAllocs()64 NoAllocs() : FIX::Group(78,79,FIX::message_order(79,661,736,467,539,80,0)) {} 65 FIELD_SET(*this, FIX::AllocAccount); 66 FIELD_SET(*this, FIX::AllocAcctIDSource); 67 FIELD_SET(*this, FIX::AllocSettlCurrency); 68 FIELD_SET(*this, FIX::IndividualAllocID); 69 FIELD_SET(*this, FIX::NoNestedPartyIDs); 70 class NoNestedPartyIDs: public FIX::Group 71 { 72 public: NoNestedPartyIDs()73 NoNestedPartyIDs() : FIX::Group(539,524,FIX::message_order(524,525,538,804,0)) {} 74 FIELD_SET(*this, FIX::NestedPartyID); 75 FIELD_SET(*this, FIX::NestedPartyIDSource); 76 FIELD_SET(*this, FIX::NestedPartyRole); 77 FIELD_SET(*this, FIX::NoNestedPartySubIDs); 78 class NoNestedPartySubIDs: public FIX::Group 79 { 80 public: NoNestedPartySubIDs()81 NoNestedPartySubIDs() : FIX::Group(804,545,FIX::message_order(545,805,0)) {} 82 FIELD_SET(*this, FIX::NestedPartySubID); 83 FIELD_SET(*this, FIX::NestedPartySubIDType); 84 }; 85 }; 86 FIELD_SET(*this, FIX::AllocQty); 87 }; 88 FIELD_SET(*this, FIX::SettlType); 89 FIELD_SET(*this, FIX::SettlDate); 90 FIELD_SET(*this, FIX::CashMargin); 91 FIELD_SET(*this, FIX::ClearingFeeIndicator); 92 FIELD_SET(*this, FIX::HandlInst); 93 FIELD_SET(*this, FIX::ExecInst); 94 FIELD_SET(*this, FIX::MinQty); 95 FIELD_SET(*this, FIX::MaxFloor); 96 FIELD_SET(*this, FIX::ExDestination); 97 FIELD_SET(*this, FIX::NoTradingSessions); 98 class NoTradingSessions: public FIX::Group 99 { 100 public: NoTradingSessions()101 NoTradingSessions() : FIX::Group(386,336,FIX::message_order(336,625,0)) {} 102 FIELD_SET(*this, FIX::TradingSessionID); 103 FIELD_SET(*this, FIX::TradingSessionSubID); 104 }; 105 FIELD_SET(*this, FIX::ProcessCode); 106 FIELD_SET(*this, FIX::Symbol); 107 FIELD_SET(*this, FIX::SymbolSfx); 108 FIELD_SET(*this, FIX::SecurityID); 109 FIELD_SET(*this, FIX::SecurityIDSource); 110 FIELD_SET(*this, FIX::NoSecurityAltID); 111 class NoSecurityAltID: public FIX::Group 112 { 113 public: NoSecurityAltID()114 NoSecurityAltID() : FIX::Group(454,455,FIX::message_order(455,456,0)) {} 115 FIELD_SET(*this, FIX::SecurityAltID); 116 FIELD_SET(*this, FIX::SecurityAltIDSource); 117 }; 118 FIELD_SET(*this, FIX::Product); 119 FIELD_SET(*this, FIX::CFICode); 120 FIELD_SET(*this, FIX::SecurityType); 121 FIELD_SET(*this, FIX::SecuritySubType); 122 FIELD_SET(*this, FIX::MaturityMonthYear); 123 FIELD_SET(*this, FIX::MaturityDate); 124 FIELD_SET(*this, FIX::PutOrCall); 125 FIELD_SET(*this, FIX::CouponPaymentDate); 126 FIELD_SET(*this, FIX::IssueDate); 127 FIELD_SET(*this, FIX::RepoCollateralSecurityType); 128 FIELD_SET(*this, FIX::RepurchaseTerm); 129 FIELD_SET(*this, FIX::RepurchaseRate); 130 FIELD_SET(*this, FIX::Factor); 131 FIELD_SET(*this, FIX::CreditRating); 132 FIELD_SET(*this, FIX::InstrRegistry); 133 FIELD_SET(*this, FIX::CountryOfIssue); 134 FIELD_SET(*this, FIX::StateOrProvinceOfIssue); 135 FIELD_SET(*this, FIX::LocaleOfIssue); 136 FIELD_SET(*this, FIX::RedemptionDate); 137 FIELD_SET(*this, FIX::StrikePrice); 138 FIELD_SET(*this, FIX::StrikeCurrency); 139 FIELD_SET(*this, FIX::OptAttribute); 140 FIELD_SET(*this, FIX::ContractMultiplier); 141 FIELD_SET(*this, FIX::CouponRate); 142 FIELD_SET(*this, FIX::SecurityExchange); 143 FIELD_SET(*this, FIX::Issuer); 144 FIELD_SET(*this, FIX::EncodedIssuerLen); 145 FIELD_SET(*this, FIX::EncodedIssuer); 146 FIELD_SET(*this, FIX::SecurityDesc); 147 FIELD_SET(*this, FIX::EncodedSecurityDescLen); 148 FIELD_SET(*this, FIX::EncodedSecurityDesc); 149 FIELD_SET(*this, FIX::Pool); 150 FIELD_SET(*this, FIX::ContractSettlMonth); 151 FIELD_SET(*this, FIX::CPProgram); 152 FIELD_SET(*this, FIX::CPRegType); 153 FIELD_SET(*this, FIX::NoEvents); 154 class NoEvents: public FIX::Group 155 { 156 public: NoEvents()157 NoEvents() : FIX::Group(864,865,FIX::message_order(865,866,867,868,0)) {} 158 FIELD_SET(*this, FIX::EventType); 159 FIELD_SET(*this, FIX::EventDate); 160 FIELD_SET(*this, FIX::EventPx); 161 FIELD_SET(*this, FIX::EventText); 162 }; 163 FIELD_SET(*this, FIX::DatedDate); 164 FIELD_SET(*this, FIX::InterestAccrualDate); 165 FIELD_SET(*this, FIX::AgreementDesc); 166 FIELD_SET(*this, FIX::AgreementID); 167 FIELD_SET(*this, FIX::AgreementDate); 168 FIELD_SET(*this, FIX::AgreementCurrency); 169 FIELD_SET(*this, FIX::TerminationType); 170 FIELD_SET(*this, FIX::StartDate); 171 FIELD_SET(*this, FIX::EndDate); 172 FIELD_SET(*this, FIX::DeliveryType); 173 FIELD_SET(*this, FIX::MarginRatio); 174 FIELD_SET(*this, FIX::NoUnderlyings); 175 class NoUnderlyings: public FIX::Group 176 { 177 public: NoUnderlyings()178 NoUnderlyings() : FIX::Group(711,311,FIX::message_order(311,312,309,305,462,463,310,763,313,542,315,241,242,243,244,245,246,256,595,592,593,594,247,316,941,317,436,435,308,306,362,363,307,364,365,877,878,318,879,810,882,883,884,885,886,0)) {} 179 FIELD_SET(*this, FIX::UnderlyingSymbol); 180 FIELD_SET(*this, FIX::UnderlyingSymbolSfx); 181 FIELD_SET(*this, FIX::UnderlyingSecurityID); 182 FIELD_SET(*this, FIX::UnderlyingSecurityIDSource); 183 FIELD_SET(*this, FIX::NoUnderlyingSecurityAltID); 184 class NoUnderlyingSecurityAltID: public FIX::Group 185 { 186 public: NoUnderlyingSecurityAltID()187 NoUnderlyingSecurityAltID() : FIX::Group(457,458,FIX::message_order(458,459,0)) {} 188 FIELD_SET(*this, FIX::UnderlyingSecurityAltID); 189 FIELD_SET(*this, FIX::UnderlyingSecurityAltIDSource); 190 }; 191 FIELD_SET(*this, FIX::UnderlyingProduct); 192 FIELD_SET(*this, FIX::UnderlyingCFICode); 193 FIELD_SET(*this, FIX::UnderlyingSecurityType); 194 FIELD_SET(*this, FIX::UnderlyingSecuritySubType); 195 FIELD_SET(*this, FIX::UnderlyingMaturityMonthYear); 196 FIELD_SET(*this, FIX::UnderlyingMaturityDate); 197 FIELD_SET(*this, FIX::UnderlyingPutOrCall); 198 FIELD_SET(*this, FIX::UnderlyingCouponPaymentDate); 199 FIELD_SET(*this, FIX::UnderlyingIssueDate); 200 FIELD_SET(*this, FIX::UnderlyingRepoCollateralSecurityType); 201 FIELD_SET(*this, FIX::UnderlyingRepurchaseTerm); 202 FIELD_SET(*this, FIX::UnderlyingRepurchaseRate); 203 FIELD_SET(*this, FIX::UnderlyingFactor); 204 FIELD_SET(*this, FIX::UnderlyingCreditRating); 205 FIELD_SET(*this, FIX::UnderlyingInstrRegistry); 206 FIELD_SET(*this, FIX::UnderlyingCountryOfIssue); 207 FIELD_SET(*this, FIX::UnderlyingStateOrProvinceOfIssue); 208 FIELD_SET(*this, FIX::UnderlyingLocaleOfIssue); 209 FIELD_SET(*this, FIX::UnderlyingRedemptionDate); 210 FIELD_SET(*this, FIX::UnderlyingStrikePrice); 211 FIELD_SET(*this, FIX::UnderlyingStrikeCurrency); 212 FIELD_SET(*this, FIX::UnderlyingOptAttribute); 213 FIELD_SET(*this, FIX::UnderlyingContractMultiplier); 214 FIELD_SET(*this, FIX::UnderlyingCouponRate); 215 FIELD_SET(*this, FIX::UnderlyingSecurityExchange); 216 FIELD_SET(*this, FIX::UnderlyingIssuer); 217 FIELD_SET(*this, FIX::EncodedUnderlyingIssuerLen); 218 FIELD_SET(*this, FIX::EncodedUnderlyingIssuer); 219 FIELD_SET(*this, FIX::UnderlyingSecurityDesc); 220 FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDescLen); 221 FIELD_SET(*this, FIX::EncodedUnderlyingSecurityDesc); 222 FIELD_SET(*this, FIX::UnderlyingCPProgram); 223 FIELD_SET(*this, FIX::UnderlyingCPRegType); 224 FIELD_SET(*this, FIX::UnderlyingCurrency); 225 FIELD_SET(*this, FIX::UnderlyingQty); 226 FIELD_SET(*this, FIX::UnderlyingPx); 227 FIELD_SET(*this, FIX::UnderlyingDirtyPrice); 228 FIELD_SET(*this, FIX::UnderlyingEndPrice); 229 FIELD_SET(*this, FIX::UnderlyingStartValue); 230 FIELD_SET(*this, FIX::UnderlyingCurrentValue); 231 FIELD_SET(*this, FIX::UnderlyingEndValue); 232 FIELD_SET(*this, FIX::NoUnderlyingStips); 233 class NoUnderlyingStips: public FIX::Group 234 { 235 public: NoUnderlyingStips()236 NoUnderlyingStips() : FIX::Group(887,888,FIX::message_order(888,889,0)) {} 237 FIELD_SET(*this, FIX::UnderlyingStipType); 238 FIELD_SET(*this, FIX::UnderlyingStipValue); 239 }; 240 }; 241 FIELD_SET(*this, FIX::PrevClosePx); 242 FIELD_SET(*this, FIX::Side); 243 FIELD_SET(*this, FIX::LocateReqd); 244 FIELD_SET(*this, FIX::TransactTime); 245 FIELD_SET(*this, FIX::NoStipulations); 246 class NoStipulations: public FIX::Group 247 { 248 public: NoStipulations()249 NoStipulations() : FIX::Group(232,233,FIX::message_order(233,234,0)) {} 250 FIELD_SET(*this, FIX::StipulationType); 251 FIELD_SET(*this, FIX::StipulationValue); 252 }; 253 FIELD_SET(*this, FIX::QtyType); 254 FIELD_SET(*this, FIX::OrderQty); 255 FIELD_SET(*this, FIX::CashOrderQty); 256 FIELD_SET(*this, FIX::OrderPercent); 257 FIELD_SET(*this, FIX::RoundingDirection); 258 FIELD_SET(*this, FIX::RoundingModulus); 259 FIELD_SET(*this, FIX::OrdType); 260 FIELD_SET(*this, FIX::PriceType); 261 FIELD_SET(*this, FIX::Price); 262 FIELD_SET(*this, FIX::StopPx); 263 FIELD_SET(*this, FIX::Spread); 264 FIELD_SET(*this, FIX::BenchmarkCurveCurrency); 265 FIELD_SET(*this, FIX::BenchmarkCurveName); 266 FIELD_SET(*this, FIX::BenchmarkCurvePoint); 267 FIELD_SET(*this, FIX::BenchmarkPrice); 268 FIELD_SET(*this, FIX::BenchmarkPriceType); 269 FIELD_SET(*this, FIX::BenchmarkSecurityID); 270 FIELD_SET(*this, FIX::BenchmarkSecurityIDSource); 271 FIELD_SET(*this, FIX::YieldType); 272 FIELD_SET(*this, FIX::Yield); 273 FIELD_SET(*this, FIX::YieldCalcDate); 274 FIELD_SET(*this, FIX::YieldRedemptionDate); 275 FIELD_SET(*this, FIX::YieldRedemptionPrice); 276 FIELD_SET(*this, FIX::YieldRedemptionPriceType); 277 FIELD_SET(*this, FIX::Currency); 278 FIELD_SET(*this, FIX::ComplianceID); 279 FIELD_SET(*this, FIX::SolicitedFlag); 280 FIELD_SET(*this, FIX::IOIID); 281 FIELD_SET(*this, FIX::QuoteID); 282 FIELD_SET(*this, FIX::TimeInForce); 283 FIELD_SET(*this, FIX::EffectiveTime); 284 FIELD_SET(*this, FIX::ExpireDate); 285 FIELD_SET(*this, FIX::ExpireTime); 286 FIELD_SET(*this, FIX::GTBookingInst); 287 FIELD_SET(*this, FIX::Commission); 288 FIELD_SET(*this, FIX::CommType); 289 FIELD_SET(*this, FIX::CommCurrency); 290 FIELD_SET(*this, FIX::FundRenewWaiv); 291 FIELD_SET(*this, FIX::OrderCapacity); 292 FIELD_SET(*this, FIX::OrderRestrictions); 293 FIELD_SET(*this, FIX::CustOrderCapacity); 294 FIELD_SET(*this, FIX::ForexReq); 295 FIELD_SET(*this, FIX::SettlCurrency); 296 FIELD_SET(*this, FIX::BookingType); 297 FIELD_SET(*this, FIX::Text); 298 FIELD_SET(*this, FIX::EncodedTextLen); 299 FIELD_SET(*this, FIX::EncodedText); 300 FIELD_SET(*this, FIX::SettlDate2); 301 FIELD_SET(*this, FIX::OrderQty2); 302 FIELD_SET(*this, FIX::Price2); 303 FIELD_SET(*this, FIX::PositionEffect); 304 FIELD_SET(*this, FIX::CoveredOrUncovered); 305 FIELD_SET(*this, FIX::MaxShow); 306 FIELD_SET(*this, FIX::PegOffsetValue); 307 FIELD_SET(*this, FIX::PegMoveType); 308 FIELD_SET(*this, FIX::PegOffsetType); 309 FIELD_SET(*this, FIX::PegLimitType); 310 FIELD_SET(*this, FIX::PegRoundDirection); 311 FIELD_SET(*this, FIX::PegScope); 312 FIELD_SET(*this, FIX::DiscretionInst); 313 FIELD_SET(*this, FIX::DiscretionOffsetValue); 314 FIELD_SET(*this, FIX::DiscretionMoveType); 315 FIELD_SET(*this, FIX::DiscretionOffsetType); 316 FIELD_SET(*this, FIX::DiscretionLimitType); 317 FIELD_SET(*this, FIX::DiscretionRoundDirection); 318 FIELD_SET(*this, FIX::DiscretionScope); 319 FIELD_SET(*this, FIX::TargetStrategy); 320 FIELD_SET(*this, FIX::TargetStrategyParameters); 321 FIELD_SET(*this, FIX::ParticipationRate); 322 FIELD_SET(*this, FIX::CancellationRights); 323 FIELD_SET(*this, FIX::MoneyLaunderingStatus); 324 FIELD_SET(*this, FIX::RegistID); 325 FIELD_SET(*this, FIX::Designation); 326 }; 327 328 } 329 330 #endif 331