Skip to content
ldankoPublic

About

No description, website, or topics provided.

Resources

Stars

6 stars

Watchers

3 watching

Forks

Repository files navigation

easyfix

EasyFix is a Rust toolkit for building applications that exchange FIX (Financial Information Exchange) messages. It combines message types generated from XML dictionaries with encoding, decoding, and an asynchronous session layer for acceptors and initiators.

Use the message types independently, or connect them to the session layer to handle connections and session events in your application.

The project is under active development, and its API may change without compatibility guarantees.

Crates

Each crate can be used directly. The easyfix facade provides a common entry point with optional features for the parts your application needs.

Crate Purpose
easyfix Facade and feature selection
easyfix-core Shared types, message traits, and encoding/decoding primitives
easyfix-dictionary Parsing and inspecting FIX XML dictionaries
easyfix-macros Compile-time FIX string literals
easyfix-messages Rust message code generation from XML dictionaries
easyfix-session Acceptor and initiator sessions, application callbacks, and message storage

Try the example

The session example contains a working acceptor and initiator using generated messages. From the repository root, start the acceptor in one terminal:

RUST_LOG=info cargo run -p session-example --bin acceptor

Then start the initiator in another:

RUST_LOG=info cargo run -p session-example --bin initiator

The initiator connects locally, sends a NewOrderSingle, and logs the acceptor's ExecutionReport reply. Press Ctrl-C to shut down each program.

For your own application, see the message generation guide and session setup examples.

Building and testing

Nightly Rust is required. Run these commands from the repository root:

cargo build --workspace --locked
cargo test --workspace --all-features --locked

License

MIT

About

No description, website, or topics provided.

Resources

Stars

6 stars

Watchers

3 watching

Forks

Releases

Packages

Used by

Contributors

Languages