글 목차
근거와 범위
Fidelity는 공식과 일반적인 해석을 문서화하고, TradingView는 내장 지표를 문서화합니다. 두 자료 모두 아래에 제시된 20-바 필터 또는 다이버전스 전략을 검증하지 않습니다. 이러한 변형은 비용 지출 후 독립적인 테스트가 필요합니다. [1] [2]
실전 적용 절차
- 시리즈를 검증하세요가격, 거래량 및 조정 규칙을 일치시켜 사용하십시오.
- 부호 있는 거래량 누적이전 종가 대비 방향으로 부호를 정한다. 종가가 같으면 영을 더한다.
- 두 피벗을 모두 확인하십시오.뒤쪽 피벗의 정보가 이용 가능해진 후에만 다이버전스 후보가 존재한다.
- 가격 확인을 기다리세요돌파 또는 넥라인 트리거는 후보 생성 뒤에 발생해야 한다.
- 제어 분기를 비교합니다.가격 변화 부호만의 조건과 OBV 필터에서 실행 조건을 같게 유지한다.
종가 변화 방향으로 봉 전체 거래량에 부호를 붙인다
0.01 상승과5 상승은 모두 봉 거래량 전체를 더한다. 거래량이 같으면 수익률이 달라도 OBV 기여는 같다 [1]. 따라서 OBV는 상승·하락으로 분류한 기간의 활동량 분포를 나타내며 가격 변화 폭은 측정하지 않는다.
시작값은 영이나 임의의 상수일 수 있다. 서로 다른 상품이나 시작일이 다른 이력의 절대 수준은 직접 비교할 수 없다. 이동 구간 안의 변화량·기울기·상대 위치가 더 유용한 연구 특징이다. 모든 체결에는 매수자와 매도자가 있으므로 on-balance라는 이름이 거래 수량을 자산의 순자금 유입으로 바꾸지는 않는다.
표준 사인은 현재 시가가 아닌 이전 종가를 사용합니다. 캔들은 전날 갭 이후 이전 종가 위에 있으면서도 시가보다 낮은 가격에 마감될 수 있습니다. 이는 표준 OBV 지표에 긍정적인 영향을 미칩니다. 캔들 색상을 기반으로 한 계산은 별도의 지표를 정의하며, 별도의 이름과 설정이 필요합니다.
정규화된 연구 특징을 계산합니다.
여러 금융 상품 간 비교를 위해 제안된 특징 중 하나는 20 막대의 OBV 변화량을 동일한 20 기여도를 기준으로 총 거래량으로 나눈 값입니다. 유효한 음수가 아닌 거래량과 양의 분모를 갖는 경우, 이 특징은 −1와 1 사이에 위치합니다. 이는 기존의 OBV 레벨이 아닌 새로운 정규화된 특징입니다. 종가가 변동되지 않은 막대는 분자에 0을 기여하지만, 해당 거래량은 분모에 그대로 남아 있습니다.
부호를 부여한 스무 봉의 기여를 계산하려면 구간 직전 종가까지21개 종가가 필요하다.20개 가격만 확인하면 음수 배열 첨자를 읽거나 불완전한 첫 차이를 사용할 수 있다. 준비 데이터가 모두 있어야 하며 누락값은 중립으로 보이는 영으로 채우지 말고 이용 불가능 상태로 둔다.
완료된 봉으로 특징을 계산하거나 잠정 관측을 쓰는 별도 실시간 버전을 정의한다. 입력 마감과 수신 시각을 신호에 저장한다. 기업 사건 조정의 수정으로 과거 부호가 달라질 수 있으므로 조정 정책과 데이터 버전을 결과에 첨부한다.
obv[0] = 0
for t in 1..last_closed_bar:
if C[t] > C[t-1]: obv[t] = obv[t-1] + V[t]
elif C[t] < C[t-1]: obv[t] = obv[t-1] - V[t]
else: obv[t] = obv[t-1]
if t >= 20 and valid_full_window(t,21) and sum(V[t-19:t+1]) > 0:
f = (obv[t]-obv[t-20]) / sum(V[t-19:t+1])
else: f = NA
가격과 다이버전스에 같은 시각을 대응시키기
확정된 두 개의 저점, p1와 p2를 예로 들어 보겠습니다. 강세 다이버전스 후보가 되려면 두 번째 저점이 더 낮아야 하고, 정확히 이 두 시점에 샘플링된 OBV는 더 높아야 합니다. 이러한 후보는 p2가 확정된 후에만 존재합니다. 단순히 예시를 더 매력적으로 보이게 한다는 이유만으로 다른 OBV 저점을 선택해서는 안 됩니다. 허용되는 모든 시간 이동에는 고정된 페어링 범위와 동점 시 처리 규칙이 필요합니다.
다이버전스는 진입 트리거라기보다는 하나의 특징입니다. 제안된 확인 매매를 위해서는 중간 반등 고점 위에서 후속 종가가 형성되어야 합니다. 만약 p2가 사용 가능해지기 전에 해당 레벨이 이미 돌파되었다면, 사전 정의된 정책에 따라 해당 후보를 놓쳤거나 만료된 것으로 기록해야 합니다. 두 번째 피벗이 아직 알려지지 않은 시점에는 절대로 과거 진입 데이터를 삽입해서는 안 됩니다.
기울기 필터와 다이버전스 탐지기는 다른 질문에 답한다. 최근20봉 동안 OBV가 상승해도 올바르게 대응한 두 저점이 있다는 뜻은 아니다. 두 특징의 식별자를 분리하고 어느 특징이 후보를 통과시켰는지 기록한다. 비슷해 보이는 설명이 다른 사건 집합을 만들 때 오류를 분석할 수 있다.
풀이 과정과 반례
종가가100, 101, 100, 100, 102, 101이고 두 번째 봉부터 차례로 거래량이10, 8, 12, 20, 9라고 하자. 영에서 시작한 OBV는0, 10, 2, 2, 22, 13이다. 종가가 같은 봉의 거래량12는 OBV를 바꾸지 않는다. 그림도 이 부호 있는 거래량 순서를 그대로 사용한다.
반례로, 가격이 101에서 95로 하락하고 거래량은 10인 경우, 이후 95에서 95.01로 소폭 상승하고 거래량은 100인 경우를 생각해 보겠습니다. OBV는 가격이 초기값보다 거의 6% 낮은 수준임에도 불구하고 순 90만큼 증가합니다. 매수 압력으로 인해 가격 손실이 완전히 회복되었다고 결론짓는 것은 공식에 없는 정보를 부여하는 것과 같습니다.
주식 분할은 조정되지 않은 데이터에서 기계적인 종가 하락을 초래할 수도 있습니다. 이 경우 알고리즘은 해당되는 경제적 가격 하락이 없더라도 거래량을 차감하게 됩니다. 따라서 조정일을 기준으로 가격과 수량을 함께 검토해야 합니다. 개별적으로 조정된 데이터는 그럴듯해 보이지만 일관성이 없는 시계열을 생성할 수 있습니다.
테스트 가능한 브레이크아웃 필터를 지정하십시오.
제안 기준은 Q를 이전20봉의 최고 고가로 고정하고 현재 종가가 Q에 사전 ATR 버퍼를 더한 수준보다 높아야 한다. 한 분기는 정규화 특징이 영보다 커야 하고 다른 분기는 OBV가 자기 자신의 이전20봉 최댓값보다 높아야 한다. 별개 실험이며 수십 임계값 중 최선만 발표할 이유가 아니다.
OBV를 적용하기 전에 모든 가격 후보를 저장하여 거부된 그룹을 계속 관찰할 수 있도록 합니다. 진입은 확인 후 현실적으로 실행 가능한 다음 이벤트에서 이루어집니다. 제어 분기에서 동일한 목표가 및 시간 종료 규칙을 사용하여 미리 정해진 구조적 또는 재테스트 손절매를 사용합니다. OBV 값이 변경되더라도 손절매 범위를 넓히는 것은 허용되지 않습니다.
공매도 거래의 경우, 적용 가능한 실제 차입 제약 조건과 비용을 포함하십시오. 대칭적인 수학적 규칙이 대칭적인 실행 가능성을 의미하는 것은 아닙니다. 차입 불가, 체결 실패, 변동하는 스프레드 조건 등을 실행된 거래와 함께 보고해야 하며, 이러한 기회를 분모에서 조용히 제외해서는 안 됩니다.
거래량이 가격의 상승·하락 부호보다 정보를 더하는가
OBV를 종가 상승 봉 수에서 종가 하락 봉 수를 뺀 단순 개수 지표와 비교한다. 비슷하면 해당 표본에서 거래량 가중치가 더하는 정보가 적을 수 있다. 이후 같은 종목군, 후보 시각, 실행 모형으로 원시 OBV 변화와 정규화 버전을 비교한다. 유난히 큰 거래량 봉이 구간에 들어오거나 나갈 때의 영향도 본다.
시간 순서에 따른 표본 외 평가를 사용하고 유동성 그룹별로 결과를 보고하십시오. 스프레드, 슬리피지 및 관련 자금 조달 정보를 포함하십시오. 암호화폐의 경우 거래소와 거래량 출처를 명시하십시오. NBER에서 검토한 과거 표본은 데이터 품질 검사의 필요성을 제기하지만, 모든 현재 거래소에 동일한 보고 편향이 적용되는 것은 아닙니다. [3]
성공한 다이버전스뿐 아니라 순 기대손익, 드로다운, 거래 수, 거절 기회를 기록한다. OBV가 선택만 바꾸고 순 성과를 개선하지 못하거나 사건 하나만큼의 실행 지연에 겉보기 이점이 사라지는 결과도 유익하다. 둘 다 승리 차트 모음보다 유용한 결론이다.
흔한 실수
봉 색깔과 OBV 부호를 혼동하기
표준적인 지표는 연속적인 종가를 비교하는 것이며, 종가와 시가를 비교하는 것은 다른 지표를 정의합니다.
시리즈를 재설정한 후 레벨 비교
임의로 설정한 초기값은 경제적 신호를 발생시키지 않고 그래프를 이동시킨다.
다이버전스 진입을 과거에 소급하기
시각적으로 설득력 있는 피벗 포인트 쌍이 제안된 진입 시점에 확보되지 않았을 수도 있습니다.
이 기법을 사용하기 전 체크리스트
자신의 데이터로 확인한 뒤 각 항목에 체크하세요. 진행 상태는 이 브라우저에 저장되며, 전략의 수익성을 인증하지는 않습니다.
자주 묻는 질문
OBV가 CVD를 대체할 수 있습니까?
아니다. OBV는 종가 변화로 봉 전체 거래량에 부호를 부여한다. CVD에는 체결 거래량을 어떻게 분류했는지 문서화된 자료가 필요하다.
OBV의 상승이 가격 상승을 보장하는가?
아니요. 가격이 크게 하락한 후 거래량이 많아지면 약간 회복될 수 있습니다. 이는 경험적 가설일 뿐입니다.
연구 출처
각 출처는 옆에 설명된 정의나 근거를 뒷받침합니다. 의사코드, 가상 예시와 제안된 매개변수는 별도로 검증해야 합니다.
- On Balance VolumeFidelity. OBV 공식 및 기존 발산 해석(제안된 변형에 대한 백테스트 없음). 확인일: .
- Built-in functions and variables for popular indicatorsTradingView. 본 자료는 내장형 OBV 및 MFI 제품 설명서이며, 수익성 증빙 자료가 아닙니다. 확인일: .
- Crypto Wash TradingNBER. 암호화폐 거래량 보고 품질에 대한 과거 연구 결과이며, 보편적인 현재 오류율에 대한 주장은 아닙니다. 확인일: .
관련 기법
위험 안내
이 내용은 학습과 연구 설계를 위한 것이며 금융 조언이 아닙니다. Backtest는 과거 데이터 시뮬레이션으로, 미래 성과를 보장하지 않으며 실제 거래를 주문하지 않습니다. 이 라이브러리의 기법이 모두 앱에 구현된 기능은 아닙니다. 관련 정보: 검증 방법 및 학습 센터.
실제 자금을 투입하기 전에 규칙을 검증하세요
앱 지원 범위, 데이터와 개별 모의 거래를 확인하세요. 고급 탐지 기법은 별도 구현이 필요할 수 있습니다.
App Store에서 Backtest 다운로드