Skip to content

Commit bde3e96

Browse files
committed
MOD: Modify display of definition fields in C++
1 parent 5ac56ba commit bde3e96

File tree

4 files changed

+15
-7
lines changed

4 files changed

+15
-7
lines changed

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# Changelog
22

3+
## 0.18.0 - TBD
4+
5+
### Breaking changes
6+
- Changed format of `display_factor` and `price_ratio` to a fixed-precision decimal for
7+
`InstrumentDefMsg` and `InstrumentDefMsgV1` to match existing values and DBN crate
8+
- Changed format of `unit_of_measure_qty` to a fixed-precision decimal for
9+
`InstrumentDefMsgV1` to match `InstrumentDefMsg`
10+
311
## 0.17.1 - 2024-04-08
412

513
### Enhancements

src/compat.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -205,18 +205,18 @@ std::ostream& operator<<(std::ostream& stream,
205205
.AddField("hd", instr_def_msg.hd)
206206
.AddField("ts_recv", instr_def_msg.ts_recv)
207207
.AddField("min_price_increment", FixPx{instr_def_msg.min_price_increment})
208-
.AddField("display_factor", instr_def_msg.display_factor)
208+
.AddField("display_factor", FixPx{instr_def_msg.display_factor})
209209
.AddField("expiration", instr_def_msg.expiration)
210210
.AddField("activation", instr_def_msg.activation)
211211
.AddField("high_limit_price", FixPx{instr_def_msg.high_limit_price})
212212
.AddField("low_limit_price", FixPx{instr_def_msg.low_limit_price})
213213
.AddField("max_price_variation", FixPx{instr_def_msg.max_price_variation})
214214
.AddField("trading_reference_price",
215215
FixPx{instr_def_msg.trading_reference_price})
216-
.AddField("unit_of_measure_qty", instr_def_msg.unit_of_measure_qty)
216+
.AddField("unit_of_measure_qty", FixPx{instr_def_msg.unit_of_measure_qty})
217217
.AddField("min_price_increment_amount",
218218
FixPx{instr_def_msg.min_price_increment_amount})
219-
.AddField("price_ratio", instr_def_msg.price_ratio)
219+
.AddField("price_ratio", FixPx{instr_def_msg.price_ratio})
220220
.AddField("inst_attrib_value", instr_def_msg.inst_attrib_value)
221221
.AddField("underlying_id", instr_def_msg.underlying_id)
222222
.AddField("raw_instrument_id", instr_def_msg.raw_instrument_id)

src/record.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -382,7 +382,7 @@ std::ostream& operator<<(std::ostream& stream,
382382
.AddField("hd", instr_def_msg.hd)
383383
.AddField("ts_recv", instr_def_msg.ts_recv)
384384
.AddField("min_price_increment", FixPx{instr_def_msg.min_price_increment})
385-
.AddField("display_factor", instr_def_msg.display_factor)
385+
.AddField("display_factor", FixPx{instr_def_msg.display_factor})
386386
.AddField("expiration", instr_def_msg.expiration)
387387
.AddField("activation", instr_def_msg.activation)
388388
.AddField("high_limit_price", FixPx{instr_def_msg.high_limit_price})
@@ -393,7 +393,7 @@ std::ostream& operator<<(std::ostream& stream,
393393
.AddField("unit_of_measure_qty", FixPx{instr_def_msg.unit_of_measure_qty})
394394
.AddField("min_price_increment_amount",
395395
FixPx{instr_def_msg.min_price_increment_amount})
396-
.AddField("price_ratio", instr_def_msg.price_ratio)
396+
.AddField("price_ratio", FixPx{instr_def_msg.price_ratio})
397397
.AddField("strike_price", FixPx{instr_def_msg.strike_price})
398398
.AddField("inst_attrib_value", instr_def_msg.inst_attrib_value)
399399
.AddField("underlying_id", instr_def_msg.underlying_id)

test/src/record_tests.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -150,7 +150,7 @@ TEST(RecordTests, TestInstrumentDefMsgToString) {
150150
hd = RecordHeader { length = 100, rtype = InstrumentDef, publisher_id = 1, instrument_id = 1, ts_event = 1970-01-01T00:00:00.000000000Z },
151151
ts_recv = 1970-01-01T00:00:00.000000000Z,
152152
min_price_increment = 0.000000001,
153-
display_factor = 2,
153+
display_factor = 0.000000002,
154154
expiration = 1970-01-01T00:00:00.000000000Z,
155155
activation = 1970-01-01T00:00:00.000000000Z,
156156
high_limit_price = 0.000000005,
@@ -159,7 +159,7 @@ TEST(RecordTests, TestInstrumentDefMsgToString) {
159159
trading_reference_price = 0.000000008,
160160
unit_of_measure_qty = 0.000000009,
161161
min_price_increment_amount = 0.000000010,
162-
price_ratio = 11,
162+
price_ratio = 0.000000011,
163163
strike_price = kUndefPrice,
164164
inst_attrib_value = 12,
165165
underlying_id = 13,

0 commit comments

Comments
 (0)