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

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

조건문과 반복문 - 단순 반복 작업을 없애는 핵심 문법




파이썬의 진짜 매력은 내가 자는 동안에도 컴퓨터가 알아서 일을 처리하게 만드는 데 있습니다.

 앞서 '변수'와 '데이터 타입'을 통해 데이터를 담는 상자를 만들었다면, 이제는 그 상자들을 활용해 컴퓨터에게 명확한 업무 지시를 내릴 차례입니다. 서론은 줄이고, 파이썬 업무 자동화의 핵심 뼈대인 '조건문'과 '반복문'의 원리와 실전 예시부터 바로 알아보겠습니다.

조건문(if): 상황에 따라 다르게 행동하도록 규칙 정하기

일상적인 업무를 하다 보면 "A 상황에서는 이렇게, B 상황에서는 저렇게 처리해"라는 판단이 필요할 때가 많습니다. 파이썬에서는 이를 'if(만약 ~라면)' 구문으로 아주 쉽게 처리합니다.

만약 특정 주식 종목의 가격이 내가 원하는 목표가에 도달했을 때만 알림을 받고 싶다고 가정해 보겠습니다. 매번 사람이 화면을 쳐다보고 판단할 필요 없이, 컴퓨터에게 다음과 같은 논리 구조를 입력해주면 됩니다.

  • if (조건): 만약 가격이 5만 원 이하라면 -> "매수 알림 보내기"

  • else (그 외): 5만 원을 초과한다면 -> "아무것도 하지 않기"

이렇게 조건을 설정해 두면, 컴퓨터는 데이터가 들어올 때마다 스스로 판단하여 정해진 규칙대로만 움직입니다.

반복문(for): 지루한 단순 작업을 기계처럼 순식간에 끝내기

수십 개의 뉴스 기사 제목을 긁어오거나, 100개의 엑셀 파일에서 특정 셀의 값을 복사해야 한다고 상상해 보십시오. 

사람이 하면 실수도 잦고 시간도 오래 걸리는 전형적인 '단순 반복 작업'입니다. 파이썬의 'for' 구문을 사용하면 단 몇 줄의 코드로 이 지루한 과정을 순식간에 해결할 수 있습니다.

'for'문은 여러 개의 데이터가 들어 있는 꾸러미(리스트)에서 데이터를 하나씩 차례대로 꺼내서 같은 작업을 반복하라는 명령어입니다. 

10번을 반복하든 1만 번을 반복하든 컴퓨터는 불평 없이 정확히 임무를 수행합니다.

실전 적용 (Step-by-Step): 조건문과 반복문 합치기

이제 지난 시간에 가입해 둔 리플릿(Replit) 브라우저 화면을 열고, 조건문과 반복문을 합쳐서 '목표가 도달 알림 봇'의 기초 뼈대를 만들어 보겠습니다. 아래 코드를 한 줄씩 타이핑해 보세요. 초보자도 이해하기 쉽도록 문법 구조와 의미를 주석(#)으로 상세히 달아두었습니다.

Python
# 1단계: 감시할 주식 가격들을 하나의 리스트(대괄호로 묶은 데이터 모음)에 담습니다.
prices = [45000, 52000, 48000, 60000]

# 2단계: for문을 통해 prices 리스트 안의 숫자를 하나씩 꺼내서 'p'라는 변수에 잠시 담습니다.
for p in prices:
    
    # 3단계: if문을 사용해 꺼낸 가격(p)이 50000 이하인지 판단합니다.
    # 주의: 파이썬에서는 if문 아래에 반드시 '들여쓰기(Space 4번 또는 Tab)'를 해야 조건에 포함됩니다.
    if p <= 50000:
        # 조건이 참(5만원 이하)일 때 실행되는 결과입니다.
        # 숫자인 p를 문자열로 변환(str)하여 자연스러운 문장으로 합칩니다.
        print("알림: 목표가 도달! 현재 가격은 " + str(p) + "원 입니다.")
        
    # 4단계: else를 사용해 위 조건에 맞지 않을 때(5만원 초과)의 행동을 정합니다.
    else:
        print("관망: 아직 가격이 높습니다. (현재가: " + str(p) + "원)")

위 코드를 실행(Run)하면, 컴퓨터가 4개의 가격을 순식간에 하나씩 검사하여 5만 원 이하인 45,000원과 48,000원에 대해서만 '알림' 메시지를 출력합니다. 

이렇게 두 가지 문법만 결합해도 강력한 자동화 스크립트가 탄생합니다.

초보자가 흔히 겪는 오류: 들여쓰기(Indentation) 주의

조건문과 반복문을 처음 작성할 때 가장 많이 발생하는 오류는 '들여쓰기 에러(IndentationError)'입니다. 다른 프로그래밍 언어들은 중괄호 {}를 사용해 어디부터 어디까지가 조건문에 속하는지 표시하지만, 파이썬은 오직 '들여쓰기'로만 이를 구분합니다.

따라서 if나 for 문장 끝에는 반드시 콜론(:)을 찍고, 그 아래 실행할 명령은 스페이스바 4번 또는 탭(Tab) 키를 눌러 안쪽으로 밀어 넣어 주어야 컴퓨터가 "아, 이 명령은 위의 조건에 속하는구나!"라고 인식합니다.

핵심 요약 및 마무리

  • 조건문(if)은 상황에 따라 다른 행동을 하도록 규칙을 정해주는 판단의 기준이 됩니다.

  • 반복문(for)은 리스트 안의 데이터를 하나씩 꺼내어 지루한 단순 작업을 기계처럼 빠르게 처리합니다.

  • 파이썬에서 조건문과 반복문을 사용할 때는 실행할 명령 앞의 '들여쓰기' 간격을 정확히 맞춰야 에러가 발생하지 않습니다.

오늘 배운 두 가지 뼈대만 완벽히 이해한다면, 여러분은 이제 엑셀 파일 100개를 다루든 뉴스 기사 1,000개를 다루든 두려울 것이 없습니다. 

다음 5편에서는 방금 배운 지식을 활용하여, 직장인들의 영원한 숙제인 '수십 개의 엑셀 파일 한 번에 합치기 (실전 자동화 1편)'를 단계별로 알아보겠습니다.

오늘 예시 코드를 실행해 보시면서 화면에 어떤 결과가 출력되셨나요? 만약 원인 모를 빨간색 에러 메시지가 떴다면 댓글로 에러 내용을 그대로 복사해 남겨주세요. 빠르게 원인을 찾아드리겠습니다!


#파이썬기초 #파이썬조건문 #파이썬반복문 #코딩독학 #업무자동화코드 

댓글

이 블로그의 인기 게시물

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

파이썬 주식 자동매매 4편

파이썬 주식 자동매매 3편