CandlestickCartesianLayer

Overview

Use CandlestickCartesianLayerarrow-up-right to create candlestick charts. Each candle’s style is defined by its corresponding Candlearrow-up-right. The Candles are provided by a CandleProviderarrow-up-right:

  • To style candles based on their absolute price changes (closing vs. opening), use absolutearrow-up-right. 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 absoluteRelativearrow-up-right. This is commonly used for hollow candles.

  • For custom behavior, implement CandleProvider.

At the CandlestickCartesianLayer level, you can set the minimum body height, change the candle spacing, and toggle wick scaling.

Learn about CandlestickCartesianLayer in Compose and in views.

Transaction.candlestickSeries

CandlestickCartesianLayers use CandlestickCartesianLayerModelarrow-up-rights. When using a CartesianChartModelProducer, add CandlestickCartesianLayerModels via candlestickSeriesarrow-up-right:

cartesianChartModelProducer.runTransaction {
    candlestickSeries(
        x = listOf(1, 2, 3, 4),
        opening = listOf(2, 4, 6, 3),
        closing = listOf(4, 5, 3, 3),
        low = listOf(1, 4, 2, 2),
        high = listOf(5, 6, 7, 4),
    )
    // ...
}

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 CartesianChartModelarrow-up-right directly, you can add a CandlestickCartesianLayerModel by using buildarrow-up-right:

This function also has an overload with no x parameter:

Sample charts

Last updated