{ "info": { "author": "David Arnold", "author_email": "d+simplefix@0x1.org", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.6", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Libraries :: Python Modules", "Topic :: System :: Networking" ], "description": "\n=========\nsimplefix\n=========\n\n| |Build Status| |Docs| |Code Health| |Coverage| |PyPI| |Python|\n\nIntroduction\n============\n\n`FIX `_\n(Financial Information eXchange) Protocol is a widely-used,\ntext-based protocol for interaction between parties in financial\ntrading. Banks, brokers, clearing firms, exchanges, and other general\nmarket participants use FIX protocol for all phases of electronic\ntrading.\n\nTypically, a FIX implementation exists as a FIX Engine: a standalone\nservice that acts as a gateway for other applications (matching\nengines, trading algos, etc) and implements the FIX protocol. The\nmost popular Open Source FIX engine is probably one of the versions of\n`QuickFIX `_.\n\nThis package provides a *simple* implementation of the FIX\napplication-layer protocol. It does no socket handling, and does not\nimplement FIX recovery or any message persistence. It supports the\ncreation, encoding, and decoding of FIX messages.\n\nLicence\n=======\n\nThe module is licensed under the `MIT license `_.\nWhile this is not legal advice, in short this means you're free to do\nwhatever you like with this code, with the exception of claiming you\nwrote it.\n\nBasic Usage\n===========\n\nSee the `Programmer's Guide `_ for\nmore information.\n\nCreating Messages\n-----------------\n\nTo create a FIX message, first create an instance of the FixMessage class.\n\n.. code-block:: python\n\n msg = simplefix.FixMessage()\n\nYou can then add fields to the message as required. You should add the\nstandard header tags 8, 34, 35, 49, 52, and 56 to all messages. For most\ntags, using ``append_pair()`` is the easiest way to add a field to the message.\nWhen adding a *UTCTimestamp* value (ie, for tag 52) using\n``append_utc_timestamp()`` will take care of the formatting for you.\n\n``append_string()`` will decompose a \"tag=value\" string and add it as a proper\nfield; ``append_strings()`` will do the same for a sequence of \"tag=value\"\nstrings. ``append_data()`` will correctly append a data field, setting the\nlength tag's value, and putting the value tag after the length in the\nformatted message.\n\nOnce all fields are set, calling ``encode()`` will return a byte buffer\ncontaining the correctly formatted FIX message, with fields in the required\norder, and automatically added and set values for the BodyLength (9) and\nChecksum (10) fields.\n\nNote that if you want to manually control the ordering of all fields, the\nvalue of the BodyLength or Checksum fields, there's a 'raw' flag to the\n``encode()`` method that disables this functionality. This is useful for\ncreating known-bad messages for testing purposes.\n\nParsing Messages\n----------------\n\nTo extract FIX messages from a byte buffer, such as that received from a\nsocket, you should first create an instance of the ``FixParser`` class. For\neach byte string received, append it to the internal reassembly buffer using\n``append_buffer()`` . At any time, you can call ``get_message()`` : if there's\nno complete message in the parser's internal buffer, it'll return None,\notherwise, it'll return a ``FixMessage`` instance.\n\nOnce you've received a ``FixMessage`` from ``get_message()`` , you can: check\nthe number of fields with ``count()`` , retrieve the value of a field using\n``get()`` or the built-in \"[ ]\" syntax, or iterate over all the fields using\n\"for ... in ...\".\n\nMembers of repeating groups can be accessed using ``get(tag, nth)``, where the\n\"nth\" value is an integer indicating which occurrence of the tag to return\n(note that the first occurrence is number one, not zero).\n\n\nContributing\n============\n\nComments, suggestions, bug reports, bug fixes -- all contributions to\nthis project are welcomed. See the project's `GitHub\n`_ page for access to the latest\nsource code, and please open an `issue\n`_ for comments,\nsuggestions, and bugs.\n\nSee the CONTRIBUTING.rst file for more detailed instructions.\n\n\n\n.. |Build Status| image:: https://travis-ci.org/da4089/simplefix.svg?branch=master\n :target: https://travis-ci.org/da4089/simplefix\n :alt: Build status\n.. |Docs| image:: https://readthedocs.org/projects/simplefix/badge/?version=latest\n :target: http://simplefix.readthedocs.io/en/latest/\n :alt: Docs\n.. |Code Health| image:: https://landscape.io/github/da4089/simplefix/master/landscape.svg?style=flat\n :target: https://landscape.io/github/da4089/simplefix/master\n :alt: Code Health\n.. |Coverage| image:: https://coveralls.io/repos/github/da4089/simplefix/badge.svg?branch=master\n :target: https://coveralls.io/github/da4089/simplefix?branch=master\n :alt: Coverage\n.. |PyPI| image:: https://img.shields.io/pypi/v/simplefix.svg\n :target: https://pypi.python.org/pypi/simplefix\n :alt: PyPI\n.. |Python| image:: https://img.shields.io/pypi/pyversions/simplefix.svg\n :target: https://pypi.python.org/pypi/simplefix\n :alt: Python\n\n\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/da4089/simplefix", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "simplefix", "package_url": "https://pypi.org/project/simplefix/", "platform": "", "project_url": "https://pypi.org/project/simplefix/", "project_urls": { "Homepage": "https://github.com/da4089/simplefix" }, "release_url": "https://pypi.org/project/simplefix/1.0.12/", "requires_dist": null, "requires_python": "", "summary": "Simple FIX Protocol implementation for Python", "version": "1.0.12" }, "last_serial": 4528418, "releases": { "1.0.0": [], "1.0.1": [ { "comment_text": "", "digests": { "md5": "03ede794b8f6b7d3f0fb8d891a9bc62e", "sha256": "aa487f39f83c54d8c55ba6e998c3357a8a5c2fa9e32755b7ac23d014bc0b5061" }, "downloads": -1, "filename": "simplefix-1.0.1.tar.gz", "has_sig": false, "md5_digest": "03ede794b8f6b7d3f0fb8d891a9bc62e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5671, "upload_time": "2016-12-07T22:10:05", "url": "https://files.pythonhosted.org/packages/e5/97/014015905f922d83d7d8344b0475bbb36b20fe47f31c98b3edb1d5047b58/simplefix-1.0.1.tar.gz" } ], "1.0.10": [ { "comment_text": "", "digests": { "md5": "f1fae4e44dc67cd6e5f4946c20669003", "sha256": "a882ad298490ff1bb85bcbbc8b2b4183deed98b40b2ca18927bfc9582d240906" }, "downloads": -1, "filename": "simplefix-1.0.10-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f1fae4e44dc67cd6e5f4946c20669003", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 24764, "upload_time": "2018-09-28T06:10:20", "url": "https://files.pythonhosted.org/packages/00/c3/6b32e7f0bbd3ee1ed4f8456bb4ee33ac4208a8f6dd2293236b277b8b8b8b/simplefix-1.0.10-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3dc7e9e1df14f853469f2b1b23ea9612", "sha256": "8fa0ec4ec8df9207d9c6a00a3acf684ace0e87c44194cc33d939c5e877e2e116" }, "downloads": -1, "filename": "simplefix-1.0.10.tar.gz", "has_sig": false, "md5_digest": "3dc7e9e1df14f853469f2b1b23ea9612", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27024, "upload_time": "2018-09-28T06:10:23", "url": "https://files.pythonhosted.org/packages/00/80/1cf449fef8273edc9dc0e7d21cfb4190e6cc6321dbcfd3e36fd8c31fcab2/simplefix-1.0.10.tar.gz" } ], "1.0.12": [ { "comment_text": "", "digests": { "md5": "c4bcff7d0c1696738480815534350372", "sha256": "d5fb01cd597bcb95f4320313534810915b596ac4b2fb856e981a73c0461f27e6" }, "downloads": -1, "filename": "simplefix-1.0.12-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c4bcff7d0c1696738480815534350372", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 24777, "upload_time": "2018-11-26T07:06:24", "url": "https://files.pythonhosted.org/packages/b0/3b/c5990fa5291b6f692eda8460b5f8a45b6ba0177b764277ba0bbd70e5b9ce/simplefix-1.0.12-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "08faf5e7fd570ed69cca06a1278f1115", "sha256": "aa792c670669fb979c986569ec7d4d0dd3e60f02aa8439ba50c96aca7d7262a2" }, "downloads": -1, "filename": "simplefix-1.0.12.tar.gz", "has_sig": false, "md5_digest": "08faf5e7fd570ed69cca06a1278f1115", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27475, "upload_time": "2018-11-26T07:06:27", "url": "https://files.pythonhosted.org/packages/36/fc/4ddd68788f52777259e06bc3b9955037608f29f42d1402d085234c4b4deb/simplefix-1.0.12.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "9f963f4f36f24ff5a3c151fc560bbe38", "sha256": "b79d62b2bb6c6c5298d7b229a8c2bb863b09e1f56cdcfb91d2b94a7ca39b4fcd" }, "downloads": -1, "filename": "simplefix-1.0.2.tar.gz", "has_sig": false, "md5_digest": "9f963f4f36f24ff5a3c151fc560bbe38", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5935, "upload_time": "2016-12-10T11:54:29", "url": "https://files.pythonhosted.org/packages/4a/5b/979c94b6824d91ecdbf1cbf1c6276261cb61e5c94e037091d6af6184ecc2/simplefix-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "09ff5bf1d352d65dde6885464179bc7e", "sha256": "910321d6ed67dddbbe6966d47da4a11a50aaf6eb52af4c8690b2da84b3529524" }, "downloads": -1, "filename": "simplefix-1.0.3.tar.gz", "has_sig": false, "md5_digest": "09ff5bf1d352d65dde6885464179bc7e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6728, "upload_time": "2016-12-12T05:39:31", "url": "https://files.pythonhosted.org/packages/5a/8d/ea65ed160d32ba376c253f5ebc76afcab1af2c6dacc7e458a81f11d7eb5d/simplefix-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "43bcdc27185e99cc6320310b9ccb0c98", "sha256": "7b9a24a65f8d643cc820eefa6afa1849d52b2669d0c417ce1728c220dae3be40" }, "downloads": -1, "filename": "simplefix-1.0.4.tar.gz", "has_sig": false, "md5_digest": "43bcdc27185e99cc6320310b9ccb0c98", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9975, "upload_time": "2017-07-07T07:35:46", "url": "https://files.pythonhosted.org/packages/12/bc/b276a13e7457bd6b7583ccbe4e9ad30fd64007f34ab42ed998b845491a15/simplefix-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "3ef83db4f070f87f1881ab34f46e8c83", "sha256": "aa2761c4d4396e6c0e5ddfe66e59aae5d31fa600f10c6b80ca0b8759a419dc52" }, "downloads": -1, "filename": "simplefix-1.0.5.tar.gz", "has_sig": false, "md5_digest": "3ef83db4f070f87f1881ab34f46e8c83", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11149, "upload_time": "2017-07-19T06:27:01", "url": "https://files.pythonhosted.org/packages/fc/8b/324e9f671ec8695cf4db78359e31c9665e57e6087e50c727270f50aace80/simplefix-1.0.5.tar.gz" } ], "1.0.6": [ { "comment_text": "", "digests": { "md5": "799134ea833312ccaf0287b508deb2b3", "sha256": "06d4cdb51f614c555ab64de8dc75b27f32ccb5f38c9f3fabc7319766303189f3" }, "downloads": -1, "filename": "simplefix-1.0.6.tar.gz", "has_sig": false, "md5_digest": "799134ea833312ccaf0287b508deb2b3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11664, "upload_time": "2017-08-23T21:46:51", "url": "https://files.pythonhosted.org/packages/03/1b/71085d275f364692c1a5b7fb76e5ad32c5dbb324668f9e7f078e7407582e/simplefix-1.0.6.tar.gz" } ], "1.0.7": [ { "comment_text": "", "digests": { "md5": "cb63b48545711d4bf8a9346ea3b9783b", "sha256": "c4cf03c1c887fd432e297079b94b32f255296bdad4832f64644c403df15034d5" }, "downloads": -1, "filename": "simplefix-1.0.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cb63b48545711d4bf8a9346ea3b9783b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 19864, "upload_time": "2017-11-12T23:42:56", "url": "https://files.pythonhosted.org/packages/72/f3/b0c7567f04c669dd10fbcef660da96195c12b61a15327ae2fc16808c21ae/simplefix-1.0.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "08e4bbb0d08a4989087b4e48391128b9", "sha256": "d629fa5b458f4b184d74e2d91d2253d0a19e15ff279d506fa46b5630f424b840" }, "downloads": -1, "filename": "simplefix-1.0.7.tar.gz", "has_sig": false, "md5_digest": "08e4bbb0d08a4989087b4e48391128b9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19205, "upload_time": "2017-11-12T23:42:59", "url": "https://files.pythonhosted.org/packages/21/69/21412f74ecc67942c348d03bcae883de0e590a6684d2570875dc9b61f2ef/simplefix-1.0.7.tar.gz" } ], "1.0.8": [ { "comment_text": "", "digests": { "md5": "bee30026016b2e81235c3a05f12b4f9a", "sha256": "ef349081e45e4c1d9504e118a175db54720bcbde962e48655e9ee484b6b753c2" }, "downloads": -1, "filename": "simplefix-1.0.8-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "bee30026016b2e81235c3a05f12b4f9a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 20205, "upload_time": "2017-12-15T10:49:27", "url": "https://files.pythonhosted.org/packages/77/a8/7c9b9285512246c65ac034701051f8a61a1e7d34281b937c8224e980f202/simplefix-1.0.8-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e8d474e4932e4ce776636e94114052d9", "sha256": "5750220de387755900d2fca868555fcb9d65766642e1b72f22e3ae4becf6c266" }, "downloads": -1, "filename": "simplefix-1.0.8.tar.gz", "has_sig": false, "md5_digest": "e8d474e4932e4ce776636e94114052d9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21589, "upload_time": "2017-12-15T10:49:29", "url": "https://files.pythonhosted.org/packages/4f/1c/505877c83244e5b586643c208d4bea6cde6d373d46b90920ea91f5061844/simplefix-1.0.8.tar.gz" } ], "1.0.9": [ { "comment_text": "", "digests": { "md5": "ddb22ef51a9bcb3a0cd2cac90f986d1d", "sha256": "18c7a02e9c2240c944f177ce36eb170178c6326f8c12ab00c819dbd38f644d21" }, "downloads": -1, "filename": "simplefix-1.0.9-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ddb22ef51a9bcb3a0cd2cac90f986d1d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 24524, "upload_time": "2018-02-16T05:50:43", "url": "https://files.pythonhosted.org/packages/33/91/19f3581aa537faf52cbc48a22444f5bc56173a0f6a3542ee0105becf2571/simplefix-1.0.9-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "536bc6c51f506963be22b2d54e5589c4", "sha256": "ca393c4080786bfe8773475c9ce1a010c45a0cb0ffc0309dd0e530b5e258f178" }, "downloads": -1, "filename": "simplefix-1.0.9.tar.gz", "has_sig": false, "md5_digest": "536bc6c51f506963be22b2d54e5589c4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26363, "upload_time": "2018-02-16T05:50:45", "url": "https://files.pythonhosted.org/packages/c7/c1/4b4bbe23c8292b9b93fea2c4aa7e3ca04e2e02662f9ca12890445a926ed1/simplefix-1.0.9.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c4bcff7d0c1696738480815534350372", "sha256": "d5fb01cd597bcb95f4320313534810915b596ac4b2fb856e981a73c0461f27e6" }, "downloads": -1, "filename": "simplefix-1.0.12-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c4bcff7d0c1696738480815534350372", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 24777, "upload_time": "2018-11-26T07:06:24", "url": "https://files.pythonhosted.org/packages/b0/3b/c5990fa5291b6f692eda8460b5f8a45b6ba0177b764277ba0bbd70e5b9ce/simplefix-1.0.12-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "08faf5e7fd570ed69cca06a1278f1115", "sha256": "aa792c670669fb979c986569ec7d4d0dd3e60f02aa8439ba50c96aca7d7262a2" }, "downloads": -1, "filename": "simplefix-1.0.12.tar.gz", "has_sig": false, "md5_digest": "08faf5e7fd570ed69cca06a1278f1115", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27475, "upload_time": "2018-11-26T07:06:27", "url": "https://files.pythonhosted.org/packages/36/fc/4ddd68788f52777259e06bc3b9955037608f29f42d1402d085234c4b4deb/simplefix-1.0.12.tar.gz" } ] }