pyfixmsg
is a library for parsing, manipulating and serialising FIX
messages, primarily geared towards testing.
- provide a rich API to compare and manipulate messages.
- (mostly) Message type agnostic,
- (mostly) value types agnostic
- pluggable : load specification XML files, custom specifications or build your own Specification class for repeating groups definitions and message types, define your own codec for custom serialisation or deserialisation quirks.
- None for the core library.
- Optional lxml for faster parsing of xml specification files.
- Optional pytest to run the tests.
- Optional spec files from quickfix to get started with standard FIX specifications.
FixMessage
. Inherits fromdict
. Workhorse class. By default comes with a codec that will parse standard-lookingFIX
, but without support repeating groups.Codec
defines how to parse a buffer into a FixMessage, and how to serialise it backSpec
defines theFIX
specification to follow. Only required for support of repeating group. Defined from Quickfix's spec XML files.
py.test --spec=/var/tmp/FIX50.xml
will launch the tests against the spec file in /var/tmp. You will need to load the spec files from quickfix to get the tests to work. The spec files are not included in this distribution.
This is only a FIX message library. It doesn't include a FIX session management system or an order management core, or anything similar. It is purely message parsing-manipulation-serialisation. It is however easy to integrate into an order management or a exchange/broker simulator, etc.
Read the documentation, or browse the examples file for many examples