상세 컨텐츠

본문 제목

키움 OpenAPI로 종목 스캐너 만들기 5 — 선정 종목 그리드

주식 자동매매 시스템/Kiwoom OpenAPI

by 별을 보는 사람 2026. 6. 14. 07:00

본문

반응형

안녕하세요! 드디어 이 프로그램의 주인공을 만들 차례입니다. 화면 한가운데, 오늘 선정된 종목들이 주르륵 뜨는 표 — 선정 종목 그리드예요. 갭상승은 빨강, 양봉은 초록, 진입완료는 초록 배경… 색만 잘 입혀도 한눈에 읽히는 표가 됩니다!

DataGridView 기본기 다듬기

표는 DataGridView로 만듭니다. 그런데 기본 상태 그대로 두면 행 머리글, 수정 가능 셀, 촌스러운 테두리 때문에 영 별로예요. 그래서 MakeGrid() 헬퍼에서 읽기 전용·행머리글 숨김·머리글 스타일 같은 걸 한 번에 정리해 깔끔한 표로 만듭니다.

var dgv = new DataGridView
{
    Dock = DockStyle.Fill,
    ReadOnly = true,                 // 수정 불가
    RowHeadersVisible = false,       // 왼쪽 행머리글 제거
    AllowUserToAddRows = false,
    AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill,  // 너비 자동 분배
    EnableHeadersVisualStyles = false
};

 

컬럼은 MakeCol(이름, 헤더, 너비비율)로 추가합니다. 너비비율(FillWeight)을 주면 창이 커져도 컬럼들이 비율대로 늘어나요.

dgv.Columns.Add(MakeCol("Name",  "종목명", 28));
dgv.Columns.Add(MakeCol("Gap",   "갭상승", 11, true));   // 가운데 정렬
dgv.Columns.Add(MakeCol("State", "상태",   14, true));
// ... 섹터 · 전일봉 · 마감강도 · 거래량 · 현재가

핵심 — 셀마다 색을 입히기

행을 추가한 뒤, 그 행의 특정 셀 스타일만 바꿔주는 게 포인트입니다. 한국 주식 관습대로 상승은 빨강이라, 갭상승은 빨강으로. 전일봉은 양봉이면 초록, 음봉이면 빨강. 상태(진입완료)는 초록 배경까지 깔아줍니다.

int i = dgv.Rows.Add(st.Name, st.Sector, $"+{st.GapPercent:0.0}%",
        st.PrevCandle == CandleType.Yang ? "양봉" : "음봉", /* ... */);

var row = dgv.Rows[i];
row.Cells["Gap"].Style.ForeColor = ScannerTheme.Gain;     // 갭상승 → 빨강
row.Cells["Candle"].Style.ForeColor =
    st.PrevCandle == CandleType.Yang ? ScannerTheme.YangGreen : ScannerTheme.EumRed;
ApplyEntryStatusStyle(row.Cells["State"], st.Status);     // 상태별 배경색

 

조건에 못 미친 종목(예: 음봉 + 거래량 부족)은 조건미달로 처리하고, 글자를 회색으로 흐리게 해서 시선에서 자연스럽게 빠지게 했어요. 진짜 후보만 도드라져 보이도록요.

 

마무리하며
이제 실행하면 가운데에 종목 7개가 색색깔로 뜹니다. 진입완료는 초록, 대기는 무채색, 조건미달은 흐리게 — 한눈에 상태가 읽히죠. 다음 편에서는 바로 아래 시뮬레이션 결과 그리드를 만들어, 가상매수한 종목의 수익률과 예상손익을 빨강·파랑으로 보여주겠습니다. 프로젝트는 아래에서 받으세요.

 

StockRader_05.zip
0.01MB

반응형

관련글 더보기

댓글 영역