Skip to content

registerIndicator(indicator) ​

registerIndicator Used custom indicators.

Reference ​

typescript
(
  indicator: {
    name: string
    shortName?: string
    precision?: number
    calcParams?: unknown[]
    shouldOhlc?: boolean
    shouldFormatBigNumber?: boolean
    visible?: boolean
    zLevel?: number
    extendData?: unknown
    series?: 'normal' | 'price' | 'volume',
    figures?: Array<{
      key: string
      title?: string
      type?: string
      baseValue?: number
      attrs?: (params: object) => object
      styles?: (params: object) => object
    }>
    minValue?: number
    maxValue?: number
    styles?: Partial<IndicatorStyle>
    shouldUpdate?: (prev: Indicator, current: Indicator) => (boolean | { calc: boolean, draw: boolean })
    calc: (kLineDataList: KLineData[], indicator: Indicator) => unknown[] | Promise<unknown[]>
    regenerateFigures?: (calcParams: unknown[]) => Array<{
      key: string
      title?: string
      type?: string
      baseValue?: number
      attrs?: (params: object) => object
      styles?: (params: object) => object
    }>
    createTooltipDataSource?: (params: object) => ({
      name?: string
      calcParamsText?: string
      icons?: Array<{
        id?: string
        position?: 'left' | 'middle' | 'right'
        color?: string
        activeColor?: string
        size?: number
        fontFamily?: string
        icon?: string
        backgroundColor?: string
        activeBackgroundColor?: string
      }>
      legends?: Array<{
        title: string |
          {
            text: string
            color: string
          }
        value: string |
          {
            text: string
            color: string
          }
      }>
    })
    draw?: (params: object) => boolean
    onDataStateChange?: (params: object) => void
  }
) => void

Parameters ​

  • indicator Indicator configuration.
    • name Name, a unique identifier used for creation or modification.
    • shortName A short name, used for prompt display.
    • precision Precision.
    • calcParams Calculate the parameters.
    • shouldOhlc Whether to show the ohlc bar.
    • shouldFormatBigNumber Whether big numbers need to be formatted and displayed.
    • visible Whether it is visible.
    • zLevel Hierarchy only works between indicators.
    • extendData Custom the extended data.
    • series Series, supports normal , price and volume , when price and precision is not set, the precision will follow the price precision, when volume and precision is not set, the precision will follow the volume precision.
    • figures Figure configuration, an array of items containing object configuration.
      • key The identifier of the data value, corresponding to the key of the data sub-item returned by calc.
      • type The type of figure that supports the type returned by klinecharts.getSupportedFigures .
      • baseValue The basic control value, currently only works when type is rect and bar . When this value is valid, the graphics will be drawn up and down based on this value.
      • attrs The property value is a method, and the return value is the required property of the object obtained by klinecharts.getFigureClass .
      • styles Style is a method that returns the style required by the object obtained by klinecharts.getFigureClass .
    • minValue Specify a minimum value.
    • maxValue Specifies the maximum value.
    • styles Style configuration, the type is the same as indicator in the general style Styles.
    • shouldUpdate Control whether updates are needed.
    • calc Calculation method.
    • regenerateFigures Regenerates the basic graphics configuration. This is triggered when calcParams changes. The return value type is the same as figures .
    • createTooltipDataSource Create custom prompts.
    • draw Custom drawing method, if the return value is true, it will override the default drawing.
    • onDataStateChange Data change callback notification.

Returns ​

registerIndicator returns undefined .

Usage ​

Basic usage ​

Using custom figure ​

custom prompt information ​

Custom drawing ​