Skip to content

Documentation / @finchart/core / OHLCAccessor

Class: OHLCAccessor

Defined in: packages/core/src/data/accessors.ts:49

점에서 화면 배치용 x/y 좌표를 꺼낸다.

Implements

Constructors

Constructor

new OHLCAccessor(): OHLCAccessor

Returns

OHLCAccessor

Properties

gapless

readonly gapless: true = true

Defined in: packages/core/src/data/accessors.ts:63

봉은 구멍을 못 만든다 — getYclose를 돌려주고 assertFinite가 넷 다 유한임을 데이터 문에서 이미 보장한다. close: null은 이 접근자에서 구멍이 아니라 거절이다.

Implementation of

CoordinateAccessor.gapless

Methods

assertFinite()

assertFinite(point, index): void

Defined in: packages/core/src/data/accessors.ts:87

넷 다 본다. getYclose만 읽고 valueExtentlow·high만 읽어서, open은 어느 문도 안 지나고 검사가 없으면 새어 나간다.

null은 갭이 아니라 거절이다 — 봉은 넷의 묶음이라 하나가 없으면 그릴 수 있는 것이 없다. 빠진 봉은 이미 "점을 안 넣는 것"으로 표현되므로, null에 뜻을 주면 "가격 0"이 된다.

넷을 손으로 편다 — 안 새는 것은 기계가 지킨다. 배열을 순회하는 루프보다 손으로 편 네 줄이 2배 넘게 빠르다(이터레이터 할당 + 점마다 동적 조회의 간접 비용). 이 자리는 틱 경로이기도 하다: 파생 등록의 updateLast가 프레임마다 setData 전체를 돌린다.

읽기 쉬움을 런타임으로 사는 대신 테스트로 산다 — ohlc-fields.test.tsOHLC_FIELDS의 모든 필드가 실제로 거절되는지 확인하므로, 다섯째 필드가 생기고 여기를 안 고치면 그때 빨개진다.

Parameters

point

OHLC

index

number

Returns

void

Implementation of

CoordinateAccessor.assertFinite


getX()

getX(point): number

Defined in: packages/core/src/data/accessors.ts:50

어디에 놓을 것인가. 없을 수 없다.

x가 없는 점은 whitespace가 아니라 버려야 하는 점이다 — 어디에 둘지 모르면 구멍조차 그릴 수 없다.

Parameters

point

OHLC

Returns

number

Implementation of

CoordinateAccessor.getX


getY()

getY(point): number

Defined in: packages/core/src/data/accessors.ts:54

무엇을 그릴 것인가. null이면 값이 없다(whitespace).

값이 없는 자리에서 선은 끊기고, 값 범위(valueExtent)는 그 점을 세지 않으며, 솎기는 그 자리를 삼키지 않는다.

undefined도 돌려줄 수 있다 — "읽지 못했다"는 뜻이다. {x, value} 처럼 다른 필드명을 준 경우를 매니저가 안내할 수 있으려면, 그 값이 여기까지 나와야 한다.

소비자는 이미 전부 isGap으로 받는다(라인·에어리어·히스토그램· 베이스라인).

Parameters

point

OHLC

Returns

number

Implementation of

CoordinateAccessor.getY


getYRange()

getYRange(point): object

Defined in: packages/core/src/data/accessors.ts:66

봉 하나의 데이터 값 폭 — 저가에서 고가까지. 스냅의 후보가 된다.

Parameters

point

OHLC

Returns

object

max

max: number

min

min: number

Implementation of

CoordinateAccessor.getYRange