차트 분석을 매매 규칙으로 바꾸는 방법: 신호·진입·청산·수량·금지 조건을 한 문서에
"저항을 강하게 돌파하면 산다"는 문장으로는 검증을 시작할 수 없습니다. 이번 강의에서는 가상 돌파 사례 하나로 누가 읽어도 같은 거래와 같은 취소가 나오는 매매 규칙 문서를 끝까지 만들어 봅니다.

"저항을 강하게 돌파하면 산다"는 문장을 두 사람에게 주면 서로 다른 거래가 나올 수 있어요. 한 사람은 장중에 사고, 다른 사람은 봉 마감을 기다립니다. '강하다'는 기준도 사람마다 다르고요. 검증 가능한 규칙은 이런 빈칸을 구체적인 숫자와 시점으로 채운 문장입니다.
고급 28강에서 퀀트는 규칙을 데이터로 검증하는 접근이라고 배웠죠. 이번에는 그 검증에 넣을 '규칙' 자체를 만듭니다. 복잡한 지표보다 중요한 건 같은 자료를 주었을 때 같은 거래와 같은 취소가 나오는가입니다.
- 매매 규칙은 신호 하나가 아니라 신호·진입·청산·수량·금지 조건을 숫자와 시점, 부등호까지 적은 문서입니다.
- 신호 시각과 진입 시각은 다른 사건이며, 이번 모형은 봉 마감에서 판단하고 다음 봉 시가로 진입·청산을 계산합니다.
- 수량은 손실 예산과 현금 두 제한 중 작은 값으로 정하지만, 손실 예산이 실제 최대 손실을 보장하지는 않습니다.
목차
차트 분석을 매매 규칙으로 바꾼다는 건 무슨 뜻일까?
차트 분석을 매매 규칙으로 바꾼다는 것은 "저항을 넘었다" 같은 관찰을 누구나 같은 답을 내는 판정 조건으로 바꾸고, 그 뒤의 행동까지 적는 일입니다. 판정 조건에는 숫자, 시점, 부등호가 모두 들어가야 해요.

- 관찰
- 차트를 보고 받은 인상. 예: "저항을 넘었다". 사람마다 해석이 달라 같은 거래가 재현되지 않습니다.
- 판정 조건
- 관찰을 숫자와 시점으로 바꾼 문장. 예: "완성 봉 종가 > 100". 같은 자료라면 누구나 같은 답을 냅니다.
흐름으로 보면 관찰 → 판정 → 행동입니다. "저항을 넘었다"는 관찰을 "완성 봉 종가 > 100"이라는 판정으로 바꾸고, 그다음 행동은 "다음 봉 조건 확인"이 되는 식이죠. 그리고 신호 한 가지로 매매 규칙이 완성되지는 않습니다.
- 신호어떤 완성 봉에서 무엇이 성립하면 거래 후보가 되는가
- 진입신호 뒤 언제, 어떤 가격 범위에서 들어가는가
- 청산언제 판단하고 어떤 가격으로 나오는가, 겹치면 무엇이 우선인가
- 수량손실 예산과 현금으로 몇 개를 사는가
- 금지 조건어떤 경우에 거래하지 않는가
매매 규칙을 쓰기 전에 무엇을 먼저 고정해야 할까?
시장, 시간봉, 데이터 기준, 기준선 가격을 결과를 보기 전에 먼저 고정해야 합니다. 이게 흔들리면 같은 문장이라도 다른 거래가 나와요.
이번 사례의 시장 조건은?
| 항목 | 이번 사례 |
|---|---|
| 대상과 방향 | 가상 A 자산 현물 매수만 |
| 시간봉 | 일반 1시간봉 |
| 거래량 | 동일 거래소, 수량 거래량 |
| 레버리지·수량 | 레버리지 없음, 정수 수량 |
| 시각 기준 | UTC로 기록, 봉이 완성된 다음 신호 판정 |
실제 종목으로 바꿀 때는 거래소·심볼·단위·시간대를 문서 맨 위에 적어 두세요.
기준선은 언제 정해야 할까?
결과를 보기 전입니다. 이번 사례에서는 관찰 시작 전에 저항 100원, 청산 판단선 98원, 목표 판단선 110원을 기록했다고 가정하고 이 가격들을 고정합니다. 저항을 자동으로 찾는 알고리즘까지 다루는 건 아니니, 실제 기록에는 과거 어떤 봉을 보고 100원을 정했는지와 기록 시각도 남깁니다.
"거래량이 충분하다"는 어떻게 숫자로 바꿀까?
거래량 기준 평균은 신호 봉을 제외한 직전 20개 완성 봉 거래량의 합계 ÷ 20입니다. 현재 거래량 ÷ 기준 평균이 1.5 이상이어야 조건을 충족해요. 1.5는 학습용 선택이지 최적값이 아닙니다.
| 모호한 말 | 이번 사례의 수치화 |
|---|---|
| 저항을 돌파 | 이전 종가 ≤ 100 그리고 현재 종가 > 100 |
| 거래량이 충분 | 현재 거래량 ÷ 직전 20개 평균 ≥ 1.5 |
| 너무 비싸면 안 산다 | 다음 봉 시가가 100 초과 103 이하일 때만 |
| 오래 안 오르면 나온다 | 진입 봉 포함 6개 봉 마감까지 관찰 |
데이터가 부족하거나 신호가 여러 번 나오면?
20개 봉이 부족하거나, 평균이 0이거나, 데이터가 누락되면 새 신호를 만들지 않습니다. 관찰 기간의 시작과 끝도 미리 적어 둡니다. 그리고 한 번의 설정에서는 첫 유효 신호만 사용하고, 그 시도 이후에는 거래가 끝나거나 취소돼도 같은 설정으로 다시 진입하지 않는 것으로 정합니다.
신호와 진입은 왜 따로 적어야 할까?
신호는 완성 봉에서 조건이 맞았다는 사건이고, 진입은 그다음 봉에서 실제로 들어가는 사건이기 때문입니다. 둘을 섞으면 이미 지나간 가격에 샀다고 착각하게 돼요.
신호 조건을 실제 숫자로 판정해 보면?
현물 보유가 없고 대기 주문도 없을 때, 완성 봉에서 가격 조건과 거래량 조건이 모두 맞으면 신호가 됩니다.
- 입력값이전 종가 99원, 현재 종가 102원, 직전 거래량 평균 100개, 현재 거래량 180개
- 가격 조건99 ≤ 100 그리고 102 > 100 → 충족
- 거래량 조건180 ÷ 100 = 1.8 ≥ 1.5 → 충족
- 판정신호 발생. 다음 봉 시가로 진입 여부를 판정합니다.
진입 허용 범위는 어떻게 정할까?
신호 다음 한 봉의 시가만 진입 판정에 씁니다. 허용 조건은 100원 < 다음 봉 시가 ≤ 103원이고, 이 범위면 그 시가로 전량 체결됐다고 가정합니다. 경계값을 포함하는지에 따라 거래가 달라지니 부등호까지 적어야 해요.

| 다음 봉 시가 | 판정 | 이유 |
|---|---|---|
| 100원 | 진입 취소 | 100 초과가 아님 |
| 103원 | 진입 허용 | 100 초과 103 이하 |
| 104원 | 진입 취소 | 103 초과 |
| 자료 없음·관찰 기간 종료 | 진입 취소 | 진입을 평가할 수 없음 |
취소된 신호는 이후 가격이 다시 범위 안으로 내려와도 재사용하지 않습니다. 취소 후 같은 신호로 뒤늦게 재진입하지 않는다는 것까지가 규칙이에요.
다음 봉 시가에 체결된다는 가정은 현실적일까?
아닙니다. 이것은 같은 계산을 반복하기 위한 과거 계산용 가상 체결 기준이고, 실거래에서 다음 봉 시가에 정확히 체결된다는 보장은 없습니다. 실제 주문 규칙으로 바꾸려면 다음을 따로 정해야 해요.
- 가격 제한 주문과 유효 시간
- 미체결·부분체결 처리
- 신호 전달 지연
예를 들어 매수 지정가는 상한 가격을 제한할 수 있지만 전량 체결을 보장하지 않습니다. 시장가 주문으로 보내면서 체결가가 항상 103원 이하일 거라고 가정해서도 안 되고요. TradingView의 전략 결과 역시 주문 처리와 비용 설정에 영향을 받으므로, 도구 설정을 문서에 적힌 가정과 대조해야 합니다.
청산 시점과 우선순위는 어떻게 정할까?
이번 사례는 각 봉 마감에서 종가로 청산 여부를 판단하고, 실제 청산은 바로 다음 봉의 시가 자료로 계산합니다. 봉 중간에 가격선을 건드렸는지로 판단하는 방식과 섞지 않습니다.

보유 봉은 어떻게 세고, 언제 청산을 예약할까?
진입한 봉을 보유 1번 봉으로 셉니다. 그리고 각 봉이 마감될 때 아래 기준을 확인합니다.
| 마감 시 상황 | 행동 | 기록할 청산 사유 |
|---|---|---|
| 종가 ≤ 98원 | 다음 봉 시가 청산 예약 | 손실 대응 |
| 종가 ≥ 110원 | 다음 봉 시가 청산 예약 | 목표 |
| 둘 다 아님, 보유 1~5번 봉 | 계속 보유 | - |
| 둘 다 아님, 보유 6번 봉 마감 | 다음(7번) 봉 시가 청산 예약 | 시간 제한 |
즉 보유 1~6번 봉 마감을 확인하고, 늦어도 7번 봉 시가에는 청산한다고 가정합니다.
여러 청산 조건이 같은 봉에서 겹치면?
같은 마감에서 시간 조건과 가격 조건이 겹치면 손실 대응 → 목표 → 시간 제한 순서로 청산 사유를 기록합니다. 98 이하와 110 이상은 같은 종가에서 동시에 성립할 수 없어요. 한 번 청산을 예약하면 다음 시가에서 청산하고, 그 사이에 나온 새 진입 신호는 무시합니다. 추가 매수, 분할 청산, 손절선 이동도 이번 규칙에서는 하지 않습니다.
저가와 고가가 둘 다 선을 건드리면 어떻게 할까?
종가 규칙을 그대로 지킵니다. 어떤 봉의 저가가 97원, 고가가 112원, 종가가 105원이라면 두 가격선 모두 장중에 지나갔지만 종가 청산 조건은 충족하지 않아요. 보유 6번 봉이 아니라면 계속 보유합니다.
손절 주문을 따로 두는 모형으로 바꾸면 그건 다른 규칙 버전입니다. 그 경우 같은 봉에서 손절과 목표를 모두 터치하면 더 짧은 시간 자료나 미리 정한 보수적 순서 가정이 필요해요. 원하는 결과에 따라 유리한 쪽이 먼저 체결됐다고 고르면 안 됩니다. 스톱 가격 역시 실제 체결가를 보장하지 않고요.
자료가 끝나서 청산할 다음 봉이 없으면?
미청산으로 표시하고 실현손익에 넣지 않습니다. 마지막 봉 종가를 임의로 체결가로 쓰지 않고, 미실현 손익을 별도로 표시하되 그 사례를 빠뜨리지 않습니다.
매매 규칙에서 수량은 어떻게 계산할까?
수량은 "계획 손실 예산 ÷ 단위당 계획 손실"과 "현금 ÷ 단위당 매수 지출"을 각각 내림한 뒤 둘 중 작은 값으로 정합니다. 0개가 나오면 거래하지 않습니다.
| 가정 | 값 |
|---|---|
| 계좌 현금 | 10,000원 |
| 이 시도의 계획 손실 예산 | 500원 |
| 매수·매도 비용 | 각각 단위당 0.1원 (왕복 0.2원) |
| 진입가 / 청산 판단선 / 목표 판단선 | 103원 / 98원 / 110원 |
비용은 실제 수수료 체계가 아니라 계산을 단순화한 가정이고, 비용과 불리한 체결 차이를 중복으로 빼지 않습니다.
- 단위당 계획 손실103 − 98 + 0.2 = 5.2원
- 손실 예산 기준 수량500 ÷ 5.2 = 약 96.15 → 내림해서 96개
- 현금 기준 수량10,000 ÷ (103 + 매수 비용 0.1)의 정수 부분 = 96개
- 최종 수량두 제한 중 작은 값 96개
- 매수 지출96 × 103.1 = 9,897.6원
계획 손실과 실제 손실은 얼마나 달라질 수 있을까?
98원에 청산된다는 계산 가정에서 총손실은 96 × 5.2 = 499.2원입니다. 하지만 이번 규칙은 종가 판단 후 다음 시가 청산이라 98원은 체결 보장선이 아니에요. 실제 청산가가 94원이라면 단위당 손실은 103 − 94 + 0.2 = 9.2원, 비용 포함 손실은 96 × 9.2 = 883.2원으로 예산을 넘습니다.

| 청산 가정 | 단위당 비용 후 손익 | 총손익 |
|---|---|---|
| 98원 청산 (계획) | −5.2원 | −499.2원 |
| 94원 청산 (불리한 체결) | −9.2원 | −883.2원 |
| 110원 청산 (목표) | +6.8원 | +652.8원 |
계획 보상 ÷ 계획 위험은 6.8 ÷ 5.2 = 약 1.31배입니다. 이 값은 실제 체결가에 따라 달라지고, 이 비율만으로 기대수익이 양수라고 결론 내릴 수 없습니다.
거래 금지 조건과 경계 사례는 어떻게 판정할까?
거래 금지 조건도 전략의 일부이며, 경계에 걸친 입력값은 미리 적어 둔 같은 규칙으로 판정합니다. 이번 시도에서는 보유 또는 대기 주문이 있거나, 자료가 불완전하거나, 수량이 0이거나, 다음 시가가 허용 범위를 벗어나면 진입하지 않습니다.
| 가상 입력 | 이번 규칙의 결과 |
|---|---|
| 현재 종가 100원 | 100 초과가 아니므로 신호 없음 |
| 가격 조건 충족, 거래량 1.49배 | 1.5 미만이므로 신호 없음 |
| 가격 조건 충족, 거래량 1.50배 | 거래량 조건 충족 뒤 다른 조건 확인 |
| 신호 뒤 다음 시가 104원 | 이 시도 취소 뒤 재사용 안 함 |
| 보유 2번 봉 종가 97원, 다음 시가 94원 | 3번 봉 시가 94원으로 청산 계산 |
| 보유 6번 봉 종가 105원, 다음 시가 104원 | 7번 봉 시가 104원으로 시간 청산 계산 |
마지막 시간 청산 사례에서 진입 103원, 수량 96개라면 비용 후 손익은 (104 − 103 − 0.2) × 96 = 76.8원입니다. 앞의 손실 사례와는 별개인 독립된 경로예요. 유리한 사례만 모아 실제 승률처럼 보여주지 않는다는 점도 규칙만큼 중요합니다.
조건을 조금만 바꿔도 왜 새 규칙 버전일까?
작은 문구 수정처럼 보여도 거래 집합 자체가 바뀌기 때문입니다. 종가 100원도 허용하거나 거래량 기준을 1.4배로 낮추면 신호가 달라지고 결과도 달라집니다.
그래서 변경 전후의 규칙과 날짜를 남기고 결과를 따로 비교합니다. 손실 거래를 본 뒤 그날만 예외로 제외하면 반복 검증이 되지 않아요.
관찰 기간이 끝나면 보유 중인 거래는?
관찰 기간이 끝나면 신규 신호는 중단합니다. 이미 보유한 거래는 원래 청산 규칙을 따르고, 이를 계산할 추가 자료가 없다면 앞서 정한 미청산 처리로 남깁니다. 기간 종료를 새 청산 조건으로 쓰고 싶다면 처음부터 그 조건을 명시한 별도 버전으로 작성해야 합니다.
1. 신호 봉 종가를 진입가로 적는다
이미 지나간 102원에 샀다고 기록하면 결과가 실제보다 좋아 보입니다.
점검: 신호 시각과 진입 시각·진입가를 별도 칸으로 기록했는가2. 종가 규칙과 봉 중간 터치를 섞는다
어떤 사례는 종가로, 어떤 사례는 장중 터치로 판정하면 같은 규칙이라 할 수 없습니다.
점검: 판단 방식이 문서에 하나로 적혀 있는가3. 같은 봉 양쪽 터치에서 유리한 쪽을 고른다
손절과 목표를 모두 건드린 봉에서 목표가 먼저 체결됐다고 고르면 결과가 부풀려집니다.
점검: 짧은 시간 자료나 보수적 순서 가정을 미리 정했는가4. 마지막 봉 종가로 청산한 척한다
청산용 다음 봉이 없는데 마지막 종가를 체결가로 쓰면 실현손익이 왜곡됩니다.
점검: 미청산 사례를 따로 표시하고 미실현 손익으로 남겼는가5. 손실 난 날만 예외로 뺀다
결과를 보고 사례를 빼거나 조건을 고치면 반복 검증이 불가능합니다.
점검: 조건을 바꿨다면 새 버전 이름과 날짜를 남겼는가
규칙 문서와 거래 기록에는 무엇을 남겨야 할까?
규칙 문서에는 이름·시장·시간봉·자료 기간·기준선 선정 시각과 신호부터 자료 누락 처리까지의 조건을, 거래 기록에는 판정에 쓴 모든 값과 취소 사유까지 남겨야 합니다. 취소한 신호도 남겨야 왜 거래하지 않았는지 재현할 수 있어요.
- 머리말
- 시장(가상 A 자산 현물), 1시간봉·UTC, 자료 기간, 기준선(100/98/110원) 선정 시각과 근거 봉
- 신호 조건
- 이전 종가 ≤ 100, 현재 종가 > 100, 현재 거래량 ÷ 직전 20개 평균 ≥ 1.5
- 진입 허용 범위·유효 시간
- 신호 다음 한 봉 시가가 100 초과 103 이하일 때만, 벗어나면 취소·재사용 안 함
- 청산 조건·우선순위
- 종가 ≤ 98 손실 대응, 종가 ≥ 110 목표, 보유 6번 봉 마감 시간 제한 / 다음 시가 청산 / 손실 대응 → 목표 → 시간 제한
- 수량 공식
- 예산 ÷ 단위당 계획 손실과 현금 ÷ 단위당 매수 지출을 각각 내림 후 작은 값, 0개면 거래 안 함
- 금지 조건
- 보유·대기 주문 있음, 자료 불완전, 수량 0, 다음 시가 범위 밖
- 자료 누락 처리
- 20개 봉 부족·평균 0·누락 시 신호 없음, 청산용 다음 봉 없으면 미청산
작성 당시 모르는 항목은 "미정"이라고 표시하고, 그런 문서는 완성된 실거래 규칙으로 취급하지 않습니다.
실제 차트에서 규칙을 만들 때 무엇을 더 봐야 할까?
강사 메모를 덧붙이면, 역사는 반복되지만 하락과 상승의 폭은 종목마다 다릅니다. 아래는 바이낸스 비트코인 무기한 선물(BTCUSDT.P) 일봉으로 2021년부터 2025년까지 큰 상승과 하락이 번갈아 나타난 흐름을 보여줍니다.

이렇게 크게 내려가거나 올라갈 때의 평균 상승률과 하락률을 체크해, 청산이 나지 않을 어느 정도의 구간 패턴을 찾는 것이 중요합니다. 이때 추세가 바뀌는지도 꼭 함께 확인하면서 접근해야 해요. 이렇게 찾은 관찰도 결국은 위에서 연습한 방식대로 숫자와 시점으로 바꿔 적어야 검증할 수 있습니다.
규칙 판정 문제, 직접 풀어볼까요?
Q1. 신호가 나왔고 다음 봉 시가가 정확히 100원입니다. 진입할까요?
진입하지 않고 이 시도를 취소합니다. 허용 조건은 100원 초과 103원 이하라서 100원은 범위 밖이에요. 이후 가격이 범위 안으로 들어와도 이 신호는 재사용하지 않습니다.
Q2. 보유 3번 봉의 저가 97원, 고가 112원, 종가 105원입니다. 어떻게 할까요?
계속 보유합니다. 이번 규칙은 종가 기준이라 종가 105원은 98원 이하도 110원 이상도 아니고, 6번 봉도 아니기 때문입니다. 봉 중간 손절이 없어 실제 손실이 커질 수 있다는 한계도 기록해 두세요.
Q3. 같은 가정(현금 10,000원, 예산 500원, 왕복 비용 0.2원)에서 진입가가 101원이라면 수량은?
단위당 계획 손실은 101 − 98 + 0.2 = 3.2원이라 예산 기준은 500 ÷ 3.2 = 156.25 → 156개입니다. 현금 기준은 10,000 ÷ 101.1 ≈ 98.9 → 98개입니다. 작은 값인 98개를 사용하니, 이번에는 현금이 수량을 제한하는 셈이에요.
이 강의를 마치고 해볼 것은?
평소 차트에서 자주 쓰는 관찰 하나를 골라 위의 순서대로 규칙 문서 v1을 써 보세요. 그리고 다른 사람에게 그 문서만 주고 같은 차트에서 같은 거래와 같은 취소가 나오는지 확인해 보는 겁니다. 판정이 엇갈리는 지점이 바로 아직 숫자로 바꾸지 못한 빈칸이에요.
규칙을 읽은 다른 사람이 같은 거래와 같은 취소를 재현할 수 있다면 검증을 시작할 준비가 된 것입니다. 다만 이 단계가 수익성을 증명하지는 않습니다. 다음 고급 30강 「백테스트의 기본 개념과 실행 순서」에서 데이터·체결 가정·거래 비용을 반영해 규칙을 시험하는 순서를 다룹니다.
자주 묻는 질문
차트 분석을 매매 규칙으로 바꾸려면 무엇부터 해야 하나요?
시장, 시간봉, 시간대, 거래량 기준, 기준선 가격을 결과를 보기 전에 먼저 고정합니다. 그다음 "저항 돌파" 같은 모호한 말을 "이전 종가 ≤ 100 그리고 현재 종가 > 100"처럼 숫자와 부등호로 바꿔 적습니다.
신호와 진입은 왜 따로 기록해야 하나요?
신호는 완성 봉에서 조건이 맞은 사건이고, 진입은 그다음 봉 시가에서 일어나는 별개의 사건이기 때문입니다. 신호 종가 102원을 보고 이미 지나간 102원에 샀다고 적으면 결과가 실제와 달라집니다.
상대 거래량 1.5배는 어떻게 계산하나요?
신호 봉을 제외한 직전 20개 완성 봉 거래량의 합계를 20으로 나눈 값이 기준 평균이고, 현재 거래량 ÷ 기준 평균이 1.5 이상이면 조건을 충족합니다. 1.5는 학습용 선택일 뿐 최적값이 아니며, 현재 봉을 포함한 기본 이동평균선을 쓰면 정의가 달라질 수 있습니다.
손실 예산으로 수량을 정하면 손실이 그 이상 나지 않나요?
아닙니다. 예시에서 98원 청산을 가정한 계획 손실은 499.2원이지만, 다음 시가가 94원이면 같은 96개로도 손실이 883.2원이 됩니다. 손실 예산은 수량을 정하는 기준이지 실제 최대 손실의 보장 한도가 아닙니다.
한 봉에서 손절선과 목표선을 모두 건드리면 어떻게 처리하나요?
이번 종가 기준 모형에서는 저가 97원, 고가 112원이어도 종가 105원이면 청산 조건이 아니므로 계속 보유합니다. 봉 중간 손절 주문을 쓰는 다른 버전이라면 더 짧은 시간 자료나 사전에 정한 보수적 순서 가정이 필요하며, 유리한 쪽을 골라서는 안 됩니다.
규칙 조건을 조금 바꾸는 것도 새 버전으로 봐야 하나요?
그렇습니다. 종가 100원을 허용하거나 거래량 기준을 1.4배로 낮추는 것만으로도 거래 집합이 바뀝니다. 변경 전후 규칙과 날짜를 남기고 결과를 따로 비교해야 하며, 손실 거래를 본 뒤 그날만 예외로 빼면 반복 검증이 되지 않습니다.
인용 안내 이 글을 인용할 때는 출처를 함께 적어 주세요.이재민, 「차트 분석을 매매 규칙으로 바꾸는 방법: 신호·진입·청산·수량·금지 조건을 한 문서에」, 트레이드캠프, 2026-11-06. https://tradecamp.co.kr/post/chart-analysis-to-trading-rules
이 글의 가격·거래량·비용 숫자는 규칙 작성법을 설명하기 위한 가상 값이며, 수익성을 검증한 전략이나 실계좌 주문 지침이 아닙니다. 트레이드캠프의 모든 콘텐츠는 교육 목적으로 제공되며 투자 권유나 자문이 아닙니다. 투자 판단과 그 결과에 대한 책임은 투자자 본인에게 있으며, 가상자산과 주식은 원금 손실 위험이 있습니다.



