글

주봉 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처럼 여러...

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

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

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

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

파이썬 주식 자동매매 5편: 목표가 도달 시 알아서 매수하는 '무인 트레이딩 봇' 완성하기

이미지
 💡 이전 글 먼저 보기: 파이썬 코드로 실제 주식을 매수하고 매도하는 SendOrder 함수의 사용법을 아직 모르신다면 👉 **[ 파이썬 주식 자동매매 4편 글 ]**을 반드시 먼저 읽고 와주시기 바랍니다. 지금까지 우리는 파이썬을 이용해 키움증권 서버에 로그인하고(2편), 주식의 현재가를 불러오며(3편), 실제로 주식을 매수하는 주문(4편)까지 자동매매를 위한 모든 개별 부품들을 만들어 보았습니다. 이번 5편에서는 이 조각들을 하나로 조립하여, "내가 설정한 가격까지 주가가 떨어지면, 봇(Bot)이 스스로 감지하여 알아서 주식을 매수하는" 진정한 의미의 무인 자동매매 로직을 완성해 보겠습니다. 1. 실시간 가격 감시의 핵심: 무한 루프( while ) 사람은 하루 종일 모니터를 쳐다보며 가격을 감시할 수 없지만, 컴퓨터는 지치지 않습니다.  파이썬의 while 반복문을 사용하면 장이 열려있는 동안 코드가 멈추지 않고 계속해서 현재가를 확인하도록 지시할 수 있습니다. 단, 서버에 너무 빠르게(1초에 수십 번씩) 데이터를 요청하면 디도스(DDoS) 공격으로 오해받아 증권사로부터 통신이 차단될 수 있습니다.  따라서 time.sleep(1) 함수를 이용해 1초에 한 번씩만 여유롭게 가격을 확인하도록 숨통을 틔워주어야 합니다. 2. 중복 매수 방지 장치 (Flag 변수) 자동매매 봇을 만들 때 초보자들이 가장 많이 하는 실수가 바로 '중복 주문'입니다.  가격이 목표가 아래로 떨어졌을 때 매수 주문이 나갔음에도 불구하고, 루프가 계속 돌면서 1초마다 계속 매수 주문을 넣어 계좌의 돈을 모두 탕진해 버리는 대참사가 발생할 수 있습니다. 이를 막기 위해 is_bought = False 라는 깃발(Flag) 변수를 하나 만들어 둡니다. 매수가 한 번 체결되면 이 깃발을 True 로 바꾸고, 무한 루프를 안전하게 빠져나오도록( break ) 설계해야 합니다. 3. 나만의 자동매매 봇(Bot) 전체 코드 지금까지 배운 모든 지...

파이썬 주식 자동매매 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주 '시장가 매수' 코드 주식을 무조건 지금 당장 체결시키는 가장 확실한 방법은 '시장가'로 매수하는 것입니다.  아래 코드는 파이썬을 이용해 ...

파이썬 주식 자동매매 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편]

이미지
 단 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...

미국 S&P500 ETF 투자 방법: 초보자를 위한 필수 가이드

이미지
서론: 왜 지금 미국 S&P500 ETF에 주목해야 하는가? 최근 글로벌 자산 시장의 변동성이 커지면서 안정적이면서도 꾸준한 우상향을 기대할 수 있는 투자처를 찾는 분들이 많아졌습니다.  그중에서도 전 세계 투자 대가들이 입을 모아 추천하는 상품이 바로 미국 S&P500 ETF입니다.  주식 투자를 처음 시작하는 초보자부터 안정적인 은퇴 자금을 마련하려는 장기 투자자까지, 왜 S&P500 ETF가 필수 자산으로 꼽히는지 그 이유와 구체적인 투자 전략을 알아보겠습니다.  이 글을 통해 복잡한 시장 분석 없이도 현명하게 자산을 불리는 방법을 마스터하실 수 있습니다. 1. 미국 S&P500 ETF란 무엇인가? 핵심 개념 정리 S&P500 지수는 미국의 신용평가사 스탠더드 앤드 푸어스(S&P)가 개발한 주가지수입니다.  미국 주식시장에 상장된 대기업 중 시가총액, 유동성, 산업 대표성 등을 고려해 선정한 상위 500개 기업의 주가 를 반영합니다. 여기에는 우리가 잘 아는 애플, 마이크로소프트, 구글, 아마존, 엔비디아 같은 세계적인 기업들이 모두 포함되어 있습니다. ETF(Exchange Traded Fund, 상장지수펀드)는 이 지수를 그대로 추종하도록 만든 펀드입니다.  즉, S&P500 ETF를 딱 1주만 매수하더라도 미국의 초우량 기업 500개에 분산 투자하는 것과 동일한 효과를 누릴 수 있습니다. 개별 기업의 파산이나 주가 폭락 리스크를 최소화하면서 미국 경제 성장 전체에 투자하는 가장 안전한 방법입니다. 2. S&P500 ETF 투자의 강력한 장점 3가지 많은 자산관리 전문가들이 초보 투자자에게 이 상품을 가장 먼저 권하는 데는 명확한 이유가 있습니다. 완벽한 자동 분산 투자: 기술, 금융, 헬스케어, 소비재 등 미국을 이끄는 모든 산업군에 골고루 투자되므로 특정 업종의 부진에 유연하게 대처할 수 있습니다. 우수한 장기 수익률과 복리 효과: 지난 수십 년...