시간 가격 기회 (TPO) 인디케이터
“마켓 프로필”이라고도 알려진 TPO(Time Price Opportunity) 인디케이터를 사용하면 시간의 경과에 따른 가격 레벨별로 시장 활동을 분석할 수 있습니다. 이 인디케이터는 시장 역학, 가격 분포 및 가격 목표에 대한 독특한 관점을 제공하여 미래의 시장 행동을 예측하는 데 도움이 됩니다.
TradingView에서는 TPO를 차트 유형으로도 사용할 수 있습니다. 하지만 여기서는 이 두 가지 기술적 분석 툴의 기초가 되는 인디케이터에 집중할 것입니다.
목차:
TPO 지표란 무엇인가
J. Peter Steidlmayer는 1980년대에 시카고 상품 거래소(CBOT)에서 시간 가격 기회(Time Price Opportunity)라는 개념을 정립했습니다. TPO 프로필은 선물 및 상품 시장에서 주목을 받기 시작했으며, 현재는 모든 분야에서 널리 사용되고 있습니다.
시간 가격 기회는 프로필의 각 가격 레벨에서 소요된 시간 블록과 프로필 기간 내 레벨 통과 순서를 시각화합니다.
이는 원시 가격 데이터를 검사할 때 명확하지 않을 수 있는 중요한 가격 및 시장 패턴을 식별하는 데 도움이 됩니다.

TPO 계산 원리
인디케이터는 각 기간의 왼쪽에 TPO 프로필을, 오른쪽에 선택 사항인 볼륨 프로필을 표시합니다.
TPO 프로필
프로필의 기간을 일, 주 또는 월로 지정할 수 있습니다.
그런 다음 인디케이터는 사용자가 지정한 블록 크기(5분, 10분, 15분, 30분, 1시간, 2시간 또는 4시간)에 따라 기간을 동일한 시간 블록으로 나눕니다.
각 연속적인 시간 블록은 알파벳 문자에 해당합니다. 순서는 A부터 Z까지 대문자로 시작합니다. 더 많은 시간 블록이 필요한 경우 인디케이터는 a부터 z까지 소문자를 사용합니다. 기간에 사용 가능한 모든 문자를 다 사용할 만큼 충분한 시간 블록이 포함되어 있으면 인디케이터는 이 순서를 반복합니다.
인디케이터는 지정된 행 크기를 기준으로 각 기간에 대한 가격 레벨(rows)을 만듭니다. 행 크기를 자동으로 계산하거나 row당 틱 수를 수동으로 정의할 수 있습니다.
프로필은 가격이 통과한 모든 시간 세그먼트에 대해 가격 레벨에 블록을 표시합니다.
예를 들어, row의 맨 앞의 “A” 블록은 시장 가격이 첫 번째 시간 블록 동안 해당 레벨에 도달했음을 의미합니다.
TPO 가치 영역(VA)
가치 영역은 일정 기간 동안 TPO 블록이 집중적으로 나타나는 가격 레인지입니다. 이 영역은 시장 참여자들이 가장 많은 관심을 보인 가격 레인지를 나타냅니다. 트레이더들은 이 영역을 잠재적인 지지선 및 저항선으로 파악하기 위해 자주 사용합니다.
인디케이터는 다음 알고리즘을 사용하여 TPO 프로파일의 가치 영역을 결정합니다.
- 프로파일의 총 블록 수를 결정합니다.
- 다음 공식을 사용하여 VA의 목표 블록 수를 계산합니다.
VA 목표 = 총 블록 수 × 가치 영역 비율 / 100
- 블록 수가 가장 많은 행(제어점 — POC)에서 VA 블록 카운터를 시작합니다. POC는 VA에 추가된 첫 번째 행입니다.
- 가장 높은 VA 행 위의 행에 있는 블록 수를 계산합니다
- 가장 낮은 VA 행 아래의 행에 있는 블록 수를 계산합니다
- 단계 4와 5에서 가장 높은 블록 수를 가진 행을 결정하고 그 수를 VA 블록 수에 추가합니다. 해당 행은 VA의 일부가 됩니다. 두 행의 블록 수가 동일할 경우 POC에 가장 가까운 행을 추가합니다. 두 행의 블록 수가 동일할 경우 가장 높은 행을 추가합니다
- VA 블록의 총 수가 2단계에서 계산한 목표에 도달할 때까지 4~6단계를 반복합니다.
- VA에서 가장 높은 레벨과 가장 낮은 레벨을 가치 영역 최고점(VAH) 및 가치 영역 최저점(VAL)으로 사용합니다.
- VA 블록의 총 개수가 2단계에서 계산한 목표에 도달할 때까지 4~6단계를 반복합니다.
- VA에서 가장 높은 레벨과 가장 낮은 레벨을 값 영역의 최고점(VAH)과 값 영역의 최저점(VAL)으로 사용합니다.
Row 사이즈
“Row 사이즈” 입력에 “자동” 옵션이 사용된 경우, 인디케이터는 가장 오른쪽에 표시된 바로부터 최근 300개의 바를 기준으로 row 사이즈를 계산합니다. 먼저 해당 바에서 가장 높은 고가와 가장 낮은 저가의 차이를 심볼의 최소 틱 값으로 나눕니다.
MinTickRange = (HighValue – LowValue) / MinimumTick
그런 다음 이 값을 80, 즉 차트에 들어가야 하는 row 수로 나눕니다.
RowTicks = MinTickRange / RowsRequired
마지막으로 결과를 반올림하여 최종 row당 틱 수를 계산합니다.
TicksPerRow = round(RowTicks / Increment) × Increment
반올림할 증분 값은 계산된 값의 규모에 따라 달라집니다:
If 1 <= RowTicks <= 100, Increment = 5 If 100 <= RowTicks <= 1,000, Increment = 50 If 1,000 <= RowTicks <= 10,000, Increment = 500 If 10,000 <= RowTicks <= 100,000, Increment = 5,000 etc...
인디케이터는 차트에 추가하거나, 설정을 리셋하거나, 심볼 또는 타임프레임을 변경할 때 행 크기를 재계산합니다.
볼륨 프로필
옵션인 볼륨 프로필은 “블록 크기” 타임프레임의 데이터를 사용하여 계산을 합니다. 볼륨 프로필을 TPO 프로필과 비교하면 가격 레벨의 중요성을 확증하는 데 도움이 될 수 있습니다.
TPO 읽는 방법
균형과 불균형
시장은 항상 균형 상태나 불균형 상태 중 하나에 있다고 가정할 수 있습니다. 이 맥락에서 균형 상태는 해당 자산의 매수자와 매도자가 대략적으로 동일하다는 의미입니다. 이 경우 자산의 공급과 수요가 대략 일치하며, 가격은 공정한 가격 값 주변에 집중됩니다.
매수자가 매도자보다 많거나 그 반대인 경우 시장을 불균형 상태로 볼 수 있습니다. 불균형 상태에서는 시장 가격이 새로운 공정한 가치를 찾기 위해 방향성 움직임을 시작합니다. 매수자가 매도자보다 많으면 가격이 상승할 수 있으며, 매도자가 매수자보다 많으면 가격이 하락할 수 있습니다. 어느 경우든 방향성 움직임은 매수자와 매도자의 수가 균형을 이룰 때까지 지속될 수 있으며, 이는 새로운 공정한 가격에서 균형 상태로 돌아갑니다.
초기 균형 범위(IBR)
초기 균형 범위는 프로필 기간의 첫 번째 시간 블록 동안 방문한 가격 범위입니다. 세션 초반에는 거래 활동이 활발해질 수 있습니다.
IBR을 사용하여 초기 중요한 레벨을 파악할 수 있으며, 이는 추가적인 가격 변동을 평가할 때 기준점으로 사용할 수 있습니다. TPO 인디케이터는 IBR을 기간의 시작점 왼쪽에 수직 라인으로 표시합니다. 스크립트 설정의 “스타일” 탭에서 IBR 라인과 계산에 포함될 시간 블록 수를 활성화할 수 있습니다.
TPO 중간점
TPO 중간점은 시간 가격 기회 프로필 내에서 가장 낮은 가격과 가장 높은 가격의 중간 가격을 의미하며, 다음 공식을 사용하여 계산됩니다.
TPO 중간점 = (가장 높은 TPO 가격 + 가장 낮은 TPO 가격) / 2
지지선 및 저항선
지지선 및 저항선은 시장에서 과거에 집중적인 매수(지지) 또는 매도(저항) 활동이 발생한 주요 가격 영역입니다. 이러한 레벨을 기준점으로 사용하여 잠재적인 가격 반전 또는 지속 영역을 식별할 수 있습니다. TPO 분석에서 이러한 레벨에는 제어 지점, 가치 영역 최고점, 가치 영역 최저점 등 중요한 가격 레벨이 포함될 수 있습니다.
제어 지점은 프로필 기간 동안 시장 가격이 가장 오랜 시간을 보낸 레벨입니다. 이는 거래 활동이 가장 집중된 값을 나타내며, 시장 균형 및 합의에 대한 통찰력을 제공합니다.
시장 가격은 과거 활동이 집중된 영역으로 이동하는 경향이 있으므로 POC는 향후 가격 변동의 잠재적 참고 지표로 고려할 수 있습니다. 후속 프로필에서 POC 레벨과 반복적으로 가격 상호 작용이 발생하면 지지선 또는 저항선으로서의 분석적 중요성이 높아집니다.
가치 영역 고점과 가치 영역 저점은 프로필 기간 동안 대부분의 시장 활동이 발생한 가격 영역의 상한과 하한을 의미합니다. VAH 및 VAL은 이후 기간 동안 잠재적인 지지선 및 저항선으로 작용할 수 있습니다.
분포
TPO에 대한 또 다른 해석 방법은 적극적인 트레이더인지, 장기 투자자인지 여부에 따라 어떤 경로를 선택할지 고려하는 것입니다.
단기/일일 거래의 경우, 가치 영역을 면밀히 관찰하고 이 범위 내에서 거래를 진행하는 것이 좋습니다.
장기 전략의 경우, 이 영역에만 국한하지 마십시오. 가치 영역 밖, 즉 매수자의 경우 VAL 아래, 매도자의 경우 VAH 위에서 더 유리한 거래 가격을 찾을 수 있습니다.
장기 트레이더가 시장 거래량을 지배하는 경우, 자산의 가격은 매수자와 매도자의 집중도에 따라 더 큰 상승 또는 하락 움직임을 보일 수 있습니다.
이 해석은 TPO 프로필에서 몇 가지 일반적인 범위 개발 패턴 또는 분포를 파악하는 데 도움이 될 수 있습니다. 그 중 몇 가지를 살펴보겠습니다.
정상적인 일일 분포

정상적인 일일 분포는 기간의 가격 레인지 대부분(약 85%)이 초기 균형 레인지 내에 위치할 때 발생하며, IBR 외부에서의 활동이 미미하거나 존재하지 않음을 의미합니다.
이 경우, 기간 동안의 거래 활동 대부분이 가치 영역(공정한 가격 영역) 내에서 발생했기 때문에 시장은 균형을 이루고 있다고 볼 수 있습니다.
이 패턴은 해당 기간 동안 주요 시장 동인이 단기 트레이더이며, 장기 트레이더의 영향이 미미함을 의미합니다.
정상 변동일 분포

정상 변동일은 장기 트레이더가 더 활발하게 활동할 때 발생합니다. 가격 범위는 초기 균형 범위를 넘어 확장되며, 단기 트레이더는 이 범위를 유지할 가능성이 낮습니다. IBR을 넘어 확장된 범위는 몇 틱에서 IBR의 두 배에 달할 수 있습니다.
트렌드 데이 분포

트렌드 데이는 장기 트레이더들이 가격 범위를 계속해서 더 밀어내어 IBR의 두 배 이상으로 범위가 확장되고, 시장이 확장된 범위의 끝부분에 가까운 가격으로 마감될 때 발생합니다. 이 분포는 시장이 새로운 공정 가격을 찾는 과정에서 장기 트레이더들이 방향에 더 큰 영향을 미치고 있음을 의미합니다.
뉴트럴 데이 분포

중립일은 트레이더들이 일시적으로 가격 레인지를 IBR을 넘어 확장할 때 발생합니다. 그런 다음 시장 가격이 반전되고 IBR의 반대쪽 끝에 비슷한 패턴이 나타날 수 있습니다. 이 분포는 시장의 불확실성을 나타냅니다. 일반적으로 시장이 기본 추세의 지속 또는 변화를 테스트할 때 발생합니다.
단일 인쇄
단일 인쇄는 하나의 TPO 블록만 포함하는 극단적이지 않은 레벨입니다. 시장 가격은 프로필 기간 동안 한 번만 이 레벨을 통과했습니다. 이러한 레벨을 잠재적인 시장 관심도 또는 불균형의 인디케이터로 고려하십시오. 따라서 싱글 프린트는 해당 값 주변에서 매수 또는 매도가 제한적이거나 예상치 못했기 때문에 향후 거래 활동을 유도할 수 있습니다.
또한, 가격이 다시 방문할 가능성이 있는 잠재적인 레벨 및 지지선 또는 저항선으로 모니터링할 수 있습니다. 차트에 싱글 프린트를 강조 표시하려면 인디케이터 설정의 “스타일” 탭에서 “싱글 프린트” 옵션을 활성화하십시오.

! 참고: 인디케이터는 연속으로 발생하면 처음 설정된 단일 프린트를 강조 표시합니다.
약한 고점 및 약한 저점

약한 고점 및 저점은 TPO 블록이 두 개 이상인 극단적인 레벨입니다. TPO 분석에서 이러한 레벨은 명확한 거부 없이 방향성 움직임이 중단되는 지점을 의미하며, 차트에 평평하고 좁은 고점 또는 저점을 나타냅니다.
이 패턴은 시장이 프로필의 고점/저점을 넘어서는 가격을 아직 완전히 탐색하지 못했을 가능성이 있으며, 추가적인 움직임이 더 이어질 여지가 있음을 시사합니다.
약한 고점과 저점은 강한 반전을 나타내는 특징적인 테이퍼링이 없습니다. 이러한 패턴은 더 넓은 범위를 탐색하고자 하는 시장 참여자들의 관심을 끌게 됩니다. 반드시 강력한 지지선/저항선은 아니지만, 이러한 레벨은 시장의 모멘텀이 일시적으로 멈춘 지점을 나타낼 수 있으며, 트레이딩 전략에 독특한 통찰력을 제공합니다.

프로필 분할 및 병합
사용자는 차트에 표시된 개별 프로필을 분할하거나 병합하여 차트의 특정 영역에서 다양한 세부 수준으로 활동을 확인할 수 있습니다. 이 기능을 사용하려면 표시된 프로필을 마우스 오른쪽 버튼으로 클릭하고 컨텍스트 메뉴 하단에서 적절한 옵션을 선택하세요.
“이 문자로 프로필 분할” 옵션은 두 개 이상의 시간 블록에 걸쳐 있는 선택한 프로필을 TPO 블록에서 두 개의 별도 프로필로 분할합니다.

“이전 프로필과 병합” 옵션은 선택한 프로필을 차트에 표시된 이전 프로필과 결합합니다. 이 옵션은 선택한 프로필이 차트에서 첫 번째 프로필이 아닌 경우에만 사용할 수 있습니다.

“모든 병합 및 분할 리셋” 옵션은 모든 프로필 분할 및 병합 작업을 되돌립니다.

! 참고: 인디케이터의 입력에서 ‘기간’ 또는 “블록 크기” 값을 변경하면 분할 및 병합도 리셋됩니다.
인디케이터 설정

입력
기간: 각 프로파일이 포함하는 일, 주 또는 월의 수입니다. 기본값은 1일입니다.
블록 크기: 프로파일의 기간을 나누는 시간 블록의 크기입니다. 블록 크기가 작을수록 더 세분화된 결과가 나옵니다. 가능한 값은 5분, 10분, 15분, 30분, 1시간, 2시간 및 4시간입니다. 기본 블록 크기는 30분입니다. 이 값은 TPO 및 볼륨 프로파일의 계산에 영향을 미칩니다
Row 크기: 프로파일의 행 크기를 결정하는 데 사용되는 모드입니다. 기본 설정(“자동”)에서 인디케이터는 “row당 틱” 필드에 계산된 행 크기를 표시합니다. 수동 모드에서는 사용자가 행당 틱 수를 지정합니다
row당 틱: 각 프로필 행의 틱 수로, 각 프로필에 포함될 행 수에 영향을 미칩니다. 이 필드에는 “Row 크기” 모드가 수동인 경우에만 값을 입력할 수 있습니다. 값이 너무 작으면 인디케이터가 오류를 표시합니다
값 영역 비율: 값 영역 계산에 사용되는 전체 TPO 블록의 비율입니다. 기본값은 70입니다
스타일

그라데이션 색상: TPO 블록의 색상 그라데이션에 사용되는 색상입니다. 첫 번째 두 색상은 A-Z 블록의 범위를 정의합니다. 마지막 두 색상은 a-z 블록의 색상 범위를 지정합니다
블록: 색상 TPO 블록의 표시를 토글합니다. 이 설정은 “문자”가 활성화되어 있지만 차트에 표시할 공간이 부족할 경우 효과가 없습니다
문자: TPO 문자의 표시를 전환합니다. 이 옵션이 활성화되면 차트에 충분한 공간이 있는 경우에만 인디케이터에 문자가 표시됩니다. 그렇지 않으면 색상 블록이 대신 표시됩니다.
VA 외부 불투명도: 값 영역 경계 외부의 레벨에 대한 불투명도 값을 설정합니다.
블록 확장: 이 옵션을 활성화하면 인디케이터가 기간의 왼쪽에 통합하지 않고 기간의 연속적인 인터벌에 걸쳐 TPO 블록의 분포를 표시합니다. 이 기능은 프로필을 구성하는 블록의 계산을 이해하고 시간의 경과에 따른 가격 활동의 플로우에 대한 추가적인 통찰력을 제공하는 데 도움이 될 수 있습니다
POC: POC 레이블 및 행 하이라이트를 토글하고, 드롭다운을 통해 지표가 가격이 레벨과 다시 교차할 때까지 각 프로필의 기간을 넘어 행 하이라이트를 확장할지 여부를 결정합니다. POC 표시가 활성화되면 인디케이터는 차트의 전경색을 사용하여 POC 행과 레이블을 색상으로 표시합니다
낮은 고가: “낮은 고가” 레이블과 라인을 토글합니다. 이 드롭다운에서 인디케이터가 가격이 교차할 때까지 프로필의 기간을 넘어 라인을 확장할지 여부를 결정할 수 있습니다
낮은 저가: “낮은 저가” 레이블과 라인을 토글합니다. 이 드롭다운에서 지표가 가격이 교차할 때까지 프로필의 기간을 넘어 라인을 확장할지 여부를 결정할 수 있습니다.
단일 인쇄: 여기에서 지표가 가격이 교차할 때까지 프로필의 기간을 넘어 하이라이트를 확장할지 여부를 강조 표시합니다.
VAH: “가치 영역 고가” 레이블 및 라인을 토글합니다.
VAL: “가치 영역 저가” 레이블 및 라인을 토글합니다.
TPO 중간점: 프로필의 중간 가격 레이블의 표시 여부를 토글합니다.
Open: 프로필의 시가 라벨의 표시 여부를 전환합니다.
Close: 프로필의 종가 라벨의 표시 여부를 전환합니다.
Initial balance range (IBR): 프로필 왼쪽에 수직 라인의 표시를 전환하고, 텍스트 필드는 IBR 계산에 사용되는 블록 수를 정의합니다.
볼륨 프로필

볼륨 프로필 보기: TPO 프로필 오른쪽에 볼륨 프로필의 표시를 전환합니다.
값: 각 행에 볼륨 값을 표시하고 프로필 아래에 기간의 총 볼륨을 표시하는 레이블을 전환합니다. 색상 선택기는 레이블의 색상을 지정합니다. 인디케이터는 차트에 충분한 공간이 있을 때만 이러한 레이블을 표시합니다.
VAH: 볼륨 프로필의 값 영역 하이 라인을 전환하고 색상 및 라인 스타일을 지정합니다.
VAL: 볼륨 프로필의 값 영역 로우 라인을 전환하고 색상 및 라인 스타일을 지정합니다.
POC: 볼륨 프로파일의 제어점 라인을 토글하고 색상 및 선 스타일을 지정합니다.
볼륨: 값 영역 외부의 레벨 색상을 결정합니다.
값 영역: 값 영역 내의 레벨 색상을 결정합니다.
배치: 볼륨 프로파일이 왼쪽 또는 오른쪽에 정렬될지 여부를 결정합니다.
TPO 요약
시간 가격 기회(TPO) 인디케이터는 알파벳 블록을 사용하여 다양한 가격 레벨에서 소요된 시간을 표시하여 시장 활동을 시각화합니다. 시장 균형 및 불균형 상태를 나타내는 TPO 프로파일을 표시하여 중요한 가격 레벨, 지지 및 저항 영역, 분포 패턴을 파악하는 데 도움이 됩니다.
주요 구성 요소로는 가치 영역(거래 활동의 70%), 제어 지점(최고 활동 레벨) 및 초기 균형 범위(초기 세션 가격 레인지)가 있습니다. 이 인디케이터는 다양한 분포 패턴(일반일, 추세일, 중립일)을 지원하고, 단일 인쇄 및 낮은 고점/저점을 잠재적인 미래 관심 영역으로 강조 표시합니다.
시간 기간, 블록 크기 및 시각적 요소를 커스텀할 수 있으며, 가격의 중요성을 추가로 확인하기 위해 볼륨 프로파일을 선택적으로 표시할 수도 있습니다.
아울러 다음을 읽어 보십시오: