# fix8 **Repository Path**: jarven-zhang/fix8 ## Basic Information - **Project Name**: fix8 - **Description**: No description available - **Primary Language**: C++ - **License**: LGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-15 - **Last Updated**: 2025-09-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
# [Fix8](http://www.fix8.org) Open Source C++ FIX Engine A modern open source C++ FIX framework featuring complete schema driven customisation, high performance and fast application development. The system is comprised of a compiler for generating C++ message and field encoders, decoders and instantiation tables; a runtime library to support the generated code and framework; and a set of complete client/server test applications. [Fix8 Market Tech](https://www.fix8mt.com/) develops and maintains Fix8, [Fix8Pro and UFE](https://www.fix8mt.com), the commercially supported version of Fix8. **For enterprise use we recommend Fix8Pro.** ## Contents 1. [Contents](#contents) 1. [Features](#features) 1. [Directory Layout](#directory-layout) 1. [Documentation](#documentation) 1. [Branch Layout](#branch-layout) 1. [C++11](#c11) 1. [External Dependencies (required)](#external-dependencies-required) 1. [Optional Dependencies](#optional-dependencies) 1. [Building on Linux/UNIX](#building-on-linuxunix) 1. [Building on OSX](#building-on-osx) 1. [Building on Windows](#building-on-windows) 1. [Support](#support) 1. [Downloads](#downloads) 1. [Getting help or reporting problems](#getting-help-or-reporting-problems) 1. [Making a Pull Request](#making-a-pull-request) 1. [License](#license) 1. [Fix8Pro and Fix8 Market Technologies](#fix8pro-and-fix8-market-technologies) 1. [More Information](#more-information) ## Features * [Fix8](http://www.fix8.org) helps you get your [FIX protocol](http://www.fixprotocol.org/) client or server up and running quickly. Using one of the standard FIX schemas you can have a FIX client or server up and running in next to no time. * Statically compile your FIX xml schema and quickly build your FIX application on top. If you need to add customised messages or fields, simply update the schema and recompile. * Fix8 is the fastest C++ Open Source FIX framework. Our testing shows that Fix8 is on average 68% faster encoding/decoding the same message than Quickfix. See [Performance](http://fix8.org/performance.html) to see how we substantiate this shameless bragging. * Fix8 supports standard `FIX4.X` to `FIX5.X` and `FIXT1.X`. If you have a custom FIX variant Fix8 can use that too. New FIX versions will be supported. * Fix8 offers message recycling and a meta-data aware test harness. Incorporates lock free queues, atomics and many other modern techniques. * Fix8 contains a built-in unit test framework that's being continually revised and extended. Fix8 also has a metadata driven test harness that can be scripted to support captured or canned data playback. * Fix8 is a complete C++ FIX framework, with client/server session and connection classes (including SSL); support for the standard FIX field types; FIX printer, async logger, async message persister and XML configuration classes. * Leverage standard components. Fix8 optionally uses industry recognised components for many important functions, including Poco, TBB, Redis, Memcached, BerkeleyDB, Fastflow, Google Test, Google Performance Tools, Doxygen and more. We didn't reinvent the wheel. * Fix8 statically supports nested components and groups to any depth. The Fix8 compiler and runtime library takes the pain out of using repeating groups. * Fix8 applications are fast. On production level hardware, client NewOrderSingle encode latency is now 2.1us, and ExecutionReport decode 3.2us. Without the framework overhead, NewOrderSingle encode latency is 1.4us. This is being continually improved. * Fix8 has been designed to be extended, customised or enhanced. If you have special requirements, Fix8 provides a flexible platform to develop your application on. * Fix8 supports field and value domain validation, mandatory/optional field assertion, field ordering, well-formedness testing, retransmission and standard session semantics. * Fix8 runs under industry standard Linux on IA32, x86-64, Itanium, PowerPC and ARMv7. It also now runs on *Windows* and *OSX*. Other \*NIX variants may work too. ## Directory LayoutDirectory | Description |
---|---|
./ |
root directory with configure |
m4/ |
additional m4 macros needed by configure |
compiler/ |
the f8c compiler source |
contrib/ |
user contributed files |
doc/ |
Fix8 documentation |
doc/man |
manpages for Fix8 utilities |
doc/html |
doxygen documentation (optionally generated when built) |
include/ |
header files for the runtime library and compiler |
include/ff/ |
header files for FastFlow |
runtime/ |
runtime library source |
stocklib/ |
stock FIX library builds |
util/ |
additional utilities source |
msvc/ |
Microsoft Visual Studio project files |
pro/ |
Fix8Pro extensions (commercial version only) |
schema/ |
quickfix FIX xml schemas |
test/ |
test applications client/server source |
utests/ |
unit test applications |
Branch | github path | Description |
---|---|---|
master |
https://github.com/fix8/fix8/tree/master | This is the default branch. All stable releases are made here. |
dev |
https://github.com/fix8/fix8/tree/dev | This is the development stream and is updated continually. Features and bug fixes scheduled for release are developed and tested here. |
dev-premain |
https://github.com/fix8/fix8/tree/dev-premain | This branch is used to marshall development changes that are ready for release. When significant changes are made to the dev branch, this branch will be used to keep other changes separate. |
gh-pages |
https://github.com/fix8/fix8/tree/gh-pages | This branch contains the static html for the Fix8 website. |
% git clone https://github.com/[your_repo_name]/fix8.git -b dev
1. Make your changes to this branch
1. Submit changes to your branch and push the branch to your fork
1. Create a pull request at fix8:dev
1. Wait for your pull request to be accepted to fix8:dev
1. Update your fork with recent fix8:dev
## License
Fix8 is released under the [GNU LESSER GENERAL PUBLIC LICENSE Version 3](http://www.gnu.org/licenses/lgpl.html).
See [License](http://fix8.org/faq.html#license) for more information.
## Fix8Pro and Fix8 Market Technologies
[Fix8Pro](https://www.fix8mt.com) is the commercially supported version of Fix8. [Fix8 Market Tech](https://www.fix8mt.com/)
(Fix8MT) develops and maintains both Fix8Pro and the Fix8 open source versions.
Fix8MT has developers in Australia, China, Canada and the Russian Federation as well as partners in Australia, Japan and India.
Fix8MT is responsible for providing and managing additional support and consultancy services, and works closely with the
Fix8 open source community and partners to grow commercial support services through 3rd party ISVs.
For more information about Fix8Pro see the [Fix8MT website.](https://www.fix8mt.com)
## More Information
For more information, see the [Fix8 website.](http://www.fix8.org)