프로 해외주식미국주식·ETF·해외선물 실측무료 책 받기

해외선물 · 자동매매

트레이딩뷰 웹훅 자동매매 연결 방법

트레이딩뷰 얼러트가 웹훅 POST로 신호를 보내고 준비한 프로그램이 주문 내용을 해석한다.

『해외선물 수익내는 매매법』 표지

무료 책

해외선물은 기초가 가장 중요합니다.
신청하신 모든 분들께 무료로 보내드립니다.

『해외선물 수익내는 매매법』 제11장 지표 조합 전략

112쪽 · 14장 차례 전체 보기

제11장 지표 조합 전략

추세 · 진입 · 청산에 하나씩

규칙 한 세트에는 칸이 셋 있습니다. 추세 확인 칸은 매수와 매도 가운데 어느 쪽만 볼지를 정합니다. 진입 신호 칸은 그 방향에서 정확히 어느 봉에 들어갈지를 정합니다. 청산 규칙 칸은 어디서 손절하고 어디서 이익을 정리할지를 정합니다. 칸마다 지표를 하나씩 넣고, 한 지표가 두 칸을 함께 맡지 않게 합니다.

추세 · 진입 · 청산을 한 세트로칸마다 지표를 하나씩 넣고, 한 지표가 두 칸을 함께 맡지 않게 한다 · 재료가 다른 지표끼리 짝짓는다규칙 한 세트칸은 셋1추세 확인매수와 매도 가운데어느 쪽만 볼지2진입 신호그 방향에서 정확히어느 봉에 들어갈지3청산 규칙어디서 손절하고어디서 이익을 정리할지세트 1이평선 + MACD추세가 뚜렷한 시간15분봉 20 EMA가 60 EMA 위,가격도 60 EMA 위일 때만매수를 본다5분봉 MACD선이 0선 위에서시그널선을 위로 교차한봉 마감 → 다음 봉 매수손절 · 되돌림 저점 아래 2틱청산 · 손익비 2 목표,또는 MACD 반대 교차세트 2볼린저밴드 + RSI옆으로 흐르는 시간5분봉 밴드 중심선이 수평,밴드 폭이 옆으로이어질 때만하단 밴드 밖에서 띠 안으로돌아온 종가 +RSI 30 아래에서 30 위로손절 · 밴드 밖 봉 저점 아래 2틱청산 · 절반은 중심선,나머지는 상단 밴드세트 3이평선 + 거래량좁은 박스 뒤 거래가몰리는 시간15분봉 가격이 60 EMA 위,60 EMA가 위를 향할 때만위쪽 돌파를 본다5분봉 박스 고점을 넘어 마감,거래량은 같은 시간대평균의 1.5배 이상손절 · 박스 한가운데 아래 마감청산 · 1차는 박스 높이만큼,나머지는 15분봉 20 EMA 이탈재료이동평균 (이평선 · MACD)변동성 (볼린저밴드)힘의 크기 (RSI · 스토캐스틱)참여의 크기 (거래량)규칙은 빈칸 없는 문장 한 줄로 적는다추세 칸일 때만,진입 칸에서 들어가고,손절 자리에서 손절하고,정리 자리에서 정리한다.세트 2는 밴드 밖 종가가 두 번 이어지거나 밴드가 위아래로 벌어지기 시작하면 쉬고, 세트 1이나 세트 3으로 넘어갑니다.세트의 숫자는 이해를 돕기 위한 예시 설정이며, 상품과 시간대에 맞게 정해 쓰는 값입니다.
추세 · 진입 · 청산을 한 세트로

조합의 기준은 서로 다른 재료입니다. 이동평균선과 MACD는 둘 다 이동평균에서 나왔으므로 둘 다 추세 칸에 넣으면 같은 말을 두 번 듣게 됩니다. 대신 이동평균선은 추세 칸, MACD는 진입 칸처럼 역할을 나누면 같은 재료라도 서로 다른 질문에 답합니다. 볼린저밴드는 변동성, RSI와 스토캐스틱은 힘의 크기, 거래량은 참여의 크기를 재료로 씁니다.

규칙은 반드시 문장으로 적습니다. "○○일 때만, ○○에서 들어가고, ○○에서 손절하고, ○○에서 정리한다." 이 문장에 빈칸이 없어야 차트 앞에서 망설이지 않고, 나중에 일지를 보며 어느 매매가 규칙대로였는지 가를 수 있습니다. 아래 세 세트에 나오는 숫자는 이해를 돕기 위한 예시 설정이며, 상품과 시간대에 맞게 정해 쓰는 값입니다.

  1. 추세 · 진입 · 청산에 하나씩
  2. 세트 1 · 이동평균선으로 방향, MACD로 타이밍
  3. 세트 2 · 볼린저밴드로 범위, RSI로 되돌림 확인
  4. 세트 3 · 이동평균선으로 방향, 거래량으로 돌파 확인
  5. 세 세트를 한 장에 놓고 고르기
  6. 규칙을 트레이딩뷰에 저장하고 얼러트 걸기
  7. 규칙이 있으면 자동매매로 옮길 수 있다
  8. 핵심 정리
이 책 차례 전체와 첫 장 더 읽기112쪽 · 14장

수익률을 보장하지 않습니다.

트레이딩뷰 웹훅 자동매매는 차트 조건이 맞으면 얼러트가 메시지를 HTTP POST로 보내는 구조다. 트레이딩뷰는 신호를 지정한 주소까지 전달하며, 메시지를 받아 증권사 주문으로 바꾸는 프로그램은 사용자가 준비한다.

얼러트에서 웹훅까지

먼저 지표나 파인 스크립트 전략으로 진입·청산 조건을 만든다. 트레이딩뷰에서 얼러트를 만들고 조건, 발동 시점, 메시지와 웹훅 URL을 정하면 조건이 맞는 순간 지정한 주소로 POST 요청이 전송된다.

전략 규칙이 봉 마감을 기준으로 한다면 얼러트도 봉 마감 시점에 맞춘다. 그래야 전략이 기록한 신호와 밖으로 보낸 신호가 같은 봉을 가리킨다. 메시지에는 상품, 가격, 주문 방향, 계약 수처럼 주문 프로그램이 읽을 값을 담는다.

JSON 메시지와 전송 형식

얼러트 메시지가 유효한 JSON이면 요청의 Content-Type은 application/json으로 전송된다. JSON이 아니면 text/plain으로 전송된다. 주문 프로그램에서 필드를 나누어 읽으려면 짧고 일정한 JSON 형식이 편하다.

{
  "symbol": "{{ticker}}",
  "price": "{{close}}",
  "side": "{{strategy.order.action}}",
  "quantity": "{{strategy.order.contracts}}"
}

실제 API 키, 계좌 정보, 비밀번호는 얼러트 메시지에 넣지 않는다. 메시지는 신호에 필요한 값만 담고, 주문 프로그램이 보관한 설정과 결합해 주문 요청을 만들도록 나눈다.

플레이스홀더로 값 넣기

플레이스홀더는 얼러트가 발생한 순간의 값을 메시지에 넣는 표기다. {{ticker}}는 종목, {{close}}는 종가를 넣는다. 가격 정보에는 {{open}}, {{high}}, {{low}}를 쓸 수 있고, 거래소와 차트 간격에는 {{exchange}}, {{interval}}을 쓸 수 있다.

전략 얼러트에서는 {{strategy.order.action}}으로 주문 방향, {{strategy.order.contracts}}로 계약 수, {{strategy.order.price}}로 주문 가격을 보낼 수 있다. 그 밖에 주문 식별값과 설명에는 {{strategy.order.id}}, {{strategy.order.comment}}, {{strategy.order.alert_message}}를 쓴다.

현재 포지션을 함께 전달하려면 {{strategy.position_size}}, {{strategy.market_position}}, {{strategy.market_position_size}}를 쓸 수 있다. 이전 포지션은 {{strategy.prev_market_position}}, {{strategy.prev_market_position_size}}로 넣는다. 주문 프로그램이 메시지를 중복해서 받았는지 가를 때는 주문 식별값과 종목, 방향을 함께 읽도록 구성할 수 있다.

웹훅을 쓰기 위한 조건

웹훅 알림은 Essential 이상 유료 요금제에서 제공된다(2026년 9월 확인 기준). 계정에는 2단계 인증을 켜야 웹훅 얼러트를 사용할 수 있다. 웹훅 URL은 포트 80 또는 443을 사용해야 하며 IPv6는 지원되지 않는다(2026년 9월 확인 기준).

웹훅을 받은 서버가 요청을 3초 안에 처리하지 못하면 요청이 취소된다(2026년 9월 확인 기준). 따라서 수신 부분은 메시지를 먼저 받아 기록하고 빠르게 응답한 뒤, 주문 조건 검사와 증권사 API 호출을 이어서 처리하는 구조로 만들 수 있다.

트레이딩뷰가 맡는 범위

공식 문서에서 웹훅은 얼러트가 발생했을 때 지정한 주소로 데이터를 보내는 기능으로 설명된다. 특정 증권사의 주문 API로 변환하는 중간 프로그램의 구성은 다루지 않는다. 웹훅만 설정했다고 해외선물 주문이 생성되는 것은 아니다.

주문 프로그램은 JSON을 읽고 종목 코드를 증권사 형식에 맞추며, 방향·계약 수·주문 종류를 확인한 뒤 공식 API에 요청한다. 이어서 주문 응답과 미체결 또는 미결제 상태를 확인한다. 이 역할을 트레이딩뷰와 분리해 두면 차트 규칙과 증권사 주문 부분을 각각 고칠 수 있다.

처음 한다면 이 순서로

  1. 파인 스크립트 전략에 방향·진입·청산 조건과 계약 수를 넣는다.
  2. 봉 마감 여부를 정하고 같은 기준으로 얼러트를 만든다.
  3. 플레이스홀더를 넣은 짧은 JSON 메시지를 작성한다.
  4. 2단계 인증과 포트 80 또는 443의 수신 주소를 준비한다.
  5. 수신 프로그램이 메시지를 읽고 주문 응답까지 기록하는지 시험한다.

책에서 이어지는 것

파인 스크립트로 옮길 규칙의 구성은 제11장 지표 조합 전략에서 이어진다. 계약 수와 하루 실행 횟수, 프로그램을 켜고 끄는 시간은 제14장 나만의 매매 루틴에서 정한다.

함께 보면 좋은 페이지