왜 이 규칙부터인가
트레이딩뷰 전략 탭을 열면 목록 맨 위에 바입다운이 있다. 이름값도 없고 설명도 두 줄이다. 화려한 걸 먼저 다루고 싶은 마음이 없진 않았는데, 새 시리즈의 첫 편으로는 이게 맞다고 봤다.
기준선이 필요하기 때문이다. 앞으로 이 시리즈에서 볼륨 프로파일이나 이치모쿠 같은 걸 뜯어볼 텐데, 그것들이 좋다고 말하려면 “아무것도 안 하는 것보다 낫다"가 아니라 “제일 단순한 규칙보다 낫다"를 보여야 한다. 그 제일 단순한 규칙 자리에 바입다운이 있다.
시리즈 설계도 여기 맞췄다. 트레이딩뷰 내장 스크립트 180개를 하루 한 개씩 돌리고, 시가총액 상위권 코인을 붙여 짝을 만든다. 지표 103개에 전략 15개, 캔들 패턴 40개, 차트 패턴 14개, 볼륨 프로파일 8개다. 스크립트 수와 코인 수를 서로 안 나누어떨어지게 잡아두면 같은 조합이 다시 돌아오는 데 3년이 넘게 걸린다. 순서를 정해두면 그날 무엇을 쓸지 고민할 일이 없어진다. 고를 자유를 없애는 편이 오래 간다.
종목은 비트코인으로 잡았다. 조회 시점 기준 시가총액 1조 3,030억 달러로 2위 이더리움의 다섯 배가 넘는다. 규칙을 처음 설명할 때는 유동성이 가장 두꺼운 자산에 얹는 편이 군더더기가 적다. 목록에서 테더나 USD코인 같은 스테이블코인은 뺐다. 가격이 1달러에 고정되도록 설계된 자산에 추세 지표를 얹는 건 의미가 없다.

미리 밝혀둘 것이 있다. 이번 편은 시세를 받아 성과를 검증한 글이 아니라 규칙 자체를 해부한 글이다. 위 시가총액 숫자는 2026년 8월 19일 조회값이고, 아래에 나오는 봉 그림은 전부 규칙을 설명하기 위한 모식도다. 실제 비트코인 일봉이 아니다. 승률이나 수익률을 적지 않은 이유도 그래서다. 없는 숫자를 지어낼 생각은 없다. 투자 권유가 아니다.
규칙은 정말로 두 줄이다
바입다운의 판정은 봉의 몸통 방향 하나만 본다.
# 상승봉 = 종가 > 시가 / 하락봉 = 종가 < 시가
if close > open and close[1] > open[1]: 롱 진입
if close < open and close[1] < open[1]: 숏 진입
--------------------------------------------------
참조하는 값: 시가, 종가. 그게 전부다
고가·저가·거래량·기간·변동성: 보지 않는다당일 봉과 직전 봉이 같은 방향이면 그 방향으로 들어간다. 이동평균도 없고 기간 설정도 없다. 파라미터가 없으니 최적화할 것도 없다.

연속된 두 봉이 만들 수 있는 경우는 네 가지고, 그중 둘에서만 신호가 난다.

여기서 현물 거래자에게 실질적인 문제가 하나 생긴다. 업비트를 비롯한 국내 현물 시장에는 공매도가 없다. 숏 신호는 진입으로 쓸 수 없고 기껏해야 보유분 청산 신호로만 남는다. 그러면 실제로 쓸 수 있는 규칙은 하나로 줄어든다. 이틀 연속 올랐으면 산다.
이 규칙이 못 보는 것
조건이 적다는 건 계산이 가볍다는 뜻이기도 하지만, 대부분의 경우 그냥 정보를 덜 본다는 뜻이다.
첫째, 몸통 방향만 보고 크기를 안 본다. 0.1퍼센트 오른 봉과 8퍼센트 오른 봉이 규칙 안에서는 완전히 같은 값이다. 도지처럼 시가와 종가가 붙어 있는 봉도 종가가 시가보다 1원만 높으면 상승봉으로 집계된다. 방향은 맞았는데 의미가 없는 신호가 상당수 섞여 들어온다.
둘째, 청산 규칙이 없다. 정확히는 반대 신호가 날 때까지 들고 간다. 손절가도 목표가도 없다. 상승 추세가 이어지는 구간에서는 이 성질이 장점으로 작동하지만, 방향이 하루 걸러 바뀌는 횡보 구간에서는 진입과 청산을 반복하면서 수수료만 쌓인다. 업비트 현물 수수료는 왕복 0.1퍼센트다. 하루 걸러 매매하면 한 달에 그것만 1.5퍼센트가 나간다.
셋째, 시장 상태를 구분하지 않는다. 비트코인이 4시간봉에서 무너지는 중이든 아니든 규칙은 똑같이 산다. 내 봇이 레짐 차단을 넣어둔 이유가 여기 있다. 방향이 틀린 장에서는 진입 자체를 막는 게 진입 후 손절보다 싸다.
넷째는 암호화폐에서만 생기는 문제다. 주식은 장이 열리고 닫히는 시각이 정해져 있어서 일봉의 경계가 시장 규칙으로 주어진다. 코인 시장은 24시간 돌아가니 하루를 어디서 끊을지가 거래소 설정값일 뿐이다. 업비트는 한국 시간 자정에 끊고 해외 거래소 상당수는 세계 표준시 자정에 끊는다. 아홉 시간 차이다. 같은 비트코인, 같은 기간인데 어느 쪽 일봉을 쓰느냐에 따라 시가와 종가가 달라지고, 상승봉과 하락봉의 판정이 뒤집히는 날이 나온다. 봉의 몸통 방향 하나에 모든 걸 거는 규칙에서 이건 작은 흠이 아니다. 나중에 이 전략을 숫자로 검증할 때 어느 시각 기준 일봉을 썼는지 먼저 밝혀야 하는 이유다.
그래도 맞는 자리
약점만 적으면 공평하지 않다. 이 규칙이 실제로 잡아내는 게 있다.
추세가 한 방향으로 길게 이어지는 구간에서는 조건이 계속 참으로 유지된다. 반대 신호가 나기 전까지 들고 가는 성질 덕분에 상승 구간을 통째로 먹는다. 목표가를 걸어두는 전략이 목표가에서 털리고 남은 상승을 구경만 하는 동안, 이 규칙은 그냥 앉아 있는다. 추세추종의 가장 얇은 형태지만 추세추종이 맞는 장에서는 얇다는 게 흠이 안 된다.
봉의 방향은 후행 지표 중에서도 지연이 가장 짧은 축에 속한다는 점도 있다. 이동평균 20일선은 정의상 스무 봉 전의 정보를 지금 값에 섞는다. 봉의 몸통 방향은 어제와 오늘 두 개만 본다. 반응이 늦어서 놓치는 손실보다 너무 빨라서 속는 손실이 큰 게 이 규칙의 성격이다. 방향이 잦게 바뀌는 구간에서 망가지는 것도 같은 이유다.
정직하게 말하면 이번 편에서는 둘 중 어느 쪽이 얼마나 큰지 숫자로 못 보여준다. 그러려면 일봉을 몇백 개 받아 진입과 청산을 전수로 재현하고 같은 기간 단순 보유와 비교해야 한다. 그 작업은 시세 수집 경로를 붙인 다음 편부터 붙일 생각이다. 지금 단계에서 승률을 적으면 그건 계산한 값이 못 되고 그냥 인상이다.
게이트 열 개와 조건 두 개
내 봇의 진입 판정과 나란히 놓으면 차이가 분명해진다.

봐야 할 건 개수 차이가 아니라 방향 차이다. 바입다운은 오른 걸 산다. 내 봇은 빠진 걸 산다. 과매도 눌림목 반등이라 RSI가 낮고 저점에 붙어 있을 때 들어간다. 같은 자리에서 두 규칙은 정반대로 판정한다.
그래서 이 규칙을 게이트에 넣을 생각은 없다. 다만 버릴 것도 아니다. 앞으로 다른 스크립트를 검증할 때 “바입다운보다 나은가"를 기준선으로 쓰기로 했다. 조건 두 개짜리 규칙을 못 이기는 지표라면 게이트 열한 번째 자리를 내줄 이유가 없다.
한 가지 더 남는 게 있다. 파라미터가 없다는 성질이다. 내 봇의 RSI 45나 손절 -5퍼센트는 전부 매매기록 시뮬레이션으로 고른 값이고, 고른 값은 언제나 과거에 맞춰 깎인 값이라는 의심을 안고 간다. 바입다운은 그 의심에서 자유롭다. 깎을 파라미터가 애초에 없으니 과최적화될 수가 없다. 성능이 나쁠 수는 있어도 속고 있을 걱정은 없는 규칙이다.
남길 것
기준선으로만 쓴다. 게이트에는 넣지 않는다.
하나 더 챙긴 게 있다. 규칙을 글로 옮기다 보니 내 봇의 조건 열 개 중에 왜 있는지 설명이 안 되는 게 두 개쯤 보였다. 남의 전략을 뜯는 작업이 내 코드를 다시 읽게 만드는 쪽으로 돌아왔다. 이 시리즈를 매일 돌리기로 한 이유가 이쪽에 더 가깝다.
다음 편은 이더리움에 볼린저 밴드 전략을 얹는다.
“좋은 매매의 요소는 세 가지다. 손실을 자르는 것, 손실을 자르는 것, 그리고 손실을 자르는 것.” (에드 세이코타)
바입다운에 없는 게 정확히 그거다. 조건 두 개로 들어가는 건 얼마든지 할 수 있는데, 나올 규칙이 없으면 들어간 값이 얼마든 의미가 흐려진다. 내 봇에서 손절 -5퍼센트와 본전 사수를 먼저 박아놓고 진입 조건을 나중에 손댄 순서가 틀리지 않았다고 다시 생각했다.
이 글은 특정 자산의 매매를 권유하지 않는다. 기록은 전부 개인 개발 로그다.
약어 풀이
* 이 글에 나온 영어 약어를 풀어 둔다.
- BTC (Bitcoin): 비트코인. 2009년 가동된 최초의 분산원장 기반 암호화폐이자 시가총액 1위 자산.
- ETH (Ethereum): 이더리움. 스마트 계약 실행 환경을 갖춘 블록체인이자 그 네이티브 자산.
- RSI (Relative Strength Index): 상대강도지수. 일정 기간 평균 상승폭과 평균 하락폭의 비율을 0~100으로 나타내 과매수·과매도를 재는 모멘텀 오실레이터.
- SOL (Solana): 솔라나. 고속 처리를 목표로 설계된 블록체인의 네이티브 자산.
- XRP (Ripple): 리플. 결제·송금 네트워크에서 쓰이는 자산.
- BNB (Binance Coin): 바이낸스 코인. 바이낸스 생태계에서 쓰이는 거래소 발행 자산.
- TRX (TRON): 트론. 콘텐츠 유통을 목표로 설계된 블록체인의 네이티브 자산.