Les.rs - Rust Cryptocurrency Exchange Library
An open source Rust high performance cryptocurrency trading API with support for multiple exchanges and language wrappers. written in rust(
Installation
To install the library, add the following to your Cargo.toml file:
Copy code
[dependencies]
les = "0.1
You can then use the library in your Rust code by adding the following to your main.rs or lib.rs file:
Copy code
extern crate les;
Supported Exchanges
The following exchanges are currently supported by the library:
Exchange | Available |
---|---|
Binance |
|
Coinbase |
|
Bitfinex |
|
Kraken |
|
More exchanges will be added in future updates.
Usage
To use the library, you will need to create an instance of the Exchange struct, passing in the name of the exchange you want to use as a string. You will also need to provide your API key and secret key, which you can obtain from the exchange.
Copy code
let client = Binance::new(BinanceParameters {
credentials: Some(BinanceCredentials {
api_key: env::var("BINANCE_API_KEY").expect("Couldn't get environment variable"),
api_secret: env::var("BINANCE_API_SECRET").expect("Couldn't get environment variable"),
}),
..Default::default()
})
.await
.expect("Failed to create Client")
You can then use the exchange object to call various methods to access the exchange's API. For example, to get the current balance of your account:
Copy code
let params = TradeHistoryReq {
paginator: None,
symbol: String::from("BNBBTC"),
};
let binance_cli = client.inner_client().expect("Couldn't get inner time.");
let args = KlineParams{
symbol: "BNBBTC".to_string(),
interval: "1m".to_string(),
paginator: None,
};
let response = binance_cli.get_klines(&args).await.expect("Couldn't trade history.");
See the documentation for a full list of available methods and their usage.
Documentation
Full documentation for the library can be found here.
Contributing
We welcome contributions to the library! If you would like to contribute, please follow these steps:
- Fork the repository.
- Create a new branch for your changes.
- Make your changes and commit them to your branch.
- Push your branch to your fork on GitHub.
- Submit a pull request to the main branch of the crabby-ai/les repository.
Please make sure to follow the coding style and conventions used in the rest of the codebase, and make sure to test your changes thoroughly before submitting the pull request.
License
This library is released under the MIT License. See the LICENSE file for details.
Acknowledgements
I would like to thank the following individuals and organizations for their contributions to this project:
- The Rust community for their support and guidance.
- The developers of the various cryptocurrency exchanges provide APIs that allow us to access their platforms.