MarketLab 1.2.0
Library to connect to MarketLab API. Get historical markets data to backtest your trading strategy on a cryptocurrencies exchanges like Binance, Poloniex, etc. This library includes a replaying engine. Get help from the documentation and example.
Additional Details
Service not available
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
Install-Package MarketLab -Version 1.2.0
dotnet add package MarketLab --version 1.2.0
<PackageReference Include="MarketLab" Version="1.2.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add MarketLab --version 1.2.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
.NET - C#
// These fonctions must be used in a real project with class, etc.
using MarketLab;
// Init lib
MarketLabAPI ml = new MarketLabAP ('{YOUR_API_KEY}');
// Get list of exchanges
RootObjectExchanges list_exchanges = ml.get_exchanges();
// Get list of markets for an exchange
RootObjectMarkets list_markets = ml.get_markets('binance');
// Get information about a market
RootObjectInformationMarket info_market = ml.get_information_market('binance','eth_btc');
// Init replay ('compute_done' is done when the callback return an object)
ml.init_replay(callback, 'binance', 'eth_btc', '2020-04-06', '2020-04-08', 'trade', stuffDone, true);
// Callback on event (trade and orderbook)
// Event_type indicates if the last event is a trade, an orderbook or the end of replay.
void callback(Trade last_trade, Orderbook last_orderbook, MarketLabAPI.Event_type last_event_type) {
// Add your trading algorithm here
// Sample to get the price of the better ask and bid:
if(last_orderbook != null){
double best_ask = last_orderbook.orderbooks["asks"][0].price;
double best_bid = last_orderbook.orderbooks["bids"][0].price;
}
// For exemple, you can call a class to do an action and get the returned object in variable
// Your EventHandler will be call by the library
object data = DoStuff();
return data ;
}
// Function call on the EventHandler
private void stuffDone(object data, EventArgs e){
Console.WriteLine(data.ToString());
}
.NET - C#
// These fonctions must be used in a real project with class, etc.
using MarketLab;
// Init lib
MarketLabAPI ml = new MarketLabAP ('{YOUR_API_KEY}');
// Get list of exchanges
RootObjectExchanges list_exchanges = ml.get_exchanges();
// Get list of markets for an exchange
RootObjectMarkets list_markets = ml.get_markets('binance');
// Get information about a market
RootObjectInformationMarket info_market = ml.get_information_market('binance','eth_btc');
// Init replay ('compute_done' is done when the callback return an object)
ml.init_replay(callback, 'binance', 'eth_btc', '2020-04-06', '2020-04-08', 'trade', stuffDone, true);
// Callback on event (trade and orderbook)
// Event_type indicates if the last event is a trade, an orderbook or the end of replay.
void callback(Trade last_trade, Orderbook last_orderbook, MarketLabAPI.Event_type last_event_type) {
// Add your trading algorithm here
// Sample to get the price of the better ask and bid:
if(last_orderbook != null){
double best_ask = last_orderbook.orderbooks["asks"][0].price;
double best_bid = last_orderbook.orderbooks["bids"][0].price;
}
// For exemple, you can call a class to do an action and get the returned object in variable
// Your EventHandler will be call by the library
object data = DoStuff();
return data ;
}
// Function call on the EventHandler
private void stuffDone(object data, EventArgs e){
Console.WriteLine(data.ToString());
}
Release Notes
Fix bug on posibility to return an object on callback. Now is by an EventHandler
Dependencies
-
.NETStandard 2.0
- LumenWorksCsvReader (>= 4.0.0)
- Newtonsoft.Json (>= 12.0.3)
- RestSharp (>= 106.10.1)
- SharpZipLib (>= 1.2.0)
Used By
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.