fix协议介绍13-执行报告(ExecutionReport)

35 篇文章 0 订阅

FIX.5.0SP2 Message

ExecutionReport [type '8']

<ExecRpt>

The execution report message is used to:

1. confirm the receipt of an order

2. confirm changes to an existing order (i.e. accept cancel and replace requests)

3. relay order status information

4. relay fill information on working orders

5. relay fill information on tradeable or restricted tradeable quotes

6. reject orders

7. report post-trade fees calculations associated with a trade


Added  FIX.2.7

Expand Components | Collapse Components

  Field or Component Field Name FIXML name Req'd Comments Depr.
Component StandardHeader BaseHeader

MsgType = 8

 
Component ApplicationSequenceControl ApplSeqCtrl  

For use in drop copy applications. NOT FOR USE in transactional applications.

 
37 OrderID @OrdID

OrderID is required to be unique for each chain of orders.

 
198 SecondaryOrderID @OrdID2  

Can be used to provide order id used by exchange or executing system.

 
526 SecondaryClOrdID @ID2  

In the case of quotes can be mapped to:

- QuoteID(117) of a single Quote

- QuoteEntryID(299) of a Mass Quote.

 
527 SecondaryExecID @ExecID2      
11 ClOrdID @ID  

Required when referring to orders that were electronically submitted over FIX or otherwise assigned a ClOrdID(11).

In the case of quotes can be mapped to:

- QuoteMsgID(1166) of a single Quote

- QuoteID(117) of a Mass Quote.

 
41 OrigClOrdID @OrigID  

Conditionally required for response to a Cancel or Cancel/Replace request (ExecType=PendingCancel, Replace, or Canceled) when referring to orders that where electronically submitted over FIX or otherwise assigned a ClOrdID(11). ClOrdID of the previous accepted order (NOT the initial order of the day) when canceling or replacing an order.

 
583 ClOrdLinkID @LnkID      
693 QuoteRespID @RspID  

Required if responding to a QuoteResponse message. Echo back the Initiator's value specified in the message.

 
790 OrdStatusReqID @StatReqID  

Required if responding to and if provided on the Order Status Request message. Echo back the value provided by the requester.

 
584 MassStatusReqID @MassStatReqID  

Required if responding to a Order Mass Status Request. Echo back the value provided by the requester.

 
961 HostCrossID @HstCxID  

Host assigned entity ID that can be used to reference all components of a cross; sides + strategy + legs

 
911 TotNumReports @TotNumRpts  

Can be used when responding to an Order Mass Status Request to identify the total number of Execution Reports which will be returned.

 
912 LastRptRequested @LastRptReqed  

Can be used when responding to an Order Mass Status Request to indicate that this is the last Execution Reports which will be returned as a result of the request.

 
Component Parties Pty  

Insert here the set of "Parties" (firm identification) fields defined in "Common Components of Application Messages"

 
229 TradeOriginationDate @OrignDt      
Component ContraGrp Contra  

Number of ContraBrokers repeating group instances.

 
66 ListID @ListID  

Required for executions against orders which were submitted as part of a list.

 
548 CrossID @CrssID  

CrossID for the replacement order

 
551 OrigCrossID @OrigCrssID  

Must match original cross order. Same order chaining mechanism as ClOrdID/OrigClOrdID with single order Cancel/Replace.

 
549 CrossType @CrssTyp      
880 TrdMatchID @MtchID      
17 ExecID @ExecID

Unique identifier of execution message as assigned by sell-side (broker, exchange, ECN) (will be 0 (zero) forExecType=I (Order Status)).

 
19 ExecRefID @ExecRefID  

Required for Trade Cancel and Trade Correct ExecType messages

 
150 ExecType @ExecTyp

Describes the purpose of the execution report.

 
39 OrdStatus @Stat

Describes the current state of a CHAIN of orders, same scope as OrderQty, CumQty, LeavesQty, and AvgPx

 
636 WorkingIndicator @WorkingInd  

For optional use with OrdStatus = 0 (New)

 
103 OrdRejReason @RejRsn  

For optional use with ExecType = 8 (Rejected)

 
378 ExecRestatementReason @ExecRstmtRsn  

Required for ExecType = D (Restated).

 
1 Account @Acct  

Required for executions against electronically submitted orders which were assigned an account by the institution or intermediary

 
660 AcctIDSource @AcctIDSrc      
581 AccountType @AcctTyp  

Specifies type of account

 
589 DayBookingInst @DayBkngInst      
590 BookingUnit @BkngUnit      
591 PreallocMethod @PreallocMeth      
70 AllocID @AllocID      
Component PreAllocGrp PreAll  

Pre-trade allocation instructions.

 
63 SettlType @SettlTyp      
64 SettlDate @SettlDt  

Takes precedence over SettlType value and conditionally required/omitted for specific SettleType values.

Required for NDFs to specify the "value date".

 
574 MatchType @MtchTyp      
1115 OrderCategory @OrdCat      
544 CashMargin @CshMgn      
635 ClearingFeeIndicator @ClrFeeInd      
Component Instrument Instrmt

Insert here the set of "Instrument" (symbology) fields defined in "Common Components of Application Messages"

 
Component FinancingDetails FinDetls  

Insert here the set of "FinancingDetails" (symbology) fields defined in "Common Components of Application Messages"

 
Component UndInstrmtGrp Undly  

Number of underlyings

 
54 Side @Side    
Component Stipulations Stip  

Insert here the set of "Stipulations" (repeating group of Fixed Income stipulations) fields defined in "Common Components of Application Messages"

 
854 QtyType @QtyTyp      
Component OrderQtyData OrdQty  

Insert here the set of "OrderQtyData" fields defined in "Common Components of Application Messages"

**IMPORTANT NOTE: OrderQty field is required for Single Instrument Orders unless rejecting or acknowledging an order for a CashOrderQty or PercentOrder. **

 
1093 LotType @LotTyp      
40 OrdType @Typ      
423 PriceType @PxTyp      
44 Price @Px  

Required if specified on the order

 
1092 PriceProtectionScope @PxPrtScp      
99 StopPx @StopPx  

Required if specified on the order

 
Component TriggeringInstruction TrgrInstr  

Insert here the set of "TriggeringInstruction" fields defined in "common components of application messages"

 
Component PegInstructions PegInstr  

Insert here the set of "PegInstruction" fields defined in "Common Components of Application Messages"

 
Component DiscretionInstructions DiscInstr  

Insert here the set of "DiscretionInstruction" fields defined in "Common Components of Application Messages"

 
839 PeggedPrice @PeggedPx  

The current price the order is pegged at

 
1095 PeggedRefPrice @PggdRefPx  

The reference price of a pegged order.

 
845 DiscretionPrice @DsctnPx  

The current discretionary price of the order

 
847 TargetStrategy @TgtStrategy  

The target strategy of the order

 
Component StrategyParametersGrp StrtPrmGrp  

Strategy parameter block

 
848 TargetStrategyParameters @TgtStrategyParameters  

For further specification of the TargetStrategy

FIX.5.0
849 ParticipationRate @ParticipationRt  

Mandatory for a TargetStrategy=Participate order and specifies the target particpation rate.

For other order types optionally specifies a volume limit (i.e. do not be more than this percent of the market volume)

FIX.5.0
850 TargetStrategyPerformance @TgtStrategyPerformance  

For communication of the performance of the order versus the target strategy

 
15 Currency @Ccy      
376 ComplianceID @ComplianceID      
377 SolicitedFlag @SolFlag      
59 TimeInForce @TmInForce  

Absence of this field indicates Day order

 
168 EffectiveTime @EfctvTm  

Time specified on the order at which the order should be considered valid

 
432 ExpireDate @ExpireDt  

Conditionally required if TimeInForce = GTD and ExpireTime is not specified.

 
126 ExpireTime @ExpireTm  

Conditionally required if TimeInForce = GTD and ExpireDate is not specified.

 
18 ExecInst @ExecInst  

Can contain multiple instructions, space delimited.

 
1057 AggressorIndicator @AgrsrInd      
528 OrderCapacity @Cpcty      
529 OrderRestrictions @Rstctions      
1091 PreTradeAnonymity @PrTrdAnon      
582 CustOrderCapacity @CustCpcty      
32 LastQty @LastQty  

Quantity (e.g. shares) bought/sold on this (last) fill. Required if ExecType = Trade or Trade Correct.

If ExecType=Stopped, represents the quantity stopped/guaranteed/protected for.

 
1056 CalculatedCcyLastQty @CalcCcyLastQty  

Used for FX trades to express the quantity or amount of the other side of the currency. Conditionally required if ExecType = Trade or Trade Correct and is an FX trade.

 
1071 LastSwapPoints @LastSwapPnts  

Optionally used when ExecType = Trade or Trade Correct and is a FX Swap trade. Used to express the swap points for the swap trade event.

 
652 UnderlyingLastQty @UndLastQty      
31 LastPx @LastPx  

Price of this (last) fill. Required if ExecType = Trade or Trade Correct.

Should represent the "all-in" (LastSpotRate + LastForwardPoints) rate for F/X orders. ).

If ExecType=Stopped, represents the price stopped/guaranteed/protected at.

Not required for FX Swap when ExecType = Trade or Trade Correct as there is no "all-in" rate that applies to both legs of the FX Swap.

 
651 UnderlyingLastPx @UndLastPx      
669 LastParPx @LastParPx  

Last price expressed in percent-of-par. Conditionally required for Fixed Income trades when LastPx is expressed in Yield, Spread, Discount or any other price type that is not percent-of-par.

 
194 LastSpotRate @LastSpotRt  

Applicable for F/X orders

 
195 LastForwardPoints @LastFwdPnts  

Applicable for F/X orders

 
30 LastMkt @LastMkt  

If ExecType = Trade (F), indicates the market where the trade was executed. If ExecType = New (0), indicates the market where the order was routed.

 
336 TradingSessionID @SesID      
625 TradingSessionSubID @SesSub      
943 TimeBracket @TmBkt      
29 LastCapacity @LastCpcty      
151 LeavesQty @LeavesQty

Quantity open for further execution. If the OrdStatus is Canceled, DoneForTheDay, Expired, Calculated, or Rejected (in which case the order is no longer active) then LeavesQty could be 0, otherwise LeavesQty = OrderQty - CumQty.

 
14 CumQty @CumQty

Currently executed quantity for chain of orders.

 
6 AvgPx @AvgPx  

Not required for markets where average price is not calculated by the market.

Conditionally required otherwise.

 
424 DayOrderQty @DayOrdQty  

For GT orders on days following the day of the first trade.

 
425 DayCumQty @DayCumQty  

For GT orders on days following the day of the first trade.

 
426 DayAvgPx @DayAvgPx  

For GT orders on days following the day of the first trade.

 
1361 TotNoFills @TotNoFills  

Used to support fragmentation. Sum of NoFills across all messages with the same ExecID.

 
893 LastFragment @LastFragment  

Indicates whether this is the last fragment in a sequence of message fragments. Only required where message has been fragmented.

 
Component FillsGrp FillsGrp  

Specifies the partial fills included in this Execution Report

 
427 GTBookingInst @GTBkngInst  

States whether executions are booked out or accumulated on a partially filled GT order

 
75 TradeDate @TrdDt  

Used when reporting other than current day trades.

 
60 TransactTime @TxnTm  

Time the transaction represented by this ExecutionReport occurred

 
113 ReportToExch @RptToExch      
Component CommissionData Comm  

Insert here the set of "CommissionData" fields defined in "Common Components of Application Messages"

Note: On a fill/partial fill messages, it represents value for that fill/partial fill. On ExecType=Calculated, it represents cumulative value for the order. Monetary commission values are expressed in the currency reflected by the Currency field.

 
Component SpreadOrBenchmarkCurveData SprdBnchmkCurve  

Insert here the set of "SpreadOrBenchmarkCurveData" (Fixed Income spread or benchmark curve) fields defined in "Common Components of Application Messages"

 
Component YieldData Yield  

Insert here the set of "YieldData" (yield-related) fields defined in "Common Components of Application Messages"

 
381 GrossTradeAmt @GrossTrdAmt      
157 NumDaysInterest @NumDaysInt      
230 ExDate @ExDt      
158 AccruedInterestRate @AcrdIntRt      
159 AccruedInterestAmt @AcrdIntAmt      
738 InterestAtMaturity @IntAtMat  

For fixed income products which pay lump-sum interest at maturity.

 
920 EndAccruedInterestAmt @EndAcrdIntAmt  

For repurchase agreements the accrued interest on termination.

 
921 StartCash @StartCsh  

For repurchase agreements the start (dirty) cash consideration

 
922 EndCash @EndCsh  

For repurchase agreements the end (dirty) cash consideration

 
258 TradedFlatSwitch @TrddFlatSwitch      
259 BasisFeatureDate @BasisFeatureDt      
260 BasisFeaturePrice @BasisFeaturePx      
238 Concession @Concession      
237 TotalTakedown @TotTakedown      
118 NetMoney @NetMny  

Note: On a fill/partial fill messages, it represents value for that fill/partial fill, on ExecType=Calculated, it represents cumulative value for the order. Value expressed in the currency reflected by the Currency field.

 
119 SettlCurrAmt @SettlCurrAmt  

Used to report results of forex accommodation trade

 
120 SettlCurrency @SettlCcy  

Used to report results of forex accomodation trade.

Required for NDFs.

 
Component RateSource RtSrc      
155 SettlCurrFxRate @SettlCurrFxRt  

Foreign exchange rate used to compute SettlCurrAmt from Currency to SettlCurrency

 
156 SettlCurrFxRateCalc @SettlCurrFxRtCalc  

Specifies whether the SettlCurrFxRate should be multiplied or divided

 
21 HandlInst @HandlInst      
110 MinQty @MinQty      
1089 MatchIncrement @MtchInc      
1090 MaxPriceLevels @MxPxLvls      
Component DisplayInstruction DsplyInstr  

Insert here the set of "DisplayInstruction" fields defined in "common components of application messages"

 
111 MaxFloor @MaxFloor      
77 PositionEffect @PosEfct  

For use in derivatives omnibus accounting

 
210 MaxShow @MaxShow     FIX.5.0
775 BookingType @BkngTyp  

Method for booking out this order. Used when notifying a broker that an order to be settled by that broker is to be booked out as an OTC derivative (e.g. CFD or similar). Absence of this field implies regular booking.

 
58 Text @Txt      
354 EncodedTextLen @EncTxtLen  

Must be set if EncodedText field is specified and must immediately precede it.

 
355 EncodedText @EncTxt  

Encoded (non-ASCII characters) representation of the Text field in the encoded format specified via the MessageEncoding field.

 
193 SettlDate2 @SettlDt2  

Can be used with OrdType = "Forex - Swap" to specify the "value date" for the future portion of a F/X swap.

FIX.5.0
192 OrderQty2 @Qty2  

Can be used with OrdType = "Forex - Swap" to specify the order quantity for the future portion of a F/X swap.

FIX.5.0
641 LastForwardPoints2 @LastFwdPnts2  

Can be used with OrdType = "Forex - Swap" to specify the forward points (added to LastSpotRate) for the future portion of a F/X swap.

 
442 MultiLegReportingType @MLegRptTyp  

Default is a single security if not specified.

 
480 CancellationRights @CxllationRights  

For CIV - Optional

 
481 MoneyLaunderingStatus @MnyLaunderingStat      
513 RegistID @RegistID  

Reference to Registration Instructions message for this Order.

 
494 Designation @Designation  

Supplementary registration information for this Order

 
483 TransBkdTime @TransBkdTm  

For CIV - Optional

 
515 ExecValuationPoint @ExecValuationPoint  

For CIV - Optional

 
484 ExecPriceType @ExecPxTyp  

For CIV - Optional

 
485 ExecPriceAdjustment @ExecPxAdjment  

For CIV - Optional

 
638 PriorityIndicator @PriInd      
639 PriceImprovement @PxImprvmnt      
851 LastLiquidityInd @LastLqdtyInd  

Applicable only on OrdStatus of Partial or Filled.

 
Component ContAmtGrp ContAmt  

Number of contract details in this message (number of repeating groups to follow)

 
Component InstrmtLegExecGrp Exec  

Number of legs

Identifies a Multi-leg Execution if present and non-zero.

 
797 CopyMsgIndicator @CopyMsgInd      
Component MiscFeesGrp MiscFees  

Required if any miscellaneous fees are reported.

 
1380 DividendYield @DividendYield      
1028 ManualOrderIndicator @ManOrdInd      
1029 CustDirectedOrder @CustDrctdOrd      
1030 ReceivedDeptID @RcvdDptID      
1031 CustOrderHandlingInst @CustOrdHdlInst      
1032 OrderHandlingInstSource @OrdHndlInstSrc      
Component TrdRegTimestamps TrdRegTS      
1188 Volatility @Vol      
1189 TimeToExpiration @TmToExp      
1190 RiskFreeRate @RFR      
811 PriceDelta @PxDelta      
Component StandardTrailer      


消息实现:

package cs.mina.codec.msg;

import java.util.HashSet;
import java.util.List;
import java.util.Set;

import cs.mina.exception.InValidDataException;

/*
 *@author(huangxiaoping)
 *@date 2013-11-29
 */
public class ExecutionReportMsg extends BaseMsg {
	private Tag clOrdID=new Tag("11","String",false);
	private Tag cumQty=new Tag("14","Qty",true);
	private Tag execID=new Tag("17","String",true);
	private Tag execType=new Tag("150","char",true);
	private Tag leavesQty=new Tag("151","Qty",true);
	private Tag lotType=new Tag("1093","char",false);
	private Tag maxPriceLevels=new Tag("1090","int",false);
	private Tag parties=new PartiesTag(false);
	private Tag orderID=new Tag("37","String",true);
	private Tag orderQtyData=new OrderQtyDataTag(false);
	private Tag ordStatus=new Tag("39","char",true);
	private Tag ordType=new Tag("40","char",false);
	private Tag price=new Tag("44","Price",false);
	private Tag instrument=new InstrumentTag(true);
	private Tag side=new Tag("54","char",true);
	private Tag timeInForce=new Tag("59","char",false);
	private Tag transactTime=new Tag("60","UTCTimestamp",false);
	private Tag ordRejReason=new Tag("103","int",false);
	private Tag rejectText=new Tag("1328","String",false);
	private Tag lastPx=new Tag("31","Price",false);
	private Tag lastQty=new Tag("32","Qty",false);
	private Tag matchType=new Tag("574","String",false);
	private Tag trdMatchID=new Tag("880","String",false);
	private Tag execRefID=new Tag("19","String",false);
	private Tag execRestatementReason=new Tag("378","int",false);
	private Tag origClOrdID=new Tag("41","String",false);
	private Tag copyMsgIndicator=new Tag("797","Boolean",false);
	
	private Set<String> tagIdsSet=new HashSet<String>();
	public ExecutionReportMsg(){
		this.getHeadEntity().getMsgType().setTagValue("8");
		tagIdsSet.add("11");
		tagIdsSet.add("14");
		tagIdsSet.add("17");
		tagIdsSet.add("150");
		tagIdsSet.add("151");
		tagIdsSet.add("1093");
		tagIdsSet.add("1090");
		tagIdsSet.add("37");
		tagIdsSet.add("39");
		tagIdsSet.add("40");
		tagIdsSet.add("44");
		tagIdsSet.add("54");
		tagIdsSet.add("59");
		tagIdsSet.add("60");
		tagIdsSet.add("103");
		tagIdsSet.add("1328");
		tagIdsSet.add("31");
		tagIdsSet.add("32");
		tagIdsSet.add("574");
		tagIdsSet.add("880");
		tagIdsSet.add("19");
		tagIdsSet.add("378");
		tagIdsSet.add("41");
		tagIdsSet.add("797");
		this.bodyEntity.getBodyTagList().add(clOrdID);
		this.bodyEntity.getBodyTagList().add(cumQty);
		this.bodyEntity.getBodyTagList().add(execID);
		this.bodyEntity.getBodyTagList().add(execType);
		this.bodyEntity.getBodyTagList().add(leavesQty);
		this.bodyEntity.getBodyTagList().add(lotType);
		this.bodyEntity.getBodyTagList().add(maxPriceLevels);
		this.bodyEntity.getBodyTagList().add(parties);
		this.bodyEntity.getBodyTagList().add(orderID);
		this.bodyEntity.getBodyTagList().add(orderQtyData);
		this.bodyEntity.getBodyTagList().add(ordStatus);
		this.bodyEntity.getBodyTagList().add(ordType);
		this.bodyEntity.getBodyTagList().add(price);
		this.bodyEntity.getBodyTagList().add(instrument);
		this.bodyEntity.getBodyTagList().add(side);
		this.bodyEntity.getBodyTagList().add(timeInForce);
		this.bodyEntity.getBodyTagList().add(transactTime);
		this.bodyEntity.getBodyTagList().add(ordRejReason);
		this.bodyEntity.getBodyTagList().add(rejectText);
		this.bodyEntity.getBodyTagList().add(lastPx);
		this.bodyEntity.getBodyTagList().add(lastQty);
		this.bodyEntity.getBodyTagList().add(matchType);
		this.bodyEntity.getBodyTagList().add(trdMatchID);
		this.bodyEntity.getBodyTagList().add(execRefID);
		this.bodyEntity.getBodyTagList().add(execRestatementReason);
		this.bodyEntity.getBodyTagList().add(origClOrdID);
		this.bodyEntity.getBodyTagList().add(copyMsgIndicator);
	}
	
	public void decodeBody() {
		Set<String> already=new HashSet<String>();
		String input=this.body;
		while(input.length()!=0){
			String firstTagId=input.substring(0, input.indexOf("="));
			if(firstTagId.equals("453")){
				input=this.getParties().decode(input, already);
			}else if(OrderQtyDataTag.tagIdsSet.contains(firstTagId)){
				input=this.orderQtyData.decode(input, already);
			}else if(InstrumentTag.tagIdsSet.contains(firstTagId)){
				input=this.instrument.decode(input, already);
			}else{
				List<Tag> tagList=this.bodyEntity.getBodyTagList();
				boolean exist=false;
				for(int j=0;j<tagList.size();j++){
					Tag tag=tagList.get(j);
					if(tag.getTagId().equals(firstTagId)){
						input=tag.decode(input, already);
						exist=true;
						break;
					}
				}
				if(!exist){
					throw new InValidDataException(firstTagId+"不在消息字段中");
				}
			}
			
		}
	}
	

	@Override
	public void validate() {
		this.headEntity.validate();
		List<Tag> bodyTagList=this.bodyEntity.getBodyTagList();
		for(int i=0;i<bodyTagList.size();i++){
			bodyTagList.get(i).validate();
		}
		this.tailerEntity.validate();
		if(execType.getTagValue()!=null){
			if(!MsgUtil.execType.contains(execType.getTagValue())){
				throw new InValidDataException("execType错误["+execType.getTagId()+"="+execType.getTagValue()+"]");
			}
		}
		if(lotType.getTagValue()!=null){
			if(!MsgUtil.lotType.contains(lotType.getTagValue())){
				throw new InValidDataException("lotType错误["+lotType.getTagId()+"="+lotType.getTagValue()+"]");
			}
		}
		if(ordStatus.getTagValue()!=null){
			if(!MsgUtil.ordStatus.contains(ordStatus.getTagValue())){
				throw new InValidDataException("ordStatus错误["+ordStatus.getTagId()+"="+ordStatus.getTagValue()+"]");
			}
		}
		if(ordType.getTagValue()!=null){
			if(!MsgUtil.ordType.contains(ordType.getTagValue())){
				throw new InValidDataException("ordType错误["+ordType.getTagId()+"="+ordType.getTagValue()+"]");
			}
		}
		if(side.getTagValue()!=null){
			if(!MsgUtil.side.contains(side.getTagValue())){
				throw new InValidDataException("side错误["+side.getTagId()+"="+side.getTagValue()+"]");
			}
		}
		if(timeInForce.getTagValue()!=null){
			if(!MsgUtil.timeInForce.contains(timeInForce.getTagValue())){
				throw new InValidDataException("timeInForce错误["+timeInForce.getTagId()+"="+timeInForce.getTagValue()+"]");
			}
		}
		if(ordRejReason.getTagValue()!=null){
			if(!((Integer.parseInt(ordRejReason.getTagValue())>=0&&Integer.parseInt(ordRejReason.getTagValue())<=19)||Integer.parseInt(ordRejReason.getTagValue())==99)){
				throw new InValidDataException("ordRejReason错误["+ordRejReason.getTagId()+"="+ordRejReason.getTagValue()+"]");
			}
		}
		if(matchType.getTagValue()!=null){
			if(!MsgUtil.matchType.contains(matchType.getTagValue())){
				throw new InValidDataException("matchType错误["+matchType.getTagId()+"="+matchType.getTagValue()+"]");
			}
		}
	}

	public Tag getClOrdID() {
		return clOrdID;
	}

	public void setClOrdID(Tag clOrdID) {
		this.clOrdID = clOrdID;
	}

	public Tag getCumQty() {
		return cumQty;
	}

	public void setCumQty(Tag cumQty) {
		this.cumQty = cumQty;
	}

	public Tag getExecID() {
		return execID;
	}

	public void setExecID(Tag execID) {
		this.execID = execID;
	}

	public Tag getExecType() {
		return execType;
	}

	public void setExecType(Tag execType) {
		this.execType = execType;
	}

	public Tag getLeavesQty() {
		return leavesQty;
	}

	public void setLeavesQty(Tag leavesQty) {
		this.leavesQty = leavesQty;
	}

	public Tag getLotType() {
		return lotType;
	}

	public void setLotType(Tag lotType) {
		this.lotType = lotType;
	}

	public Tag getMaxPriceLevels() {
		return maxPriceLevels;
	}

	public void setMaxPriceLevels(Tag maxPriceLevels) {
		this.maxPriceLevels = maxPriceLevels;
	}

	public Tag getParties() {
		return parties;
	}

	public void setParties(Tag parties) {
		this.parties = parties;
	}

	public Tag getOrderID() {
		return orderID;
	}

	public void setOrderID(Tag orderID) {
		this.orderID = orderID;
	}

	public Tag getOrderQtyData() {
		return orderQtyData;
	}

	public void setOrderQtyData(Tag orderQtyData) {
		this.orderQtyData = orderQtyData;
	}

	public Tag getOrdStatus() {
		return ordStatus;
	}

	public void setOrdStatus(Tag ordStatus) {
		this.ordStatus = ordStatus;
	}

	public Tag getOrdType() {
		return ordType;
	}

	public void setOrdType(Tag ordType) {
		this.ordType = ordType;
	}

	public Tag getPrice() {
		return price;
	}

	public void setPrice(Tag price) {
		this.price = price;
	}

	public Tag getInstrument() {
		return instrument;
	}

	public void setInstrument(Tag instrument) {
		this.instrument = instrument;
	}

	public Tag getSide() {
		return side;
	}

	public void setSide(Tag side) {
		this.side = side;
	}

	public Tag getTimeInForce() {
		return timeInForce;
	}

	public void setTimeInForce(Tag timeInForce) {
		this.timeInForce = timeInForce;
	}

	public Tag getTransactTime() {
		return transactTime;
	}

	public void setTransactTime(Tag transactTime) {
		this.transactTime = transactTime;
	}

	public Set<String> getTagIdsSet() {
		return tagIdsSet;
	}

	public void setTagIdsSet(Set<String> tagIdsSet) {
		this.tagIdsSet = tagIdsSet;
	}

	public Tag getOrdRejReason() {
		return ordRejReason;
	}

	public void setOrdRejReason(Tag ordRejReason) {
		this.ordRejReason = ordRejReason;
	}

	public Tag getRejectText() {
		return rejectText;
	}

	public void setRejectText(Tag rejectText) {
		this.rejectText = rejectText;
	}

	public Tag getLastPx() {
		return lastPx;
	}

	public void setLastPx(Tag lastPx) {
		this.lastPx = lastPx;
	}

	public Tag getLastQty() {
		return lastQty;
	}

	public void setLastQty(Tag lastQty) {
		this.lastQty = lastQty;
	}

	public Tag getMatchType() {
		return matchType;
	}

	public void setMatchType(Tag matchType) {
		this.matchType = matchType;
	}

	public Tag getTrdMatchID() {
		return trdMatchID;
	}

	public void setTrdMatchID(Tag trdMatchID) {
		this.trdMatchID = trdMatchID;
	}

	public Tag getExecRefID() {
		return execRefID;
	}

	public void setExecRefID(Tag execRefID) {
		this.execRefID = execRefID;
	}

	public Tag getExecRestatementReason() {
		return execRestatementReason;
	}

	public void setExecRestatementReason(Tag execRestatementReason) {
		this.execRestatementReason = execRestatementReason;
	}

	public Tag getOrigClOrdID() {
		return origClOrdID;
	}

	public void setOrigClOrdID(Tag origClOrdID) {
		this.origClOrdID = origClOrdID;
	}

	public Tag getCopyMsgIndicator() {
		return copyMsgIndicator;
	}

	public void setCopyMsgIndicator(Tag copyMsgIndicator) {
		this.copyMsgIndicator = copyMsgIndicator;
	}

}

处理逻辑:略



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

hxpjava1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值