opt10081 일봉 (조회만)
자동매매가 아닙니다. 엑셀에 적어 둔 수백 개 종목·날짜를 붙여 넣으면 키움 일봉을 받아 계산해서 다시 엑셀로 가져갈 수 있게 해 주는 도구입니다. 의뢰인은 이미 탭 여섯 개짜리 계산기를 쓰고 있었고, 거기에 "전종시"와 "고가대금" 탭 두 개를 얹어 달라고 했습니다. 2026년 5월 납품. 작은 건인데 첫 버전은 열여덟 줄 입력이 전부 "형식 오류"였습니다.
| 탭 | 입력 | 출력 | 계산 |
|---|---|---|---|
| 전종시 | 날짜 · 시간 · 종목명 | 전일종가 · 당일시가 · 변동률% | 기준일 이하 일봉에서 마지막 봉의 시가와 그 전 봉의 종가. (시가 − 전일종가) / 전일종가 |
| 고가대금 | 날짜 · 시간 · 종목명 + 상단 N·M·R·A | O / X | 기준일에서 N봉 전부터 M봉 구간 안에, 같은 봉에서 고가등락률 ≥ R% 그리고 거래대금 ≥ A억이면 O |
TR 제한은 기존 코드의 큐(초당 4회, 시간당 1,000회)를 그대로 씁니다. 기존 탭 코드는 건드리지 않고 초기화·화면 구성·응답 처리에 7번·8번 분기만 나란히 추가했습니다.
첫 버전은 왼쪽에 텍스트 입력창을 두고 한 줄에 "04월 17일 09:00:15 쏠리드"처럼 붙여 넣는 형태였습니다. 명세서의 입력 예시가 그렇게 적혀 있었으니까요. 그런데 의뢰인의 실제 엑셀은 날짜·시간·종목명이 세 칸으로 나뉘어 있고, 셀 여러 개를 복사하면 클립보드에는 탭 구분이나 셀별 줄바꿈으로 들어옵니다. 파서가 첫 줄 "01월 07일"만 보고 종목명이 없다며 전부 실패했습니다.
파서를 고쳐 어떤 형태든 읽게 했는데도 의뢰인은 만족하지 않았습니다. 두 번째 피드백이 핵심이었습니다. "신고 탭이랑 양식을 동일하게 부탁드려요. 엑셀에서 드래그해서 복붙해서 계산하고 다시 프로그램에서 드래그해서 엑셀에 복붙 가능하게요."
텍스트창을 없애고 기존 신고 탭과 같은 붙여넣기 가능한 표로 바꿨습니다. 앞 세 칸에 엑셀 셀을 그대로 붙이고, 뒤 세 칸이 자동으로 채워지고, 결과를 드래그해 엑셀에 다시 붙입니다. 한국 사용자가 엑셀과 데스크톱 프로그램을 오가는 방식은 거의 전부 셀 ↔ 셀이지 텍스트 영역이 아닙니다. 기존 프로그램에 탭을 더할 땐 기존 탭의 양식을 그대로 따르는 게 기본이라는 걸 배웠습니다.
느슨한 조건(고가등락률 1%, 거래대금 1억)으로 돌렸는데 15종목 전부 X. 의뢰인이 "그 조건이면 거의 다 O여야 하는 거 아니냐"고 정확히 지적했습니다. 일봉 TR의 거래대금 필드가 환경에 따라 비어 오거나 단위가 원이 아니라서, 억 단위로 나눈 값이 항상 0에 가까웠고 AND 조건이라 다른 축과 무관하게 전부 X였던 겁니다. 기존 거래대금 탭이 이 필드를 안 쓰고 평균가 × 거래량으로 계산하고 있었던 게 강한 힌트였는데 놓쳤습니다.