Files
kis_bot/remove/legacy_root/sample_python/Res/O01_1.res
Your Name 6d2a706a48 커밋 1 — 실매 가격 TTL 구멍 (본체)
왜: 체결이 없어도 마지막가는 유지인데, TTL로 None 만들고 매도/EOD를 건너뛰어 8/5 돌파·금요일 leftover가 남음. 호가필터 TTL 구멍과 같은 병.

넣을 파일

신규: kis_trader/engine/live_sell_price.py
kis_trader/strategies/base.py (_ws_last_quote, _resolve_sell_price)
전략: momentum.py scalping.py tail_catch.py breakout.py range_break.py dart_strategy.py updow_strategy.py updown_feed.py us_momentum.py
WS: ws_manager.py kis_ws.py kiwoom_ws.py ls_ws.py kis_ws_overseas.py
kis_trader/web/live_config_schema.py (WS_PRICE_MAX_AGE_SEC 기본 0)
database.py (키 주석 + legacy/ sys.path)
kis_trader/execution/order_manager.py (잔고 있는데 40240000 ghost_purge 금지 — 같은 EOD 사고)
EOD가 min_hold에 안 막히게 손본 momentum_hts_logic.py / scalping_engine.py / tail_engine.py (이 대화에서 손본 부분만 확인 후)
문서: docs/like_mcp.md/db_erd.md code_architecture.md (가격 TTL 문구)
메시지 초안

fix: 매수·매도 현재가를 TTL로 버리지 않음 (마지막 RAM)
횡보·체결 공백을 죽은 캐시로 오인해 None 처리하면 손절·EOD가 스킵된다.
호가필터와 같이 나이는 무시하고 마지막 체결가를 유지한다. EOD는 매수가 폴백.
영향: 실매 O / 백테·옵투나 봉 경로 거의 무관 (엔진 식 변경 아님)

커밋 2 — 루트 정리 (remove/ vs legacy/)
왜: 루트 단독봇·테스트는 지울 보관함으로. 웹·알람이 아직 쓰는 모듈은 remove에 두면 나중에 폴더째 삭제 때 깨짐.

넣을 파일

이동: 미사용 → remove/legacy_root/ (래퍼, ETF/키움 옛봇, 테스트, kiwoom_rest_api 등)
이동: 사용 중 → legacy/ (holding_bot kis_holding_ver1 news_analyzer kis_long_ver1/2)
신규: kis_trader/utils/legacy_root.py legacy/README.md remove/README.md
import 경로: backtest_web.py mm_butler.py mm_remote.py updow_holding_cfg.py dbband_stock_cfg.py param_search_updow*.py dbband_param_search.py param_search_apply_snapshot.py verify_three_paths.py
docs/like_mcp.md/code_architecture.md 수동 노트
메시지 초안

chore: 미사용 루트는 remove/, 웹·알람 구모듈은 legacy/
remove는 나중에 통째 삭제 예정. holding_bot·news_analyzer·kis_long은
ensure_legacy_root로 legacy/만 본다.
빼기: scratch/set_ws_price_max_age_zero.py (일회성)
2026-08-18 00:13:17 +09:00

131 lines
5.8 KiB
XML

BEGIN_FUNCTION_MAP
.Feed, 선물접수, O01, key=8, group=1;
BEGIN_DATA_MAP
InBlock,입력,input;
begin
end
OutBlock,출력,output;
begin
라인일련번호, lineseq, lineseq, long, 10;
계좌번호, accno, accno, char, 11;
조작자ID, user, user, char, 8;
헤더길이, len, len, long, 6;
헤더구분, gubun, gubun, char, 1;
압축구분, compress, compress, char, 1;
암호구분, encrypt, encrypt, char, 1;
공통시작지점, offset, offset, long, 3;
TRCODE, trcode, trcode, char, 8;
이용사번호, comid, compid, char, 3;
사용자ID, userid, userid, char, 16;
접속매체, media, media, char, 2;
I/F일련번호, ifid, ifid, char, 3;
전문일련번호, seq, seq, char, 9;
TR추적ID, trid, trid, char, 16;
공인IP, pubip, pubip, char, 12;
사설IP, prvip, prvip, char, 12;
처리지점번호, pcbpno, pcbpno, char, 3;
지점번호, bpno, bpno, char, 3;
단말번호, termno, termno, char, 8;
언어구분, lang, lang, char, 1;
AP처리시간, proctm, proctm, long, 9;
메세지코드, msgcode, msgcode, char, 4;
메세지출력구분, outgu, outgu, char, 1;
압축요청구분, compreq, compreq, char, 1;
기능키, funckey, funckey, char, 4;
요청레코드개수, reqcnt, reqcnt, long, 4;
예비영역, filler, filler, char, 6;
연속구분, cont, cont, char, 1;
연속키값, contkey, contkey, char, 18;
가변시스템길이, varlen, varlen, long, 2;
가변해더길이, varhdlen, varhdlen, long, 2;
가변메시지길이, varmsglen, varmsglen, long, 2;
조회발원지, trsrc, trsrc, char, 1;
I/F이벤트ID, eventid, eventid, char, 4;
I/F정보, ifinfo, ifinfo, char, 4;
예비영역, filler1, filler1, char, 41;
tr코드, trcode1, trcode1, char, 4;
회사번호, firmno, firmno, char, 3;
계좌번호, acntno, acntno, char, 11;
계좌번호, acntno1, acntno1, char, 9;
계좌명, acntnm, acntnm, char, 40;
지점번호, brnno, brnno, char, 3;
주문시장코드, ordmktcode, ordmktcode, char, 2;
주문번호, ordno1, ordno1, char, 3;
주문번호, ordno, ordno, long, 7;
원주문번호, orgordno1, orgordno1, char, 3;
원주문번호, orgordno, orgordno, long, 7;
모주문번호, prntordno, prntordno, char, 3;
모주문번호, prntordno1, prntordno1, long, 7;
종목번호, isuno, isuno, char, 12;
선물옵션종목번호, fnoIsuno, fnoIsuno, char, 8;
선물옵션종목명, fnoIsunm, fnoIsunm, char, 40;
상품군분류코드, pdgrpcode, pdgrpcode, char, 2;
선물옵션종목유형구분, fnoIsuptntp, fnoIsuptntp, char, 1;
매매구분, bnstp, bnstp, char, 1;
정정취소구분, mrctp, mrctp, char, 1;
주문수량, ordqty, ordqty, long, 16;
호가유형코드, hogatype, hogatype, char, 2;
거래유형코드, mmgb, mmgb, char, 2;
주문가격, ordprc, ordprc, double, 13.2;
미체결수량, unercqty, unercqty, long, 16;
통신매체, commdacode, commdacode, char, 2;
수수료합산코드, peeamtcode, peeamtcode, char, 2;
관리사원, mgempno, mgempno, char, 9;
선물옵션거래단위금액, fnotrdunitamt, fnotrdunitamt, double, 19.8;
처리시각, trxtime, trxtime, char, 9;
전략코드, strtgcode, strtgcode, char, 6;
그룹Id, grpId, grpId, char, 20;
주문회차, ordseqno, ordseqno, char, 10;
포트폴리오 번호, ptflno, ptflno, char, 10;
바스켓번호, bskno, bskno, char, 10;
트렌치번호, trchno, trchno, char, 10;
아이템번호, Itemno, Itemno, char, 10;
주문자Id, userId, userId, char, 16;
운영지시번호, opdrtnno, opdrtnno, char, 12;
부적격코드, rjtcode, rjtcode, char, 3;
정정취소확인수량, mrccnfqty, mrccnfqty, long, 16;
원주문미체결수량, orgordunercqty, orgordunercqty, long, 16;
원주문정정취소수량, orgordmrcqty, orgordmrcqty, long, 16;
약정시각(체결시각), ctrcttime, ctrcttime, char, 8;
약정번호, ctrctno, ctrctno, char, 10;
체결가격, execprc, execprc, double, 13.2;
체결수량, execqty, execqty, long, 16;
신규체결수량, newqty, newqty, long, 16;
청산체결수량, qdtqty, qdtqty, long, 16;
최종결제수량, lastqty, lastqty, long, 16;
전체체결수량, lallexecqty, lallexecqty, long, 16;
전체체결금액, allexecamt, allexecamt, long, 16;
잔고평가구분, fnobalevaltp, fnobalevaltp, char, 1;
매매손익금액, bnsplamt, bnsplamt, long, 16;
선물옵션종목번호1, fnoIsuno1, fnoIsuno1, char, 8;
매매구분1, bnstp1, bnstp1, char, 1;
체결가1, execprc1, execprc1, double, 13.2;
신규체결수량1, newqty1, newqty1, long, 16;
청산체결수량1, qdtqty1, qdtqty1, long, 16;
전체체결금액1, allexecamt1, allexecamt1, long, 16;
선물옵션종목번호2, fnoIsuno2, fnoIsuno2, char, 8;
매매구분2, bnstp2, bnstp2, char, 1;
체결가2, execprc2, execprc2, double, 13.2;
신규체결수량2, newqty2, newqty2, long, 16;
청산체결수량2, lqdtqty2, lqdtqty2, long, 16;
전체체결금액2, allexecamt2, allexecamt2, long, 16;
예수금, dps, dps, long, 16;
선물대용지정금액, ftsubtdsgnamt, ftsubtdsgnamt, long, 16;
증거금, mgn, mgn, long, 16;
증거금현금, mnymgn, mnymgn, long, 16;
주문가능금액, ordableamt, ordableamt, long, 16;
주문가능현금액, mnyordableamt, mnyordableamt, long, 16;
잔고 종목번호1, fnoIsuno_1, fnoIsuno_1, char, 8;
잔고 매매구분1, bnstp_1, bnstp_1, char, 1;
미결제수량1, unsttqty_1, unsttqty_1, long, 16;
주문가능수량1, lqdtableqty_1, lqdtableqty_1, long, 16;
평균가1, avrprc_1, avrprc_1, double, 13.2;
잔고 종목번호2, fnoIsuno_2, fnoIsuno_2, char, 8;
잔고 매매구분2, bnstp_2, bnstp_2, char, 1;
미결제수량2, unsttqty_2, unsttqty_2, long, 16;
주문가능수량2, lqdtableqty_2, lqdtableqty_2, long, 16;
평균가2, avrprc_2, avrprc_2, double, 13.2;
end
END_DATA_MAP
END_FUNCTION_MAP