Verbandscontrole
tradeQuantity × tradePrice is niet tradeAmount (bericht 6)
Symptoom
Schema-valide, maar de PUO kan de bevestiging niet sluitend in de unit-administratie verwerken. De validator van WTP Data Lab meldt een fout bij tradeAmount.
Oorzaak
De definitieve Release 2027 legt in §6.3.2 vast: komen tradeQuantity en tradePrice beide voor, dan geldt per trade tradeQuantity × tradePrice = tradeAmount. Een afwijking ontstaat door een koers die vóór de vermenigvuldiging te grof is afgerond, door kosten die in het bedrag zijn verwerkt, of door een bedrag van een andere order.
Oplossing
Reken het bedrag uit aantal en koers en rond af op centen; boek kosten en rente in commissionAmount en interestAmount, niet in tradeAmount. De validator staat een verschil toe van een halve cent plus een half miljoenste per unit, omdat de koers op zes decimalen is afgerond. SIVI's eigen voorbeeld rekent 102 × 98,04 = 10000,08.
Fout en goed
Fout
{ "buySellId": "buy", "tradeQuantity": 100, "tradePrice": 100.00, "tradeAmount": 12345.67 }Goed
{ "buySellId": "buy", "tradeQuantity": 102, "tradePrice": 98.04, "tradeAmount": 10000.08 }Controleer uw eigen bericht op deze en alle andere fouten met de gratis validator: schema, codelijsten en verbandscontroles in één rapport. Valideer een bericht
