Draw candlesticks charts right into your terminal.



Features

API Usage

Add this to your Cargo.toml toml [dependencies] cli-candlestick-chart = "0.3"

```rust use clicandlestickchart::{Candle, Chart};

fn main() { // Add some candles let candles: Vec = vec![ Candle::new(133.520004, 133.610001, 126.760002, 129.410004), Candle::new(128.889999, 131.740005, 128.429993, 131.009995), Candle::new(127.720001, 131.050003, 126.379997, 126.599998), Candle::new(128.360001, 131.630005, 127.860001, 130.919998), Candle::new(132.429993, 132.630005, 130.229996, 132.050003), ];

// Create and display the chart
let mut chart = Chart::new(&candles);

// Set the chart title
chart.set_name(String::from("BTC/USDT"));

// Set customs colors
chart.set_bear_color(1, 205, 254);
chart.set_bull_color(255, 107, 153);

chart.draw();

} ```

Binary Usage

Download the latest release for your platform here

``` USAGE: cli-candlestick-chart.exe [OPTIONS] --mode

FLAGS: -h, --help Prints help information -V, --version Prints version information

OPTIONS: --bear-color Sets the descending candles color in hexadecimal. --bull-color Sets the ascending candles color in hexadecimal. --chart-name Sets the chart name. -f, --file [MODE:*-file] File to read candles from.`

    --interval <INTERVAL>        [MODE:*-fetch] The interval you want to retrieve the candles from the API 
                                 [default: 1d]  
                                 [possible values: 1m, 2m, 5m, 15m, 30m, 60m, 90m, 1h, 1d, 5d, 1wk, 1mo, 3mo]

-m, --mode <MODE>                Select the method for retrieving the candles. 
                                 [possible values: stdin, csv-file, json-file, yahoo-fetch]

--ticker <TICKER>                [MODE:*-fetch] The broker-side ticker of the asset you want to plot.

`` When requesting the CSV file mode, the library expects a CSV file withopen,high,low,close` headers fields.

When requesting the JSON or stdin mode, the library expects a JSON with the following format : [ { "open": 28994.009766, "high": 29600.626953, "low": 28803.585938, "close": 29374.152344 }, ... ]

Examples

API

Basic example with CSV parsing : Run with cargo run --example basic-with-csv-parsing --features=serde,csv

Fetch candles from binance : Run with cargo run --example fetch-from-binance --features=serde,reqwest

Binary