Как рассчитать контрольную сумму сообщения FIX в python - PullRequest
0 голосов
/ 07 февраля 2020
8=FIX.4.4|9=102|35=D|34=1|49=XXX|52=20200206-21:15:13.000|56=YYY|11=321|41=123|54=B|55=LNUX|58=This is a new message.|10=179|

Это моё сообщение FIX. В сообщении указана контрольная сумма 179.

Как рассчитать это вручную (для проверки)

1 Ответ

0 голосов
/ 10 февраля 2020

Я понял это. Удалите метки хвоста, а затем:

    msgForCheckSum = raw_message[:tailPosition]
    sum = 0
    for c in msgForCheckSum:
        sum += ord(c)
    sum = sum % 256
    return sum

Хвост начинается с 'chr (1)' + '10 = '

...