본문으로 건너뛰기

수식

수식을 사용하면 차트 지표로부터 사용자 정의 계산 시리즈를 만들 수 있습니다. 산술 연산자와 내장 함수를 사용하여 지표를 결합하고, 변환하고, 분석하세요.

수식 추가하기

  1. 편집 모드에서 차트를 엽니다
  2. + 추가 버튼을 클릭한 다음 수식 추가를 선택합니다
  3. 레이블을 입력합니다 (예: "가격의 7일 SMA")
  4. 표현식을 입력합니다 (예: sma(m1, 7))
  5. 수식 추가를 클릭합니다

수식 결과는 고유한 색상과 스타일을 가진 새로운 시리즈로 차트에 표시됩니다.

구문

지표 및 수식 참조

  • m1, m2, ... 는 위치에 따라 차트 지표를 참조합니다 (첫 번째 지표 = m1)
  • f1, f2, ... 는 위치에 따라 이전 수식을 참조합니다 (첫 번째 수식 = f1)

수식은 순서대로 평가되므로 f2f1을 참조할 수 있지만 그 반대는 불가능합니다.

산술 연산자

일반적인 우선순위를 따르는 표준 연산자입니다 (*/+-보다 먼저 계산됨):

m1 + m2 # Addition
m1 - m2 # Subtraction
m1 * m2 # Multiplication
m1 / m2 # Division (returns null if divisor is 0)
(m1 + m2) * m3 # Parentheses for grouping

숫자 및 수평선

상수 값을 표현식에 사용할 수 있습니다. 단독으로 사용된 숫자는 해당 값에 수평선을 그립니다:

42000 # Horizontal line at 42,000
m1 * 100 # Scale a metric
m1 / 1000000 # Convert to millions
0.5 # Horizontal line at 0.5 (useful as threshold)

함수

이동 평균 및 롤링 통계

함수구문설명
smasma(series, period)단순 이동 평균 — 직전 N개 데이터 포인트에 대한 산술 평균
emaema(series, period)지수 이동 평균 — EMA_t = value_t × k + EMA_(t-1) × (1 - k), 여기서 k = 2 / (period + 1). 최근 값에 더 큰 가중치를 부여합니다
medianmedian(series, period)N개 기간에 대한 롤링 중앙값 (중간 값)
sumsum(series, period)직전 N개 기간에 대한 롤링 합계
stdstd(series, period)N개 기간에 대한 롤링 표준편차

누적 함수

데이터 시작점부터 각 지점까지 모든 데이터를 사용하는 확장 윈도우 함수입니다:

함수구문설명
cumsumcumsum(series)데이터 시작점부터의 확장 누적 합계
cummeancummean(series)데이터 시작점부터의 확장 누적 평균
cummediancummedian(series)데이터 시작점부터의 확장 누적 중앙값
cumstdcumstd(series)데이터 시작점부터의 확장 누적 표준편차
cummaxcummax(series)각 지점까지의 누적 최고값 (역대 최대)
cummincummin(series)각 지점까지의 누적 최저값 (역대 최소)

변화 함수

함수구문설명
percent_changepercent_change(series, period)N개 기간에 대한 백분율 변화. 값은 소수로 반환됩니다 (예: 0.20 = +20% 증가)
diffdiff(series, period)N개 기간에 대한 절대값 변화: value_t - value_(t-N)

수학 함수

함수구문설명
absabs(series)모든 데이터 포인트의 절대값
powpow(series, n)모든 데이터 포인트를 n 제곱
loglog(series)밑이 10인 로그 (0 이하의 값에 대해서는 null 반환)
roundround(series, digits)값을 소수점 N자리로 반올림
maxmax(a, b, ...)점별 최대값 — 각 데이터 포인트에서 모든 인수 중 가장 높은 값을 반환합니다. 인수는 시리즈 또는 상수일 수 있습니다 (예: max(m1, m2, 0))
minmin(a, b, ...)점별 최소값 — 각 데이터 포인트에서 모든 인수 중 가장 낮은 값을 반환합니다. 인수는 시리즈 또는 상수일 수 있습니다 (예: min(m1, m2, 100))

기술적 지표

함수구문설명
rsirsi(series, period)N개 기간에 걸쳐 Wilder의 평활화 방법을 사용한 상대강도지수 (0–100)
corrcorr(series1, series2, period)직전 N개 기간 윈도우에 대한 두 시리즈 간 피어슨 상관계수. -1 (역상관)에서 +1 (완전 상관) 사이의 값을 반환합니다
drawdowndrawdown(series)역대 최고가 대비 상대적 낙폭. 음수 소수를 반환합니다 (예: -0.30 = ATH 대비 30% 하락)

위험 및 수익

함수구문설명
mean_returnmean_return(series, period)N개 기간에 대한 연율화된 롤링 평균 수익 (일간 로그 수익률 × 365 기준)
realized_volrealized_vol(series, period)N개 기간에 대한 연율화된 실현 변동성 (일간 로그 수익률 표준편차 × √365)
sharpe_ratio_arithmeticsharpe_ratio_arithmetic(series, period)N개 기간에 대한 수익률의 산술 평균을 사용한 연율화된 샤프 비율
sharpe_ratio_geometricsharpe_ratio_geometric(series, period)N개 기간에 대한 수익률의 기하 평균을 사용한 연율화된 샤프 비율

시리즈 조작

함수구문설명
shiftshift(series, period)시리즈를 N개 기간만큼 오른쪽으로 이동합니다. 양수 period는 현재 위치에 과거 값을 표시합니다 (즉, 각 데이터 포인트가 N개 기간 이전의 값을 표시). 음수 period는 왼쪽으로 이동합니다 (미래 값 표시)
ifif(a, "op", b, then, else)조건문: 각 데이터 포인트에서 비교 a op b를 평가하여 참이면 then, 거짓이면 else를 반환합니다. op 인수는 따옴표로 묶인 문자열로 전달되는 비교 연산자입니다: "=", "!=", ">", ">=", "<", "<="

예시

이동 평균

sma(m1, 7) # 7-day simple moving average of first metric
sma(m1, 30) # 30-day SMA
ema(m1, 21) # 21-day exponential moving average
median(m1, 14) # 14-day rolling median

SMA 교차 감지

f1: sma(m1, 7) # Short-term SMA
f2: sma(m1, 30) # Long-term SMA
f3: f1 - f2 # Difference (positive = short above long)

비율 분석

m1 / m2 # Ratio between two metrics

역대 최고가 대비 낙폭

drawdown(m1) # Drawdown as negative decimal (-0.30 = 30% below ATH)

볼린저 밴드

f1: sma(m1, 20) # Middle band
f2: f1 + 2 * std(m1, 20) # Upper band (+2 standard deviations)
f3: f1 - 2 * std(m1, 20) # Lower band (-2 standard deviations)

기간 대비 변화

percent_change(m1, 7) # 7-day percentage change (decimal)
diff(m1, 30) # 30-day absolute change

RSI

rsi(m1, 14) # 14-period RSI
30 # Oversold threshold line
70 # Overbought threshold line

값 제한

max(m1, 0) # Floor at zero (remove negative values)
min(m1, 100) # Cap at 100
max(m1, m2) # Higher of two metrics at each point

상관관계

corr(m1, m2, 30) # 30-day rolling correlation between two metrics

변동성 및 위험

realized_vol(m1, 30) # 30-day annualized volatility
sharpe_ratio_arithmetic(m1, 90) # 90-day annualized Sharpe ratio

스타일링

수식을 추가한 후, (편집 모드에서) 범례에서 해당 수식을 클릭하여 다음을 설정합니다:

  • 차트 스타일: 선, 영역 또는 막대
  • 색상: 프리셋 또는 사용자 지정에서 선택
  • Y축: 임의의 축에 할당
  • 선 두께채우기 불투명도
  • 표시 여부: 표시/숨김 토글

지속성

수식은 차트 구성과 함께 저장됩니다. 차트를 "내 차트"에 저장하면 모든 수식이 보존되고 차트를 다시 불러올 때 복원됩니다.

내보내기

수식 값은 CSV 및 JSON 내보내기에 포함됩니다. 각 수식 열은 수식 레이블을 헤더로 사용합니다.