안녕하세요! 혹시 장 시작하자마자 갭 띄운 종목들이 우르르 쏟아질 때, "이걸 사람 눈으로 다 어떻게 보지?" 하고 답답했던 적 있으신가요? 오늘부터 그 답답함을 코드로 풀어보려 합니다. 키움 OpenAPI로 장전 종목 스캐너를 직접 만드는 새 연재를 시작합니다!

이름은 StockRadar — 장전 종목 스캐너입니다. 장 시작 전 조건검색으로 후보를 추리고, 09:00~09:10 사이 시초가 흐름을 실시간으로 보면서 갭상승률·거래량·마감강도 같은 조건을 통과한 종목만 골라내는 프로그램이에요. 실제 주문은 넣지 않고 가상매수로 시뮬레이션해서, 내 조건이 진짜 돈이 되는지 화면에서 바로 확인하는 게 목표입니다.
이유는 단순합니다. 사람이 못 하니까요. 09:00부터 단 몇 분 사이에 수십 종목의 갭·거래량·전일봉을 동시에 비교하는 건 불가능에 가깝습니다. 게다가 사람은 감정과 반응 속도의 한계가 있죠. 통계적으로 검증된 매매 규칙이 있다면, 그걸 기계의 속도와 규율로 대신 실행시키자는 겁니다.
Visual Studio에서 WinForms(.NET Framework 4.7.2) 프로젝트를 하나 만들고, 이름을 StockRader로 했습니다. 그리고 두 가지만 기억하세요!
UI가 꽤 복잡해서 디자이너로 배치하면 관리가 어렵기 때문이에요. 코드로 두면 색·간격을 한곳에서 일관되게 다룰 수 있습니다. 참고로 키움 OCX(axKHOpenAPI1)는 아직 올리지 않습니다. 실데이터를 붙이는 2부에서 추가할 거예요. 덕분에 1부 동안은 키움 설치 없이도 프로젝트가 그대로 실행됩니다.
최종 화면은 크게 3열로 나뉩니다. 왼쪽은 매매 조건과 강세 섹터, 가운데는 선정 종목과 시뮬레이션 결과 표, 오른쪽은 시황 요약·섹터 현황·실시간 로그. 위쪽엔 시작/중지 버튼과 지수가 들어가는 상태바가 있고요. 이번 편에선 이 큰 그림만 머릿속에 넣어두면 됩니다.
먼저 진입점 Program.cs입니다.
using System;
using System.Windows.Forms;
namespace StockRader
{
internal static class Program
{
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Mainform());
}
}
}
다음은 폼 본체 Mainform.cs. 생성자에서 디자이너 초기화를 부른 뒤, UI는 우리가 만든 BuildUi()에서 채워갑니다. 이번 편에선 아직 비어 있어요.
using System.Windows.Forms;
namespace StockRader
{
public partial class Mainform : Form
{
public Mainform()
{
InitializeComponent(); // 디자이너: 폼 기본 속성
BuildUi(); // 대시보드 UI (다음 편부터 채움)
}
private void BuildUi()
{
// 2편에서 이 자리에 3열 레이아웃을 세웁니다.
}
}
}
폼 제목·크기·배경색 같은 기본 속성은 디자이너가 만든 Mainform.Designer.cs의 InitializeComponent()에 들어 있습니다.
가장 중요한 설계 포인트는 디자이너 영역과 코드 영역을 분리한 겁니다. 폼의 기본 틀은 디자이너에 맡기고, 우리가 직접 다룰 대시보드는 전부 BuildUi() 한곳에 모읍니다. 이렇게 해두면 디자이너 파일을 건드릴 일이 거의 없어서, 깃 관리도 협업도 훨씬 깔끔해집니다.
마무리하며
오늘은 큰 그림과 빈 프로젝트만 띄웠습니다. 별것 아닌 것 같지만, x86 설정과 "UI는 코드로" 원칙은 앞으로 연재 내내 깔리는 토대예요. 아래 첨부한 프로젝트를 받아 Visual Studio에서 열고 F5를 눌러보세요 — 빈 창이 뜨면 성공입니다! 다음 편에서는 이 빈 화면에 TableLayoutPanel로 3열 뼈대를 세워 진짜 대시보드처럼 만들어 보겠습니다.
| 키움 OpenAPI로 종목 스캐너 만들기 3 — 상단 상태 바 (0) | 2026.06.12 |
|---|---|
| 키움 OpenAPI로 종목 스캐너 만들기 2 — 3 열 레이아웃 (0) | 2026.06.11 |
| 제목: 키움 OpenAPI 실시간 데이터 처리 — OnReceiveRealData, FID, DisconnectRealData C# 예제 (0) | 2026.06.09 |
| 키움 OpenAPI 조회 데이터 수신 — GetCommData, GetRepeatCnt, 연속조회까지 C# 예제 (0) | 2026.06.08 |
| 키움 OpenAPI 조회 요청 함수 총정리 — SetInputValue, CommRqData, CommKwRqData C# 예제 (0) | 2026.06.05 |
댓글 영역