글

검색어 파이썬에 일치하는 게시물 표시

주봉 MACD 골든크로스란? 6·13·5 설정으로 ETF 추세 읽는 법

이미지
 ETF를 살 때 가장 고민되는 건 “언제 사야 하나” 입니다. 좋은 ETF를 골랐어도 하락이 이어지는 중간에 사면 한참을 버텨야 합니다. 그래서 저는 매수 후보를 고를 때 주봉 MACD 골든크로스 를 확인합니다. 이 글에서는 MACD가 무엇인지, 왜 일봉이 아니라 주봉을 보는지, 그리고 왜 기본값(12·26·9) 대신 6·13·5를 쓰는지 정리해 보겠습니다. 1. MACD는 “두 평균선의 거리”입니다 MACD는 이름이 어렵지만 원리는 간단합니다. 짧은 평균선에서 긴 평균선을 빼서 , 두 선이 얼마나 벌어져 있는지 보는 지표입니다. MACD선 = 짧은 지수이동평균(EMA) − 긴 지수이동평균 시그널선 = MACD선을 다시 평균 낸 선 히스토그램 = MACD선 − 시그널선 (막대로 표시) 최근 가격이 오르면 짧은 평균선이 긴 평균선보다 먼저 올라가서 MACD가 커집니다. 반대로 내리면 MACD가 작아집니다. 즉 MACD는 추세의 힘이 세지는지, 약해지는지 를 보여주는 지표입니다. 2. 골든크로스는 “힘이 다시 붙기 시작했다”는 신호 MACD선이 시그널선을 아래에서 위로 뚫고 올라가는 순간 을 골든크로스라고 합니다. 히스토그램으로 보면 막대가 0 아래(음수)에서 0 위(양수)로 바뀌는 지점입니다. 쉬운 비유를 들면 이렇습니다. 자동차가 느려지다가 다시 가속 페달을 밟기 시작한 순간입니다. 아직 속도가 빠르지는 않지만, 방향이 바뀌었다는 뜻이죠. 반대로 위에서 아래로 뚫고 내려가면 데드크로스 라고 하고, 힘이 빠지기 시작했다는 신호로 봅니다. 3. 왜 일봉이 아니라 주봉인가 일봉(하루 단위) MACD는 신호가 자주 나옵니다. 하루 이틀 오르면 골든크로스, 다시 이틀 내리면 데드크로스가 나오는 식이라, 신호를 따라가다 보면 사고팔기만 반복하기 쉽습니다. 주봉(일주일 단위)은 일주일치 움직임을 한 막대로 묶기 때문에 자잘한 흔들림이 걸러집니다 . 신호는 드물지만, 한 번 나오면 방향이 비교적 오래 이어지는 편입니다. ETF처럼 여러...

[파이썬 주식 자동매매 1편]

이미지
 키움증권 OpenAPI+ 신청 및 KOA Studio 완벽 세팅 가이드 주식 투자에서 감정을 배제하고 철저한 원칙 매매를 지키기 위해 '자동매매 시스템(Algorithmic Trading)'을 구축하려는 개인 투자자들이 급증하고 있습니다.  특히 직관적인 문법을 자랑하는 파이썬(Python)은 프로그래밍 초보자도 쉽게 접근할 수 있어 자동매매 구축에 가장 최적화된 언어로 평가받고 있습니다. 이번 연재에서는 국내 주식 자동매매의 표준이자 가장 방대한 레퍼런스를 자랑하는 키움증권 OpenAPI+를 활용하여, 나만의 파이썬 자동매매 프로그램을 바닥부터 구축하는 과정을 단계별로 상세히 알아보겠습니다. 그 첫걸음으로 필수 개발 환경 세팅 방법에 대해 정리해 드립니다. 1. 왜 자동매매 첫걸음으로 '키움증권'을 선택해야 할까? 국내 여러 증권사에서 API 서비스를 제공하지만, 입문자부터 중급자까지 키움증권의 OpenAPI+를 가장 먼저 추천하는 이유는 명확합니다. 압도적인 개발 생태계: 개인 투자자 점유율 1위인 만큼, 구글이나 깃허브(GitHub)에 참고할 수 있는 파이썬 예제 코드와 오류 해결법이 산더미처럼 쌓여 있습니다. 편리한 라이브러리: pykiwoom 과 같이 누군가 이미 복잡한 API 통신 과정을 쉽게 포장해 둔 파이썬 전용 라이브러리가 존재하여 개발 진입 장벽이 매우 낮습니다. 2. 키움증권 OpenAPI+ 이용 신청 및 모의투자 가입 가장 먼저 파이썬 코드가 증권사 서버에 접속할 수 있도록 허가를 받아야 합니다. OpenAPI+ 신청: 키움증권 홈페이지 하단의 [OpenAPI] 메뉴로 이동하여 서비스 이용을 신청합니다. 모의투자 가입 (필수): 개발 중인 코드가 오작동하여 실제 자산에 손실을 입히는 것을 막기 위해, 반드시 '상시 모의투자' 서비스에 가입해야 합니다. 개발 초기 단계의 모든 테스트는 이 모의투자 환경에서 이루어져야 합니다. OpenAPI+ 모듈 설치: 홈페이지 안내에 따라 통신을 담당하...

파이썬(Python)을 활용한 주식 자동매매 시스템 구축

이미지
유안타증권 Open API 기초 세팅 가이드 주식 시장에서 감정을 배제하고 원칙에 따른 매매를 진행하기 위해 파이썬(Python)을 활용한 자동매매 시스템을 구축하는 투자자가 늘고 있습니다.  파이썬은 직관적인 문법을 가지고 있어 프로그래밍 초보자도 비교적 쉽게 접근할 수 있는 언어입니다.  성공적인 자동매매 시스템을 구축하기 위해서는 가장 먼저 증권사의 실시간 시세 데이터를 수신하고 매수 및 매도 주문을 전송할 수 있는 API(Application Programming Interface) 연동이 필수적입니다.  본 글에서는 개인화된 조건검색식 연동이 편리한 유안타증권의 Open API 서비스 신청 방법과 개발자 지원 도구인 Deview의 기초 활용법에 대해 상세히 알아보겠습니다. 1. 유안타증권 Open API 서비스 신청 절차 자동매매 프로그램을 개발하기 위한 첫걸음은 증권사의 Open API 서비스를 신청하는 것입니다.  유안타증권 HTS(티레이더)를 실행한 후, 상단 메뉴를 통해 Open API 이용 신청 화면으로 이동합니다. 약관에 동의하고 서비스 가입을 완료하면, 파이썬 코드 내에서 유안타증권 서버와 통신할 수 있는 권한을 얻게 됩니다. 특히, 본인만의 맞춤형 조건검색식을 HTS에서 미리 작성해 두면, 향후 API를 통해 해당 조건에 부합하는 종목을 실시간으로 포착하여 자동 매매를 수행할 수 있으므로 매우 유용합니다.  API 서비스 신청이 완료되면, 모의투자 환경과 실전투자 환경을 선택하여 접속할 수 있는 모듈이 제공되며, 개발 초기 단계에서는 반드시 모의투자 환경을 통해 시스템의 안정성을 검증해야 합니다. 2. 개발자 지원 도구 'Deview'의 설치 및 생명주기(Lifecycle) 이해 API 신청을 마쳤다면, 개발 과정을 돕는 전용 도구인 'Deview'를 설치해야 합니다.  Deview는 유안타증권에서 제공하는 개발자 지원 프로그램으로, API 모듈이 정상적으로 동작하는지 테스트하고 각종 ...

파이썬 시작하기: 비전공자도 당장 파이썬 업무 자동화를 배워야 하는 이유

이미지
매일 아침 출근하거나 개인 비즈니스를 운영하면서 반복하는 데이터 수집 작업, 혹시 아직도 수작업으로 하고 계시나요?  주간 시황 동향을 정리하거나 특정 종목의 데이터를 모아 블로그 포스팅 초안을 작성하는 일은 생각보다 많은 시간을 잡아먹습니다.  저 역시 과거에는 매번 뉴스 기사를 검색하고, 주식 시장 요약 데이터를 복사해서 엑셀이나 워드에 붙여넣는 지루한 과정을 매일같이 반복했습니다. "이걸 누가 대신 깔끔하게 정리해서 넘겨주면 얼마나 좋을까?"라는 답답함이 파이썬(Python)을 처음 접하게 된 결정적인 계기였습니다.  전공자가 아니더라도, 전문 개발자가 될 목적이 아니더라도 파이썬은 우리의 단순 반복 업무를 획기적으로 줄여주는 가장 강력하고 훌륭한 도구입니다.  복잡한 시스템을 당장 만들지 않더라도, 일상의 소소한 시간을 아껴주는 것만으로도 배울 가치가 충분합니다. 이번 글에서는 왕초보도 차근차근 따라 할 수 있는 파이썬 업무 자동화의 세계와 그 필요성에 대해 핵심부터 명확하게 설명해 드리겠습니다. 파이썬, 왜 다른 언어보다 직관적이고 쉬울까? 세상에는 수백 가지가 넘는 프로그래밍 언어가 존재합니다. 그중에서도 유독 파이썬이 비전공자와 입문자에게 압도적인 지지를 받는 이유는 '사람의 언어'와 가장 닮아있기 때문입니다. 처음 코딩을 시작할 때 가장 막막한 부분은 알 수 없는 기호와 복잡한 문법 구조입니다. 하지만 파이썬은 영어 문장을 읽듯 자연스럽게 코드를 이해할 수 있습니다. 압도적인 가독성: 복잡한 중괄호나 세미콜론 대신 '들여쓰기(Space)'를 사용하여 문서의 구조를 잡습니다. 덕분에 코드가 아주 깔끔하게 읽히며, 타인이 작성한 코드나 온라인 강의에서 배운 스크립트를 내 목적에 맞게 수정하기가 훨씬 수월합니다. 넘쳐나는 라이브러리: 누군가 이미 만들어둔 '기능 도구 상자'가 무궁무진합니다. 엑셀 제어, 웹 크롤링, 주가 데이터 수집, 자동 매매 조건 검색 등 필요한 기능이 있다면 마치 레고...

복잡한 설치 없이 브라우저(Replit)로 코딩 시작하는 법

이미지
파이썬 독학을 결심하고 가장 먼저 마주하는 난관은 바로 '프로그램 설치'입니다.  저 역시 처음 코딩을 시작할 때, 의욕적으로 파이썬 공식 홈페이지에서 설치 파일을 다운로드했지만, 알 수 없는 오류와 환경 변수 설정 문제로 몇 시간 동안 헤매다 포기할 뻔한 경험이 있습니다.  오류 메시지를 검색해도 비전공자인 저에게는 무슨 말인지 이해하기 어려웠죠. 하지만 지금은 내 컴퓨터에 무거운 프로그램을 설치하지 않고도, 인터넷 브라우저 하나만 있으면 언제 어디서든 코딩을 시작할 수 있는 시대입니다.  이번 글에서는 왕초보도 단 3분 만에 파이썬 코딩을 시작할 수 있는 클라우드 기반 개발 환경, 리플릿(Replit) 활용법을 핵심부터 단계별(Step-by-Step)로 안내해 드리겠습니다. 왜 내 컴퓨터에 파이썬을 직접 설치하는 것을 추천하지 않을까? 시중의 많은 기본 교재나 영상 강의에서는 파이썬과 코드 편집기(VS Code 등)를 PC에 직접 설치하라고 안내합니다.  물론 장기적으로 전문 개발자가 되려면 거쳐야 할 과정입니다. 하지만 이제 막 업무 자동화를 목표로 시작하는 입문자에게는 다음과 같은 이유로 클라우드 환경이 훨씬 유리합니다. 버전 충돌 및 시스템 오류 스트레스: 파이썬은 버전에 따라 작동하는 코드가 다를 때가 많습니다. 초보자는 내 PC에 설치된 버전이 맞는지, 라이브러리가 제대로 세팅되었는지 확인하는 과정 자체가 큰 장벽입니다. 물리적 공간의 제약: 회사 PC, 집 노트북, 카페 등 자리를 이동할 때마다 매번 똑같은 설정과 설치 과정을 반복해야 합니다. 코드 공유의 어려움: 내가 짠 코드를 남에게 보여주거나, 에러 해결을 위해 커뮤니티에 질문할 때 코드를 파일로 주고받는 것은 매우 번거롭습니다. 구글 문서처럼 코딩하는 클라우드 플랫폼, 리플릿(Replit) 리플릿(Replit)은 웹 브라우저에서 코드를 작성하고 즉시 실행할 수 있는 클라우드 통합 개발 환경(IDE)입니다.  쉽게 말해 '코딩계의 구글 문서'라고 ...

[파이썬 주식 자동매매 2편]

이미지
 단 10줄 코드로 키움증권 API 자동 로그인 및 계좌 조회하기 💡 이전 글 먼저 보기: 아직 키움증권 OpenAPI 가입과 32비트 파이썬 환경 세팅을 마치지 않으셨다면 👉 **[ 여기에 1편 자동매매 ]**를 먼저 확인해 주시기 바랍니다. 필수 세팅이 되어 있지 않으면 코드가 실행되지 않습니다! 지난 1편에서 개발을 위한 모든 밑작업을 완벽하게 마쳤습니다. 이제 드디어 파이썬 코드를 작성하여 키움증권 서버와 통신을 시작할 차례입니다. 원래 증권사 API를 파이썬과 연동하려면 PyQt5 의 복잡한 이벤트 루프(Event Loop)와 COM 객체를 직접 제어해야 하지만, 우리는 수많은 선배 개발자들이 미리 만들어둔 pykiwoom 이라는 마법 같은 라이브러리를 사용할 것입니다.  이 라이브러리 덕분에 초보자도 단 10줄 내외의 코드로 로그인과 계좌 조회를 끝낼 수 있습니다. 1. 코딩 전 필수 작업: '자동 로그인' 설정하기 코드를 실행하기 전에 반드시 거쳐야 하는 매우 중요한 관문이 있습니다. 기본 상태에서는 파이썬 코드를 실행할 때마다 아이디와 비밀번호를 직접 쳐야 하는 번거로움이 발생합니다. 완전한 '자동매매'를 위해 이를 자동 로그인으로 바꿔주어야 합니다. PC 바탕화면 우측 하단(시계 옆)의 시스템 트레이에서 키움증권 OpenAPI 아이콘(W 모양)을 우클릭합니다. '계좌비밀번호 저장' 메뉴를 클릭합니다. 본인의 아이디가 나타나면 비밀번호와 모의투자용 계좌 비밀번호(보통 0000)를 입력하고 [등록] 버튼을 누릅니다. 마지막으로 'AUTO 옵션'에 체크를 해줍니다. 이제 코드가 실행될 때마다 비밀번호 입력 없이 스르륵 로그인이 진행됩니다! 2. 파이썬으로 키움증권 API 로그인하기 이제 파이썬 에디터(VS Code, PyCharm 또는 기본 IDLE)를 열고 아래 코드를 그대로 복사해서 붙여넣어 보세요. Python from pykiwoom.kiwoom import * import...

파이썬 주식 자동매매 3편

이미지
키움증권 API 통신의 핵심, TR 데이터로 현재가 조회하기 💡 이전 글 먼저 보기: 단 10줄의 코드로 끝내는 키움증권 자동 로그인과 계좌 조회 방법이 궁금하시다면 👉 **[ 파이썬 주식 자동매매 2편 ]**를 먼저 확인해 주시기 바랍니다. 지난 2편에서 파이썬과 키움증권 서버를 연결하고 로그인하는 데 성공하셨다면, 자동매매 시스템 구축의 절반을 해내신 것과 다름없습니다.  오늘은 증권사 API 통신의 꽃이라고 불리는 'TR(Transaction) 요청'을 통해 특정 주식 종목의 실시간 가격(현재가)을 내 파이썬 프로그램으로 불러오는 방법을 알아보겠습니다. 1. API 통신의 핵심, TR(Transaction)이란 무엇인가? 키움증권 서버에는 수많은 주식 데이터가 저장되어 있습니다.  우리가 서버에게 "삼성전자 주식의 현재가를 알려줘!"라고 요청하면, 서버가 그에 맞는 데이터를 찾아서 우리에게 다시 던져주는 일련의 주고받기 과정을 TR 통신 이라고 부릅니다. 우리가 1편에서 설치했던 'KOA Studio'를 열어보면 수많은 TR 목록을 확인할 수 있습니다.  그중에서 단일 종목의 기본 정보를 가져올 때 가장 많이 쓰이는 TR 코드가 바로 opt10001 (주식기본정보요청) 입니다. 2. pykiwoom으로 초간단 TR 데이터 요청하기 원래 이 TR 데이터를 주고받으려면 요청(Request)을 보내고 데이터가 올 때까지 기다리는 복잡한 '이벤트 루프' 코드를 짜야 합니다.  하지만 우리가 사용하는 pykiwoom 라이브러리의 block_request 기능을 활용하면 단 한 줄의 코드로 이 과정을 끝낼 수 있습니다. 파이썬 에디터를 열고 아래 코드를 작성해 보세요. (코드 내의 005930은 삼성전자의 종목코드입니다.) Python from pykiwoom.kiwoom import * import pandas as pd # 1. 키움증권 로그인 kiwoom = Kiwoom() k...

파이썬 기초 문법 2: 단순 반복 작업을 없애주는 '조건문'과 '반복문' 핵심 가이드

이미지
파이썬의 진짜 매력은 내가 자는 동안에도 컴퓨터가 알아서 일을 처리하게 만드는 데 있습니다.  앞서 '변수'와 '데이터 타입'을 통해 데이터를 담는 상자를 만들었다면, 이제는 그 상자들을 활용해 컴퓨터에게 명확한 업무 지시를 내릴 차례입니다. 서론은 줄이고, 파이썬 업무 자동화의 핵심 뼈대인 '조건문'과 '반복문'의 원리와 실전 예시부터 바로 알아보겠습니다. 조건문(if): 상황에 따라 다르게 행동하도록 규칙 정하기 일상적인 업무를 하다 보면 "A 상황에서는 이렇게, B 상황에서는 저렇게 처리해"라는 판단이 필요할 때가 많습니다. 파이썬에서는 이를 'if(만약 ~라면)' 구문으로 아주 쉽게 처리합니다. 만약 특정 주식 종목의 가격이 내가 원하는 목표가에 도달했을 때만 알림을 받고 싶다고 가정해 보겠습니다. 매번 사람이 화면을 쳐다보고 판단할 필요 없이, 컴퓨터에게 다음과 같은 논리 구조를 입력해주면 됩니다. if (조건): 만약 가격이 5만 원 이하라면 -> "매수 알림 보내기" else (그 외): 5만 원을 초과한다면 -> "아무것도 하지 않기" 이렇게 조건을 설정해 두면, 컴퓨터는 데이터가 들어올 때마다 스스로 판단하여 정해진 규칙대로만 움직입니다. 반복문(for): 지루한 단순 작업을 기계처럼 순식간에 끝내기 수십 개의 뉴스 기사 제목을 긁어오거나, 100개의 엑셀 파일에서 특정 셀의 값을 복사해야 한다고 상상해 보십시오.  사람이 하면 실수도 잦고 시간도 오래 걸리는 전형적인 '단순 반복 작업'입니다. 파이썬의 'for' 구문을 사용하면 단 몇 줄의 코드로 이 지루한 과정을 순식간에 해결할 수 있습니다. 'for'문은 여러 개의 데이터가 들어 있는 꾸러미(리스트)에서 데이터를 하나씩 차례대로 꺼내서 같은 작업을 반복하라는 명령어입니다.  10번을 반복하든 1만 번을 반복하든 ...

8편. 실전 자동화 4: 파이썬 오픈 API와 메신저 연동하여 나만의 텔레그램 알림 봇 만들기

이미지
지난 7편까지 우리는 웹 크롤링을 통해 매일 아침 내가 원하는 뉴스를 자동으로 수집하고, 이를 깔끔하게 엑셀 표로 저장하는 데 성공했습니다.  하지만 여기에는 한 가지 치명적인 단점이 있습니다. 결국 그 엑셀 파일을 확인하려면 내가 직접 컴퓨터 앞에 앉아 폴더를 열고 파일을 더블 클릭해야 한다는 점입니다. 저 역시 초창기에 주식 시황과 키워드 뉴스를 파이썬으로 엑셀에 모아두기만 하다가, 정작 바쁜 출근길에 엑셀을 열어보지 못해 중요한 타이밍을 놓친 경험이 많습니다.  진정한 업무 자동화는 '내가 찾아가는 것'이 아니라 '데이터가 나에게 알아서 찾아오게 만드는 것'입니다. 오늘은 우리가 늘 손에 쥐고 있는 스마트폰 메신저로 파이썬이 스스로 말을 걸게 만드는 마법, 오픈 API를 활용한 텔레그램 알림 봇 연동 방법에 대해 단계별로 알아보겠습니다. 오픈 API와 텔레그램 메신저의 완벽한 조화 갑자기 '오픈 API(Open API)'라는 용어가 나와서 당황하셨을 수도 있습니다. API는 쉽게 말해 식당의 '점원'과 같습니다.  주방(텔레그램 서버)에 직접 들어가 요리를 할 필요 없이, 점원(API)에게 "내 친구에게 이 메시지 좀 배달해 줘!"라고 주문서(코드)만 넘기면 알아서 처리해 주는 시스템입니다. 수많은 메신저 중에서도 굳이 텔레그램(Telegram)을 사용하는 이유는 명확합니다.  카카오톡이나 라인은 비전공자가 봇을 만들고 권한을 승인받는 과정이 매우 복잡하고 까다롭습니다. 반면 텔레그램은 개발자 친화적이어서 단 1분이면 무료로 나만의 알림 봇을 만들고 파이썬과 즉시 연동할 수 있습니다. 1단계: 텔레그램에서 나만의 봇(Bot) 생성하기 파이썬 코드를 작성하기 전에, 먼저 텔레그램 앱에서 메시지를 전달해 줄 로봇 직원을 채용해야 합니다. 스마트폰이나 PC에서 텔레그램을 열고 다음 순서대로 진행합니다. 텔레그램 검색창에 BotFather 를 검색하여 체크 표시가 있는 공식 계정에 입장합...

5편 실전 자동화 1: 파이썬 엑셀 파일 합치기, 수십 개 파일 단 3초 만에 취합하는 법

이미지
매주 팀원들이 보내오는 주간 시황 보고서나, 여러 부서에서 취합해야 하는 매출 엑셀 파일들. 이것들을 일일이 열어 하나의 파일로 복사하고 붙여넣는 단순 작업에 아까운 시간을 버리고 계시지 않나요?  이전 3, 4편에서 배운 '변수'와 '반복문(for)'만 완벽히 이해했다면, 이제 파이썬을 활용해 이 지루한 엑셀 파일 취합 업무를 단 3초 만에 끝낼 수 있습니다. 오늘은 데이터 분석과 엑셀 제어에 가장 많이 쓰이는 판다스(Pandas) 라이브러리를 활용하여, 폴더 안의 모든 엑셀 파일을 한 번에 합치는 방법을 단계별(Step-by-Step)로 명확하게 알아보겠습니다. 1단계: 마법의 도구 상자, 판다스(Pandas) 불러오기 파이썬이 강력한 이유는 누군가 엑셀 작업을 쉽게 할 수 있도록 만들어둔 '도구 상자'를 무료로 가져다 쓸 수 있기 때문입니다.  가장 대표적인 도구 상자가 바로 판다스(Pandas)입니다. 리플릿(Replit)이나 파이썬 편집기 창에 다음과 같이 입력하여 도구 상자를 준비합니다. import pandas as pd import os import pandas as pd: 판다스라는 긴 이름 대신, 앞으로 코드 내에서 'pd'라는 짧은 별명으로 부르겠다는 뜻입니다. import os: 내 컴퓨터나 클라우드의 '폴더(Directory)'에 접근하여 파일들을 찾아내기 위한 필수 도구입니다. 2단계: 합칠 엑셀 파일들이 있는 폴더 지정하기 컴퓨터에게 "어디에 있는 파일들을 합칠 것인가?"를 명확히 알려주어야 합니다. 여러 개의 시황 데이터나 정산 파일이 모여 있는 폴더의 경로를 변수에 담아줍니다. folder_path = "./laonspace_reports/" file_list = os.listdir(folder_path) folder_path: 취합할 파일들이 모여있는 폴더의 위치(경로)를 지정합니다. os.listdir: 앞서 지정한 폴더...

파이썬 주식 자동매매 4편

이미지
내 돈으로 진짜 주식을 사보자! 실전 매수/매도 주문하기 💡 이전 글 먼저 보기: 삼성전자 등 특정 주식의 실시간 현재가를 불러오는 방법이 궁금하시다면 👉 **[ 여기에 3편 글의 내용을 읽어주세요 ]**를 먼저 확인해 주시기 바랍니다.   파이썬으로 증권사 서버에 로그인하고, 내 계좌를 불러오고, 현재가까지 확인하셨나요?  그렇다면 이제 진정한 '자동매매'의 하이라이트를 장식할 차례입니다. 이번 4편에서는 파이썬 코드를 통해 내 계좌의 예수금을 사용하여 실제로 주식을 매수(Buy)하고 매도(Sell)하는 주문(Order) 로직 에 대해 알아보겠습니다. 1. 주식 주문의 핵심, SendOrder 함수 이해하기 키움증권 API에서 주식을 사고팔 때 사용하는 유일무이한 핵심 함수는 바로 SendOrder 입니다.  HTS나 MTS 앱에서 주식을 살 때 우리가 입력하는 정보(계좌번호, 종목, 수량, 가격 등)를 파이썬 코드에서는 이 함수의 '매개변수'로 쏙쏙 넣어주기만 하면 됩니다. SendOrder 에 들어가야 할 핵심 정보는 다음과 같습니다. 사용자 구분명: 이 주문이 어떤 주문인지 내가 알아보기 쉽게 적는 이름 (예: "삼성전자매수") 화면번호: 통신을 위한 4자리 임의의 숫자 (보통 "1000" 사용) 계좌번호: 2편에서 불러왔던 내 주력 계좌번호 10자리 주문유형: 1 (신규매수), 2 (신규매도), 3 (매수취소), 4 (매도취소) 종목코드: 사고팔려는 주식의 6자리 코드 (예: 삼성전자 "005930") 주문수량: 몇 주를 살 것인가? 주문가격: 얼마에 살 것인가? (시장가 주문일 경우 0 입력) 호가구분: 00 (지정가), 03 (시장가) 2. 단 15줄! 삼성전자 1주 '시장가 매수' 코드 주식을 무조건 지금 당장 체결시키는 가장 확실한 방법은 '시장가'로 매수하는 것입니다.  아래 코드는 파이썬을 이용해 ...

7편. 실전 자동화 3: 크롤링한 데이터 깔끔하게 엑셀 표로 정리하기 (Pandas 실전)

이미지
지난 6편에서는 매일 아침 내가 원하는 키워드의 뉴스 기사 제목과 링크를 자동으로 긁어오는 웹 크롤링 코드를 만들어 보았습니다.  까만 콘솔 창에 결과가 좌르륵 쏟아질 때의 쾌감은 이루 말할 수 없죠. 하지만 실무에서 그 까만 화면을 그대로 팀원들에게 공유하거나 보고서로 제출할 수는 없습니다. 우리가 데이터를 수집하는 진짜 목적은 그 정보를 '활용'하기 위함입니다.  그러려면 수집한 데이터를 깔끔한 엑셀(Excel) 파일로 저장해 두어야 합니다. 제가 처음 크롤링을 성공했을 때는 이 방법을 몰라, 화면에 출력된 텍스트를 마우스로 드래그해서 엑셀에 직접 복사하고 붙여넣는 반쪽짜리 자동화를 했었습니다. 하지만 오늘 소개할 파이썬의 핵심 무기, 판다스(Pandas) 라이브러리를 만나면 단 몇 줄의 코드만으로 흩어진 데이터를 완벽한 표(Table) 형태로 저장할 수 있습니다.  오늘은 6편의 크롤링 코드에 판다스를 결합하여, 나만의 자동화된 엑셀 리포트 생성기를 완성하는 과정을 단계별로 명확하게 알아보겠습니다. 판다스(Pandas), 데이터를 다루는 마법의 엑셀 도구 앞서 5편(엑셀 병합)에서도 잠깐 등장했던 판다스는, 쉽게 말해 '파이썬 안에서 돌아가는 가상의 엑셀'입니다. 방대한 데이터를 표 형태로 만들고, 더하고, 빼고, 필터링하는 데 압도적인 성능을 자랑합니다. 판다스에서 가장 중요한 개념은 데이터프레임(DataFrame)입니다. 이름은 거창하지만, 사실 우리가 매일 보는 엑셀의 '행(가로)'과 '열(세로)'로 이루어진 표 구조를 부르는 말일 뿐입니다. 우리는 크롤링으로 수집한 기사 제목들을 '제목 열'에, 기사 주소를 '링크 열'에 줄을 맞춰 집어넣기만 하면 됩니다. 수집한 데이터 표로 만들기 (Step-by-Step) 지난 시간에 사용했던 리플릿(Replit) 환경을 열고, 6편의 코드 아래에 판다스를 덧붙여 보겠습니다. 데이터를 저장하려면 먼저 텍스트를 담아둘 빈 상자(...