You can edit almost every page by Creating an account and confirming your email.

Fix8

From EverybodyWiki Bios & Wiki


Fix8
Original author(s)David Dight and Sergey Sedreev
Developer(s)Community
Initial release2010; 16 years ago (2010)
Stable release
1.4.1 / 3 January 2019; 7 years ago (2019-01-03)
Repositorygithub.com/fix8
Written inC++[1]
Engine
    PlatformCross-platform
    LicenseGNU Lesser General Public License
    Websitewww.fix8.org

    Search Fix8 on Amazon.

    Fix8 is a cross-platform free and open-source software framework that implements the Financial Information eXchange (FIX) protocol.[2]

    It runs on Linux (IA32, x86-64, Itanium, PowerPC and ARMv7 architectures) as well as on MacOS and Microsoft Windows 32/64 platforms.

    The framework is under active development and is maintained by David Dight.[3][4]

    Features

    Fix8 is an example of an ultra low latency framework implemented in C++.[5][6][7]

    According to the authors, it is one of the fastest implementations of FIX protocol [citation needed] and is often used to benchmark other FIX frameworks.[8][9]

    It supports FIX4.x to FIX5.x and FIXT1.x standards[10] as well as custom FIX variants, field and value domain validation, mandatory/optional field assertion, field ordering, well-formedness testing, retransmission and standard session semantics.

    Other features include a built-in unit test framework and a metadata driven test harness that can be scripted to support captured or canned data playback.

    Architecture

    Fix8 usage

    Fix8 is composed of two main parts:

    • f8c compiler
    • runtime library

    The f8c compiler is used to generate C++ source and header files from either supplied or user provided XML schema. Generated files are then used together with the runtime library to create a finished application.

    The framework also provides f8test as an example of FIX client and server that can be used to connect user applications for testing.[11]

    Fix8 requires the following open source components:

    ... and optionally

    Examples

    The following example demonstrates setting up and connecting a client:

    // f8 headers
    #include <fix8/f8includes.hpp>
    // f8c compiler generated headers
    #include "gen_types.hpp"
    #include "gen_router.hpp"
    #include "gen_classes.hpp"
    using namespace std;
    unique_ptr<FIX8::ClientSessionBase> mc;
    
    int main(int argc, char *argv[])
    {
    ...
        mc.reset(new FIX8::ReliableClientSession<hf_session_client>(FIX8::TEX::ctx(), conf_file, "TEST"));
        mc->session_ptr()->control() |= FIX8::Session::print;
        mc->start(false, next_send, next_receive);
    ...
    }
    

    The following example demonstrates creating and sending a NewOrderSingle ("D") message:

    bool Application::new_order_single()
    {
       static unsigned oid(0);
       ostringstream oistr;
       oistr << "ord" << ++oid;
    
       FIX8::TEX::NewOrderSingle *nos(new FIX8::TEX::NewOrderSingle);
       *nos  << new FIX8::TEX::TransactTime
             << new FIX8::TEX::OrderQty(10000))
             << new FIX8::TEX::Price(10.3)
             << new FIX8::TEX::ClOrdID(oistr.str())
             << new FIX8::TEX::Symbol("BHP")
             << new FIX8::TEX::OrdType(FIX8::TEX::OrdType_LIMIT)
             << new FIX8::TEX::Side(FIX8::TEX::Side_BUY)
             << new FIX8::TEX::TimeInForce(FIX8::TEX::TimeInForce_FILL_OR_KILL);
     
       mc->session_ptr()->send(nos);
       return true;
    }
    

    Licensing

    Fix8 is open source and is released under the GNU Lesser General Public License Version 3.

    See also

    References

    1. "The Fix8 Open Source Library on OpenHub". OpenHub. Retrieved 2020-09-24.
    2. "What is FIX? – FIX Trading Community". Retrieved 2020-09-21.
    3. "Operating Out In The Open". GlobalTrading. 2012-11-05. Retrieved 2020-09-21.
    4. "David Dight Linkedin interview". Linkedin. Retrieved 2020-09-21.
    5. "Saxo Bank Taps Fix8 Market Tech Solution for Global Market Connectivity". Finance Magnates. Retrieved 2020-09-30.
    6. "Fix8 Market Tech to provide global market connectivity to Saxo Bank". Fintech Futures. Retrieved 2020-09-30.
    7. "Hanging out for a crypto-fix? Don't worry, it's coming soon". SmartCompany. Retrieved 2020-09-30.
    8. "MBOChip Compares itself to Fix8".
    9. "EZESoft using Fix8 simulator".
    10. "The Fix8 Open Source Project on Libraries.io". Libraries.io. Retrieved 2020-09-26.
    11. "SampleCaptures - The Wireshark Wiki". wiki.wireshark.org. Retrieved 2020-09-21.
    12. Zsók, Viktória; Horváth, Zoltán; Csató, Lehel (2015-03-20). Central European Functional Programming School: 5th Summer School, CEFP 2013, Cluj-Napoca, Romania, July 8-20, 2013, Revised Selected Papers. Springer. ISBN 978-3-319-15940-9. Search this book on
    13. "Who is Using FastFlow [FastFlow]". calvados.di.unipi.it. Retrieved 2020-09-21.

    External links


    This article "Fix8" is from Wikipedia. The list of its authors can be seen in its historical and/or the page Edithistory:Fix8. Articles copied from Draft Namespace on Wikipedia could be seen on the Draft Namespace of Wikipedia and not main one.