콘텐츠로 이동

그리드 트레이딩

그리드 트레이딩(grid_trading)은 가격이 하락하면 매수, 상승하면 매도하는 분할 매매 전략입니다. 연속 실행 모드(CONTINUOUS)로 동작하며, 설정된 시간 동안 주기적으로 시장 상태를 확인하고 주문을 실행합니다.

가격을 구간별로 나누어 각 구간을 “티어”로 관리합니다.

가격 ↑ T0 ──── $69.66 (1티어 기준가) - 보유 없음
T1 ──── 21주 보유
T2 ──── 42주 보유
...
T70 ──── 2075주 보유 (최대)
가격 ↓
  • 가격이 하락하여 매수 조건 충족 → 다음 티어로 이동 (매수)
  • 가격이 상승하여 매도 조건 충족 → 이전 티어로 이동 (매도)
규칙설명
3A 로직현재가 < (매수가+매도가)/2 → 매수만, 현재가 ≥ → 매도만
미체결 1개항상 미체결 주문은 1개만 유지
티어 = 상태티어 번호가 곧 보유 상태를 의미

그리드 전략 워크시트는 3개 영역으로 구성됩니다.

내용설명
E8종목코드티커 심볼 (예: SOXL)
E10투자금총 투자 금액
E12분할수티어 개수
E141티어 가격기준 가격
E161티어 갱신자동 갱신 플래그
E18매수 제한순매수 제한 횟수
E20매도 제한매도 제한 티어
E24Telegram Chat ID알림용
E26Bot Token / Webhook알림용
내용읽기/쓰기
K6현재 티어읽기/쓰기
K8현재가쓰기
K10잔고쓰기
K12수량차 (qty_diff)쓰기
K14매수 횟수읽기/쓰기
K16매도 횟수읽기/쓰기
내용
V티어 번호
W잔고량 (목표)
Y티어 평단
Z매수가
AA매수량
AB매도가
AC매도량

매 사이클마다 현재가를 기준으로 매수/매도 방향을 결정합니다.

mid_price = (매수가 + 매도가) / 2
현재가 < mid_price → 매수 방향
현재가 ≥ mid_price → 매도 방향
조건동작
티어 0 (보유 없음)매수만 가능
최대 티어매도만 가능
매수 제한 초과매수 보류 (hold)
매도 제한 도달매도 보류 (hold)

프로그램 시작 시 첫 사이클에서는 HTS의 실제 잔고를 기준으로 티어를 동기화합니다.

  1. 미체결 주문 일괄 취소
  2. HTS 보유종목 조회 → 실제 잔고 확인
  3. 잔고 기준 티어 계산 (W열 비교)
  4. 현재가 기준 티어 계산 (Y열 비교)
  5. 범위 확인:
    • 범위 내: 바로 3A 로직으로 진행
    • 범위 외: catch-up 주문 생성 (잔고 티어 → 가격 티어로 이동)
  1. 체결 상태 확인 (이전 주문의 체결 여부)
  2. 체결됐으면 티어 업데이트
  3. 현재가 조회
  4. 3A 로직으로 방향 결정
  5. 필요시 기존 미체결 취소 + 새 주문 생성
  6. 주문 실행

잔고 티어와 가격 티어가 다를 때 발생합니다. 예를 들어 잔고가 5티어인데 가격이 10티어 수준이면, 5→10티어로 순차 매수합니다.

1티어 기준가가 변경되면 전체 그리드가 재계산됩니다.

방법설명
조건식 자동 갱신E30, E32조건 충족 시 자동 계산
갱신 플래그E16TRUE이고 0티어이면 현재가로 갱신
직접 변경E14사용자가 수동으로 값 변경
역할기본값
E30적용 조건=K6<0 (항상 FALSE)
E32만족시 적용가=E34
E34조건식 수식자동 계산 수식

사용자가 E30에 조건을 설정하면 (예: =K6<2), 조건 충족 시 E34의 수식으로 새 1티어 가격을 자동 계산합니다.

순매수 횟수(매수횟수 - 매도횟수)가 설정값 이상이면 매수를 중단합니다.

현재 티어가 설정값과 같으면 매도를 중단합니다. 특정 티어 이하로 매도하지 않도록 제어합니다.

전략 중지 시 정산 기능을 사용하여 매매 내역을 정리할 수 있습니다. 정산 완료 시 매수/매도 횟수가 초기화되고 알림이 발송됩니다.