Skip to content
This repository was archived by the owner on Sep 5, 2023. It is now read-only.
/ pyfixmsg Public archive

pyfixmsg is a library for parsing, manipulating and serialising FIX messages, primarily geared towards testing.

License

Notifications You must be signed in to change notification settings

morganstanley/pyfixmsg

Folders and files

NameName
Last commit message
Last commit date
Dec 3, 2019
Dec 3, 2019
Jan 15, 2019
Dec 3, 2019
Apr 25, 2019
Jan 20, 2017
Jan 14, 2021
Jan 20, 2017
Mar 20, 2018
Mar 20, 2018
Sep 5, 2023
Dec 3, 2019

Pyfixmsg

Lifecycle Archived

pyfixmsgis a library for parsing, manipulating and serialising FIX messages, primarily geared towards testing. The library supports both Python 2 and 3.

Objectives

  • 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.

Dependencies

  • six library (at least version 1.12.0).
  • 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.

Core classes

  • FixMessage. Inherits from dict. Workhorse class. By default comes with a codec that will parse standard-looking FIX, but without support repeating groups.
  • Codec defines how to parse a buffer into a FixMessage, and how to serialise it back
  • Spec defines the FIX specification to follow. Only required for support of repeating group. Defined from Quickfix's spec XML files.

How to run the tests

  • 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.

Notes

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.

More documentation

Read the documentation, or browse the examples file for many examples

About

pyfixmsg is a library for parsing, manipulating and serialising FIX messages, primarily geared towards testing.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages