StockChart API
StockChart 用于加载 OHLCV 数据、流式烛线、控制范围和添加市场图层的方法。
import { StockChart } from "@sixtyfold/stock";使用上方所示的公开入口。仅类型导入不会保留在应用 JavaScript 中。
ChartOverlayError
当一个或多个声明式覆盖源无法应用时报告的错误。
导入 @sixtyfold/stock·类
class ChartOverlayError extends Error| 成员 | 定义 | 描述 |
|---|---|---|
cause? | Error | undefined | 导致图表覆盖错误的原因。 |
message | string | 消息文本。 |
name | "ChartOverlayError" | 此图表覆盖层错误的显示名称。 |
sources | readonly string[] | 图表覆盖层错误的来源。 |
stack? | string | undefined | 调用栈文本。 |
ChartRendererError
在图表渲染器启动或后续使用期间失败时报告的错误。
导入 @sixtyfold/stock·类
class ChartRendererError extends Error| 成员 | 定义 | 描述 |
|---|---|---|
cause? | Error | undefined | 图表渲染器错误的原因。 |
message | string | 消息文本。 |
name | "ChartRendererError" | 此图表渲染器错误的显示名称。 |
phase | RendererFailurePhase | 图表渲染器错误的阶段。 |
stack? | string | undefined | 调用栈文本。 |
StockChart
用于聚合 OHLCV 蜡烛、成交量、分析、剖面、价格线和标记的命令式浏览器图表。
导入 @sixtyfold/stock·类
class StockChart| 成员 | 定义 | 描述 |
|---|---|---|
add | (timestamp: number, open: number, high: number, low: number, close: number, volume: number) => void | 将一个 OHLCV 蜡烛追加到流缓冲区,并将快速调用合并为一个动画帧。 |
add | (batches: readonly StockCandleBatch[], options?: StockAddCandlesOptions) => void | 在一次渲染器更新中安装多个 OHLCV 块。Worker 模式会转移并分离每个块的缓冲区;主线程模式下,数组按引用保留。 |
add | (timestamps: Float64Array, opens: Float64Array, highs: Float64Array, lows: Float64Array, closes: Float64Array, volumes: Float64Array, options?: StockAddCandlesOptions) => void | 在一次渲染器更新中添加对齐的 OHLCV 列。Worker 模式会转移并分离所提供的缓冲区;主线程模式下,数组按引用保留。 |
batch | (fn: () => void) => void | 将同步的外观与视口更改合并为一次更新。嵌套批处理会合并;数据加载仍立即执行。 |
destroy | () => void | 释放图表及其所拥有的资源。 |
get | () => DeepReadonly<StockAppearanceOptions> | 返回可变外观子集的只读快照。 |
get | () => DeepReadonly<StockChartOptions> | 返回全部已规范化的只读快照,包含所有选项(构建时 + 当前外观)。 |
get | () => "worker" | "main" | 返回解析后的渲染模式("Worker" 或 "主线程")。 |
get | () => Viewport | 返回当前视口的快照。 |
initialize | () => Promise<void> | 等待渲染器准备好接收数据和运行时命令。构建时初始化看门狗在 Worker 或主线程回退未在配置的间隔内就绪时,会以 ChartRendererError 拒绝此 promise。应用应在安装第一个数据集之前等待此方法完成。 |
init | (maxCandles?: number) => void | 为实时更新分配固定容量的 OHLCV 环形缓冲区。 |
reset | (options?: { animated?: boolean; }) => void | 将视口重置为完整数据范围。 |
resize | () => void | 将渲染器与画布大小同步。 |
set | (data: OHLCVData) => void | 加载对齐的 OHLCV 列,并将规范化数组的所有权交给渲染器。Worker 模式会转移并分离缓冲区;主线程模式下,数组按引用保留。 |
set | (indicators: StockIndicator[]) => void | 替换内置的技术指标定义。 |
set | (messages: false | KeyboardAnnouncementMessages) => void | 在运行时替换或禁用本地化的键盘操作提示。现有待处理的提示将被取消。 |
set | (labels: ChartLabels) => void | 在运行时更新图表标签。合并到现有标签(语义与 updateAppearance 相同)。对于格式错误的标签或稀疏/非对象的 custom 条目抛出:TypeError。 |
set | (markers: StockMarker[]) => void | 替换所有稀疏的时间戳/价格标记。 |
set | (overlay: OverlayOptions) => Promise<void> | 在运行时更新声明式覆盖原语。有效的原语和成功解码的图像即使在其他图像失败时也会被安装。如果每个请求的项目都失败,则保留先前呈现的覆盖。分辨率和渲染器传递失败将以 ChartOverlayError 拒绝;当应用也需要异步通知时,请注册 setOverlayErrorCallback。在懒加载渲染器就绪之前调用时,该 promise 包含就绪等待。被取代的更新和图表销毁属于常规取消并会在不安装的情况下解析。 |
set | (callback: OverlayErrorCallback | null) => void | 为非致命的覆盖分辨或传递故障注册回调。成功的覆盖项仍会被安装。匹配的 setOverlay promise 也会以相同错误拒绝。 |
set | (priceLines: StockPriceLine[]) => void | 替换所有水平数据锚定的价格线。 |
set | (callback: RendererErrorCallback | null) => void | 注册一次性渲染器故障回调。用于初始化或运行时故障,会在拆除前调用一次。若无回调,错误将通过 console.error 报告。传入 null 可取消;destroy 的调用不会触发该回调。 |
set | (callback: ((stats: StockChartStats) => void) | null, options?: StockChartStatsOptions) => void | 启用渲染器统计并接收节流快照。传入 null 可将其禁用。 |
set | (range: TimeRange) => void | 应用导出的日历/会话预设之一。图表不呈现控件。应用方拥有的控件可以为某个预设调用此方法,或为任意时间戳范围传入 setViewport()。 |
set | (viewport: Partial<Viewport>, options?: { animated?: boolean; }) => void | 以编程方式设置视口范围。仅需提供 xMin 和/或 xMax;省略的字段将保留当前值。 |
set | (volumeProfile: VolumeProfileOptions | false) => void | 替换或禁用基于蜡烛估算的可见范围成交量轮廓。 |
update | (patch: DeepPartial<BaseAppearanceOptions>) => void | 在运行时修补可变外观选项。抛出:TypeError,用于格式错误的标签或稀疏/非对象custom 条目。 |