무한매수법 V3.0
무한매수법 V3.0(infinite_buy)은 Google Sheets 수식이 주문을 자동 계산하고, 프로그램은 HTS 데이터 수집과 주문 실행만 담당하는 전략입니다.
- 시트 수식 기반: 주문 가격과 수량을 시트 수식이 자동 계산
- LOC/MOC 주문: 장마감지정가(LOC), 장마감시장가(MOC) 주문 사용
- 일회성 실행: 하루 1회 장 마감 전에 실행
- 워크시트 자동 생성: 전략 추가 시 템플릿에서 자동 복사
실행 모드
섹션 제목: “실행 모드”ONE_TIME — 하루 1회 실행 (LOC/MOC 주문이므로 장 마감 전 1회 실행)
워크시트 구조
섹션 제목: “워크시트 구조”기본 설정 영역 (E열)
섹션 제목: “기본 설정 영역 (E열)”| 셀 | 내용 | 설명 |
|---|---|---|
| E4 | HTS 제목 | HTS 창 식별용 |
| E6 | 계좌순서 | 계좌 선택 인덱스 |
| E11 | 종목 티커 | 매매 대상 종목 |
| E13 | 원금(USD) | 투자 원금 |
| E15 | 분할 횟수 | 분할 매수 횟수 |
| E17 | 목표수익율 | 목표 수익율 (예: 0.15 = 15%) |
| E19 | 재투자원금 | 수식 계산값 |
| E21 | 투자시작일 | 기간별 손익 조회 기준일 |
| E23 | 재투자비율 | 실현이익 재투자 비율 |
알림 설정
섹션 제목: “알림 설정”| 셀 | 내용 |
|---|---|
| E29 | Telegram Chat ID |
| E31 | Telegram Bot Token |
| F31 | ”X”이면 Telegram 비활성 |
| E33 | Discord Webhook URL |
매매 정보 영역 (K열)
섹션 제목: “매매 정보 영역 (K열)”프로그램이 HTS에서 수집한 데이터를 기록하는 영역입니다.
| 셀 | 내용 | 설명 |
|---|---|---|
| K4 | 1회매수시도액 | 수식 계산값 |
| K6 | 매입금액 | 프로그램 기록 |
| K8 | T 진행 회차 | 수식 계산값 |
| K10 | 현재가 | 프로그램 기록 |
| K12 | 평균단가 | 프로그램 기록 |
| K14 | 잔고량 | 프로그램 기록 |
| K16 | 실현손익 | 프로그램 기록 |
주문 영역 (O~U열)
섹션 제목: “주문 영역 (O~U열)”시트 수식이 자동으로 계산하는 주문 블록입니다.
| 영역 | 행 범위 | 설명 |
|---|---|---|
| 기본 주문 | O5:U9 | 일반 매수/매도 주문 |
| 급락 주문 | O12:U20 | 급락 시 추가 매수 주문 |
| 1회 시작 | O24:U24 | 최초 매수 (보유 없을 때) |
각 주문 행의 구조:
| 열 | 내용 | 설명 |
|---|---|---|
| O | 자동주문 | TRUE/FALSE |
| P | 매수/매도 | 주문 방향 |
| Q | 주문유형 | LOC, MOC, 지정가 |
| R | 기준 | 기준 가격 |
| S | 주문가 | 실제 주문 가격 |
| T | 매수액 | 매수 금액 (매수만) |
| U | 주문량 | 주문 수량 |
실행 흐름
섹션 제목: “실행 흐름”데이터 수집 (HTS → 시트)
섹션 제목: “데이터 수집 (HTS → 시트)”1. 시트 설정 읽기 (E열, K열)2. 미체결 주문 전량 취소3. HTS 보유종목 조회 → 잔고, 평균단가, 매입금액, 현재가4. HTS 주문가능 조회 → 외화추정예수금5. (선택) 매매손익 조회 → 실현손익6. 수집 데이터를 시트 K열에 기록7. 시트 수식 재계산 대기 (2~3초)주문 실행
섹션 제목: “주문 실행”8. 주문 영역 읽기 (O5:U9, O12:U20, O24:U24)9. 주문 전 검증 (T≥분할 상태, 예수금 확인)10. 활성 주문 필터링 (O열=TRUE, U열>0)11. 순서대로 HTS에서 주문 실행12. 체결내역으로 주문 건수 검증13. 결과 알림 발송주문 전 검증
섹션 제목: “주문 전 검증”T≥분할 검증
섹션 제목: “T≥분할 검증”행 5의 주문유형(Q열)이 빈칸이면 분할 횟수를 초과한 이상 상태로 판단하여 전략을 중지합니다.
예수금 검증
섹션 제목: “예수금 검증”매수 주문 총액이 외화추정예수금을 초과하면 전략을 중지하고 알림을 발송합니다.
알림 메시지
섹션 제목: “알림 메시지”성공 알림
섹션 제목: “성공 알림”[무한매수V3] 주문 완료종목: SOXL | T: 4.0 | 잔고: 20주---매도 LOC: $67.21 x 5주매수 LOC: $60.00 x 4주급락 LOC: $63.13 x 1주 (-9.1%)---총 주문: 6건 (매도 2 / 매수 4)에러 알림
섹션 제목: “에러 알림”[무한매수V3] ⚠ 주문 오류종목: SOXL---정상 주문: 4건기대 주문: 6건---확인 후 수동 처리 필요워크시트 자동 생성
섹션 제목: “워크시트 자동 생성”전략 추가 시 워크시트가 없으면 템플릿에서 자동 복사합니다.
settings.json 설정:
{ "google_sheets": { "template_sheet_id": "템플릿_스프레드시트_ID", "ib_template_worksheet_name": "IBSheetV3" }}종목 미보유 시 (1회 시작)
섹션 제목: “종목 미보유 시 (1회 시작)”종목을 보유하고 있지 않은 경우:
- 잔고량, 매입금액, 평균단가, 현재가가 모두 0으로 기록됩니다
- 시트의 1회 시작 블록(행 24)만
TRUE가 됩니다 - 현재가는 시트의 GOOGLEFINANCE 수식이 주문가를 계산합니다