This is a general question with a specific case as example.
Should blank values in fields that normally should not be blank, be considered an error? Should we just ignore the field? Should it be 0 (or equivalent for the data type)?
In my particular case, I have an unspecified event that would normally represent a trade, except for the presence of a quote price & qty field that are blank. The easy solution would be to ignore fields with blank values in this case, but how general is this solution? Should it be a solution only for unspecified events? Any event? Any field? Any data type?
Stream RBU7-X7 --- RSSL_MC_UPDATE/RDM_UPD_EVENT_TYPE_UNSPECIFIED field values TIMACT (5) 18:18:00:000:000:000 TRDTIM_1 (18) 18:18:00:000:000:000 ACT_TP_1 (270) Þ (2) SC_ACT_TP1 (280) + (1) TRDPRC_1 (6) 0.1323 PRIMACT_1 (393) 0.1323 NETCHNG_1 (11) 0.0062 SEC_ACT_1 (275) 0.0062 PRCTCK_1 (14) Þ (1) ACVOL_1 (32) 1935 PCTCHNG (56) 4.92 NUM_MOVES (77) 1234 ASK (25) <<blank>> ASKSIZE (31) <<blank>> TRDVOL_1 (178) 38 SALTIM (379) 18:18:32:000:000:000 SEQNUM (1021) 63235757
So what I figured is that blank values can sometimes mean something. I still have not figured out what they would mean in my example above, but in other cases, they tell you indirect information about the data. E.g. For futures, a blank "number of orders" indicates an implied order.
So my conclusion is that blank values should be ignored (as if the tag was not part of the data set) unless otherwise stated and the information they provide is needed.
Hi @Ypar
You should never treat a blank field as zero.
Blank field means you should clear the field, no value, just blank.
The actual reason behind the clearing differs case by case. But in your particular case, you have to look at the bigger picture.
RBU7-X7 Market Price 2017-07-18T18:18:30.098416602Z UPDATE UNSPECIFIED FID 25 ASK 0.1322 FID 31 ASKSIZE 4 FID 3264 PRC_QL3 339 ... ... BU7-X7 Market Price 2017-07-18T18:18:32.717695993Z UPDATE UNSPECIFIED FID 5 TIMACT 18:18:00 FID 18 TRDTIM_1 18:18:00 FID 270 ACT_TP_1 2 FID 280 SC_ACT_TP1 1 FID 6 TRDPRC_1 0.1322 FID 393 PRIMACT_1 0.1322 FID 11 NETCHNG_1 0.0061 FID 275 SEC_ACT_1 0.0061 FID 14 PRCTCK_1 1 FID 32 ACVOL_1 1897 FID 56 PCTCHNG 4.84 FID 77 NUM_MOVES 1233 FID 178 TRDVOL_1 4 FID 379 SALTIM 18:18:32 FID 1021 SEQNUM 63235757 RBU7-X7 Market Price 2017-07-18T18:18:32.718579330Z UPDATE UNSPECIFIED FID 5 TIMACT 18:18:00 FID 18 TRDTIM_1 18:18:00 FID 270 ACT_TP_1 2 FID 280 SC_ACT_TP1 1 FID 6 TRDPRC_1 0.1323 FID 393 PRIMACT_1 0.1323 FID 11 NETCHNG_1 0.0062 FID 275 SEC_ACT_1 0.0062 FID 14 PRCTCK_1 1 FID 32 ACVOL_1 1935 FID 56 PCTCHNG 4.92 FID 77 NUM_MOVES 1234 FID 25 ASK FID 31 ASKSIZE FID 178 TRDVOL_1 38 FID 379 SALTIM 18:18:32 FID 1021 SEQNUM 63235757 RBU7-X7 Market Price 2017-07-18T18:18:32.718579330Z UPDATE UNSPECIFIED FID 25 ASK 0.1323 FID 31 ASKSIZE 38 FID 3264 PRC_QL3 339 RBU7-X7 Market Price 2017-07-18T18:18:32.718579330Z UPDATE UNSPECIFIED FID 25 ASK 0.1324 FID 31 ASKSIZE 13 FID 3264 PRC_QL3 339
The trade is filling two prices. You could see that the SEQNUM are the same.
The blank was sent because this trade fills multiple prices.
Because it "fills multiple prices" makes no sense to me as a reason to add quote fields to a trade event, independently of their values. I see no sane justification there.
Aside from that, what I am understanding from your response is that we should just ignore blank values as if the fields were not even present.