궁금한 주제를 찾아보세요

비트코인, 스테이블코인, 온체인 데이터처럼 주제로 검색하세요.

다시 읽을 이야기

저장한 글은 이 브라우저에만 보관됩니다.

리서치시장 읽기

VWAP와 TWAP: 평균 가격을 계산하는 두 방식

VWAP의 거래량 가중과 TWAP의 시간 가중을 실제 공식 문서와 계산 예시로 비교하고, 같은 약어라도 제공자별 정의가 달라지는 이유를 설명한다.

동전이 흐르는 가중 장치와 같은 간격의 진자를 대비한 VWAP·TWAP 개념도
주제의 이해를 돕기 위해 imagegen으로 제작한 AI 생성 개념 일러스트
먼저 읽는 핵심

VWAP의 가중치는 거래량이고 TWAP의 가중치는 시간이다.
체결이 많은 시점과 가격이 오래 유지된 시점 중 무엇을 강조하는지에 따라 두 값이 달라진다.
제공자별 체결 필터, 가격 입력, 무거래 처리와 TWAP 정의를 공식 문서에서 확인한다.

VWAP는 각 체결 가격을 거래량으로 가중해 Σ(가격×수량)/Σ수량으로 구한다. TWAP는 정한 시간 구간의 가격을 시간 비중으로 평균한다. VWAP는 거래가 몰린 시점의 영향을 크게 받고 TWAP는 각 시간 구간을 고르게 반영한다. 다만 Nasdaq 자료처럼 TWAP를 (first+last+high+low)/4로 정의하는 데이터 상품도 있어 약어만 보고 산식을 가정하면 안 된다.

VWAP는 거래된 금액을 거래된 수량으로 나눈다

Nasdaq Data on Demand 문서는 interval VWAP를 SUM(trade_price×trade_quantity)/SUM(trade_quantity)로 명시한다. 100원에 2개, 110원에 8개가 체결됐다고 가정하면 VWAP는 (100×2+110×8)/(2+8)=108원이다. 단순 평균 105원보다 거래가 많이 이뤄진 110원에 가까워진다.

분모의 quantity가 코인 수량인지 계약 수인지, 여러 통화 시장을 합친 환산 거래대금인지에 따라 결과가 달라진다. 평균에 포함할 체결 조건도 중요하다. Nasdaq 문서는 sale condition을 필터링해 eligible trades를 정한다. 취소·정정 또는 특수 조건 체결을 어떻게 다루는지 모르면 같은 원시 파일에서도 다른 VWAP가 나온다.

평균가격의 차이는 계산 실수보다 가중치와 포함 규칙의 차이에서 먼저 생긴다.

JOBCOIN 해설

TWAP는 ‘시간 평균’이라는 이름만으로 공식이 하나가 아니다

일반적인 시간 가중 평균은 가격이 유지된 시간을 가중치로 둔다. 가격 100이 20분, 110이 40분 유지됐다는 가정이면 (100×20+110×40)/60=106.67이다. 1분 간격 관측값을 같은 비중으로 평균하는 방식은 각 관측이 같은 길이를 대표한다는 가정이다.

하지만 Nasdaq Data on Demand의 해당 상품은 TWAP를 (first price+last price+high+low)/4로 정의한다. 이는 단순히 모든 초의 가격을 적분한 값과 같지 않다. 따라서 ‘TWAP’라는 이름보다 제공 문서의 입력 필드와 계산식을 우선해야 한다. Coinbase 미국 perpetual 산식도 거래가 없을 때 3분 동안의 midpoint TWAP를 표시가격 대체값으로 사용해 목적과 입력이 다르다.

같은 네 체결에서 가중치가 결과를 바꾸는 모습

다음 수치는 개념을 보여 주는 가정이며 실제 시장값이 아니다. 가격 100·102·108·110에 대응하는 체결 수량을 각각 1·1·2·7로 두면 총수량은 11, 가격×수량 합계는 1,188이므로 VWAP는 108이다. 네 가격을 같은 간격으로 관측한 시간 평균은 105다. 수량과 시간 비중을 어떻게 배정하느냐에 따라 평균이 달라진다.

가정한 가격 자료의 평균 방식 비교
방식 입력과 산식 가정 결과
단순 체결 평균 (100+102+108+110)/4 105.00
VWAP (100×1+102×1+108×2+110×7)/11 108.00
동일 간격 TWAP 네 관측 가격에 같은 비중 105.00
Nasdaq 상품 TWAP (first+last+high+low)/4 105.00

무거래 구간을 어떻게 채우느냐가 TWAP를 바꾼다

거래가 뜸한 시장에서 직전 체결가를 다음 관측까지 유지하는 정의라면 한 체결 가격이 TWAP에 오래 남을 수 있다. midpoint를 매분 관측하는 정의라면 체결이 없어도 양쪽 호가가 바뀔 때 TWAP가 움직인다. 반대로 거래량이 아주 작은 체결은 VWAP에서 작은 비중만 차지한다.

무거래 구간을 누락하면 활발한 시점만 평균하게 되고, 직전 가격으로 채우면 그 가격의 지속시간을 인정하게 된다. 둘 중 어느 것도 자동 정답은 아니다. 벤치마크 목적, 관측 간격, 가격 소스에 맞춰 규칙을 정하고 누락 구간 수를 결과와 함께 기록한다.

  • 평균의 가격 입력이 체결가·중간가격·typical price 중 무엇인지 적는다
  • VWAP 분모의 수량 단위와 포함 거래소를 확인한다
  • TWAP 관측 간격과 각 관측의 시간 가중치를 고정한다
  • 무거래 구간의 누락·직전값 유지·호가 대체 규칙을 표시한다
  • 시작·종료 시각과 포함 경계를 UTC로 보관한다

벤치마크와 실제 체결가격은 다른 질문에 답한다

VWAP와 TWAP는 정해진 자료 창을 요약한 기준값이다. 주문이 실제로 그 가격에 전량 체결된다는 보장이 아니다. 주문 크기, 호가 깊이, 수수료, 지연과 시장 충격은 평균 산식 밖에 있다. 거래 집행을 평가할 때는 실제 평균 체결가와 같은 시간 창의 벤치마크를 비교하되 수수료 포함 여부를 맞춘다.

하루 VWAP와 30분 TWAP를 나란히 두면 가중치뿐 아니라 관측 기간까지 다르다. 암호자산은 24시간 거래되므로 ‘하루’의 시작 시각도 제공자마다 달라질 수 있다. 벤치마크 간 우열이나 미래 가격 방향을 말하기 전에 window, venue, eligible trade, currency를 동일하게 맞춘다.

공식 자료에서 산식을 재현하는 체크포인트

Nasdaq 예시는 TWAP에 first, last, high, low 네 값이 필요하고 VWAP에는 eligible trade의 가격과 수량이 필요하다고 구체적으로 적는다. 두 결과가 화면과 다르면 반올림보다 먼저 체결 필터와 sub-interval을 확인한다. 해당 상품은 user-defined sub-interval도 지원하므로 5초 요약과 1시간 요약이 같은 표본을 갖지 않을 수 있다.

가상자산 서비스의 자체 VWAP·TWAP를 검증할 때 Nasdaq 산식을 그대로 이식하지 않는다. 공식 API 또는 방법론에 계산식이 없으면 ‘일반적 정의’와 ‘이 제공자의 확인된 정의’를 분리해 쓴다. 확인되지 않은 부분은 midpoint 사용 여부처럼 필요한 질문의 형태로 남기는 것이 재현성을 높인다.

자주 묻는 질문

VWAP와 TWAP 중 어느 것이 더 정확한 가격인가요?

목적에 따라 다르다. 거래량이 집중된 가격을 요약하려면 VWAP가, 시간 경로를 고르게 보려면 TWAP가 유용하다. 입력과 구간을 먼저 맞춰야 한다.

캔들의 typical price로 만든 VWAP도 같은 값인가요?

반드시 같지 않다. 개별 체결 가격·수량으로 계산한 값과 캔들 typical price×volume을 합산한 근삿값은 봉 내부 체결 분포가 사라져 차이가 날 수 있다.

거래가 없을 때 TWAP는 어떻게 계산하나요?

직전 체결가 유지, midpoint 관측, 해당 구간 제외 등 방법이 있다. 제공자 방법론을 확인하고 어떤 규칙을 썼는지 밝혀야 한다.

직접 확인한 자료

자료 확인 2026.09.27
  1. Nasdaq Data on Demand SIP Cloud API Specificationwww.nasdaqtrader.com
  2. US Perpetual-Style Futures Funding Rate Mechanismhelp.coinbase.com
AI 활용 안내

이 글은 AI로 초안을 구성한 뒤 공개 원문과 기술 문서를 대조해 작성했습니다. 대표 이미지는 AI 생성 개념 일러스트이며 실제 사건 사진이나 가격 차트가 아닙니다.

이해를 위한 정보 콘텐츠

이 글은 특정 자산의 매수·매도 또는 수익을 권유하지 않습니다. 자료의 발표 시점과 이후 변경 사항을 함께 확인해 주세요.

편집 원칙과 정정 안내 →