CandlestickCartesianLayer

Use CandlestickCartesianLayer to create candlestick charts. Each candle’s style is defined by its corresponding Candle instance. These are provided by CandleProvider:

  • To style candles based on their absolute price changes (closing vs. opening), use absolute. This is commonly used for filled candles.

  • To style candles based on both their absolute price changes (closing vs. opening) and their relative price changes (closing vs. previous closing), use absoluteRelative. This is commonly used for hollow candles.

  • For custom behavior, implement CandleProvider.

On a CandlestickCartesianLayer instance, you can set the minimum body height, change the candle spacing, and toggle wick scaling.

Creation

To create a CandlestickCartesianLayer instance, use the XML attributes:

<style name="ChartStyle">
    <item name="layers">candlestick</item>
    <!-- ... -->
</style>
<com.patrykandpatrick.vico.views.cartesian.CartesianChartView
    app:chartStyle="@style/ChartStyle"
    <!-- ... --> />

Alternatively, instantiate CandlestickCartesianLayer via the constructor:

cartesianChartView.chart = CartesianChart(CandlestickCartesianLayer(/* ... */), /* ... */)

Transaction.candlestickSeries

Candlestick layers use CandlestickCartesianLayerModel instances. When using CartesianChartModelProducer, add them via candlestickSeries:

candlestickSeries also has an overload with no x parameter, which uses the indices of the prices as the x-values:

Manual CandlestickCartesianLayerModel creation

When creating a CartesianChartModel instance directly, you can add a candlestick-layer model by using build:

This function also has an overload with no x parameter:

Sample charts

Last updated