-
Notifications
You must be signed in to change notification settings - Fork 79
Expand file tree
/
Copy pathexamples.xml
More file actions
123 lines (123 loc) · 6.47 KB
/
examples.xml
File metadata and controls
123 lines (123 loc) · 6.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<messageSchema xmlns="http://fixprotocol.io/2017/sbe" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:dcterms="http://purl.org/dc/terms/" package="examples" id="91" version="0" byteOrder="littleEndian" xsi:schemaLocation="http://fixprotocol.io/2017/sbe ../xsd/sbe-2.0rc3.xsd">
<metadata>
<dcterms:publisher>FIX Trading Community</dcterms:publisher>
<dcterms:title>SBE example</dcterms:title>
<dcterms:rights>© Copyright 2014-2020 FIX Protocol Limited</dcterms:rights>
<dcterms:created>2020-06-10T10:07-05:00</dcterms:created>
</metadata>
<!-- include commonly used types -->
<xi:include href="types-include.xml"/>
<types>
<type name="date" primitiveType="uint16"/>
<type name="enumEncoding" primitiveType="char"/>
<type name="idString" length="8" primitiveType="char"/>
<type name="intEnumEncoding" primitiveType="uint8"/>
<type name="currency" length="3" primitiveType="char" description="ISO 4217"/>
<composite name="DATA">
<type name="length" primitiveType="uint16"/>
<type name="varData" length="0" primitiveType="uint8"/>
</composite>
<composite name="groupSizeEncoding">
<type name="blockLength" primitiveType="uint16"/>
<type name="numInGroup" primitiveType="uint16"/>
<type name="numGroups" primitiveType="uint16"/>
<type name="numVarDataFields" primitiveType="uint16"/>
</composite>
<composite name="messageHeader">
<type name="blockLength" primitiveType="uint16"/>
<type name="templateId" primitiveType="uint16"/>
<type name="schemaId" primitiveType="uint16"/>
<type name="version" primitiveType="uint16"/>
<type name="numGroups" primitiveType="uint16"/>
<type name="numVarDataFields" primitiveType="uint16"/>
</composite>
<composite name="decimalEncoding">
<type name="mantissa" presence="optional" primitiveType="int64"/>
<type name="exponent" presence="constant" primitiveType="int8">-3</type>
</composite>
<composite name="qtyEncoding">
<type name="mantissa" primitiveType="int32"/>
<type name="exponent" presence="constant" primitiveType="int8">0</type>
</composite>
<composite name="timestampEncoding" description="UTC timestamp with nanosecond precision">
<type name="time" primitiveType="uint64"/>
<type name="unit" primitiveType="uint8" presence="constant" valueRef="TimeUnit.nanosecond"/>
</composite>
<enum name="TimeUnit" encodingType="uint8">
<validValue name="second">0</validValue>
<validValue name="millisecond">3</validValue>
<validValue name="microsecond">6</validValue>
<validValue name="nanosecond">9</validValue>
</enum>
<enum name="businessRejectReasonEnum" encodingType="intEnumEncoding">
<validValue name="Other">0</validValue>
<validValue name="UnknownID">1</validValue>
<validValue name="UnknownSecurity">2</validValue>
<validValue name="ApplicationNotAvailable">4</validValue>
<validValue name="NotAuthorized">6</validValue>
</enum>
<enum name="execTypeEnum" encodingType="enumEncoding">
<validValue name="New">0</validValue>
<validValue name="DoneForDay">3</validValue>
<validValue name="Canceled">4</validValue>
<validValue name="Replaced">5</validValue>
<validValue name="PendingCancel">6</validValue>
<validValue name="Rejected">8</validValue>
<validValue name="PendingNew">A</validValue>
<validValue name="Trade">F</validValue>
</enum>
<enum name="ordStatusEnum" encodingType="enumEncoding">
<validValue name="New">0</validValue>
<validValue name="PartialFilled">1</validValue>
<validValue name="Filled">2</validValue>
<validValue name="DoneForDay">3</validValue>
<validValue name="Canceled">4</validValue>
<validValue name="PendingCancel">6</validValue>
<validValue name="Rejected">8</validValue>
<validValue name="PendingNew">A</validValue>
<validValue name="PendingReplace">E</validValue>
</enum>
<enum name="ordTypeEnum" encodingType="enumEncoding">
<validValue name="Market">1</validValue>
<validValue name="Limit">2</validValue>
<validValue name="Stop">3</validValue>
<validValue name="StopLimit">4</validValue>
</enum>
<enum name="sideEnum" encodingType="enumEncoding">
<validValue name="Buy">1</validValue>
<validValue name="Sell">2</validValue>
</enum>
</types>
<messages>
<message name="ExecutionReport" id="98" blockLength="42" semanticType="8">
<field name="OrderID" id="37" type="idString" offset="0" semanticType="String"/>
<field name="ExecID" id="17" type="idString" offset="8" semanticType="String"/>
<field name="ExecType" id="150" type="execTypeEnum" offset="16" semanticType="char"/>
<field name="OrdStatus" id="39" type="ordStatusEnum" offset="17" semanticType="char"/>
<field name="Symbol" id="55" type="idString" offset="18" semanticType="String"/>
<field name="MaturityMonthYear" id="200" type="MONTH_YEAR" offset="26" semanticType="MonthYear"/>
<field name="Side" id="54" type="sideEnum" offset="31" semanticType="char"/>
<field name="LeavesQty" id="151" type="qtyEncoding" offset="32" semanticType="Qty"/>
<field name="CumQty" id="14" type="qtyEncoding" offset="36" semanticType="Qty"/>
<field name="TradeDate" id="75" type="date" offset="40" semanticType="LocalMktDate"/>
<group name="FillsGrp" id="2112" blockLength="12" dimensionType="groupSizeEncoding">
<field name="FillPx" id="1364" type="decimalEncoding" offset="0" semanticType="Price"/>
<field name="FillQty" id="1365" type="qtyEncoding" offset="8" semanticType="Qty"/>
</group>
</message>
<message name="NewOrderSingle" id="99" blockLength="54" semanticType="D">
<field name="ClOrdId" id="11" type="idString" offset="0" semanticType="String"/>
<field name="Account" id="1" type="idString" offset="8" semanticType="String"/>
<field name="Symbol" id="55" type="idString" offset="16" semanticType="String"/>
<field name="Side" id="54" type="sideEnum" offset="24" semanticType="char"/>
<field name="TransactTime" id="60" type="timestampEncoding" offset="25" semanticType="UTCTimestamp"/>
<field name="OrderQty" id="38" type="qtyEncoding" offset="33" semanticType="Qty"/>
<field name="OrdType" id="40" type="ordTypeEnum" offset="37" semanticType="char"/>
<field name="Price" id="44" type="decimalEncoding" offset="38" semanticType="Price" presence="optional"/>
<field name="StopPx" id="99" type="decimalEncoding" offset="46" semanticType="Price" presence="optional"/>
</message>
</messages>
<!-- include commonly used messages -->
<xi:include href="messages-include.xml"/>
</messageSchema>