barter-execution

Crates.iobarter-execution
lib.rsbarter-execution
version0.3.0
sourcesrc
created_at2022-07-12 18:14:16.293828
updated_at2023-04-16 16:25:26.377839
descriptionHigh-performance and normalised trading interface capable of executing across many financial venues. Also provides a feature rich simulated exchange.
homepage
repositoryhttps://github.com/barter-rs/barter-execution-rs
max_upload_size
id624568
size141,548
Just A Stream (just-a-stream)

documentation

https://docs.rs/barter-execution/

README

Barter-Execution

High-performance and normalised trading interface capable of executing across many financial venues. Also provides a feature rich simulated exchange to assist with backtesting and dry-trading.

It is:

  • Easy: ExecutionClient trait provides a unified and simple language for interacting with exchanges.
  • Normalised: Allow your strategy to communicate with every real or simulated exchange using the same interface.
  • Extensible: Barter-Execution is highly extensible, making it easy to contribute by adding new exchange integrations!

See: Barter, Barter-Integration, Barter-Data

Crates.io MIT licensed Build Status Discord chat

API Documentation | Chat

Overview

High-performance and normalised trading interface capable of executing across many financial venues. Also provides a feature rich simulated exchange to assist with backtesting and dry-trading. Communicate with an exchange by initialising it's associated ExecutionClient instance.

Example

For now, see tests/simulated_exchange.rs for a taste.

Getting Help

Firstly, see if the answer to your question can be found in the API Documentation. If the answer is not there, I'd be happy to help to Chat and try answer your question via Discord.

Contributing

Thanks for your help in improving the Barter ecosystem! Please do get in touch on the discord to discuss development, new features, and the future roadmap.

  • Implement the ExecutionClient trait to integrate a new exchange.

Related Projects

In addition to the Barter-Execution crate, the Barter project also maintains:

  • Barter: High-performance, extensible & modular trading components with batteries-included. Contains a pre-built trading Engine that can serve as a live-trading or backtesting system.
  • Barter-Integration: High-performance, low-level framework for composing flexible web integrations.
  • Barter-Data: High-performance WebSocket integration library for streaming public market data from leading cryptocurrency exchanges.

Roadmap

  • Improve sophistication of the SimulatedExchange.
    • OrderKind::Market & OrderKind::ImmediateOrCancel execution support.
    • Enable many clients to use the exchange simultaneously, pathing the way for simulated order books generated by many market archetype actors.
  • Add many more ExecutionClient implementations for exchanges.

Licence

This project is licensed under the MIT license.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in Barter-Data by you, shall be licensed as MIT, without any additional terms or conditions.

Commit count: 9

cargo fmt