<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>빡스노트</title>
    <link>https://bboxnote.tistory.com/</link>
    <description>궁금했던 것, 알아 둔 것, 써 본 것을 이것저것 정리하는 노트</description>
    <language>ko</language>
    <pubDate>Sat, 31 Oct 2026 11:47:03 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>bboxnote</managingEditor>
    <image>
      <title>빡스노트</title>
      <url>https://tistory1.daumcdn.net/tistory/9069883/attach/4c392d12c98442959612e77559f080d6</url>
      <link>https://bboxnote.tistory.com</link>
    </image>
    <item>
      <title>주식 자동매매 봇 만들기 10편: AI한테 매일 종목을 고르게 했더니, 2주 성적 +4.97% (지수는 +8.55%)</title>
      <link>https://bboxnote.tistory.com/entry/ai-stock-picks</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/oTPA7/dJMcacL4iKH/PqpuMOjtGlYGRtjDznU2eK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/oTPA7/dJMcacL4iKH/PqpuMOjtGlYGRtjDznU2eK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/oTPA7/dJMcacL4iKH/PqpuMOjtGlYGRtjDznU2eK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FoTPA7%2FdJMcacL4iKH%2FPqpuMOjtGlYGRtjDznU2eK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;주식 자동매매 봇 10편 AI 종목 선택 실험 2주 성적&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9편까지 만든 봇 두 개는 모두 정해진 규칙대로 움직입니다. 200일 평균 위면 사고, 아래면 팔고, 한 달에 한 번만 판단합니다. 사람이 끼어들 틈이 없도록 일부러 그렇게 만들었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 만들다 보니 궁금해졌습니다. &lt;b&gt;AI한테 뉴스와 차트를 보여 주고 직접 종목을 고르게 하면 어떻게 될까?&lt;/b&gt; 요즘 AI는 공시도 읽고 뉴스도 요약하니, 사람 트레이더처럼 &quot;이 종목은 며칠 안에 오를 것 같다&quot;를 골라 볼 수 있지 않을까 싶었습니다. 그래서 세 번째 봇으로 실험을 하나 붙였고, 2주 동안 돌려 봤습니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;아래 종목 이름은 AI가 실험 중에 고른 기록일 뿐, 매수 추천이 아닙니다. 실제 돈이 아니라 가상 장부로 계산한 결과입니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;매일 아침 장 시작 전에 AI(Claude)가 대형주 50개 중에서 &lt;b&gt;최대 5종목&lt;/b&gt;을 고르고, 종목마다 목표가&amp;middot;손절가&amp;middot;보유 기한을 정합니다.&lt;/li&gt;
&lt;li&gt;과거 데이터로는 검증할 수 없어서(AI는 과거에 무슨 일이 있었는지 이미 압니다) &lt;b&gt;앞으로의 성적으로만&lt;/b&gt; 확인합니다.&lt;/li&gt;
&lt;li&gt;2주 성적은 &lt;b&gt;+4.97%&lt;/b&gt;, 끝난 거래 9건 중 6건 수익. 하지만 같은 기간 KODEX 200은 &lt;b&gt;+8.55%&lt;/b&gt;였습니다.&lt;/li&gt;
&lt;li&gt;지금 결론: 지수를 못 이겼고, 2주로는 실력인지 운인지 알 수 없습니다. 실험은 계속합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;왜 백테스트를 못 하나&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금까지는 새 전략을 넣기 전에 항상 10년치 백테스트부터 돌렸습니다. 그런데 AI 종목 선택은 그게 안 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어 2022년 3월 1일 데이터를 보여 주고 &quot;뭘 살래?&quot;라고 물으면, AI는 그 뒤에 무슨 일이 있었는지 이미 학습해서 알고 있습니다. 시험 문제를 풀기 전에 답안지를 본 것과 같아서, 과거 성적은 아무리 좋아도 믿을 수 없습니다. 3편에서 겪었던 &quot;연 +32%가 가짜였던&quot; 미래 정보 문제의 훨씬 심한 버전입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 이 실험은 &lt;b&gt;오늘부터 앞으로의 성적만&lt;/b&gt; 봅니다. 실제 계좌에는 주문을 내지 않고, 1,000만 원짜리 가상 장부에 기록합니다. 대신 체결은 실제 일봉 가격으로 계산하고, 수수료&amp;middot;세금&amp;middot;체결 손해(왕복 약 0.43%)도 백테스트와 똑같이 뺍니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실험 규칙&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;항목&lt;/th&gt;
&lt;th&gt;내용&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;시작 금액&lt;/td&gt;
&lt;td&gt;가상 1,000만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;칸 수&lt;/td&gt;
&lt;td&gt;최대 5종목, 한 칸 = 총자산의 20%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;후보&lt;/td&gt;
&lt;td&gt;거래대금 상위 대형주 50종목&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AI에게 주는 정보&lt;/td&gt;
&lt;td&gt;1&amp;middot;5&amp;middot;20&amp;middot;60일 수익률, 20일선&amp;middot;200일선 대비 위치, 52주 고점 대비, 거래대금 변화, 최근 뉴스 제목&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;AI가 정하는 것&lt;/td&gt;
&lt;td&gt;살 종목, 목표 수익률, 손절 폭, 최대 보유 거래일(1~20일), 고른 이유&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;사는 시점&lt;/td&gt;
&lt;td&gt;고른 날 시가&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;파는 시점&lt;/td&gt;
&lt;td&gt;목표가에 닿으면 익절, 손절가에 닿으면 손절, 기한이 지나면 그날 종가&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;같은 날 목표가와 손절가에 둘 다 닿으면, 어느 쪽이 먼저였는지 일봉으로는 알 수 없어서 &lt;b&gt;보수적으로 손절&lt;/b&gt;로 칩니다. 그리고 AI에게 &quot;확신이 없으면 안 골라도 된다, 억지로 칸을 채우지 마라&quot;고 분명히 적어 두었습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;AI에게 보내는 지시문 (일부)&lt;/h3&gt;
&lt;pre class=&quot;mercury&quot;&gt;&lt;code&gt;당신은 한국 주식 단기 트레이더입니다. 매일 아침 장 시작 전에,
거래대금 상위 대형주 목록과 각 종목의 최근 가격 흐름, 뉴스 제목을 보고
오늘 시가에 살 종목을 고릅니다.
- 확신이 없으면 적게 고르거나 하나도 고르지 않아도 됩니다.
- 사고팔 때마다 약 0.43% 비용이 나가므로, 목표 수익률은 그보다 충분히 커야 합니다.
- 반드시 주어진 후보 목록 안에서만 고릅니다.&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;답은 정해진 JSON 형식(종목 코드, 이유, 목표, 손절, 기한, 자신감)으로만 받습니다. 후보 목록에 없는 종목을 지어내거나 목표 수익률을 터무니없이 크게 쓰면 코드에서 걸러냅니다(목표 1~50%, 손절 1~20%, 기한 1~20일로 제한).&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;AI는 어떤 이유로 고를까&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;매일 텔레그램으로 고른 종목과 이유가 옵니다. 10월 30일 아침에는 이렇게 왔습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;시장 판단&lt;/b&gt;: 미국 빅테크 실적 실망으로 반도체 중심의 하락 출발이 예상되니, 이미 반도체를 들고 있는 만큼 금융주와 배터리주로 방어적으로 접근하겠다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;KB금융&lt;/b&gt; (목표 +5% / 손절 -4% / 최대 10일): 이익 체력이 안정적이고 200일선 부근이라 아래로 많이 빠질 여지가 적다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;삼성SDI&lt;/b&gt; (목표 +8% / 손절 -5% / 최대 10일): 3분기 깜짝 실적과 ESS 성장 기대, 거래대금 증가 속에 20일선에서 지지받고 있다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이유만 읽으면 꽤 그럴듯합니다. 실적, 수급, 차트 위치를 다 언급하고, 이미 들고 있는 종목과 업종이 겹치지 않게 나누려는 판단까지 합니다. 문제는 그럴듯한 이유가 수익을 보장하지는 않는다는 겁니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2주 성적표&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10월 16일부터 30일까지 끝난 거래는 9건입니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;종목&lt;/th&gt;
&lt;th&gt;산 날&lt;/th&gt;
&lt;th&gt;판 날&lt;/th&gt;
&lt;th&gt;수익률&lt;/th&gt;
&lt;th&gt;결과&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;LG에너지솔루션&lt;/td&gt;
&lt;td&gt;10-19&lt;/td&gt;
&lt;td&gt;10-19&lt;/td&gt;
&lt;td&gt;+6.54%&lt;/td&gt;
&lt;td&gt;익절&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;에이피알&lt;/td&gt;
&lt;td&gt;10-19&lt;/td&gt;
&lt;td&gt;10-20&lt;/td&gt;
&lt;td&gt;-5.41%&lt;/td&gt;
&lt;td&gt;손절&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;삼성전자&lt;/td&gt;
&lt;td&gt;10-19&lt;/td&gt;
&lt;td&gt;10-21&lt;/td&gt;
&lt;td&gt;+8.53%&lt;/td&gt;
&lt;td&gt;익절&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;삼성E&amp;amp;A&lt;/td&gt;
&lt;td&gt;10-22&lt;/td&gt;
&lt;td&gt;10-22&lt;/td&gt;
&lt;td&gt;+7.54%&lt;/td&gt;
&lt;td&gt;익절&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;LS ELECTRIC&lt;/td&gt;
&lt;td&gt;10-22&lt;/td&gt;
&lt;td&gt;10-23&lt;/td&gt;
&lt;td&gt;-6.05%&lt;/td&gt;
&lt;td&gt;손절&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SK하이닉스&lt;/td&gt;
&lt;td&gt;10-19&lt;/td&gt;
&lt;td&gt;10-27&lt;/td&gt;
&lt;td&gt;+11.52%&lt;/td&gt;
&lt;td&gt;익절&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;삼성E&amp;amp;A&lt;/td&gt;
&lt;td&gt;10-23&lt;/td&gt;
&lt;td&gt;10-27&lt;/td&gt;
&lt;td&gt;+8.53%&lt;/td&gt;
&lt;td&gt;익절&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;LG에너지솔루션&lt;/td&gt;
&lt;td&gt;10-26&lt;/td&gt;
&lt;td&gt;10-29&lt;/td&gt;
&lt;td&gt;-5.41%&lt;/td&gt;
&lt;td&gt;손절&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;SK하이닉스&lt;/td&gt;
&lt;td&gt;10-28&lt;/td&gt;
&lt;td&gt;10-29&lt;/td&gt;
&lt;td&gt;+9.53%&lt;/td&gt;
&lt;td&gt;익절&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9건 중 6건이 목표가에 닿아 익절했고, 3건은 손절했습니다. 이긴 거래는 평균 +8.7%, 진 거래는 평균 -5.6%입니다. 숫자만 보면 꽤 괜찮아 보입니다. 하루 만에 목표가에 닿은 거래도 여럿이었습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;구분&lt;/th&gt;
&lt;th&gt;2주 수익률&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;AI 종목 선택 실험 (가상)&lt;/td&gt;
&lt;td&gt;&lt;b&gt;+4.97%&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;같은 기간 KODEX 200 그냥 보유&lt;/td&gt;
&lt;td&gt;&lt;b&gt;+8.55%&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 같은 기간 KODEX 200을 그냥 들고 있었으면 +8.55%였습니다. AI가 열심히 고르고 사고판 결과가 &lt;b&gt;지수를 사서 가만히 있는 것보다 못했습니다.&lt;/b&gt; 하루 전인 10월 29일에는 +6.77%까지 갔다가, 다음 날 들고 있던 종목이 빠지면서 다시 +4.97%로 내려왔습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;왜 지수를 못 이겼을까&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 시장 자체가 너무 강했습니다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2주 만에 지수가 +8.55% 오르는 건 흔한 일이 아닙니다. 이런 장에서는 아무거나 들고만 있어도 오르는데, 5칸 중 몇 칸은 늘 비어 있거나(현금) 기다리는 중이었습니다. 확신이 없으면 안 사도 된다고 했더니, 10월 20일과 21일에는 정말 하나도 고르지 않았습니다. 하루에 고른 종목도 많아야 3개였습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 목표가가 짧았습니다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;AI는 대부분 +5~12% 정도의 짧은 목표를 잡았습니다. SK하이닉스처럼 크게 오르는 종목도 +9~11%에서 팔고 나왔고, 그 뒤 더 오른 부분은 놓쳤습니다. 손절은 칼같이 하는데 수익은 일찍 끊는 구조라, 강한 상승장에서는 불리합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 2주, 9건은 너무 적습니다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;9건 중 6건 수익이 실력인지 운인지는 이 정도 표본으로는 알 수 없습니다. 동전을 9번 던져도 6번 앞면이 나오는 건 드문 일이 아닙니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;그래도 계속 돌리는 이유&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이 실험의 목적은 돈을 버는 것보다 &lt;b&gt;&quot;AI의 판단이 규칙보다 나은가&quot;를 기록으로 남기는 것&lt;/b&gt;입니다. 그래서 9편에서 만든 현황판에 국내 봇, 미국 봇과 나란히 매일 성적을 올리고 있습니다. 하락장이 한 번 지나가 봐야 손절을 잘하는지, 오히려 크게 물리는지도 보일 겁니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비용도 생각보다 적습니다. 하루 한 번, 후보 50종목 정보를 보내고 답을 받는 정도라 API 비용은 크지 않습니다. 실제 돈을 넣지 않으니 잃을 것도 없습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;지금까지 정리&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;AI 종목 선택은 백테스트가 안 된다.&lt;/b&gt; AI는 과거의 답을 알고 있어서, 앞으로의 성적으로만 확인할 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;그럴듯한 이유와 수익은 다르다.&lt;/b&gt; 이유는 매번 설득력 있었지만, 결과는 지수를 못 이겼습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;강한 상승장에서는 그냥 들고 있는 게 이기기 쉽다.&lt;/b&gt; 짧은 목표와 빈 칸이 발목을 잡았습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;다음 계획&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;AI 실험을 한두 달 더 돌려서 하락장에서의 성적 보기&lt;/li&gt;
&lt;li&gt;국내&amp;middot;미국 봇의 첫 리밸런싱(11월 첫 거래일) 결과 정리&lt;/li&gt;
&lt;li&gt;세 봇 중 하나라도 지수를 꾸준히 이기면, 그때 소액 실전을 검토&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국내 봇과 미국 봇 이야기는 &lt;a href=&quot;https://bboxnote.tistory.com/entry/us-stock-bot&quot;&gt;9편&lt;/a&gt;에, 뉴스와 공시로 악재 종목을 거르는 방법은 &lt;a href=&quot;https://bboxnote.tistory.com/21&quot;&gt;5편&lt;/a&gt;에 정리해 두었습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;주식 자동매매 봇 만들기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/17&quot;&gt;1편: 국내주식&amp;middot;한국투자증권&amp;middot;Python을 고른 이유&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/18&quot;&gt;2편: 모멘텀 전략 10년 백테스트, 지수도 못 이겼다&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/19&quot;&gt;3편: 8가지 전략 비교와 연 +32%의 함정&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/20&quot;&gt;4편: 서버 없이 GitHub Actions로 매일 아침 도는 봇&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/21&quot;&gt;5편: 공시&amp;middot;뉴스로 악재 종목 거르기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/22&quot;&gt;6편: 텔레그램 알림과 한국투자증권 모의투자 연결&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/23&quot;&gt;7편: 단타 규칙을 전부 돌려 봤더니&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/24&quot;&gt;8편: 살아남은 미너비니 규칙&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/entry/us-stock-bot&quot;&gt;9편: 미국주식도 붙였다, 나스닥100 추세추종 봇&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;10편: AI한테 매일 종목을 고르게 했더니 (지금 글)&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/주식 자동매매</category>
      <category>AI 주식 종목 추천</category>
      <category>AI 주식 투자 실험</category>
      <category>Claude 주식</category>
      <category>LLM 트레이딩</category>
      <category>모의투자 후기</category>
      <category>익절 손절</category>
      <category>주식 자동매매</category>
      <category>퀀트 봇</category>
      <category>파이썬 주식 봇</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/36</guid>
      <comments>https://bboxnote.tistory.com/entry/ai-stock-picks#entry36comment</comments>
      <pubDate>Fri, 30 Oct 2026 11:25:41 +0900</pubDate>
    </item>
    <item>
      <title>주식 자동매매 봇 만들기 9편: 미국주식도 붙였다, 나스닥100 추세추종 봇과 2주 모의투자 성적표</title>
      <link>https://bboxnote.tistory.com/entry/us-stock-bot</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/l4yEe/dJMcairK7Hn/4cJNTAxvorMrDkIdJqE8W1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/l4yEe/dJMcairK7Hn/4cJNTAxvorMrDkIdJqE8W1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/l4yEe/dJMcairK7Hn/4cJNTAxvorMrDkIdJqE8W1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fl4yEe%2FdJMcairK7Hn%2F4cJNTAxvorMrDkIdJqE8W1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;주식 자동매매 봇 9편 미국주식 나스닥100 추세추종 봇 한국투자증권 해외주식 모의투자&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;8편까지는 국내주식만 다뤘습니다. 그런데 백테스트를 돌릴수록 한 가지가 계속 마음에 걸렸습니다. 국내 전략은 아무리 다듬어도 &lt;b&gt;최대 낙폭이 -40%대&lt;/b&gt;에서 잘 내려오지 않았습니다. 한국 시장 하나에만 걸어 두면 한국 시장이 크게 빠질 때 같이 빠질 수밖에 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 이번에는 봇에 &lt;b&gt;미국주식&lt;/b&gt;을 붙였습니다. 한국투자증권 API로 미국 ETF를 사고파는 봇을 하나 더 만들고, 국내 봇과 나란히 2주 동안 모의투자로 돌려 봤습니다. 어떤 전략을 골랐는지, 해외주식 API에서 걸렸던 것들, 그리고 2주 성적표까지 정리합니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;아래 숫자는 과거 데이터로 계산한 백테스트와 모의투자(가상 돈) 결과입니다. 특정 종목이나 ETF를 사라는 추천이 아닙니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;미국 쪽 전략은 &lt;b&gt;나스닥100(QQQ) 200일선 추세추종&lt;/b&gt;입니다. 200일 평균 위면 QQQ, 아래면 초단기 국채 ETF(BIL).&lt;/li&gt;
&lt;li&gt;2016~2026 원화 기준 백테스트 &lt;b&gt;연 +17.0%, 최대 낙폭 -27.7%&lt;/b&gt;. QQQ를 그냥 들고 있는 것(연 +20.1%, -37.1%)보다 덜 벌지만 덜 잃습니다.&lt;/li&gt;
&lt;li&gt;국내 봇과 반반 섞으면 &lt;b&gt;2022년 하락장에 -0.3%&lt;/b&gt;로 버텼습니다.&lt;/li&gt;
&lt;li&gt;한국투자증권 모의투자 해외주식은 &lt;b&gt;시장가 주문이 안 돼서&lt;/b&gt; 지정가로 냅니다.&lt;/li&gt;
&lt;li&gt;2주 모의투자 결과는 미국 봇 -2.21%, 국내 봇 +0.09%. 아직 판단하기엔 너무 짧습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;왜 미국주식을 붙였나&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3편에서 고른 국내 전략(KODEX 200 추세추종 70% + 대형주 모멘텀 30%)은 10년 백테스트에서 연 +15% 정도를 냈지만, 가장 많이 빠졌을 때는 -44%까지 떨어졌습니다. 전략을 아무리 바꿔도 한국 시장 안에서만 움직이면 이 낙폭이 크게 줄지 않았습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 방향을 바꿨습니다. 전략을 더 똑똑하게 만드는 대신, &lt;b&gt;서로 다르게 움직이는 시장 두 개&lt;/b&gt;에 나눠 두는 쪽을 택했습니다. 한국이 빠질 때 미국이 버텨 주거나, 그 반대가 되면 전체 낙폭이 줄어듭니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;미국 쪽 전략 고르기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미국 ETF로 할 수 있는 전략 몇 가지를 2016년부터 2026년 10월까지 백테스트했습니다. 한국 사람이 원화로 투자한다고 보고 환율 변화를 넣었고, 수수료 0.1%, 처음 환전 비용 0.25%, 해외주식 양도소득세(연 250만 원 넘는 이익의 22%)까지 반영했습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;전략&lt;/th&gt;
&lt;th&gt;연수익률&lt;/th&gt;
&lt;th&gt;최대 낙폭&lt;/th&gt;
&lt;th&gt;2022년&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;S&amp;amp;P500(SPY) 그냥 보유&lt;/td&gt;
&lt;td&gt;+15.7%&lt;/td&gt;
&lt;td&gt;-30.9%&lt;/td&gt;
&lt;td&gt;-15.1%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;나스닥100(QQQ) 그냥 보유&lt;/td&gt;
&lt;td&gt;+20.1%&lt;/td&gt;
&lt;td&gt;-37.1%&lt;/td&gt;
&lt;td&gt;-33.4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;S&amp;amp;P500 추세추종 (200일선)&lt;/td&gt;
&lt;td&gt;+9.6%&lt;/td&gt;
&lt;td&gt;-23.6%&lt;/td&gt;
&lt;td&gt;-18.6%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;나스닥100 추세추종 (200일선)&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;+17.0%&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;-27.7%&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;-1.5%&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;반도체(SOXX) 추세추종&lt;/td&gt;
&lt;td&gt;+25.0%&lt;/td&gt;
&lt;td&gt;-38.6%&lt;/td&gt;
&lt;td&gt;-9.4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;듀얼 모멘텀 (미국/선진국/채권)&lt;/td&gt;
&lt;td&gt;+9.0%&lt;/td&gt;
&lt;td&gt;-30.2%&lt;/td&gt;
&lt;td&gt;-12.3%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;섹터 로테이션 상위 3&lt;/td&gt;
&lt;td&gt;+7.3%&lt;/td&gt;
&lt;td&gt;-22.7%&lt;/td&gt;
&lt;td&gt;-8.1%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수익률만 보면 반도체 추세추종(연 +25.0%)이 제일 좋지만, 최대 낙폭이 -38.6%로 QQQ를 그냥 들고 있는 것과 비슷합니다. 낙폭을 줄이려고 미국을 붙이는 건데 이걸 고르면 의미가 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 &lt;b&gt;나스닥100 추세추종&lt;/b&gt;을 골랐습니다. QQQ를 그냥 들고 있을 때보다 연 3%p 덜 벌지만, 최대 낙폭은 -37.1%에서 -27.7%로 줄고, 2022년처럼 나스닥이 -33% 빠진 해에도 -1.5%로 버텼습니다. 200일 평균 아래로 내려가면 초단기 국채로 옮겨 가 있었기 때문입니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;국내 봇과 섞으면&lt;/h3&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;조합&lt;/th&gt;
&lt;th&gt;연수익률&lt;/th&gt;
&lt;th&gt;최대 낙폭&lt;/th&gt;
&lt;th&gt;2022년&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;국내 봇 100%&lt;/td&gt;
&lt;td&gt;+15.3%&lt;/td&gt;
&lt;td&gt;-44.6%&lt;/td&gt;
&lt;td&gt;+0.9%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;국내 50 + 미국 나스닥100 추세추종 50&lt;/td&gt;
&lt;td&gt;+16.9%&lt;/td&gt;
&lt;td&gt;-35.5%&lt;/td&gt;
&lt;td&gt;-0.3%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;국내 20 + 미국 나스닥100 추세추종 80&lt;/td&gt;
&lt;td&gt;+17.1%&lt;/td&gt;
&lt;td&gt;-26.5%&lt;/td&gt;
&lt;td&gt;-1.0%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반반 섞었더니 수익률은 조금 오르고 최대 낙폭은 -44.6%에서 -35.5%로 줄었습니다. 그래서 모의투자도 &lt;b&gt;국내 1,000만 원 + 미국 1,000만 원&lt;/b&gt;으로 똑같이 나눠서 시작했습니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;원화로 계산해서 이 기간 환율이 오른(원화 약세) 덕을 미국 쪽이 봤습니다. 앞으로도 그렇다는 보장은 없습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;규칙은 단순합니다&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;매달 첫 실행 때, 전날 QQQ 종가가 200일 평균보다 위면 &lt;b&gt;QQQ&lt;/b&gt;를 삽니다.&lt;/li&gt;
&lt;li&gt;아래면 &lt;b&gt;BIL&lt;/b&gt;(미국 1~3개월 국채 ETF)로 옮깁니다. 사실상 달러 현금처럼 쓰는 자리입니다.&lt;/li&gt;
&lt;li&gt;한 달에 한 번만 판단하고, 그 사이에는 아무것도 하지 않습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;코드로 보면 200일 평균을 내는 부분이 거의 전부입니다. 장중에 돌기 때문에 오늘(아직 안 끝난 날) 값은 빼고 계산합니다.&lt;/p&gt;
&lt;pre class=&quot;python&quot;&gt;&lt;code&gt;def trend_signal(closes, today_ny):
    &quot;&quot;&quot;(위에 있나, 기준일, 종가, 200일 평균). 오늘(장중) 값은 뺀다.&quot;&quot;&quot;
    done = [(d, c) for d, c in closes if d &amp;lt; today_ny]
    ma = sum(c for _, c in done[-200:]) / 200
    d, c = done[-1]
    return c &amp;gt; ma, d, c, ma&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;한국투자증권 해외주식 API에서 걸렸던 것들&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국내주식 때 만든 한국투자증권(KIS) 연결 코드를 그대로 쓰면 될 줄 알았는데, 해외주식은 조금씩 달랐습니다. 먼저 모의투자 계좌에서 시세, 일봉, 잔고, 주문 가능 금액 조회가 되는지 하나씩 찔러 보는 스크립트를 돌렸고, 다행히 전부 됐습니다. 대신 이런 것들에 걸렸습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 모의투자는 시장가 주문이 안 됩니다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국내주식은 시장가로 주문했는데, 모의투자 해외주식은 &lt;b&gt;지정가 주문만&lt;/b&gt; 받습니다. 그래서 현재가보다 0.3% 불리한 가격(살 때는 0.3% 비싸게, 팔 때는 0.3% 싸게)으로 지정가를 내서 바로 체결되게 했습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 가상 달러가 너무 많이 들어 있습니다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모의투자 계좌에는 원화와 별도로 가상 달러가 넉넉하게 들어 있습니다. 이걸 다 쓰면 국내 봇(1,000만 원)과 비교가 안 되니까, 처음 실행할 때의 환율로 &lt;b&gt;1,000만 원어치 달러만 떼어서&lt;/b&gt; 봇이 자기 장부에 따로 적도록 했습니다. 첫날 환율 1,348.5원 기준으로 약 7,416달러였습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 주문이 바로 체결됐는지 모릅니다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지정가 주문을 넣고 나면 언제 체결됐는지 바로 알기 어렵습니다. 그래서 다음 실행 때 실제 보유 수량을 조회해서, 장부와 차이 나는 만큼을 &quot;그새 체결됐다&quot;고 보고 반영합니다. 체결 가격은 주문했던 지정가로 어림합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4. 초당 거래 건수 초과 오류&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10월 19일에 국내 봇이 &lt;code&gt;EGW00215&lt;/code&gt;(원장 초당 거래건수 초과) 오류로 멈췄습니다. 토큰을 새로 받자마자 조회를 몰아서 한 게 원인이었습니다. 이 오류가 나면 1초, 2초, 4초, 8초, 16초씩 기다렸다가 다시 시도하도록 고쳤습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;미국 장 시간에 맞춰 돌리기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국내 봇은 4편에서 만든 대로 GitHub Actions가 평일 아침에 돌립니다. 미국 봇은 미국 장이 열려 있을 때 주문해야 해서 &lt;b&gt;한국 시간 밤 11시 50분&lt;/b&gt;에 돌게 했습니다. 미국 장은 서머타임 때 한국 시간 밤 10시 30분, 아닐 때 11시 30분에 열리니, 11시 50분이면 어느 쪽이든 장중입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 GitHub Actions의 예약 실행은 몇십 분씩 늦거나 가끔 아예 빠지기도 합니다. 그래서 &lt;b&gt;새벽 1시에 한 번 더&lt;/b&gt; 돌게 걸어 두고, 같은 날 두 번 돌아도 주문은 한 번만 나가게 막았습니다. 날짜도 한국 날짜가 아니라 &lt;b&gt;뉴욕 날짜&lt;/b&gt;로 셉니다. 그래야 밤 11시 50분에 돌든 자정을 넘겨 새벽 1시에 돌든 같은 거래일로 봅니다.&lt;/p&gt;
&lt;pre class=&quot;applescript&quot;&gt;&lt;code&gt;on:
  schedule:
    - cron: &quot;50 14 * * 1-5&quot;   # 한국시간 23:50
    - cron: &quot;0 16 * * 1-5&quot;    # 한국시간 01:00 (늦거나 빠질 때 대비)&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;현황판도 만들었습니다&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;봇이 셋(국내 봇, 미국 봇, 그리고 다음 편에서 소개할 AI 실험)으로 늘어나니 텔레그램 알림만으로는 한눈에 보기가 어려웠습니다. 그래서 매일 세 봇의 장부를 모아 &lt;b&gt;현황판(STATUS.md)&lt;/b&gt;을 만들어 저장소에 올리도록 했습니다. 시작 금액, 지금 평가금액, 비교 대상 수익률, 날짜별 그래프가 한 페이지에 나옵니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2주 모의투자 성적표&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10월 16일부터 돌리기 시작해서 2주가 지났습니다. 모두 한국투자증권 모의투자(가상 돈) 기준입니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;구분&lt;/th&gt;
&lt;th&gt;시작&lt;/th&gt;
&lt;th&gt;지금&lt;/th&gt;
&lt;th&gt;수익률&lt;/th&gt;
&lt;th&gt;비교&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;국내 봇&lt;/td&gt;
&lt;td&gt;1,000만 원&lt;/td&gt;
&lt;td&gt;10,008,600원&lt;/td&gt;
&lt;td&gt;+0.09%&lt;/td&gt;
&lt;td&gt;KODEX 200 +5.04%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;미국 봇&lt;/td&gt;
&lt;td&gt;1,000만 원&lt;/td&gt;
&lt;td&gt;9,778,799원&lt;/td&gt;
&lt;td&gt;-2.21%&lt;/td&gt;
&lt;td&gt;QQQ(달러) -1.75%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;합계&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;2,000만 원&lt;/td&gt;
&lt;td&gt;19,787,399원&lt;/td&gt;
&lt;td&gt;&lt;b&gt;-1.06%&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미국 봇은 지금 QQQ가 200일 평균(677달러)보다 한참 위(725달러)라 QQQ 10주를 들고 있습니다. 하필 시작하자마자 나스닥이 빠지는 구간이라, 10월 23일에는 미국 봇이 한때 -4.13%까지 내려갔다가 일부 회복했습니다. QQQ 자체가 이 기간 -1.75% 빠졌고, 환율도 1,348.5원에서 1,335.3원으로 내려서 원화로는 조금 더 손해가 났습니다. 국내 봇은 지금 단기채권만 들고 있어서 거의 움직이지 않았는데, 그사이 KODEX 200은 +5% 올랐습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;솔직히 2주로는 아무것도 판단할 수 없습니다. 이 전략은 한 달에 한 번 움직이고, 진짜 실력은 크게 빠지는 장에서 드러납니다. 지금 확인한 건 &quot;&lt;b&gt;주문이 제대로 나가고, 장부가 맞고, 매일 빠지지 않고 돈다&lt;/b&gt;&quot;는 것까지입니다. 그것만으로도 이번 2주는 꽤 의미가 있었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;지금까지 정리&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;전략을 더 똑똑하게 만드는 것보다 시장을 나누는 게 낙폭을 더 줄였다.&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;모의투자 해외주식은 국내와 조금씩 다르다.&lt;/b&gt; 지정가 주문, 따로 있는 가상 달러, 체결 확인 방식까지 손봐야 했습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;GitHub Actions 예약 실행은 믿되 한 번 더 건다.&lt;/b&gt; 늦거나 빠지는 걸 전제로 두 번 걸고 중복 주문을 막았습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;다음 계획&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;10편: 세 번째 봇, &quot;AI가 고른 종목&quot; 실험 이야기 (2주 동안 가상 장부로 +4.97%였는데, 이게 진짜인지 따져 봅니다)&lt;/li&gt;
&lt;li&gt;모의투자를 한두 달 더 돌려서 첫 리밸런싱 결과 보기&lt;/li&gt;
&lt;li&gt;결과가 괜찮으면 소액으로 실전 전환 검토&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;봇이 매일 아침 보내는 텔레그램 알림은 &lt;a href=&quot;https://bboxnote.tistory.com/22&quot;&gt;6편&lt;/a&gt;, 서버 없이 GitHub Actions로 돌리는 방법은 &lt;a href=&quot;https://bboxnote.tistory.com/20&quot;&gt;4편&lt;/a&gt;에 정리해 두었습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;주식 자동매매 봇 만들기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/17&quot;&gt;1편: 국내주식&amp;middot;한국투자증권&amp;middot;Python을 고른 이유&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/18&quot;&gt;2편: 모멘텀 전략 10년 백테스트, 지수도 못 이겼다&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/19&quot;&gt;3편: 8가지 전략 비교와 연 +32%의 함정&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/20&quot;&gt;4편: 서버 없이 GitHub Actions로 매일 아침 도는 봇&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/21&quot;&gt;5편: 공시&amp;middot;뉴스로 악재 종목 거르기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/22&quot;&gt;6편: 텔레그램 알림과 한국투자증권 모의투자 연결&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/23&quot;&gt;7편: 단타 규칙을 전부 돌려 봤더니&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/24&quot;&gt;8편: 살아남은 미너비니 규칙&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;9편: 미국주식도 붙였다, 나스닥100 추세추종 봇 (지금 글)&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/주식 자동매매</category>
      <category>GitHub Actions 주식 봇</category>
      <category>KIS 모의투자 해외주식</category>
      <category>QQQ 200일선</category>
      <category>나스닥100 추세추종</category>
      <category>미국주식 자동매매</category>
      <category>자동매매 후기</category>
      <category>퀀트 봇</category>
      <category>파이썬 주식 봇</category>
      <category>한국투자증권 해외주식 API</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/35</guid>
      <comments>https://bboxnote.tistory.com/entry/us-stock-bot#entry35comment</comments>
      <pubDate>Fri, 30 Oct 2026 11:10:48 +0900</pubDate>
    </item>
    <item>
      <title>수습기간 월급｜최저임금 90%는 누구에게만 가능할까 (2026&amp;middot;2027 금액표)</title>
      <link>https://bboxnote.tistory.com/entry/probation-pay</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/byI7Si/dJMcadKKmkK/9dXtY6ViYMIxe35Fjilfi1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/byI7Si/dJMcadKKmkK/9dXtY6ViYMIxe35Fjilfi1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/byI7Si/dJMcadKKmkK/9dXtY6ViYMIxe35Fjilfi1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbyI7Si%2FdJMcadKKmkK%2F9dXtY6ViYMIxe35Fjilfi1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;수습기간 월급 최저임금 90% 감액 조건 2026 2027 금액표&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새 회사에 합격하고 근로계약서를 받아 보면 &quot;수습기간 3개월, 급여의 90% 지급&quot; 같은 문장이 꽤 자주 보입니다. 처음이니 그러려니 하고 서명하게 되지만, 사실 수습이라고 해서 아무 조건 없이 월급을 깎을 수 있는 건 아닙니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;특히 최저임금을 받는 경우라면, 법이 정한 몇 가지 조건을 모두 갖춰야만 90%로 줄일 수 있습니다. 내 계약이 그 조건에 맞는지, 수습 중에도 챙겨야 할 권리는 뭔지 정리해 보겠습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;최저임금의 90%로 줄일 수 있는 건 &lt;b&gt;1년 이상 계약 + 수습 3개월 이내&lt;/b&gt;일 때뿐입니다.&lt;/li&gt;
&lt;li&gt;청소&amp;middot;경비&amp;middot;배달 같은 &lt;b&gt;단순노무직&lt;/b&gt;은 수습이어도 최저임금 100%를 줘야 합니다.&lt;/li&gt;
&lt;li&gt;2026년 수습 90%는 시급 &lt;b&gt;9,288원&lt;/b&gt;, 월 1,941,192원입니다.&lt;/li&gt;
&lt;li&gt;최저임금보다 많이 받는 경우의 수습 감액은 계약서에 정한 대로 따릅니다.&lt;/li&gt;
&lt;li&gt;수습 중에도 4대보험, 연차, 퇴직금 근속기간은 그대로 적용됩니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;수습기간이란&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수습은 회사가 정식 채용을 결정하기 전에 업무 능력과 적응을 지켜보는 기간입니다. 법에 &quot;수습은 몇 개월&quot;이라고 정해진 건 없고, 보통 근로계약서나 취업규칙에 3개월로 적습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;중요한 건 &lt;b&gt;수습도 이미 근로계약을 맺은 상태&lt;/b&gt;라는 점입니다. 아르바이트처럼 임시로 일하는 게 아니라 정식 직원이고, 다만 회사가 본채용 여부를 판단하는 기간이 붙어 있는 것뿐입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;최저임금 90%, 이 조건을 모두 갖춰야 합니다&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최저임금법은 수습 근로자에게 최저임금보다 적게 줄 수 있는 경우를 아주 좁게 정해 두었습니다. 아래 세 가지를 &lt;b&gt;모두&lt;/b&gt; 만족해야 합니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;조건&lt;/th&gt;
&lt;th&gt;내용&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;계약 기간&lt;/td&gt;
&lt;td&gt;&lt;b&gt;1년 이상&lt;/b&gt; 근로계약 (기간 정함이 없는 정규직 포함)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;감액 기간&lt;/td&gt;
&lt;td&gt;수습 시작일부터 &lt;b&gt;3개월 이내&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;직종&lt;/td&gt;
&lt;td&gt;&lt;b&gt;단순노무직이 아닐 것&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1년 미만 계약이라면&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;6개월, 10개월처럼 1년이 안 되는 계약직이나 단기 아르바이트는 수습이라는 이름을 붙여도 &lt;b&gt;최저임금 100%&lt;/b&gt;를 받아야 합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3개월이 넘는 수습이라면&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수습을 6개월로 정했더라도, 최저임금보다 적게 줄 수 있는 건 처음 3개월뿐입니다. 4개월째부터는 최저임금 이상을 받아야 합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;단순노무직이라면&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;고용노동부 고시에 따라 한국표준직업분류의 &lt;b&gt;단순노무 종사자(대분류 9)&lt;/b&gt;에 해당하는 일은 수습이어도 감액할 수 없습니다. 청소, 경비, 택배&amp;middot;배달, 주차 관리, 단순 포장&amp;middot;조립, 주방 보조, 건설 단순 작업 같은 일이 대표적입니다. 일을 배우는 데 시간이 거의 걸리지 않는다고 보기 때문입니다. 편의점이나 음식점 일처럼 애매한 경우는 실제로 하는 업무에 따라 분류가 달라질 수 있어서, 헷갈리면 고용노동부(1350)에 물어보는 게 정확합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2026&amp;middot;2027 수습 월급 금액표&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최저임금 기준, 주 40시간(월 209시간) 근무로 계산했습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;구분&lt;/th&gt;
&lt;th&gt;2026년&lt;/th&gt;
&lt;th&gt;2027년&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;최저시급 100%&lt;/td&gt;
&lt;td&gt;10,320원&lt;/td&gt;
&lt;td&gt;10,700원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;수습 90% 시급&lt;/td&gt;
&lt;td&gt;&lt;b&gt;9,288원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;9,630원&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;최저 월급 100%&lt;/td&gt;
&lt;td&gt;2,156,880원&lt;/td&gt;
&lt;td&gt;2,236,300원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;수습 90% 월급&lt;/td&gt;
&lt;td&gt;&lt;b&gt;1,941,192원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;2,012,670원&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3개월 동안 차이&lt;/td&gt;
&lt;td&gt;약 64만 원&lt;/td&gt;
&lt;td&gt;약 67만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내년 최저임금과 실수령액은 &lt;a href=&quot;https://bboxnote.tistory.com/25&quot;&gt;2027 최저임금 실수령액 글&lt;/a&gt;에 정리해 두었습니다. 위 조건에 맞지 않는데 90%만 받았다면, 차액은 밀린 임금이라 나중에라도 청구할 수 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;최저임금보다 많이 받는 경우는?&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연봉이 최저임금보다 높은 경우, 예를 들어 월급 300만 원에 &quot;수습 기간 90% 지급&quot;이라고 계약했다면 그 계약대로 270만 원을 받는 건 문제가 없습니다. 최저임금법은 최저임금 아래로 내려가는 것만 막기 때문입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 깎은 금액이 최저임금 아래로 내려가면 안 됩니다. 월급 220만 원을 90%로 줄이면 198만 원인데, 이건 2026년 최저임금 월급(2,156,880원)보다 적으니 위 세 가지 조건을 모두 갖춘 경우에만 가능합니다. 그리고 감액 조건은 반드시 &lt;b&gt;근로계약서에 미리 적혀 있어야&lt;/b&gt; 합니다. 계약서에 없는데 입사 후에 말로 &quot;수습이라 덜 준다&quot;고 하는 건 안 됩니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;수습 중에도 똑같이 받는 것들&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4대보험&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수습이라도 4대보험 가입 대상입니다. &quot;수습 끝나고 가입해 줄게&quot;는 원칙적으로 맞지 않습니다. 가입이 안 되어 있으면 나중에 실업급여나 육아휴직급여를 받을 때 가입 기간이 모자랄 수 있습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;연차&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입사 첫해에는 한 달 개근할 때마다 연차가 1일씩 생기고, 수습 기간도 똑같이 셉니다. 수습 3개월을 마치면 이미 연차 3일이 생겨 있는 셈입니다. 연차가 어떻게 돈으로 바뀌는지는 &lt;a href=&quot;https://bboxnote.tistory.com/26&quot;&gt;연차수당 계산법 글&lt;/a&gt;을 참고하세요.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;퇴직금 근속기간&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수습 기간도 근속기간에 들어갑니다. 수습 3개월을 포함해서 1년을 채우면 퇴직금이 생깁니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;연장&amp;middot;야간&amp;middot;휴일수당&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수습 중에 야근을 했다면 똑같이 1.5배를 받습니다(5인 이상 사업장). 계산 방법은 &lt;a href=&quot;https://bboxnote.tistory.com/entry/overtime-pay&quot;&gt;야간&amp;middot;연장&amp;middot;휴일수당 계산법&lt;/a&gt;에 정리해 두었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;수습 끝나고 정식 채용이 안 되면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수습 기간이 끝나고 회사가 정식 채용을 거부하는 걸 &quot;본채용 거부&quot;라고 합니다. 일반 해고보다는 회사 판단의 폭이 넓게 인정되지만, 그래도 &lt;b&gt;객관적이고 합리적인 이유&lt;/b&gt;가 있어야 하고 그 이유를 &lt;b&gt;서면으로&lt;/b&gt; 알려야 합니다. 단순히 &quot;마음에 안 든다&quot;는 이유는 부당해고가 될 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또 계속 근무한 기간이 3개월 미만이면 회사는 30일 전 해고 예고를 하지 않아도 됩니다. 3개월을 넘겼다면 30일 전에 알리거나, 그러지 않았다면 30일분 통상임금을 해고예고수당으로 줘야 합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 알바도 수습이라며 시급을 깎을 수 있나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대부분 안 됩니다. 아르바이트는 1년 미만 계약이 많아서, 수습이라는 이름이 붙어도 최저임금 100%를 받아야 하는 경우가 대부분입니다. 1년 이상 계약이라도 청소&amp;middot;배달&amp;middot;주방 보조처럼 단순노무직이면 깎을 수 없습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 수습 기간을 회사 마음대로 늘릴 수 있나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계약서나 취업규칙에 연장할 수 있다는 근거가 있고, 본인에게 알리고 합리적인 이유가 있을 때 가능하다고 봅니다. 연장하더라도 최저임금 감액은 처음 3개월까지만 됩니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 수습 기간에 받은 월급이 적으면 퇴직금도 줄어드나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퇴직금은 퇴사 전 3개월 평균임금으로 계산하기 때문에, 1년 넘게 일한 뒤 퇴사한다면 수습 기간 월급은 계산에 거의 들어가지 않습니다. 계산 방법은 &lt;a href=&quot;https://bboxnote.tistory.com/2&quot;&gt;퇴직금 계산 방법 글&lt;/a&gt;을 참고하세요.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;정리하면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수습이라고 월급을 깎을 수 있는 건 생각보다 좁습니다. 최저임금 수준이라면 1년 이상 계약, 3개월 이내, 단순노무직이 아닐 것, 세 가지를 모두 갖춰야 90%가 가능합니다. 계약서에 수습 감액이 적혀 있다면 내 경우가 이 조건에 맞는지 한 번 확인해 보고, 수습 중에도 4대보험과 연차는 똑같이 챙기면 됩니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;회사 규정이나 계약 내용에 따라 다를 수 있습니다. 내 경우가 애매하다면 고용노동부 상담센터(국번 없이 1350)에 물어볼 수 있습니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/월급&amp;middot;노동</category>
      <category>2027 최저임금 수습</category>
      <category>수습 4대보험</category>
      <category>수습 감액</category>
      <category>수습 연차</category>
      <category>수습 최저임금 90%</category>
      <category>수습 퇴직금</category>
      <category>수습기간 급여</category>
      <category>수습기간 월급</category>
      <category>수습기간 해고</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/34</guid>
      <comments>https://bboxnote.tistory.com/entry/probation-pay#entry34comment</comments>
      <pubDate>Fri, 30 Oct 2026 01:32:57 +0900</pubDate>
    </item>
    <item>
      <title>출산휴가급여 2026｜90일 동안 월 최대 220만 원, 배우자 출산휴가 20일까지 정리</title>
      <link>https://bboxnote.tistory.com/entry/maternity-leave-pay</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bh5YpA/dJMcacFgpci/m1evfqSsKnSWeKqufrRON0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bh5YpA/dJMcacFgpci/m1evfqSsKnSWeKqufrRON0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bh5YpA/dJMcacFgpci/m1evfqSsKnSWeKqufrRON0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbh5YpA%2FdJMcacFgpci%2Fm1evfqSsKnSWeKqufrRON0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;2026 출산휴가급여 상한 220만 원 배우자 출산전후휴가 20일 정리&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출산을 앞두면 준비할 게 산더미인데, 그중에서도 꼭 미리 알아 둬야 하는 게 돈 문제입니다. 쉬는 동안 월급이 얼마나 나오는지, 회사가 주는 건지 나라가 주는 건지, 남편은 며칠이나 쉴 수 있는지 막상 찾아보면 정보가 흩어져 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2026년에는 출산휴가급여 상한이 월 220만 원으로 올랐고, 9월부터는 배우자 출산휴가를 출산 전부터 쓸 수 있게 바뀌었습니다. 엄마와 아빠가 받는 휴가와 급여를 순서대로 정리해 보겠습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;출산전후휴가는 &lt;b&gt;90일&lt;/b&gt;(쌍둥이 이상 120일, 미숙아 100일)이고, 출산 후 45일 이상은 꼭 남겨야 합니다.&lt;/li&gt;
&lt;li&gt;휴가 중 급여는 통상임금 100%, 고용보험 지원 상한은 &lt;b&gt;월 220만 원&lt;/b&gt;(30일 기준)입니다.&lt;/li&gt;
&lt;li&gt;중소기업(우선지원대상기업)은 90일 전부, 대기업은 마지막 30일을 고용보험에서 줍니다.&lt;/li&gt;
&lt;li&gt;배우자 출산휴가는 &lt;b&gt;20일 전부 유급&lt;/b&gt;, 9월 18일부터 &lt;b&gt;출산예정일 50일 전&lt;/b&gt;부터 쓸 수 있습니다.&lt;/li&gt;
&lt;li&gt;급여 신청은 휴가가 끝난 뒤 &lt;b&gt;12개월 안에&lt;/b&gt; 고용24에서 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;출산전후휴가는 며칠일까&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엄마가 쓰는 출산휴가의 정식 이름은 &lt;b&gt;출산전후휴가&lt;/b&gt;입니다. 출산 전과 후를 합쳐서 쓰는 휴가라는 뜻입니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;구분&lt;/th&gt;
&lt;th&gt;휴가 일수&lt;/th&gt;
&lt;th&gt;출산 후 꼭 남겨야 하는 일수&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;한 명 출산&lt;/td&gt;
&lt;td&gt;90일&lt;/td&gt;
&lt;td&gt;45일 이상&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;미숙아 출산&lt;/td&gt;
&lt;td&gt;100일&lt;/td&gt;
&lt;td&gt;45일 이상&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;쌍둥이 이상&lt;/td&gt;
&lt;td&gt;120일&lt;/td&gt;
&lt;td&gt;60일 이상&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출산 전에 너무 일찍 쉬기 시작하면 출산 후에 쓸 날이 줄어들기 때문에, 법은 출산 후 45일(쌍둥이 이상은 60일)을 꼭 남기도록 정해 두었습니다. 예정일보다 늦게 낳아서 출산 전 휴가가 길어지더라도, 출산 후 45일은 그대로 보장됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;휴가 일수는 주말과 공휴일을 포함한 달력 날짜로 셉니다. 회사는 출산전후휴가를 거부할 수 없고, 휴가 기간과 그 뒤 30일 동안은 해고할 수 없습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;출산휴가급여는 얼마일까&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;기본 원칙: 통상임금 100%&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출산전후휴가 중에는 휴가 전 &lt;b&gt;통상임금의 100%&lt;/b&gt;를 받습니다. 다만 고용보험에서 주는 금액에는 상한이 있어서, 2026년 1월 1일부터는 30일 기준 &lt;b&gt;220만 원&lt;/b&gt;까지입니다(2025년은 210만 원). 최저임금보다 적게 나오지는 않습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;누가 주나: 회사 규모에 따라 다릅니다&lt;/h3&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;구분&lt;/th&gt;
&lt;th&gt;처음 60일&lt;/th&gt;
&lt;th&gt;마지막 30일&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;우선지원대상기업 (대부분의 중소기업)&lt;/td&gt;
&lt;td&gt;고용보험 (상한 초과분은 회사가 채움)&lt;/td&gt;
&lt;td&gt;고용보험&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;대규모기업&lt;/td&gt;
&lt;td&gt;회사가 통상임금 100%&lt;/td&gt;
&lt;td&gt;고용보험&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음 60일(쌍둥이 이상은 75일)은 법으로 &lt;b&gt;유급이 보장되는 기간&lt;/b&gt;이라, 내 통상임금이 220만 원보다 많으면 그 차액을 회사가 채워 줘야 합니다. 마지막 30일은 고용보험 상한까지만 나오고, 회사가 차액을 줄지는 회사 규정에 따라 다릅니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;월급별로 계산해 보면&lt;/h3&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;월 통상임금&lt;/th&gt;
&lt;th&gt;처음 60일&lt;/th&gt;
&lt;th&gt;마지막 30일&lt;/th&gt;
&lt;th&gt;90일 합계&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;200만 원&lt;/td&gt;
&lt;td&gt;400만 원&lt;/td&gt;
&lt;td&gt;200만 원&lt;/td&gt;
&lt;td&gt;600만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;250만 원&lt;/td&gt;
&lt;td&gt;500만 원&lt;/td&gt;
&lt;td&gt;220만 원&lt;/td&gt;
&lt;td&gt;720만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;300만 원&lt;/td&gt;
&lt;td&gt;600만 원&lt;/td&gt;
&lt;td&gt;220만 원&lt;/td&gt;
&lt;td&gt;820만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;400만 원&lt;/td&gt;
&lt;td&gt;800만 원&lt;/td&gt;
&lt;td&gt;220만 원&lt;/td&gt;
&lt;td&gt;1,020만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막 30일에 회사가 차액을 따로 주지 않는다는 가정으로 계산했습니다. 고용보험에서 나오는 출산휴가급여는 세금이 붙지 않는 비과세 소득입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;받기 위한 조건&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;휴가가 끝나는 날 기준으로 고용보험 가입 기간(피보험 단위기간)이 &lt;b&gt;180일 이상&lt;/b&gt;일 것&lt;/li&gt;
&lt;li&gt;회사에서 실제로 출산전후휴가를 받았을 것&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;고용보험에 가입하지 않은 1인 자영업자, 프리랜서, 특고 종사자 등은 별도의 &lt;b&gt;출산급여&lt;/b&gt; 제도로 3개월간 월 50만 원(총 150만 원)을 받을 수 있습니다. 조건이 따로 있으니 고용센터에서 확인해 보세요.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;아빠는? 배우자 출산휴가 20일&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아빠가 쓰는 휴가는 2026년 9월 18일부터 이름이 &lt;b&gt;배우자 출산전후휴가&lt;/b&gt;로 바뀌었습니다. 이름처럼 이제는 출산 전부터 쓸 수 있습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;항목&lt;/th&gt;
&lt;th&gt;내용&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;휴가 일수&lt;/td&gt;
&lt;td&gt;20일, 전부 유급 (근무일 기준)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;쓸 수 있는 기간&lt;/td&gt;
&lt;td&gt;&lt;b&gt;출산예정일 50일 전&lt;/b&gt;부터 출산 후 120일 안&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;나눠 쓰기&lt;/td&gt;
&lt;td&gt;3번까지 나눠서 (최대 4번 사용)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;급여 지원&lt;/td&gt;
&lt;td&gt;우선지원대상기업은 20일 전부 고용보험 지원, 상한 약 168만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예전에는 출산한 뒤에만 쓸 수 있어서 산전 검사나 입원 준비 때 아빠가 연차를 써야 했는데, 이제는 배우자 출산휴가를 미리 나눠 쓸 수 있습니다. 근무일 기준 20일이라 주말을 끼우면 한 달 가까이 쉴 수 있습니다. 회사는 이 휴가도 거부할 수 없습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;신청 방법&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;회사에 휴가 신청&lt;/b&gt;: 출산전후휴가는 회사에 미리 알리고, 배우자 출산휴가는 날짜를 적은 문서나 전자문서로 신청합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;회사가 확인서 제출&lt;/b&gt;: 휴가가 시작되면 회사가 고용센터에 출산전후휴가 확인서를 냅니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;급여 신청&lt;/b&gt;: 휴가 시작 후 1개월이 지나면 &lt;b&gt;고용24&lt;/b&gt;(work24.go.kr)에서 신청합니다. 대규모기업은 고용보험이 주는 마지막 30일분만 신청합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;휴가가 끝난 날부터 &lt;b&gt;12개월이 지나면 신청할 수 없으니&lt;/b&gt;, 아기 돌보느라 정신없더라도 날짜를 꼭 챙겨 두세요.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;출산휴가 다음은 육아휴직&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;출산전후휴가가 끝나면 바로 육아휴직으로 이어서 쓰는 경우가 많습니다. 육아휴직은 처음 석 달 월 최대 250만 원, 부부가 함께 쓰면 6개월째 최대 450만 원까지 받습니다. 자세한 내용은 &lt;a href=&quot;https://bboxnote.tistory.com/entry/parental-leave-pay&quot;&gt;육아휴직급여 2026 글&lt;/a&gt;에 정리해 두었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 출산휴가 중에 연차도 생기나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네, 출산전후휴가 기간은 출근한 것으로 봅니다. 연차 계산과 퇴직금 근속기간에 모두 들어갑니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 계약직인데 휴가 중에 계약이 끝나면요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계약 기간이 끝나면 근로관계도 끝나서 그 뒤로는 급여가 나오지 않습니다. 다만 계약이 끝나기 전 휴가 기간분은 받을 수 있습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 유산이나 사산을 한 경우는요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;임신 기간에 따라 10일부터 최대 90일까지 유산&amp;middot;사산휴가를 받을 수 있고, 같은 방식으로 급여도 나옵니다. 9월부터는 배우자도 유산&amp;middot;사산휴가를 받을 수 있게 됐습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 출산휴가급여에도 세금이 붙나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;고용보험에서 나오는 출산휴가급여는 비과세입니다. 회사가 따로 주는 차액은 일반 월급처럼 세금이 붙습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;정리하면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엄마는 90일 동안 통상임금을 받고, 고용보험 상한은 올해부터 월 220만 원입니다. 처음 60일은 내 월급만큼 보장되고, 마지막 30일은 상한까지 나옵니다. 아빠는 20일을 유급으로 쉴 수 있고, 이제는 출산 50일 전부터 나눠 쓸 수 있습니다. 출산 예정일이 정해지면 부부가 같이 달력을 펴 놓고 출산휴가와 육아휴직을 어떻게 이어 쓸지 미리 짜 두면 좋습니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;2026년 10월 기준 내용입니다. 내 경우의 정확한 금액과 조건은 고용24나 고용노동부 상담센터(국번 없이 1350)에서 확인할 수 있습니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/지원금&amp;middot;복지</category>
      <category>고용24 출산휴가</category>
      <category>배우자 출산전후휴가</category>
      <category>배우자 출산휴가</category>
      <category>아빠 출산휴가 20일</category>
      <category>출산전후휴가 급여</category>
      <category>출산휴가 기간</category>
      <category>출산휴가 신청 방법</category>
      <category>출산휴가급여</category>
      <category>출산휴가급여 상한액</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/33</guid>
      <comments>https://bboxnote.tistory.com/entry/maternity-leave-pay#entry33comment</comments>
      <pubDate>Mon, 26 Oct 2026 22:17:33 +0900</pubDate>
    </item>
    <item>
      <title>스팀 핼러윈 세일 2026｜10월 27일 새벽 2시 시작, 지금 해 두면 좋은 준비 5가지</title>
      <link>https://bboxnote.tistory.com/entry/steam-halloween-sale-2026</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/C7bAJ/dJMcabzkRbj/8skaugTnUF20WJK3bgB7ZK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/C7bAJ/dJMcabzkRbj/8skaugTnUF20WJK3bgB7ZK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/C7bAJ/dJMcabzkRbj/8skaugTnUF20WJK3bgB7ZK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FC7bAJ%2FdJMcabzkRbj%2F8skaugTnUF20WJK3bgB7ZK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;스팀 핼러윈 세일 2026 스크림 페스트 일정 한국 시간&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;날이 쌀쌀해지면 스팀에도 공포 게임 시즌이 옵니다. 매년 핼러윈 무렵 열리는 &lt;b&gt;스팀 스크림 페스트(Steam Scream Fest)&lt;/b&gt;, 흔히 핼러윈 세일이라고 부르는 그 행사입니다. 공포&amp;middot;호러 게임이 한꺼번에 할인하는 기간이라, 평소 무서워서 미뤄 둔 게임이나 친구들과 하려고 찜해 둔 협동 공포 게임을 싸게 살 기회입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;올해 일정은 한국 시간으로 &lt;b&gt;10월 27일 화요일 새벽 2시&lt;/b&gt;에 시작합니다. 세일이 시작되기 전에 해 두면 좋은 것들까지 같이 정리해 봤습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;기간: &lt;b&gt;2026년 10월 27일(화) 새벽 2시 ~ 11월 3일(화) 새벽 3시&lt;/b&gt; (한국 시간)&lt;/li&gt;
&lt;li&gt;공포&amp;middot;호러&amp;middot;스릴러 장르 게임이 중심인 테마 세일입니다.&lt;/li&gt;
&lt;li&gt;세일 전에 위시리스트를 정리하고 할인 알림을 켜 두면 놓치지 않습니다.&lt;/li&gt;
&lt;li&gt;세일 직전에 산 게임은 조건이 맞으면 환불 후 할인가로 다시 살 수 있습니다.&lt;/li&gt;
&lt;li&gt;다음 큰 세일은 &lt;b&gt;겨울 세일(12월 18일 새벽 시작)&lt;/b&gt;입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;스팀 핼러윈 세일 2026 일정&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스팀은 세일 시간을 미국 서부 시간(태평양 시간) 오전 10시 기준으로 정합니다. 한국 시간으로 바꾸면 이렇습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;구분&lt;/th&gt;
&lt;th&gt;미국 서부 시간&lt;/th&gt;
&lt;th&gt;한국 시간&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;시작&lt;/td&gt;
&lt;td&gt;10월 26일(월) 오전 10시&lt;/td&gt;
&lt;td&gt;&lt;b&gt;10월 27일(화) 새벽 2시&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;종료&lt;/td&gt;
&lt;td&gt;11월 2일(월) 오전 10시&lt;/td&gt;
&lt;td&gt;&lt;b&gt;11월 3일(화) 새벽 3시&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시작은 새벽 2시인데 끝나는 건 새벽 3시인 이유는, 미국이 11월 1일에 서머타임을 끝내기 때문입니다. 미국 시간은 똑같이 오전 10시지만 한국과의 시차가 16시간에서 17시간으로 바뀝니다. 그래서 마지막 날 밤에 고민하다가 사도 새벽 3시 전까지는 할인 가격이 유지됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정확한 일정은 스팀 개발자용 공지(Steamworks)의 2026년 하반기 행사 일정을 기준으로 정리했습니다. 올해 남은 스팀 세일 일정 전체는 &lt;a href=&quot;https://bboxnote.tistory.com/entry/20262027-%EC%8A%A4%ED%8C%80-%EC%84%B8%EC%9D%BC-%EC%9D%BC%EC%A0%95-%EC%B4%9D%EC%A0%95%EB%A6%AC-%ED%95%9C%EA%B5%AD-%EC%8B%9C%EA%B0%84-%ED%95%BC%EB%9F%AC%EC%9C%88%C2%B7%EA%B2%A8%EC%9A%B8%C2%B7%EB%B4%84%C2%B7%EC%97%AC%EB%A6%84-%EC%84%B8%EC%9D%BC&quot;&gt;2026~2027 스팀 세일 일정 총정리&lt;/a&gt;에 모아 두었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;어떤 게임이 할인할까&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스크림 페스트는 여름&amp;middot;겨울 세일처럼 거의 모든 게임이 할인하는 행사가 아니라, &lt;b&gt;공포&amp;middot;호러&amp;middot;서바이벌&amp;middot;스릴러&lt;/b&gt; 장르 위주의 테마 세일입니다. 할인 여부는 게임을 만든 회사가 정하기 때문에, 어떤 게임이 얼마나 할인할지는 세일이 시작돼야 정확히 알 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래도 매년 이런 종류의 게임이 많이 올라옵니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;종류&lt;/th&gt;
&lt;th&gt;이런 분께&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;협동 공포 게임&lt;/td&gt;
&lt;td&gt;친구 2~4명이 같이 소리 지르며 하고 싶을 때&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;서바이벌 호러 시리즈&lt;/td&gt;
&lt;td&gt;스토리 있는 공포 게임을 혼자 몰입해서 하고 싶을 때&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;비대칭 대전 (1 대 다수)&lt;/td&gt;
&lt;td&gt;살인마와 생존자로 나뉘어 겨루는 걸 좋아할 때&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;인디 공포 게임&lt;/td&gt;
&lt;td&gt;짧고 싸게, 독특한 분위기를 즐기고 싶을 때&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세일 페이지에는 보통 장르별, 가격대별 추천 목록이 따로 열립니다. 무서운 걸 잘 못 본다면 &quot;심리 공포&quot;보다는 퍼즐이나 탐험 위주의 가벼운 공포 게임부터 찾아보는 것도 방법입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;세일 전에 해 두면 좋은 준비 5가지&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 위시리스트 정리하기&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세일이 시작되면 스팀은 &lt;b&gt;위시리스트에 담긴 게임이 할인할 때&lt;/b&gt; 메일과 앱 알림을 보내 줍니다. 사고 싶었던 게임을 지금 미리 담아 두면, 세일 페이지를 하나하나 뒤지지 않아도 할인 소식이 먼저 옵니다. 반대로 이제 관심 없는 게임은 빼 두는 게 알림이 덜 번잡합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 원하는 가격에 알림 걸어 두기&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스팀 기본 알림은 &quot;할인했다&quot;만 알려 주고 &quot;얼마까지 내려갔는지&quot;는 직접 확인해야 합니다. 원하는 가격 이하로 떨어질 때만 알림을 받는 방법은 &lt;a href=&quot;https://bboxnote.tistory.com/entry/%EC%8A%A4%ED%8C%80-%ED%95%A0%EC%9D%B8-%EC%95%8C%EB%A6%BC-%EB%B0%9B%EB%8A%94-%EB%B2%95-%EC%9B%90%ED%95%98%EB%8A%94-%EA%B0%80%EA%B2%A9-%EB%90%98%EB%A9%B4-%EB%94%94%EC%8A%A4%EC%BD%94%EB%93%9C%C2%B7%EC%B9%B4%EC%B9%B4%EC%98%A4%ED%86%A1%EC%9C%BC%EB%A1%9C-%EB%B0%9B%EA%B8%B0-%EC%97%AD%EB%8C%80-%EC%B5%9C%EC%A0%80%EA%B0%80-%ED%99%95%EC%9D%B8%EA%B9%8C%EC%A7%80&quot;&gt;스팀 할인 알림 받는 법&lt;/a&gt;에 정리해 두었습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 역대 최저가 확인하기&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세일이라고 다 싼 건 아닙니다. 같은 게임이 겨울 세일에 더 크게 할인한 적이 있다면, 이번엔 넘기고 기다리는 게 나을 수도 있습니다. 사기 전에 그 게임의 역대 최저가를 한 번 확인해 보고, 이번 할인가가 최저가에 가깝다면 사고, 많이 차이 나면 겨울 세일까지 기다리는 식으로 판단하면 됩니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4. 직전에 산 게임이 있다면 환불 조건 확인&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세일 바로 전에 정가로 산 게임이 있다면 억울할 필요 없습니다. 스팀은 &lt;b&gt;구매 후 14일 이내, 플레이 시간 2시간 미만&lt;/b&gt;이면 이유를 묻지 않고 환불해 줍니다. 이 조건에 맞으면 환불받고 세일 가격으로 다시 사면 됩니다. 이미 2시간 넘게 했다면 이 방법은 쓸 수 없습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;5. 지갑 잔액과 결제 수단 점검&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세일 첫날 새벽에는 결제가 몰려서 카드 결제가 느리거나 실패하는 경우가 종종 있습니다. 스팀 지갑에 미리 잔액을 넣어 두면 결제가 빠릅니다. 다만 지갑에 넣은 돈은 현금으로 돌려받을 수 없으니, 살 게임이 정해진 만큼만 충전하는 게 좋습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;살까, 겨울 세일까지 기다릴까&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;핼러윈 세일 다음의 큰 세일은 &lt;b&gt;겨울 세일&lt;/b&gt;입니다. 2026년 겨울 세일은 미국 시간 12월 17일부터 2027년 1월 4일까지로, 한국 시간으로는 &lt;b&gt;12월 18일 새벽&lt;/b&gt;에 시작합니다. 겨울 세일은 장르와 상관없이 거의 모든 게임이 할인하는 큰 행사입니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;지금 사는 게 나은 경우&lt;/b&gt;: 핼러윈에 친구들과 바로 하고 싶은 협동 공포 게임, 이미 역대 최저가 수준으로 할인한 게임&lt;/li&gt;
&lt;li&gt;&lt;b&gt;기다려도 되는 경우&lt;/b&gt;: 공포 장르가 아닌 게임, 할인 폭이 평소보다 작은 게임, 당장 할 시간이 없는 게임&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세일 때 산 게임이 쌓이기만 하고 안 하게 되는 걸 흔히 &quot;라이브러리 장식&quot;이라고 부르죠. 이번 주말에 실제로 할 게임 한두 개만 고르는 것도 좋은 전략입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 스팀 핼러윈 세일은 정확히 몇 시에 시작하나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국 시간 10월 27일 화요일 새벽 2시입니다. 끝나는 시간은 11월 3일 화요일 새벽 3시입니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 세일 기간 중에 가격이 더 내려가기도 하나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요즘 스팀 세일은 기간 내내 같은 할인가가 유지되는 게 기본이라, 첫날 사도 손해 볼 일은 거의 없습니다. 예전처럼 하루마다 바뀌는 깜짝 할인은 없습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 세일 중에 산 게임도 환불되나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네, 세일 가격으로 산 게임도 구매 14일 이내, 플레이 2시간 미만이면 똑같이 환불할 수 있습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 선물로 보내도 할인가가 적용되나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네, 친구에게 선물하기로 사도 할인가가 그대로 적용됩니다. 친구 위시리스트에 있는 게임을 골라 주면 실패가 없습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;정리하면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;올해 스팀 핼러윈 세일은 10월 27일 새벽 2시부터 11월 3일 새벽 3시까지입니다. 지금 위시리스트를 정리하고, 원하는 가격 알림을 걸어 두고, 역대 최저가와 비교해서 살지 말지 정하면 충분합니다. 무서운 게임 하나 골라서 핼러윈 밤에 불 끄고 해 보는 것도 나쁘지 않겠죠.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;세일 일정은 Valve 사정에 따라 바뀔 수 있습니다. 할인 여부와 할인율은 게임마다 다르니 세일 페이지에서 최종 가격을 확인하세요. 이 블로그는 Valve, 스팀과 관련이 없습니다.&lt;/p&gt;</description>
      <category>게임/스팀 할인&amp;middot;세일</category>
      <category>스팀 겨울 세일 2026</category>
      <category>스팀 공포게임 할인</category>
      <category>스팀 세일 일정</category>
      <category>스팀 세일 한국시간</category>
      <category>스팀 스크림 페스트</category>
      <category>스팀 위시리스트</category>
      <category>스팀 할로윈 세일 2026</category>
      <category>스팀 핼러윈 세일</category>
      <category>스팀 환불</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/32</guid>
      <comments>https://bboxnote.tistory.com/entry/steam-halloween-sale-2026#entry32comment</comments>
      <pubDate>Sat, 24 Oct 2026 21:16:10 +0900</pubDate>
    </item>
    <item>
      <title>육아휴직급여 2026｜월 최대 250만 원, 6+6이면 450만 원까지 (1~2주 단기 육아휴직 포함)</title>
      <link>https://bboxnote.tistory.com/entry/parental-leave-pay</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/rym9Y/dJMcaa1xzqJ/qp56zPGCsg6YAgNMM7hN70/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/rym9Y/dJMcaa1xzqJ/qp56zPGCsg6YAgNMM7hN70/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/rym9Y/dJMcaa1xzqJ/qp56zPGCsg6YAgNMM7hN70/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Frym9Y%2FdJMcaa1xzqJ%2Fqp56zPGCsg6YAgNMM7hN70%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;2026 육아휴직급여 상한액 6+6 부모육아휴직제 단기 육아휴직 정리&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아이가 생기면 가장 먼저 계산기를 두드리게 되는 게 육아휴직입니다. &quot;쉬는 동안 얼마나 받을 수 있을까&quot;, &quot;둘 다 쉬면 손해 아닐까&quot; 같은 고민이 자연스럽게 따라옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;몇 년 전만 해도 육아휴직급여는 월 150만 원이 상한이라 망설이는 사람이 많았는데, 지금은 처음 석 달은 월 250만 원까지 받습니다. 부부가 같이 쓰면 더 늘어나고, 올해 8월부터는 방학 때 1~2주만 쓰는 단기 육아휴직도 생겼습니다. 2026년 기준으로 한 번에 정리해 보겠습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;1~3개월은 통상임금 100%, &lt;b&gt;월 최대 250만 원&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;4~6개월은 100%, 월 최대 200만 원 / 7개월부터는 80%, 월 최대 160만 원&lt;/li&gt;
&lt;li&gt;생후 18개월 이내 자녀를 부부가 함께 키우면 &lt;b&gt;6+6&lt;/b&gt;으로 6개월째 최대 450만 원&lt;/li&gt;
&lt;li&gt;부부가 각각 3개월 이상 쓰면 1인당 기간이 &lt;b&gt;1년 &amp;rarr; 1년 6개월&lt;/b&gt;로 늘어납니다.&lt;/li&gt;
&lt;li&gt;2026년 8월 20일부터 &lt;b&gt;1주&amp;middot;2주 단기 육아휴직&lt;/b&gt;도 쓸 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;누가 받을 수 있나&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;조건은 두 가지입니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;만 8세 이하 또는 초등학교 2학년 이하&lt;/b&gt; 자녀가 있을 것 (임신 중에도 쓸 수 있습니다)&lt;/li&gt;
&lt;li&gt;육아휴직 시작 전까지 고용보험 가입 기간(피보험 단위기간)이 &lt;b&gt;180일 이상&lt;/b&gt;일 것&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;엄마, 아빠 누구나 쓸 수 있고, 같은 자녀라도 부부가 각각 따로 쓸 수 있습니다. 회사는 육아휴직 신청을 거부할 수 없고, 육아휴직을 이유로 불이익을 줄 수도 없습니다. 다만 같은 회사에서 일한 기간이 6개월이 안 되면 회사가 거부할 수 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2026년 육아휴직급여 얼마 받나&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;기본 구간&lt;/h3&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;사용 기간&lt;/th&gt;
&lt;th&gt;지급률&lt;/th&gt;
&lt;th&gt;월 상한&lt;/th&gt;
&lt;th&gt;월 하한&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1~3개월&lt;/td&gt;
&lt;td&gt;통상임금 100%&lt;/td&gt;
&lt;td&gt;250만 원&lt;/td&gt;
&lt;td&gt;70만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4~6개월&lt;/td&gt;
&lt;td&gt;통상임금 100%&lt;/td&gt;
&lt;td&gt;200만 원&lt;/td&gt;
&lt;td&gt;70만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;7개월 이후&lt;/td&gt;
&lt;td&gt;통상임금 80%&lt;/td&gt;
&lt;td&gt;160만 원&lt;/td&gt;
&lt;td&gt;70만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예전에는 급여의 25%를 떼어 두었다가 복직하고 6개월이 지나야 줬는데(사후지급), 지금은 이 제도가 없어져서 &lt;b&gt;매달 전액&lt;/b&gt;을 받습니다. 그리고 육아휴직급여는 &lt;b&gt;세금이 붙지 않는 비과세&lt;/b&gt; 소득입니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;월급별로 1년 쓰면&lt;/h3&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;월 통상임금&lt;/th&gt;
&lt;th&gt;1~3개월 (월)&lt;/th&gt;
&lt;th&gt;4~6개월 (월)&lt;/th&gt;
&lt;th&gt;7~12개월 (월)&lt;/th&gt;
&lt;th&gt;1년 합계&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;180만 원&lt;/td&gt;
&lt;td&gt;180만 원&lt;/td&gt;
&lt;td&gt;180만 원&lt;/td&gt;
&lt;td&gt;144만 원&lt;/td&gt;
&lt;td&gt;1,944만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;200만 원&lt;/td&gt;
&lt;td&gt;200만 원&lt;/td&gt;
&lt;td&gt;200만 원&lt;/td&gt;
&lt;td&gt;160만 원&lt;/td&gt;
&lt;td&gt;2,160만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;250만 원&lt;/td&gt;
&lt;td&gt;250만 원&lt;/td&gt;
&lt;td&gt;200만 원&lt;/td&gt;
&lt;td&gt;160만 원&lt;/td&gt;
&lt;td&gt;2,310만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;300만 원 이상&lt;/td&gt;
&lt;td&gt;250만 원&lt;/td&gt;
&lt;td&gt;200만 원&lt;/td&gt;
&lt;td&gt;160만 원&lt;/td&gt;
&lt;td&gt;2,310만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;월급이 250만 원을 넘으면 상한에 걸려서 누구나 1년 최대 2,310만 원입니다. 통상임금은 기본급에 매달 고정으로 나오는 수당을 더한 금액이라, 연장수당처럼 달마다 달라지는 돈은 빠집니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;부부가 같이 쓰면: 6+6 부모육아휴직제&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아이가 &lt;b&gt;생후 18개월이 되기 전에&lt;/b&gt; 부부가 둘 다 육아휴직을 쓰면, 각자 처음 6개월 동안 상한이 크게 올라갑니다. 동시에 쓰든 차례로 쓰든 상관없습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;개월&lt;/th&gt;
&lt;th&gt;1개월&lt;/th&gt;
&lt;th&gt;2개월&lt;/th&gt;
&lt;th&gt;3개월&lt;/th&gt;
&lt;th&gt;4개월&lt;/th&gt;
&lt;th&gt;5개월&lt;/th&gt;
&lt;th&gt;6개월&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;월 상한 (1인)&lt;/td&gt;
&lt;td&gt;250만&lt;/td&gt;
&lt;td&gt;250만&lt;/td&gt;
&lt;td&gt;300만&lt;/td&gt;
&lt;td&gt;350만&lt;/td&gt;
&lt;td&gt;400만&lt;/td&gt;
&lt;td&gt;450만&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;통상임금의 100%를 위 상한까지 받습니다. 부부 모두 월급이 450만 원 이상이고 6개월씩 쓰면 1명당 2,000만 원, 둘이 합쳐 &lt;b&gt;최대 4,000만 원&lt;/b&gt;입니다. 7개월째부터는 기본 구간으로 돌아갑니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또 부부가 &lt;b&gt;각각 3개월 이상&lt;/b&gt; 육아휴직을 쓰면, 1인당 쓸 수 있는 기간이 1년에서 &lt;b&gt;1년 6개월&lt;/b&gt;로 늘어납니다. 한부모 가정이나 장애 자녀를 둔 경우에도 1년 6개월까지 쓸 수 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;방학 때 1~2주만: 단기 육아휴직 (2026년 8월 신설)&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아이 방학이나 어린이집 휴원처럼 잠깐 돌봄 공백이 생길 때 쓰는 제도입니다. 원래 육아휴직은 최소 30일 단위였는데, 이제는 1주나 2주만 쓸 수 있습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;언제부터&lt;/b&gt;: 2026년 8월 20일&lt;/li&gt;
&lt;li&gt;&lt;b&gt;기간&lt;/b&gt;: 자녀 1명당 1년에 한 번, 1주(7일) 또는 2주(14일)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;사유&lt;/b&gt;: 방학, 휴교&amp;middot;휴원, 자녀의 질병&amp;middot;사고 입원, 감염병 격리&amp;middot;등교중지 (학원 방학은 해당 없음)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;급여&lt;/b&gt;: 월 급여를 일할 계산합니다. 상한 250만 원이 적용되면 1주 약 58만 원, 2주 약 117만 원입니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;신청&lt;/b&gt;: 방학은 시작 30일 전까지, 갑자기 생긴 사유는 시작 당일까지 회사에 신청&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;쓴 기간은 전체 육아휴직 기간에서 빠지지만, 나눠 쓸 수 있는 횟수에는 들어가지 않습니다. 겨울방학 돌봄이 걱정이라면 지금부터 날짜를 잡아 두면 좋습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;신청 방법&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;회사에 육아휴직 신청&lt;/b&gt;: 시작 30일 전까지 서면으로 신청합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;회사가 확인서 제출&lt;/b&gt;: 회사가 고용센터에 육아휴직 확인서를 냅니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;급여 신청&lt;/b&gt;: 육아휴직 시작 후 1개월이 지나면 &lt;b&gt;고용24&lt;/b&gt;(work24.go.kr)에서 매달 또는 몇 달치를 모아서 신청합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;급여는 육아휴직이 끝난 뒤 &lt;b&gt;12개월 안에&lt;/b&gt; 신청해야 합니다. 이 기간이 지나면 못 받으니, 바쁘더라도 휴직 중에 매달 신청해 두는 게 안전합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 육아휴직 중에 회사에서 월급 일부를 주면 어떻게 되나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;회사에서 받는 돈과 육아휴직급여를 합친 금액이 휴직 전 통상임금보다 많으면, 넘는 만큼 육아휴직급여가 줄어듭니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 육아휴직을 나눠서 쓸 수 있나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네, 최대 3번으로 나눠서(4번 사용) 쓸 수 있습니다. 단기 육아휴직은 이 횟수에 포함되지 않습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 육아휴직 중에 퇴사하면 급여를 돌려줘야 하나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사후지급 제도가 없어져서 이미 받은 급여를 돌려주지는 않습니다. 다만 퇴사한 날부터는 육아휴직급여가 나오지 않습니다. 퇴사할 때 챙길 것은 &lt;a href=&quot;https://bboxnote.tistory.com/entry/resignation-checklist&quot;&gt;퇴사 전 체크리스트&lt;/a&gt;에 정리해 두었습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 육아휴직 기간도 연차나 퇴직금 계산에 들어가나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네, 육아휴직 기간은 출근한 것으로 봅니다. 연차 계산과 퇴직금 근속기간에 모두 포함됩니다. 연차에 대해서는 &lt;a href=&quot;https://bboxnote.tistory.com/26&quot;&gt;연차수당 계산법 글&lt;/a&gt;도 참고해 보세요.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;정리하면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금 육아휴직급여는 처음 석 달 월 250만 원, 부부가 함께 쓰면 6개월째 450만 원까지 올라갑니다. 세금도 안 붙고 매달 전액이 들어옵니다. 아이가 18개월이 되기 전에 부부가 함께 쓸지, 방학 때 단기 육아휴직을 쓸지 미리 계획해 두면 받는 금액이 꽤 달라집니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;2026년 10월 기준 고용노동부 발표 내용으로 정리했습니다. 내 경우 정확한 금액과 조건은 고용24나 고용노동부 상담센터(국번 없이 1350)에서 확인할 수 있습니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/지원금&amp;middot;복지</category>
      <category>6+6 부모육아휴직제</category>
      <category>고용24 육아휴직</category>
      <category>단기 육아휴직</category>
      <category>아빠 육아휴직</category>
      <category>육아휴직 기간</category>
      <category>육아휴직 신청 방법</category>
      <category>육아휴직급여</category>
      <category>육아휴직급여 계산</category>
      <category>육아휴직급여 상한액</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/31</guid>
      <comments>https://bboxnote.tistory.com/entry/parental-leave-pay#entry31comment</comments>
      <pubDate>Fri, 23 Oct 2026 20:40:41 +0900</pubDate>
    </item>
    <item>
      <title>연말정산 미리 준비｜12월 31일 전에 해야 환급이 늘어나는 6가지</title>
      <link>https://bboxnote.tistory.com/entry/year-end-tax-prep</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9nOqb/dJMcadKEX2z/F6i1kM7FZ4LuyAfzmKdmak/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9nOqb/dJMcadKEX2z/F6i1kM7FZ4LuyAfzmKdmak/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9nOqb/dJMcadKEX2z/F6i1kM7FZ4LuyAfzmKdmak/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9nOqb%2FdJMcadKEX2z%2FF6i1kM7FZ4LuyAfzmKdmak%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;연말정산 미리 준비 카드 연금저축 월세 세액공제 정리&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연말정산은 1월에 하는 일처럼 보이지만, 사실 결과는 &lt;b&gt;12월 31일에 이미 정해집니다.&lt;/b&gt; 1월에 홈택스에서 하는 건 올해 쓴 돈과 낸 돈을 모아서 계산하는 것뿐이라, 그때 가서 아쉬워해도 바꿀 수 있는 게 거의 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반대로 말하면 지금, 10월 말에서 12월 사이가 환급을 늘릴 수 있는 마지막 기회입니다. 큰돈 들이지 않고 할 수 있는 것들을 순서대로 정리해 봤습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;11월에 열리는 홈택스 &lt;b&gt;연말정산 미리보기&lt;/b&gt;로 내 예상 환급액부터 확인합니다.&lt;/li&gt;
&lt;li&gt;카드는 총급여의 &lt;b&gt;25%&lt;/b&gt;를 넘긴 뒤부터 공제되고, 넘긴 다음엔 체크카드&amp;middot;현금영수증이 유리합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;연금저축&amp;middot;IRP&lt;/b&gt;에 12월 31일까지 넣은 돈은 최대 16.5%를 세금에서 바로 빼 줍니다.&lt;/li&gt;
&lt;li&gt;월세 사는 무주택자라면 &lt;b&gt;월세 세액공제&lt;/b&gt; 서류를 미리 챙깁니다.&lt;/li&gt;
&lt;li&gt;고향사랑기부 &lt;b&gt;10만 원&lt;/b&gt;은 세금으로 거의 다 돌려받고 답례품까지 받습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. 연말정산 미리보기로 현재 상태 확인&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;홈택스에는 매년 11월쯤 &lt;b&gt;연말정산 미리보기&lt;/b&gt;가 열립니다. 1월부터 9월까지 카드 사용액이 자동으로 들어가 있고, 10월부터 12월까지 쓸 금액을 넣어 보면 예상 환급액이나 추가 납부액을 계산해 줍니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기서 &quot;추가로 낼 세금&quot;이 나온다면 아래 방법들을 써 볼 이유가 충분합니다. 이미 환급이 넉넉하게 나온다면 무리해서 더 할 필요는 없습니다. 지금 할 일은 미리보기가 열리면 한 번 들어가 보는 것, 그거 하나입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. 카드는 25%를 기준으로 바꿔 쓰기&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;25%를 넘어야 공제가 시작됩니다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;카드 소득공제는 1년 동안 쓴 금액 중 &lt;b&gt;총급여의 25%를 넘는 부분&lt;/b&gt;부터 적용됩니다. 총급여가 4,000만 원이면 1,000만 원까지 쓴 건 공제와 상관이 없고, 그 위로 쓴 금액만 공제 대상입니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;결제 수단&lt;/th&gt;
&lt;th&gt;공제율&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;신용카드&lt;/td&gt;
&lt;td&gt;15%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;체크카드&amp;middot;현금영수증&lt;/td&gt;
&lt;td&gt;30%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;전통시장&amp;middot;대중교통&lt;/td&gt;
&lt;td&gt;40%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;도서&amp;middot;공연&amp;middot;박물관 등 문화비 (총급여 7천만 원 이하)&lt;/td&gt;
&lt;td&gt;30%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;어떻게 쓰면 유리할까&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;25%를 채우기 전까지는 어떤 카드로 쓰든 공제가 없으니, 혜택이 좋은 &lt;b&gt;신용카드&lt;/b&gt;로 쓰는 게 낫습니다. 25%를 넘긴 다음부터는 공제율이 두 배인 &lt;b&gt;체크카드나 현금영수증&lt;/b&gt;으로 바꾸는 게 유리합니다. 미리보기에서 1~9월 사용액을 보면 내가 25%를 넘겼는지 바로 알 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공제 한도는 총급여 7,000만 원 이하면 기본 연 300만 원, 넘으면 250만 원입니다. 전통시장, 대중교통, 문화비는 이 기본 한도와 별도로 추가 한도가 있습니다. 내 한도는 1월 간소화 자료나 미리보기에서 한 번 더 확인해 보세요.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3. 연금저축&amp;middot;IRP 납입 (가장 확실한 방법)&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;환급을 늘리는 방법 중 가장 확실한 건 &lt;b&gt;연금저축과 IRP&lt;/b&gt;입니다. 넣은 돈의 일정 비율을 세금에서 바로 빼 주는 세액공제라서 효과가 큽니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;총급여&lt;/th&gt;
&lt;th&gt;공제율&lt;/th&gt;
&lt;th&gt;300만 원 넣으면&lt;/th&gt;
&lt;th&gt;900만 원 넣으면&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;5,500만 원 이하&lt;/td&gt;
&lt;td&gt;16.5%&lt;/td&gt;
&lt;td&gt;495,000원&lt;/td&gt;
&lt;td&gt;1,485,000원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5,500만 원 초과&lt;/td&gt;
&lt;td&gt;13.2%&lt;/td&gt;
&lt;td&gt;396,000원&lt;/td&gt;
&lt;td&gt;1,188,000원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한도는 연금저축과 IRP를 합쳐 연 900만 원이고, 그중 연금저축은 600만 원까지입니다. &lt;b&gt;12월 31일까지 입금된 금액&lt;/b&gt;만 올해분으로 인정되니, 연말에 한꺼번에 넣어도 괜찮지만 마지막 날은 이체가 몰리니 며칠 여유를 두는 게 좋습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 이 돈은 원칙적으로 55세 이후에 연금으로 받는 돈입니다. 중간에 해지하면 공제받은 세금을 다시 내야 하니, 당장 쓸 일이 없는 돈만 넣는 게 맞습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;4. 월세 세액공제 서류 챙기기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;월세는 홈택스 간소화 자료에 자동으로 안 잡히는 대표적인 항목이라, 직접 챙겨야 합니다. 요건은 이렇습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;12월 31일 기준 &lt;b&gt;무주택 세대주&lt;/b&gt; (세대원도 일부 가능)&lt;/li&gt;
&lt;li&gt;총급여 &lt;b&gt;8,000만 원 이하&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;국민주택규모(85㎡) 이하이거나 기준시가 4억 원 이하 주택&lt;/li&gt;
&lt;li&gt;그 집으로 &lt;b&gt;전입신고&lt;/b&gt;가 되어 있을 것&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공제율은 낸 월세의 15%(총급여 5,500만 원 이하면 17%)이고, 연 1,000만 원까지 인정됩니다. 월세 60만 원이면 1년 720만 원이라 약 108만~122만 원을 돌려받는 셈입니다. 임대차계약서 사본과 집주인 계좌로 보낸 이체 내역을 미리 모아 두면 1월에 편합니다. 집주인 동의는 필요 없습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;5. 의료비&amp;middot;기부금 영수증 모으기&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;의료비&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;의료비는 총급여의 &lt;b&gt;3%를 넘게 쓴 금액&lt;/b&gt;의 15%를 공제받습니다. 대부분은 간소화 자료에 자동으로 들어오지만, &lt;b&gt;안경&amp;middot;콘택트렌즈&lt;/b&gt;(1인당 50만 원 한도)는 안경점에서 영수증을 따로 받아야 하는 경우가 많습니다. 올해 안경을 맞췄다면 지금 영수증을 받아 두세요. 실손보험으로 돌려받은 금액은 공제에서 빠집니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;고향사랑기부&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내가 사는 곳이 아닌 지자체에 기부하는 제도입니다. &lt;b&gt;10만 원까지는 기부한 금액이 거의 그대로 세액공제&lt;/b&gt;되고, 기부액의 30% 안에서 지역 특산품 같은 답례품도 받습니다. 사실상 10만 원을 내고 10만 원을 돌려받으면서 3만 원어치 선물을 받는 구조라, 연말에 많이들 챙깁니다. 고향사랑e음 사이트나 은행 앱에서 할 수 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;6. 부양가족 정리하기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;부모님이나 형제를 부양가족으로 올리면 1명당 150만 원씩 소득공제가 됩니다. 조건은 연 소득금액 100만 원 이하(근로소득만 있다면 총급여 500만 원 이하)이고, 부모님은 만 60세 이상이어야 합니다. 함께 살지 않는 부모님도 실제로 부양하고 있다면 올릴 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주의할 건 &lt;b&gt;중복 공제&lt;/b&gt;입니다. 형제끼리 같은 부모님을 동시에 올리면 나중에 가산세까지 붙어서 돌려줘야 합니다. 누가 올릴지 미리 정해 두는 게 좋고, 맞벌이 부부라면 의료비나 카드처럼 몰아 받으면 유리한 항목을 누구 쪽에 둘지도 미리 이야기해 두면 좋습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;할 일 정리&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;언제&lt;/th&gt;
&lt;th&gt;할 일&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;11월&lt;/td&gt;
&lt;td&gt;홈택스 연말정산 미리보기로 예상 세액 확인&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;11~12월&lt;/td&gt;
&lt;td&gt;카드 25% 넘겼으면 체크카드&amp;middot;현금영수증으로&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;12월 31일 전&lt;/td&gt;
&lt;td&gt;연금저축&amp;middot;IRP 납입, 고향사랑기부, 안경 영수증&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;12월 31일 전&lt;/td&gt;
&lt;td&gt;월세 계약서&amp;middot;이체 내역 모으기, 부양가족 누가 올릴지 정하기&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1월 중순&lt;/td&gt;
&lt;td&gt;간소화 자료 열리면 내려받아 회사에 제출&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 연말에 회사를 옮기면 연말정산은 어디서 하나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;12월 31일에 다니는 회사에서 합니다. 전 회사에서 받은 원천징수영수증을 새 회사에 내면 합쳐서 정산해 줍니다. 퇴사할 때 챙길 것은 &lt;a href=&quot;https://bboxnote.tistory.com/entry/resignation-checklist&quot;&gt;퇴사 전 체크리스트&lt;/a&gt;에 정리해 두었습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 성과급을 받으면 연말정산에서 세금을 더 내나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성과급도 총급여에 합쳐지니 세율 구간이 올라갈 수 있습니다. 성과급 받을 때 떼인 세금이 어떻게 정산되는지는 &lt;a href=&quot;https://bboxnote.tistory.com/entry/bonus-tax&quot;&gt;성과급 세금 글&lt;/a&gt;을 참고하세요.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 1월에 빠뜨린 공제는 어떻게 하나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5월 종합소득세 신고 때 넣거나, 그 뒤에도 5년 안에 경정청구로 돌려받을 수 있습니다. 놓쳤다고 끝난 건 아닙니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 연금저축은 지금 가입해도 올해 공제가 되나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네, 가입 시점과 상관없이 12월 31일까지 넣은 금액이 올해분으로 공제됩니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;정리하면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연말정산 환급은 1월이 아니라 지금 정해집니다. 미리보기로 내 상태를 보고, 카드 쓰는 방법을 바꾸고, 여유 돈이 있다면 연금저축이나 IRP에 넣는 것만으로도 결과가 꽤 달라집니다. 올해 13월의 월급이 조금이라도 두둑해지길 바랍니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;공제 요건과 한도는 개인 상황에 따라 다릅니다. 정확한 금액은 홈택스 연말정산 미리보기나 국세청 상담센터(126)에서 확인할 수 있습니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/세금&amp;middot;연말정산</category>
      <category>13월의 월급</category>
      <category>IRP 세액공제</category>
      <category>고향사랑기부제</category>
      <category>신용카드 소득공제 25%</category>
      <category>연금저축 세액공제</category>
      <category>연말정산 미리보기</category>
      <category>연말정산 준비</category>
      <category>연말정산 환급 늘리기</category>
      <category>월세 세액공제</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/30</guid>
      <comments>https://bboxnote.tistory.com/entry/year-end-tax-prep#entry30comment</comments>
      <pubDate>Thu, 22 Oct 2026 20:57:22 +0900</pubDate>
    </item>
    <item>
      <title>야간&amp;middot;연장&amp;middot;휴일수당 계산법｜1.5배, 2배는 언제 붙을까 (2026 최저시급 예시)</title>
      <link>https://bboxnote.tistory.com/entry/overtime-pay</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/IHjx3/dJMcaiFjLED/A5vjmFxL7eRTjGYpokOs0K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/IHjx3/dJMcaiFjLED/A5vjmFxL7eRTjGYpokOs0K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/IHjx3/dJMcaiFjLED/A5vjmFxL7eRTjGYpokOs0K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FIHjx3%2FdJMcaiFjLED%2FA5vjmFxL7eRTjGYpokOs0K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;야간 연장 휴일수당 계산법 1.5배 2배 정리&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;밤늦게까지 남아서 일한 날, 월급명세서를 보면 &quot;연장근로수당&quot;이나 &quot;야간근로수당&quot;이라는 줄이 붙어 있습니다. 그런데 금액이 맞는지 따져 보려고 하면 막막해집니다. 몇 시부터가 야간인지, 1.5배인지 2배인지, 둘이 겹치면 어떻게 되는지 헷갈리는 게 당연합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;규칙은 생각보다 단순합니다. 딱 세 가지 &quot;더 받는 상황&quot;이 있고, 그게 겹치면 더해진다고 기억하면 됩니다. 2026년 최저시급 10,320원으로 예를 들어 가며 정리해 보겠습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;연장근로&lt;/b&gt;: 하루 8시간, 일주일 40시간을 넘긴 시간은 통상시급의 &lt;b&gt;1.5배&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;야간근로&lt;/b&gt;: 밤 10시부터 아침 6시 사이 일한 시간은 &lt;b&gt;0.5배를 더&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;휴일근로&lt;/b&gt;: 쉬는 날 일하면 8시간까지 &lt;b&gt;1.5배&lt;/b&gt;, 8시간 넘는 부분은 &lt;b&gt;2배&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;연장과 야간이 겹치면 &lt;b&gt;2배&lt;/b&gt;가 됩니다.&lt;/li&gt;
&lt;li&gt;상시 근로자 &lt;b&gt;5인 미만&lt;/b&gt; 사업장은 이 가산수당이 의무가 아닙니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;먼저 알아야 할 것: 통상시급&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모든 수당 계산은 &lt;b&gt;통상시급&lt;/b&gt;에서 시작합니다. 시급제라면 내 시급이 곧 통상시급입니다. 월급제라면 이렇게 구합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;통상시급&lt;/b&gt; = 월 통상임금 &amp;divide; 209시간&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;209시간은 주 40시간에 주휴시간 8시간을 더해 한 달로 환산한 숫자입니다. 통상임금은 기본급에 매달 고정으로 나오는 수당을 더한 금액이고, 달마다 달라지는 연장수당이나 성과급은 빠집니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;월 통상임금&lt;/th&gt;
&lt;th&gt;통상시급&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;2,156,880원 (2026 최저임금)&lt;/td&gt;
&lt;td&gt;10,320원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;250만 원&lt;/td&gt;
&lt;td&gt;약 11,962원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;300만 원&lt;/td&gt;
&lt;td&gt;약 14,354원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;350만 원&lt;/td&gt;
&lt;td&gt;약 16,746원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;400만 원&lt;/td&gt;
&lt;td&gt;약 19,139원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;세 가지 가산수당&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;연장근로수당: 8시간, 40시간을 넘으면&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;법에서 정한 근로시간은 하루 8시간, 일주일 40시간입니다. 이걸 넘긴 시간이 연장근로이고, 통상시급의 &lt;b&gt;50%를 더해서&lt;/b&gt; 1.5배를 받습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;둘 중 하나만 넘어도 연장입니다. 예를 들어 하루 10시간씩 4일 일하면 일주일은 40시간이지만, 하루마다 2시간씩 8시간을 넘겼으니 연장근로가 8시간입니다. 반대로 하루 8시간씩 6일 일하면 하루 기준은 안 넘었지만 일주일 48시간이라 8시간이 연장입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;알바처럼 계약한 시간이 짧은 경우도 알아 둘 만합니다. 하루 5시간으로 계약했는데 6시간 일했다면, 8시간을 안 넘었어도 계약보다 더 일한 1시간은 1.5배를 받습니다. 단시간 근로자 보호 규정 때문입니다(5인 이상 사업장).&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;야간근로수당: 밤 10시부터 아침 6시&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;밤 10시(22시)부터 다음 날 아침 6시&lt;/b&gt;까지 일한 시간은 통상시급의 50%를 더 받습니다. 연장근로와 달리 몇 시간 일했는지와는 상관없습니다. 처음부터 밤에 일하기로 한 야간 알바라도 이 시간대라면 0.5배가 붙습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 편의점 야간 알바가 밤 10시부터 아침 6시까지 8시간 일하면, 연장은 아니지만 8시간 모두 야간이라 시급의 1.5배를 받습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;휴일근로수당: 쉬는 날 일하면&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주휴일이나 공휴일처럼 쉬기로 한 날에 일하면 휴일근로입니다. 가산 방식이 조금 다릅니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;휴일에 일한 시간 중 &lt;b&gt;8시간까지&lt;/b&gt;: 1.5배&lt;/li&gt;
&lt;li&gt;&lt;b&gt;8시간을 넘는 부분&lt;/b&gt;: 2배&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;월급제라면 쉬는 날의 하루치 임금이 이미 월급에 들어 있습니다. 그래서 휴일에 일하면 그 월급과 별도로 일한 시간의 1.5배(또는 2배)를 더 받습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;겹치면 더해집니다&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기가 가장 헷갈리는 부분인데, 원리는 &quot;겹친 만큼 0.5씩 더한다&quot;입니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;상황&lt;/th&gt;
&lt;th&gt;배율&lt;/th&gt;
&lt;th&gt;2026 최저시급 기준 1시간&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;평소 근무&lt;/td&gt;
&lt;td&gt;1배&lt;/td&gt;
&lt;td&gt;10,320원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;연장만&lt;/td&gt;
&lt;td&gt;1.5배&lt;/td&gt;
&lt;td&gt;15,480원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;야간만&lt;/td&gt;
&lt;td&gt;1.5배&lt;/td&gt;
&lt;td&gt;15,480원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;연장 + 야간&lt;/td&gt;
&lt;td&gt;2배&lt;/td&gt;
&lt;td&gt;20,640원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;휴일 (8시간 이내)&lt;/td&gt;
&lt;td&gt;1.5배&lt;/td&gt;
&lt;td&gt;15,480원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;휴일 (8시간 초과)&lt;/td&gt;
&lt;td&gt;2배&lt;/td&gt;
&lt;td&gt;20,640원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;휴일 (8시간 이내) + 야간&lt;/td&gt;
&lt;td&gt;2배&lt;/td&gt;
&lt;td&gt;20,640원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;휴일 (8시간 초과) + 야간&lt;/td&gt;
&lt;td&gt;2.5배&lt;/td&gt;
&lt;td&gt;25,800원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내년부터 최저시급이 10,700원으로 오르면 연장 1시간은 16,050원, 연장과 야간이 겹치면 21,400원이 됩니다. 2027년 최저임금 이야기는 &lt;a href=&quot;https://bboxnote.tistory.com/25&quot;&gt;2027 최저임금 실수령액 글&lt;/a&gt;에 정리해 두었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실제로 계산해 보기&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;예시 1. 오전 9시 출근, 밤 9시 퇴근 (점심 1시간)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일한 시간은 11시간입니다. 8시간을 넘긴 3시간이 연장이고, 밤 10시 전에 끝났으니 야간은 없습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;연장수당: 3시간 &amp;times; 15,480원 = &lt;b&gt;46,440원&lt;/b&gt; (기본 8시간 임금과 별도)&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;예시 2. 같은 날 밤 12시까지 일했다면&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번엔 일한 시간이 14시간이고, 연장 6시간 중 밤 10시부터 12시까지 2시간은 야간과 겹칩니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;연장만 4시간: 4 &amp;times; 15,480원 = 61,920원&lt;/li&gt;
&lt;li&gt;연장 + 야간 2시간: 2 &amp;times; 20,640원 = 41,280원&lt;/li&gt;
&lt;li&gt;합계: &lt;b&gt;103,200원&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;예시 3. 월급 300만 원, 공휴일에 10시간 근무&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;통상시급은 약 14,354원입니다. 8시간까지는 1.5배, 넘은 2시간은 2배입니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;8시간 &amp;times; 21,531원 = 172,248원&lt;/li&gt;
&lt;li&gt;2시간 &amp;times; 28,708원 = 57,416원&lt;/li&gt;
&lt;li&gt;합계: 약 &lt;b&gt;22만 9천 원&lt;/b&gt;을 월급과 별도로 받습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;못 받거나 다르게 받는 경우&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;5인 미만 사업장&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;상시 근로자가 5명이 안 되는 곳은 연장, 야간, 휴일 가산수당을 줄 의무가 없습니다. 일한 시간만큼 기본 시급은 받지만 1.5배는 아닙니다. 회사가 계약서에 따로 주기로 했다면 그 약속을 따릅니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;포괄임금제&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;월급에 &quot;연장수당 ○○시간분 포함&quot;처럼 미리 넣어 두는 방식입니다. 이 경우 정해 둔 시간까지는 따로 안 나오지만, 실제로 그보다 더 일했다면 넘긴 시간만큼은 추가로 받을 수 있습니다. 근로계약서에 몇 시간분이 들어 있는지 확인해 두면 좋습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;보상휴가로 대신하는 경우&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;회사와 근로자 대표가 서면으로 합의하면 수당 대신 휴가로 줄 수 있습니다. 이때도 1.5배 원칙은 같아서, 연장 2시간이면 3시간짜리 휴가가 됩니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 야간수당은 몇 시부터인가요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;밤 10시(22시)부터 다음 날 아침 6시까지입니다. 밤 9시부터 11시까지 일했다면 10시부터 11시까지 1시간만 야간입니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 휴게시간도 수당에 들어가나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아닙니다. 휴게시간은 근로시간이 아니라서 빠집니다. 다만 쉬는 시간이라면서 실제로는 손님을 받거나 대기해야 했다면 근로시간으로 볼 수 있습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 주 52시간은 연장수당과 무슨 관계인가요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주 52시간은 기본 40시간에 연장근로 12시간까지만 허용한다는 상한입니다. 그 12시간 안에서 일한 연장근로는 모두 1.5배로 계산합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 연장수당에도 세금이 붙나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네, 대부분은 월급처럼 소득세와 4대보험이 붙습니다. 일부 생산직처럼 월급이 일정 금액 이하인 경우에만 연장&amp;middot;야간&amp;middot;휴일수당 일부가 비과세됩니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;정리하면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;기억할 건 세 가지입니다. 8시간, 40시간을 넘기면 1.5배, 밤 10시부터 아침 6시면 0.5배 추가, 쉬는 날 일하면 1.5배에 8시간 넘으면 2배입니다. 겹치면 그만큼 더하면 됩니다. 이번 달 명세서에 찍힌 수당이 이 계산과 크게 다르다면, 근무 기록을 챙겨서 회사에 한 번 물어볼 만합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;야근이 쌓여 퇴사를 고민하고 있다면 &lt;a href=&quot;https://bboxnote.tistory.com/entry/resignation-checklist&quot;&gt;퇴사 전 체크리스트&lt;/a&gt;도 같이 보면 도움이 됩니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;회사 취업규칙이나 단체협약이 법보다 유리하면 그쪽을 따릅니다. 내 경우가 애매하다면 고용노동부 상담센터(국번 없이 1350)에 물어볼 수 있습니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/월급&amp;middot;노동</category>
      <category>5인 미만 연장수당</category>
      <category>알바 야간수당</category>
      <category>야간수당 계산</category>
      <category>야간수당 시간</category>
      <category>연장근로수당</category>
      <category>연장수당 계산법</category>
      <category>통상시급 계산</category>
      <category>휴일근로수당</category>
      <category>휴일수당 2배</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/29</guid>
      <comments>https://bboxnote.tistory.com/entry/overtime-pay#entry29comment</comments>
      <pubDate>Wed, 21 Oct 2026 21:26:44 +0900</pubDate>
    </item>
    <item>
      <title>퇴사 전 체크리스트｜퇴직금&amp;middot;실업급여&amp;middot;건강보험까지 놓치기 쉬운 9가지</title>
      <link>https://bboxnote.tistory.com/entry/resignation-checklist</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cZDezA/dJMcaiFhW9W/YFfIvrKtxnfkGbcf74QCgk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cZDezA/dJMcaiFhW9W/YFfIvrKtxnfkGbcf74QCgk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cZDezA/dJMcaiFhW9W/YFfIvrKtxnfkGbcf74QCgk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcZDezA%2FdJMcaiFhW9W%2FYFfIvrKtxnfkGbcf74QCgk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;퇴사 전 체크리스트 퇴직금 실업급여 건강보험 정리&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퇴사를 마음먹고 나면 머릿속이 온통 &quot;언제 말하지?&quot;로 가득 찹니다. 그런데 막상 마지막 출근을 하고 나면 그다음부터 진짜 일이 시작됩니다. 퇴직금은 언제 들어오는지, 실업급여는 받을 수 있는지, 갑자기 날아온 건강보험료 고지서는 왜 이렇게 많이 나왔는지 하나씩 부딪히게 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퇴사하고 나서 서류 하나 떼려고 전 회사에 다시 연락하는 일도 생각보다 흔합니다. 그래서 퇴사 전에 챙기면 편하고, 놓치면 돈이나 시간이 새는 것들을 순서대로 정리해 봤습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;사직 의사는 보통 &lt;b&gt;한 달 전&lt;/b&gt;에 알리고, 마지막 근무일은 날짜로 확실히 정합니다.&lt;/li&gt;
&lt;li&gt;1년 이상 일했다면 퇴직금은 퇴사 후 &lt;b&gt;14일 안에&lt;/b&gt; 받는 게 원칙입니다. 대부분 IRP 계좌로 들어옵니다.&lt;/li&gt;
&lt;li&gt;남은 연차는 퇴사할 때 &lt;b&gt;전부 수당으로 정산&lt;/b&gt;됩니다.&lt;/li&gt;
&lt;li&gt;실업급여는 회사 사정으로 그만둔 경우가 원칙이고, 자발적 퇴사도 &lt;b&gt;예외 사유&lt;/b&gt;가 있으면 받을 수 있습니다.&lt;/li&gt;
&lt;li&gt;건강보험료가 크게 오를 것 같으면 &lt;b&gt;임의계속가입&lt;/b&gt;을 신청해 직장 때 보험료를 최대 3년 유지할 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;퇴사 한 달 전: 말하기 전에 챙길 것&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 사직 시점 정하기&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;법에 &quot;몇 일 전에 말해야 한다&quot;는 숫자가 딱 정해져 있지는 않지만, 근로계약서나 취업규칙에 보통 &lt;b&gt;30일 전&lt;/b&gt;으로 적혀 있습니다. 회사가 사직서를 받아 주지 않더라도, 민법에 따라 사직 의사를 알린 날부터 일정 기간(보통 1개월)이 지나면 퇴사 효력이 생깁니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;중요한 건 &lt;b&gt;마지막 근무일을 날짜로 못 박는 것&lt;/b&gt;입니다. 이 날짜에 따라 퇴직금이 생기는지, 연차가 하나 더 생기는지가 갈리기 때문입니다. 예를 들어 입사한 지 1년이 되는 날 바로 전에 그만두면 퇴직금이 아예 없고, 1년을 채우고 하루 더 일하면 15일짜리 연차가 새로 생겨서 그만큼 수당으로 받습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 남은 연차 계산해 보기&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;남은 연차는 두 가지 방법으로 쓸 수 있습니다. 마지막 출근 전에 몰아서 쉬거나, 퇴사하면서 수당으로 받는 겁니다. 회사가 연차사용촉진을 했더라도 아직 사라지지 않은 연차라면 퇴사할 때 수당으로 정산받습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;월급 300만 원이면 연차 하루에 약 11만 5천 원입니다. 자세한 계산법은 &lt;a href=&quot;https://bboxnote.tistory.com/26&quot;&gt;연차수당 계산법 글&lt;/a&gt;에 표로 정리해 두었습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;3. 필요한 서류 미리 받아 두기&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퇴사하고 나면 회사에 연락하기가 은근히 불편해집니다. 아래 서류는 있는 동안 받아 두는 게 편합니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;서류&lt;/th&gt;
&lt;th&gt;어디에 쓰나&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;경력증명서&lt;/td&gt;
&lt;td&gt;이직, 각종 자격 신청&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;근로소득 원천징수영수증&lt;/td&gt;
&lt;td&gt;이직한 회사 연말정산, 대출 서류&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;급여명세서 (최근 3개월 이상)&lt;/td&gt;
&lt;td&gt;퇴직금 확인, 대출&amp;middot;전세 서류&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;퇴직금 산정 내역&lt;/td&gt;
&lt;td&gt;퇴직금이 맞게 나왔는지 확인&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원천징수영수증과 건강보험 자격득실확인서는 퇴사 뒤에도 홈택스나 정부24에서 직접 뗄 수 있으니 너무 걱정하지 않아도 됩니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;퇴사하는 날: 돈 관련 확인&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;4. 퇴직금 받을 계좌와 날짜&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1년 이상, 주 15시간 이상 일했다면 퇴직금을 받습니다. 법에서는 퇴사한 날부터 &lt;b&gt;14일 안에&lt;/b&gt; 주도록 정해 두었고, 서로 합의하면 이 기한을 늦출 수 있습니다. 그래서 &quot;다음 달 급여일에 같이 줄게요&quot;라는 말을 들으면 합의를 요청받은 것이니, 날짜를 정확히 받아 두는 게 좋습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;또 하나 알아 둘 점은 퇴직금이 내 월급 통장이 아니라 &lt;b&gt;IRP(개인형 퇴직연금) 계좌&lt;/b&gt;로 들어온다는 겁니다. 만 55세 미만이면 IRP로 받는 게 원칙이라, 퇴사 전에 은행이나 증권사 앱에서 IRP 계좌를 하나 만들어 회사에 알려 주면 됩니다. IRP를 바로 해지하면 퇴직소득세를 떼고 내 통장으로 찾을 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내 퇴직금이 얼마일지는 &lt;a href=&quot;https://bboxnote.tistory.com/2&quot;&gt;퇴직금 계산 방법 글&lt;/a&gt;에서 계산해 볼 수 있습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;5. 마지막 월급과 연말정산&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퇴사하는 달 월급에서는 &lt;b&gt;중도 퇴사자 연말정산&lt;/b&gt;이 같이 처리됩니다. 회사는 그동안 낸 세금과 기본 공제만 반영해서 정산하기 때문에, 카드 사용액이나 의료비 같은 공제는 빠져 있는 경우가 많습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그 해에 다른 회사로 옮긴다면 새 회사 연말정산 때 전 회사 원천징수영수증을 내면 합쳐서 정산됩니다. 그 해에 다시 취업하지 않는다면 다음 해 5월 종합소득세 신고 때 빠진 공제를 넣어서 돌려받을 수 있습니다. 생각보다 꽤 돌려받는 경우가 많으니 꼭 챙기세요.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;6. 4대보험 상실 신고&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;4대보험 자격 상실 신고는 회사가 합니다. 건강보험&amp;middot;국민연금은 퇴사 후 14일 안에, 고용보험은 퇴사한 다음 달 15일까지 신고하게 되어 있는데, 이 신고가 늦어지면 실업급여 신청이나 새 회사 입사 처리가 꼬일 수 있습니다. 실업급여를 받을 생각이라면 회사에 &lt;b&gt;이직확인서&lt;/b&gt;도 고용센터에 제출해 달라고 미리 말해 두세요. 퇴사 사유가 어떻게 적히는지도 확인하는 게 좋습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;퇴사 후: 놓치면 손해 보는 것&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;7. 실업급여 신청&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실업급여는 원칙적으로 권고사직, 계약 만료, 회사 사정처럼 &lt;b&gt;내 뜻이 아닌 이유로&lt;/b&gt; 그만둔 사람이 받습니다. 퇴사 전 18개월 동안 고용보험에 가입한 날(피보험 단위기간)이 180일 이상이어야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스스로 그만뒀다면 원칙적으로 못 받지만, 아래처럼 어쩔 수 없는 사정이 있으면 예외로 인정됩니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;예외 사유 (일부)&lt;/th&gt;
&lt;th&gt;내용&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;임금 체불&lt;/td&gt;
&lt;td&gt;퇴사 전 1년 안에 2개월 이상 월급이 밀렸거나 늦게 나온 경우&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;최저임금 미달&lt;/td&gt;
&lt;td&gt;퇴사 전 1년 안에 2개월 이상 최저임금보다 적게 받은 경우&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;통근 곤란&lt;/td&gt;
&lt;td&gt;회사 이전 등으로 왕복 통근 시간이 3시간 이상이 된 경우&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;직장 내 괴롭힘&amp;middot;성희롱&lt;/td&gt;
&lt;td&gt;이 때문에 일을 계속하기 어려운 경우&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;질병&amp;middot;부상&lt;/td&gt;
&lt;td&gt;회사가 휴직을 허락하지 않아 그만둔 경우 (진단서 필요)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;신청은 퇴사 후 고용24에서 구직 신청을 하고, 수급자격 신청 교육을 들은 뒤 고용센터에 가서 합니다. 퇴사 다음 날부터 &lt;b&gt;12개월이 지나면&lt;/b&gt; 남은 기간이 있어도 못 받으니 너무 미루지 않는 게 좋습니다. 하루 얼마를 몇 달 받는지는 &lt;a href=&quot;https://bboxnote.tistory.com/4&quot;&gt;실업급여 계산 글&lt;/a&gt;에 표로 정리해 두었습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;8. 건강보험 임의계속가입&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퇴사하면 건강보험이 직장가입자에서 &lt;b&gt;지역가입자&lt;/b&gt;로 바뀝니다. 지역가입자는 회사가 반을 내 주던 보험료를 혼자 내고, 집이나 차 같은 재산까지 보험료에 반영돼서 직장 다닐 때보다 많이 나오는 경우가 흔합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이럴 때 쓰는 게 &lt;b&gt;임의계속가입&lt;/b&gt;입니다. 퇴사 전 18개월 동안 직장가입자였던 기간이 1년 이상이면 신청할 수 있고, 퇴사 후 최대 &lt;b&gt;36개월&lt;/b&gt; 동안 직장 다닐 때 내던 본인 부담 보험료 수준으로 낼 수 있습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;신청 기한&lt;/b&gt;: 지역가입자 보험료 고지서를 처음 받은 뒤, 그 납부기한에서 2개월이 지나기 전까지&lt;/li&gt;
&lt;li&gt;&lt;b&gt;신청 방법&lt;/b&gt;: 국민건강보험공단 지사 방문, 전화(1577-1000), 팩스, 우편&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가족 중에 직장인이 있다면 그 가족의 &lt;b&gt;피부양자&lt;/b&gt;로 올라가는 방법도 있습니다. 소득과 재산 기준을 넘지 않으면 보험료를 아예 안 내도 되니, 임의계속가입보다 먼저 확인해 보세요.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;9. 국민연금&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퇴사하고 소득이 없으면 국민연금은 &lt;b&gt;납부예외&lt;/b&gt;를 신청해서 잠시 안 낼 수 있습니다. 대신 그 기간은 가입 기간에서 빠집니다. 실업급여를 받는 동안에는 &lt;b&gt;실업크레딧&lt;/b&gt;을 신청하면 보험료의 75%를 나라가 지원해 주고, 나머지 25%만 내면 가입 기간으로 인정받습니다. 실업급여 신청할 때 같이 신청하면 됩니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;한 장으로 보는 퇴사 체크리스트&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;언제&lt;/th&gt;
&lt;th&gt;할 일&lt;/th&gt;
&lt;th&gt;체크&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td rowspan=&quot;3&quot;&gt;퇴사 한 달 전&lt;/td&gt;
&lt;td&gt;마지막 근무일 날짜로 정하기 (1년 채웠는지 확인)&lt;/td&gt;
&lt;td&gt;□&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;남은 연차 확인하고 쓸지 수당으로 받을지 정하기&lt;/td&gt;
&lt;td&gt;□&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;경력증명서, 급여명세서 받아 두기&lt;/td&gt;
&lt;td&gt;□&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td rowspan=&quot;3&quot;&gt;퇴사 무렵&lt;/td&gt;
&lt;td&gt;IRP 계좌 만들어 회사에 알리기&lt;/td&gt;
&lt;td&gt;□&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;퇴직금 지급 날짜 확인하기 (원칙 14일 안)&lt;/td&gt;
&lt;td&gt;□&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;이직확인서 제출과 퇴사 사유 확인하기&lt;/td&gt;
&lt;td&gt;□&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td rowspan=&quot;3&quot;&gt;퇴사 후&lt;/td&gt;
&lt;td&gt;실업급여 구직 신청 (12개월 안)&lt;/td&gt;
&lt;td&gt;□&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;건강보험 피부양자 또는 임의계속가입 확인&lt;/td&gt;
&lt;td&gt;□&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;국민연금 납부예외 또는 실업크레딧 신청&lt;/td&gt;
&lt;td&gt;□&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 퇴직금을 14일이 지나도 안 주면 어떻게 하나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;합의 없이 14일을 넘기면 법 위반입니다. 먼저 회사에 지급을 요청하고, 그래도 안 주면 고용노동부에 진정을 낼 수 있습니다. 늦게 준 기간만큼 연 20%의 지연이자도 청구할 수 있습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 1년에서 며칠 모자라는데 퇴직금을 못 받나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네, 1년을 채우지 못하면 퇴직금이 생기지 않습니다. 그래서 1년 근처라면 마지막 근무일을 1년을 꽉 채운 날 이후로 잡는 게 좋습니다. 하루 더 일해서 1년을 넘기면 15일짜리 연차도 생겨서 수당으로 받습니다. 남은 연차를 쓰는 날도 근무한 날로 계산됩니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 자진 퇴사인데 회사가 권고사직으로 처리해 주겠다고 하면 괜찮나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제 사유와 다르게 적어서 실업급여를 받으면 부정수급이 되어 받은 돈을 돌려주고 추가로 징수당할 수 있습니다. 퇴사 사유는 사실대로 적는 게 안전합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;Q. 퇴사 후 바로 이직하면 건강보험은 어떻게 되나요?&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새 회사에서 바로 직장가입자로 다시 올라가기 때문에 따로 할 일은 없습니다. 퇴사일과 입사일 사이가 며칠 비면 그 사이 짧게 지역가입자 보험료가 나올 수 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;정리하면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퇴사할 때 가장 돈이 많이 걸린 건 퇴직금, 연차수당, 실업급여, 그리고 건강보험료입니다. 앞의 셋은 받을 돈이고, 마지막은 덜 낼 수 있는 돈입니다. 마지막 출근 전에 날짜 하나, 계좌 하나, 서류 몇 장만 챙겨 두면 퇴사 뒤가 훨씬 편해집니다. 새 출발을 앞둔 분들께 조금이라도 도움이 됐으면 좋겠습니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;회사 취업규칙이나 개인 상황에 따라 다를 수 있습니다. 애매한 부분은 고용노동부 상담센터(국번 없이 1350), 국민건강보험공단(1577-1000), 국민연금공단(1355)에 물어보면 정확합니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/월급&amp;middot;노동</category>
      <category>IRP 퇴직금</category>
      <category>임의계속가입</category>
      <category>퇴사 건강보험</category>
      <category>퇴사 실업급여</category>
      <category>퇴사 연차수당</category>
      <category>퇴사 준비</category>
      <category>퇴사 체크리스트</category>
      <category>퇴직 연말정산</category>
      <category>퇴직금 지급기한</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/28</guid>
      <comments>https://bboxnote.tistory.com/entry/resignation-checklist#entry28comment</comments>
      <pubDate>Mon, 19 Oct 2026 23:12:04 +0900</pubDate>
    </item>
    <item>
      <title>성과급 세금 계산｜상여금 300만 원 받으면 실수령액은? 세금 떼는 방식과 연말정산</title>
      <link>https://bboxnote.tistory.com/entry/bonus-tax</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c6Ol2F/dJMcaiei76R/A4E2HoUkJyzV9x35Kgkiuk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c6Ol2F/dJMcaiei76R/A4E2HoUkJyzV9x35Kgkiuk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c6Ol2F/dJMcaiei76R/A4E2HoUkJyzV9x35Kgkiuk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc6Ol2F%2FdJMcaiei76R%2FA4E2HoUkJyzV9x35Kgkiuk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성과급이 나온다는 소식은 반갑지만, 명세서를 보면 생각보다 많이 빠져 있어서 놀라는 경우가 많습니다. 300만 원이 들어온다고 들었는데 통장에는 250만 원만 찍혀 있으면 &quot;세금을 이렇게 많이 떼나?&quot; 싶습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결론부터 말하면, 성과급은 &lt;b&gt;떼는 방식&lt;/b&gt;에 따라 그 달에 빠지는 돈이 크게 달라지고, 많이 뗐더라도 &lt;b&gt;연말정산에서 상당 부분 돌려받습니다&lt;/b&gt;. 이번 글에서는 성과급&amp;middot;상여금에 붙는 세금과 4대보험, 실제로 받는 돈을 표로 정리했습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;성과급&amp;middot;상여금은 월급과 똑같은 &lt;b&gt;근로소득&lt;/b&gt;이라 소득세&amp;middot;지방소득세&amp;middot;4대보험이 붙습니다.&lt;/li&gt;
&lt;li&gt;월급 300만 원인 사람이 성과급 300만 원을 받으면, 그 달에 약 &lt;b&gt;30만~50만 원&lt;/b&gt;이 빠집니다. 떼는 방식에 따라 20만 원 가까이 차이 납니다.&lt;/li&gt;
&lt;li&gt;그 달에 많이 뗐다면 &lt;b&gt;다음 해 2월 연말정산&lt;/b&gt;에서 1년치 실제 세금으로 다시 맞춰서 돌려받습니다.&lt;/li&gt;
&lt;li&gt;건강보험과 국민연금은 성과급 달이 아니라 &lt;b&gt;다음 해&lt;/b&gt;에 늘어납니다(건강보험 4월 정산, 국민연금 7월부터).&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;성과급에는 어떤 세금이 붙을까&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성과급, 상여금, 인센티브, 명절 보너스는 이름만 다를 뿐 세법에서는 모두 &lt;b&gt;근로소득&lt;/b&gt;입니다. 그래서 월급과 똑같이 아래 항목이 빠집니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;항목&lt;/th&gt;
&lt;th&gt;얼마나&lt;/th&gt;
&lt;th&gt;언제 빠지나&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;소득세&lt;/td&gt;
&lt;td&gt;간이세액표로 계산 (아래에서 설명)&lt;/td&gt;
&lt;td&gt;성과급 받는 달&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;지방소득세&lt;/td&gt;
&lt;td&gt;소득세의 10%&lt;/td&gt;
&lt;td&gt;성과급 받는 달&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;고용보험&lt;/td&gt;
&lt;td&gt;성과급의 0.9%&lt;/td&gt;
&lt;td&gt;성과급 받는 달&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;건강보험 + 장기요양&lt;/td&gt;
&lt;td&gt;성과급의 약 4.07%&lt;/td&gt;
&lt;td&gt;다음 해 4월 정산&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;국민연금&lt;/td&gt;
&lt;td&gt;4.75% (2026년 기준)&lt;/td&gt;
&lt;td&gt;다음 해 7월부터 매달 조금씩&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성과급 달에 바로 빠지는 건 소득세, 지방소득세, 고용보험 세 가지입니다. 건강보험과 국민연금은 그 달 명세서에는 거의 안 보이다가 나중에 따로 빠집니다. 이 부분은 뒤에서 다시 설명하겠습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;소득세는 어떻게 떼나: 방식이 두 가지&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성과급 소득세가 사람마다, 회사마다 달라 보이는 이유가 여기 있습니다. 회사가 성과급 소득세를 계산하는 방식은 크게 두 가지입니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;방식 1. 나눠서 계산하기 (법에서 정한 방식)&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;소득세법 시행령에서는 상여금을 &lt;b&gt;지급대상기간&lt;/b&gt;으로 나눠서 계산하라고 정해 두었습니다. 예를 들어 1년 동안의 성과를 보고 12월에 주는 성과급이라면, 성과급을 12개월에 나눠 받았다고 치고 세금을 계산합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;① (1년 월급 합계 + 성과급) &amp;divide; 12 = 한 달 평균 급여&lt;/li&gt;
&lt;li&gt;② 이 평균 급여로 간이세액표에서 한 달 세금을 찾고 &amp;times; 12&lt;/li&gt;
&lt;li&gt;③ 여기서 이미 낸 월급 세금을 빼면 성과급 세금&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지급대상기간이 따로 정해지지 않은 상여금은 보통 그해 1월(그전에 받은 상여가 있으면 그다음 달)부터 받는 달까지를 기간으로 봅니다. 기간이 길수록 성과급이 여러 달로 잘게 나뉘어서 세금이 적게 계산됩니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;방식 2. 그 달 월급에 합쳐서 계산하기&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;회사 급여 프로그램에 따라 성과급을 그 달 월급에 그냥 더해서, 합친 금액으로 간이세액표를 찾는 곳도 있습니다. 월급 300만 원에 성과급 300만 원이면 그 달 월급이 600만 원인 것처럼 계산하는 겁니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;간이세액표는 월급이 클수록 세율이 가파르게 올라가게 만들어져 있어서, 이렇게 하면 그 달에 떼는 세금이 확 늘어납니다. 대신 연말정산에서 1년치 실제 세금으로 다시 계산하기 때문에, 많이 뗀 만큼 돌려받습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;성과급 받으면 실제로 얼마 들어올까&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;월급 300만 원(연봉 3,600만 원)인 사람이 12월에 성과급을 받는 경우로 계산했습니다. 부양가족은 본인 1명, 비과세 수당은 없다고 봤습니다. 그 달에 바로 빠지는 소득세&amp;middot;지방소득세&amp;middot;고용보험만 넣었습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;성과급&lt;/th&gt;
&lt;th&gt;방식 1 (12개월로 나눔)&lt;/th&gt;
&lt;th&gt;방식 2 (월급에 합침)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;100만 원&lt;/td&gt;
&lt;td&gt;약 99,280원 빠짐 &amp;rarr; &lt;b&gt;900,720원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;약 142,770원 빠짐 &amp;rarr; &lt;b&gt;857,230원&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;300만 원&lt;/td&gt;
&lt;td&gt;약 305,250원 빠짐 &amp;rarr; &lt;b&gt;2,694,750원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;약 501,700원 빠짐 &amp;rarr; &lt;b&gt;2,498,300원&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;500만 원&lt;/td&gt;
&lt;td&gt;약 581,440원 빠짐 &amp;rarr; &lt;b&gt;4,418,560원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;약 1,018,660원 빠짐 &amp;rarr; &lt;b&gt;3,981,340원&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1,000만 원&lt;/td&gt;
&lt;td&gt;약 1,378,050원 빠짐 &amp;rarr; &lt;b&gt;8,621,950원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;약 2,825,750원 빠짐 &amp;rarr; &lt;b&gt;7,174,250원&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성과급 1,000만 원이면 방식에 따라 그 달 통장에 들어오는 돈이 140만 원 넘게 차이 납니다. 방식 2로 많이 뗐다고 손해를 보는 건 아닙니다. 1년치 세금을 미리 더 낸 것이라 연말정산에서 돌려받습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;월급 400만 원이라면&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;월급이 높을수록 이미 높은 세율 구간에 있어서, 같은 성과급이라도 세금 비율이 올라갑니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;성과급&lt;/th&gt;
&lt;th&gt;방식 1 (12개월로 나눔)&lt;/th&gt;
&lt;th&gt;방식 2 (월급에 합침)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;100만 원&lt;/td&gt;
&lt;td&gt;&lt;b&gt;850,030원&lt;/b&gt; (15.0% 빠짐)&lt;/td&gt;
&lt;td&gt;&lt;b&gt;837,540원&lt;/b&gt; (16.2% 빠짐)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;300만 원&lt;/td&gt;
&lt;td&gt;&lt;b&gt;2,550,080원&lt;/b&gt; (15.0% 빠짐)&lt;/td&gt;
&lt;td&gt;&lt;b&gt;2,382,590원&lt;/b&gt; (20.6% 빠짐)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;500만 원&lt;/td&gt;
&lt;td&gt;&lt;b&gt;4,250,120원&lt;/b&gt; (15.0% 빠짐)&lt;/td&gt;
&lt;td&gt;&lt;b&gt;3,860,260원&lt;/b&gt; (22.8% 빠짐)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1,000만 원&lt;/td&gt;
&lt;td&gt;&lt;b&gt;8,401,770원&lt;/b&gt; (16.0% 빠짐)&lt;/td&gt;
&lt;td&gt;&lt;b&gt;6,930,720원&lt;/b&gt; (30.7% 빠짐)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;2026년 3월부터 쓰는 근로소득 간이세액표로 계산했습니다. 부양가족이 많거나 8~20세 자녀가 있으면 세금이 더 적습니다. 실제 금액은 회사의 지급대상기간 설정에 따라 조금 다를 수 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;건강보험과 국민연금은 나중에 빠진다&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;건강보험: 다음 해 4월 정산&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;매달 내는 건강보험료는 작년 보수를 기준으로 미리 정해 둔 금액입니다. 그래서 성과급을 받은 달에는 건강보험료가 바로 늘지 않는 경우가 많습니다. 대신 다음 해 4월에 1년치 실제 보수로 다시 계산해서, 덜 낸 만큼을 &lt;b&gt;4월 월급에서 정산&lt;/b&gt;합니다. 4월에 건강보험료가 갑자기 많이 빠지는 이유가 이것입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성과급 300만 원이면 건강보험과 장기요양보험을 합쳐 약 12만 원, 1,000만 원이면 약 40만 원이 다음 해 4월 정산에 더해진다고 보면 됩니다(근로자 몫 기준).&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;국민연금: 다음 해 7월부터&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;국민연금은 매년 7월에 작년 소득으로 기준소득월액을 새로 정합니다. 성과급을 받아 작년 소득이 늘었다면 &lt;b&gt;다음 해 7월부터&lt;/b&gt; 매달 국민연금이 조금 더 빠집니다. 다만 기준소득월액에는 상한(2026년 7월~2027년 6월 659만 원)이 있어서, 이미 상한을 넘는 고소득자는 더 늘지 않습니다. 국민연금은 나중에 받는 연금으로 돌아오는 돈이기도 합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;연말정산에서는 어떻게 되나&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성과급 달에 얼마를 뗐든, 최종 세금은 다음 해 2월 연말정산에서 정해집니다. 1년 동안 받은 월급과 성과급을 모두 더한 총급여로 실제 세금을 계산하고, 1년 동안 미리 뗀 세금과 비교합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;미리 뗀 세금이 더 많으면 &amp;rarr; 차액을 돌려받습니다(13월의 월급).&lt;/li&gt;
&lt;li&gt;미리 뗀 세금이 더 적으면 &amp;rarr; 차액을 더 냅니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 방식 2로 성과급 세금을 많이 뗀 회사라면 연말정산 환급이 늘어날 가능성이 큽니다. 반대로 성과급이 크면 총급여가 높아져서 세율 구간이 올라가고, 연말정산에서 오히려 더 내는 경우도 있습니다. 소득세 세율은 과세표준 1,400만 원 이하 6%, 5,000만 원 이하 15%, 8,800만 원 이하 24%처럼 구간마다 올라갑니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 것&lt;/h2&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 성과급은 세율이 따로 정해져 있나요?&lt;/b&gt;&lt;br /&gt;아닙니다. 성과급만을 위한 세율은 없고, 월급과 합친 1년 근로소득에 같은 세율이 적용됩니다. 그 달에 많이 빠져 보이는 건 원천징수 방식 때문입니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 성과급을 나눠서 받으면 세금이 줄어드나요?&lt;/b&gt;&lt;br /&gt;그 달에 떼는 금액은 줄 수 있지만, 같은 해에 받으면 1년 총급여는 같아서 연말정산 후 최종 세금은 거의 같습니다. 해를 넘겨서 받으면 그해 소득으로 잡히니 세율 구간이 달라질 수는 있습니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 퇴사하면서 받은 성과급도 똑같나요?&lt;/b&gt;&lt;br /&gt;네, 근로소득이라 똑같이 원천징수됩니다. 퇴사하는 해는 회사에서 퇴사할 때 연말정산을 한 번 해 주고, 다른 소득공제는 다음 해 5월 종합소득세 신고 때 넣을 수 있습니다. 퇴사 때 같이 받는 돈은 &lt;a href=&quot;https://bboxnote.tistory.com/26&quot;&gt;연차수당 계산법 글&lt;/a&gt;에도 정리해 두었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;정리하면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;성과급 명세서에서 세금이 많이 빠져 보여도 대부분은 &lt;b&gt;미리 떼는 방식&lt;/b&gt; 때문이고, 최종 세금은 연말정산에서 정해집니다. 월급 300만 원에 성과급 300만 원이면 그 달 실수령액은 약 250만~270만 원, 다음 해 4월 건강보험 정산으로 12만 원쯤 더 빠진다고 생각하면 됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연봉이 오르면 매달 실수령액이 얼마나 되는지도 궁금하다면 &lt;a href=&quot;https://bboxnote.tistory.com/1&quot;&gt;연봉 5천만 원 실수령액 글&lt;/a&gt;을 같이 보세요.&lt;/p&gt;
&lt;p class=&quot;bx-btn&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://koreapaycalc.com/salary/&quot;&gt;내 연봉 실수령액 계산해 보기&lt;/a&gt;&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/세금&amp;middot;연말정산</category>
      <category>상여금 세금</category>
      <category>상여금 실수령액</category>
      <category>상여금 원천징수</category>
      <category>성과급 4대보험</category>
      <category>성과급 세금</category>
      <category>성과급 세율</category>
      <category>성과급 실수령액</category>
      <category>연말정산</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/27</guid>
      <comments>https://bboxnote.tistory.com/entry/bonus-tax#entry27comment</comments>
      <pubDate>Sun, 18 Oct 2026 16:51:41 +0900</pubDate>
    </item>
    <item>
      <title>남은 연차, 돈으로 받을 수 있을까? 연차수당 계산법과 못 받는 경우</title>
      <link>https://bboxnote.tistory.com/entry/%EB%82%A8%EC%9D%80-%EC%97%B0%EC%B0%A8-%EB%8F%88%EC%9C%BC%EB%A1%9C-%EB%B0%9B%EC%9D%84-%EC%88%98-%EC%9E%88%EC%9D%84%EA%B9%8C-%EC%97%B0%EC%B0%A8%EC%88%98%EB%8B%B9-%EA%B3%84%EC%82%B0%EB%B2%95%EA%B3%BC-%EB%AA%BB-%EB%B0%9B%EB%8A%94-%EA%B2%BD%EC%9A%B0</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3LkQ2/dJMcag8ngyy/fhLe0ISGM3EP9VmtOtx9r1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3LkQ2/dJMcag8ngyy/fhLe0ISGM3EP9VmtOtx9r1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3LkQ2/dJMcag8ngyy/fhLe0ISGM3EP9VmtOtx9r1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3LkQ2%2FdJMcag8ngyy%2FfhLe0ISGM3EP9VmtOtx9r1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;남은 연차를 돈으로 받는 연차수당 계산법 안내 이미지&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10월쯤 되면 달력을 보다가 문득 이런 생각이 듭니다. &quot;올해 연차가 아직 이렇게 많이 남았나?&quot; 연말까지 다 쓰기엔 일이 많고, 그냥 날리자니 아깝습니다. 그래서 다들 한 번쯤 찾아보는 게 &lt;b&gt;남은 연차를 돈으로 받을 수 있는지&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결론부터 말하면, 대부분은 받을 수 있습니다. 다만 회사가 정해진 절차를 밟았다면 못 받을 수도 있습니다. 하나씩 정리해 보겠습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;못 쓴 연차는 &lt;b&gt;1일 통상임금 &amp;times; 남은 일수&lt;/b&gt;만큼 수당으로 받습니다.&lt;/li&gt;
&lt;li&gt;월급 300만 원이면 연차 하루에 약 &lt;b&gt;11만 5천 원&lt;/b&gt;, 5일 남았으면 약 57만 원입니다.&lt;/li&gt;
&lt;li&gt;회사가 &lt;b&gt;연차사용촉진&lt;/b&gt;을 서면으로 제대로 했다면 수당을 안 줘도 됩니다.&lt;/li&gt;
&lt;li&gt;5인 미만 사업장은 연차 규정 자체가 적용되지 않습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;연차는 며칠 생길까&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 내 연차가 몇 개인지부터 알아야 합니다. 근로기준법에서 정한 기준은 이렇습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;근무 기간&lt;/th&gt;
&lt;th&gt;연차 일수&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;입사 첫해 (1년 미만)&lt;/td&gt;
&lt;td&gt;한 달 개근할 때마다 1일, 최대 11일&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1년 근무 (출근율 80% 이상)&lt;/td&gt;
&lt;td&gt;15일&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3년 근무&lt;/td&gt;
&lt;td&gt;16일&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5년 근무&lt;/td&gt;
&lt;td&gt;17일&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;그 뒤&lt;/td&gt;
&lt;td&gt;2년마다 1일씩 늘어서 최대 25일&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입사 첫해에 생긴 11일과, 1년을 채우면 생기는 15일은 따로 셉니다. 그래서 입사하고 첫 2년 동안 받는 연차는 모두 합쳐 26일입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;연차수당 계산법&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;계산은 생각보다 단순합니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;1일 통상임금&lt;/b&gt; = 월 통상임금 &amp;divide; 209시간 &amp;times; 8시간&lt;/li&gt;
&lt;li&gt;&lt;b&gt;연차수당&lt;/b&gt; = 1일 통상임금 &amp;times; 못 쓴 연차 일수&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;통상임금은 기본급에 매달 고정으로 나오는 수당을 더한 금액입니다. 연장근무 수당처럼 달마다 달라지는 돈은 빠집니다. 월급별로 계산해 보면 이렇습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;월 통상임금&lt;/th&gt;
&lt;th&gt;연차 1일&lt;/th&gt;
&lt;th&gt;5일 남았을 때&lt;/th&gt;
&lt;th&gt;10일 남았을 때&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;2,236,300원 (2027 최저임금)&lt;/td&gt;
&lt;td&gt;85,600원&lt;/td&gt;
&lt;td&gt;428,000원&lt;/td&gt;
&lt;td&gt;856,000원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;300만 원&lt;/td&gt;
&lt;td&gt;약 11만 5천 원&lt;/td&gt;
&lt;td&gt;약 57만 4천 원&lt;/td&gt;
&lt;td&gt;약 114만 8천 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;350만 원&lt;/td&gt;
&lt;td&gt;약 13만 4천 원&lt;/td&gt;
&lt;td&gt;약 67만 원&lt;/td&gt;
&lt;td&gt;약 134만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;400만 원&lt;/td&gt;
&lt;td&gt;약 15만 3천 원&lt;/td&gt;
&lt;td&gt;약 76만 6천 원&lt;/td&gt;
&lt;td&gt;약 153만 1천 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;500만 원&lt;/td&gt;
&lt;td&gt;약 19만 1천 원&lt;/td&gt;
&lt;td&gt;약 95만 7천 원&lt;/td&gt;
&lt;td&gt;약 191만 4천 원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연차수당도 월급처럼 세금과 4대보험이 붙어서, 실제로 받는 돈은 이것보다 조금 적습니다. 최저임금 월급이 얼마인지는 &lt;a href=&quot;https://bboxnote.tistory.com/25&quot;&gt;2027 최저임금 실수령액 글&lt;/a&gt;에 정리해 두었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;언제 받을까&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연차는 생긴 날부터 1년 안에 써야 하고, 1년이 지나면 사라집니다. 그 사라진 연차가 수당으로 바뀝니다. 그래서 보통은 &lt;b&gt;연차가 사라진 다음 달 월급&lt;/b&gt;에 같이 들어옵니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;회사마다 연차를 입사일 기준으로 세는 곳도 있고, 1월 1일 기준으로 세는 곳도 있습니다. 1월 1일 기준인 회사라면 올해 못 쓴 연차는 내년 1월이나 2월 월급에 들어오는 경우가 많습니다. 정확한 날짜는 취업규칙이나 급여 담당자에게 확인하는 게 빠릅니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;수당을 못 받는 경우&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기가 제일 중요합니다. 연차가 남았는데도 수당이 안 나오는 경우가 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;1. 회사가 연차사용촉진을 한 경우&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;회사가 아래 절차를 문서로 밟았다면, 남은 연차를 안 썼어도 수당을 주지 않아도 됩니다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;연차가 사라지기 6개월 전에, 남은 일수를 알려 주고 언제 쓸지 정해 달라고 서면으로 요청합니다.&lt;/li&gt;
&lt;li&gt;직원이 10일 안에 날짜를 정하지 않으면, 사라지기 2개월 전까지 회사가 쓸 날짜를 정해서 서면으로 알려 줍니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&quot;연차 좀 쓰세요&quot;라고 말로만 하거나 단체 공지 한 번 띄운 정도로는 촉진으로 인정되지 않는 경우가 많습니다. 또 회사가 정해 준 날에 출근했는데 회사가 일을 시켰다면, 그날은 연차를 쓴 걸로 보기 어렵습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2. 5인 미만 사업장&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;상시 근로자가 5명이 안 되는 곳은 연차 규정 자체가 적용되지 않습니다. 회사가 따로 연차를 주기로 했다면 그 약속을 따릅니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;3. 1년짜리 계약직&lt;/b&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;딱 1년만 일하고 계약이 끝나면 15일 연차는 생기지 않고, 첫해에 생긴 최대 11일만 받습니다. 대법원이 2021년에 이렇게 판단했습니다. 하루라도 더 일해서 1년을 넘기면 15일이 생깁니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;퇴사할 때는&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퇴사할 때 남은 연차는 &lt;b&gt;모두 수당으로 정산&lt;/b&gt;받습니다. 연차사용촉진을 했더라도 아직 사라지지 않은 연차라면 퇴사하면서 수당으로 받습니다. 퇴사 후 14일 안에 받는 게 원칙이라, 마지막 월급과 함께 들어오는지 꼭 확인해 보세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퇴직금이 얼마인지도 궁금하다면 &lt;a href=&quot;https://bboxnote.tistory.com/2&quot;&gt;퇴직금 계산 방법 글&lt;/a&gt;을 같이 보면 됩니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 연차는 1년에 며칠 생기나요?&lt;/b&gt;&lt;br /&gt;입사 첫해에는 한 달 개근할 때마다 1일씩 최대 11일, 1년을 채우고 출근율이 80% 이상이면 15일이 생깁니다. 그 뒤로는 2년마다 1일씩 늘어서 최대 25일입니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 남은 연차 하루는 얼마로 계산하나요?&lt;/b&gt;&lt;br /&gt;1일 통상임금, 즉 월 통상임금 &amp;divide; 209시간 &amp;times; 8시간입니다. 월 통상임금이 300만 원이면 하루 약 11만 5천 원입니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 회사가 연차를 쓰라고 했는데 안 쓰면 수당을 못 받나요?&lt;/b&gt;&lt;br /&gt;회사가 정해진 연차사용촉진 절차를 서면으로 밟았다면 수당을 주지 않아도 됩니다. 말로만 쓰라고 한 정도로는 촉진으로 인정되지 않는 경우가 많습니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 퇴사하면 남은 연차는 어떻게 되나요?&lt;/b&gt;&lt;br /&gt;남은 연차는 모두 수당으로 정산받습니다. 퇴사 후 14일 안에 받는 게 원칙입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;정리하면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;남은 연차는 그냥 사라지는 게 아니라 대부분 돈으로 돌아옵니다. 다만 연말이 되기 전에 회사에서 연차 사용 날짜를 정하라는 문서를 받았다면, 그건 연차수당 대신 쉬라는 뜻입니다. 그런 문서를 받았다면 날짜를 정해서 쉬는 게 이득이고, 받은 적이 없다면 연초 월급명세서에 연차수당이 들어왔는지 확인해 보세요.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;회사 취업규칙이나 단체협약이 법보다 유리하게 정해져 있다면 그쪽을 따릅니다. 내 경우가 애매하다면 고용노동부 상담센터(국번 없이 1350)에 물어볼 수 있습니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/월급&amp;middot;노동</category>
      <category>계약직 연차</category>
      <category>미사용 연차수당</category>
      <category>연차 26개</category>
      <category>연차 발생 기준</category>
      <category>연차사용촉진제도</category>
      <category>연차수당 계산</category>
      <category>연차수당 계산법</category>
      <category>퇴사 연차수당</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/26</guid>
      <comments>https://bboxnote.tistory.com/entry/%EB%82%A8%EC%9D%80-%EC%97%B0%EC%B0%A8-%EB%8F%88%EC%9C%BC%EB%A1%9C-%EB%B0%9B%EC%9D%84-%EC%88%98-%EC%9E%88%EC%9D%84%EA%B9%8C-%EC%97%B0%EC%B0%A8%EC%88%98%EB%8B%B9-%EA%B3%84%EC%82%B0%EB%B2%95%EA%B3%BC-%EB%AA%BB-%EB%B0%9B%EB%8A%94-%EA%B2%BD%EC%9A%B0#entry26comment</comments>
      <pubDate>Sat, 17 Oct 2026 22:39:31 +0900</pubDate>
    </item>
    <item>
      <title>2027 최저임금 10,700원, 월급으로 받으면 실수령액은 얼마일까?</title>
      <link>https://bboxnote.tistory.com/entry/2027-%EC%B5%9C%EC%A0%80%EC%9E%84%EA%B8%88-10700%EC%9B%90-%EC%9B%94%EA%B8%89%EC%9C%BC%EB%A1%9C-%EB%B0%9B%EC%9C%BC%EB%A9%B4-%EC%8B%A4%EC%88%98%EB%A0%B9%EC%95%A1%EC%9D%80-%EC%96%BC%EB%A7%88%EC%9D%BC%EA%B9%8C</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/kVzin/dJMcabTBar3/TQfc2bcCem2xFJYy4rYvA1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/kVzin/dJMcabTBar3/TQfc2bcCem2xFJYy4rYvA1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/kVzin/dJMcabTBar3/TQfc2bcCem2xFJYy4rYvA1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FkVzin%2FdJMcabTBar3%2FTQfc2bcCem2xFJYy4rYvA1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;2027 최저임금 시급 10,700원, 월급 2,236,300원 실수령액 안내 이미지&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내년 최저임금이 정해졌습니다. &lt;b&gt;2027년 최저시급은 10,700원&lt;/b&gt;으로, 올해 10,320원보다 380원(3.7%) 오릅니다. 주 40시간 일하는 사람이 받는 월급으로 바꾸면 &lt;b&gt;2,236,300원&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 월급날 통장에 찍히는 돈은 이것보다 적습니다. 4대보험과 세금이 빠지기 때문입니다. 그래서 이번 글에서는 &quot;그래서 실제로 얼마 받는데?&quot;를 계산해 봤습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;2027년 최저시급 &lt;b&gt;10,700원&lt;/b&gt;, 월 환산액 &lt;b&gt;2,236,300원&lt;/b&gt;(주 40시간, 주휴수당 포함 209시간)&lt;/li&gt;
&lt;li&gt;4대보험과 세금을 빼면 &lt;b&gt;월 실수령액은 약 198만 원&lt;/b&gt;입니다. 식대 20만 원이 비과세로 나오면 약 201만 원입니다.&lt;/li&gt;
&lt;li&gt;올해보다 세전은 7만 9천 원, 실수령액은 6만 3천 원 정도 늘어납니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;209시간은 어디서 나온 숫자일까&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최저임금 월급을 말할 때 늘 &quot;209시간&quot;이 붙습니다. 한 달에 실제로 일하는 시간은 약 174시간인데, 여기에 주휴수당 시간이 더해져서 209시간이 됩니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;주 40시간 + 주휴 8시간 = 주 48시간&lt;/li&gt;
&lt;li&gt;한 달은 평균 4.345주(365일 &amp;divide; 7 &amp;divide; 12)&lt;/li&gt;
&lt;li&gt;48시간 &amp;times; 4.345주 &amp;asymp; &lt;b&gt;209시간&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 10,700원 &amp;times; 209시간 = 2,236,300원이 됩니다. 회사가 &quot;최저임금 맞춰 준다&quot;고 하면 보통 이 금액을 말합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;월급 2,236,300원에서 빠지는 돈&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;식대 같은 비과세 수당이 없는 경우와, 식대 20만 원이 따로 비과세로 나오는 경우를 나눠 계산했습니다. 부양가족은 본인 1명 기준입니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;항목&lt;/th&gt;
&lt;th&gt;비과세 없음&lt;/th&gt;
&lt;th&gt;식대 20만 원 비과세&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;세전 월급&lt;/td&gt;
&lt;td&gt;2,236,300원&lt;/td&gt;
&lt;td&gt;2,236,300원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;국민연금 (5%)&lt;/td&gt;
&lt;td&gt;111,810원&lt;/td&gt;
&lt;td&gt;101,810원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;건강보험 (3.595%)&lt;/td&gt;
&lt;td&gt;80,390원&lt;/td&gt;
&lt;td&gt;73,200원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;장기요양보험&lt;/td&gt;
&lt;td&gt;10,560원&lt;/td&gt;
&lt;td&gt;9,610원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;고용보험 (0.9%)&lt;/td&gt;
&lt;td&gt;20,120원&lt;/td&gt;
&lt;td&gt;18,320원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;소득세&lt;/td&gt;
&lt;td&gt;26,910원&lt;/td&gt;
&lt;td&gt;20,490원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;지방소득세&lt;/td&gt;
&lt;td&gt;2,690원&lt;/td&gt;
&lt;td&gt;2,040원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;공제 합계&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;252,480원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;225,470원&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;월 실수령액&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;1,983,820원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;2,010,830원&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;눈여겨볼 건 국민연금입니다. 연금 개혁으로 보험료율이 해마다 0.5%p씩 오르고 있어서, 근로자가 내는 몫이 올해 4.75%에서 &lt;b&gt;내년엔 5%&lt;/b&gt;가 됩니다. 시급이 오른 만큼 다 남지 않는 이유 중 하나입니다. 반대로 건강보험료율은 내년에 7.19%로 동결돼서 올해와 같습니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;장기요양보험료율은 아직 내년 값이 나오지 않아 올해 요율로 계산했고, 소득세는 지금 쓰는 간이세액표 기준입니다. 실제 명세서는 회사의 수당 구성에 따라 조금 다를 수 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;올해와 비교하면&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&amp;nbsp;&lt;/th&gt;
&lt;th&gt;2026년&lt;/th&gt;
&lt;th&gt;2027년&lt;/th&gt;
&lt;th&gt;차이&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;최저시급&lt;/td&gt;
&lt;td&gt;10,320원&lt;/td&gt;
&lt;td&gt;10,700원&lt;/td&gt;
&lt;td&gt;+380원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;월 환산액 (209시간)&lt;/td&gt;
&lt;td&gt;2,156,880원&lt;/td&gt;
&lt;td&gt;2,236,300원&lt;/td&gt;
&lt;td&gt;+79,420원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;월 실수령액 (비과세 없음)&lt;/td&gt;
&lt;td&gt;1,920,540원&lt;/td&gt;
&lt;td&gt;1,983,820원&lt;/td&gt;
&lt;td&gt;+63,280원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세전으로는 8만 원 가까이 오르지만, 손에 쥐는 돈은 6만 3천 원 정도 늘어납니다. 1년이면 76만 원쯤입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;알바라면, 주 몇 시간 일하면 얼마?&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주 15시간 이상 일하면 주휴수당이 붙습니다. 주휴 시간은 (주 근무시간 &amp;divide; 40) &amp;times; 8시간입니다. 이걸 넣어서 시간별로 한 달 월급을 정리하면 이렇습니다(세전, 한 달 4.345주 기준).&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;주 근무시간&lt;/th&gt;
&lt;th&gt;주휴 포함 월 시간&lt;/th&gt;
&lt;th&gt;2027년 월급 (세전)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;15시간&lt;/td&gt;
&lt;td&gt;약 78시간&lt;/td&gt;
&lt;td&gt;약 83만 7천 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;20시간&lt;/td&gt;
&lt;td&gt;약 104시간&lt;/td&gt;
&lt;td&gt;약 111만 6천 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;25시간&lt;/td&gt;
&lt;td&gt;약 130시간&lt;/td&gt;
&lt;td&gt;약 139만 5천 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;30시간&lt;/td&gt;
&lt;td&gt;약 156시간&lt;/td&gt;
&lt;td&gt;약 167만 4천 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;35시간&lt;/td&gt;
&lt;td&gt;약 183시간&lt;/td&gt;
&lt;td&gt;약 195만 3천 원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;40시간&lt;/td&gt;
&lt;td&gt;209시간&lt;/td&gt;
&lt;td&gt;2,236,300원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주 15시간이 안 되면 주휴수당이 없어서 일한 시간 &amp;times; 10,700원만 받습니다. 주휴수당 조건이 헷갈린다면 &lt;a href=&quot;https://bboxnote.tistory.com/3&quot;&gt;주휴수당 조건과 계산법 글&lt;/a&gt;에 정리해 두었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;내 월급이 최저임금보다 적은지 확인하려면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;월급이 최저임금 이상인지 볼 때는 &lt;b&gt;매달 고정으로 받는 돈&lt;/b&gt;을 기준으로 봅니다. 기본급과 매달 나오는 고정 수당은 들어가고, 연장&amp;middot;야간&amp;middot;휴일 근무 수당은 빠집니다. 식대나 교통비 같은 복리후생비도 매달 돈으로 나오면 포함됩니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이렇게 모은 금액을 209시간으로 나눠서 10,700원보다 적다면 내년 1월부터는 최저임금에 못 미치는 겁니다. 그럴 땐 회사에 먼저 이야기해 보고, 그래도 안 되면 고용노동부(국번 없이 1350)에 물어볼 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수습 기간이라 깎아서 받는 경우도 있는데, 1년 이상 계약을 하고 수습 3개월 이내일 때만 최저임금의 90%까지 줄일 수 있습니다. 단순 노무 직종은 수습이어도 깎을 수 없습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;연봉으로 바꿔 보면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;최저임금 월급을 1년 받으면 세전 약 2,684만 원입니다. 다른 연봉은 얼마나 받는지 궁금하다면 &lt;a href=&quot;https://bboxnote.tistory.com/1&quot;&gt;연봉별 실수령액 정리 글&lt;/a&gt;도 같이 보세요.&lt;/p&gt;
&lt;p class=&quot;bx-btn&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://koreapaycalc.com/salary/&quot;&gt;내 연봉 실수령액 계산해 보기&lt;/a&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 2027년 최저시급은 얼마인가요?&lt;/b&gt;&lt;br /&gt;10,700원입니다. 2026년 10,320원보다 380원(3.7%) 오릅니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 최저임금으로 월급을 받으면 실수령액은 얼마인가요?&lt;/b&gt;&lt;br /&gt;주 40시간 기준 세전 2,236,300원에서 4대보험과 세금을 빼면 약 198만 원입니다. 식대 20만 원이 비과세로 나오면 약 201만 원입니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 수습 기간이면 최저임금보다 적게 줘도 되나요?&lt;/b&gt;&lt;br /&gt;1년 이상 계약하고 수습 3개월 이내일 때만 최저임금의 90%까지 줄일 수 있습니다. 단순 노무 직종은 수습이어도 깎을 수 없습니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 최저임금보다 적게 받고 있다면 어디에 물어보나요?&lt;/b&gt;&lt;br /&gt;먼저 회사에 이야기해 보고, 그래도 해결되지 않으면 고용노동부(국번 없이 1350)에 물어볼 수 있습니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/월급&amp;middot;노동</category>
      <category>2027 최저시급</category>
      <category>2027 최저임금</category>
      <category>2027 최저임금 월급</category>
      <category>알바 월급 계산</category>
      <category>주휴수당 포함 월급</category>
      <category>최저시급 월급 계산</category>
      <category>최저임금 실수령액</category>
      <category>최저임금 월급</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/25</guid>
      <comments>https://bboxnote.tistory.com/entry/2027-%EC%B5%9C%EC%A0%80%EC%9E%84%EA%B8%88-10700%EC%9B%90-%EC%9B%94%EA%B8%89%EC%9C%BC%EB%A1%9C-%EB%B0%9B%EC%9C%BC%EB%A9%B4-%EC%8B%A4%EC%88%98%EB%A0%B9%EC%95%A1%EC%9D%80-%EC%96%BC%EB%A7%88%EC%9D%BC%EA%B9%8C#entry25comment</comments>
      <pubDate>Fri, 16 Oct 2026 23:11:42 +0900</pubDate>
    </item>
    <item>
      <title>주식 자동매매 봇 만들기 8편: 혼자 살아남은 미너비니 트렌드 템플릿, 봇에 넣을까?</title>
      <link>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-8%ED%8E%B8-%ED%98%BC%EC%9E%90-%EC%82%B4%EC%95%84%EB%82%A8%EC%9D%80-%EB%AF%B8%EB%84%88%EB%B9%84%EB%8B%88-%ED%8A%B8%EB%A0%8C%EB%93%9C-%ED%85%9C%ED%94%8C%EB%A6%BF-%EB%B4%87%EC%97%90-%EB%84%A3%EC%9D%84%EA%B9%8C</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b2TTOR/dJMcagOhNeH/5AcDcgmUJBzoUDZ8cxrY41/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b2TTOR/dJMcagOhNeH/5AcDcgmUJBzoUDZ8cxrY41/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b2TTOR/dJMcagOhNeH/5AcDcgmUJBzoUDZ8cxrY41/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb2TTOR%2FdJMcagOhNeH%2F5AcDcgmUJBzoUDZ8cxrY41%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞 편에서 단타 규칙을 줄줄이 돌려 봤는데, 지금 전략보다 나은 건 &lt;b&gt;마크 미너비니의 트렌드 템플릿&lt;/b&gt; 하나뿐이었습니다. 미너비니는 미국 투자 챔피언십 우승자로 유명한 트레이더입니다. 이번 편에서는 이 규칙이 실제로 어떤 종목을 어떻게 사고팔았는지 보고, 봇에 넣을지 따져 봅니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;아래 숫자는 모두 과거 데이터로 계산한 백테스트 결과입니다. 종목 이름은 규칙이 과거에 고른 예시일 뿐, 매수 추천이 아닙니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;2016~2026 백테스트 결과 &lt;b&gt;연 +15.9%, 최대 낙폭 -41%&lt;/b&gt;입니다. 지금 전략(+14.2%)보다 높지만 KODEX 200 보유(+15.5%)와 비슷합니다.&lt;/li&gt;
&lt;li&gt;매매의 절반 이상이 &lt;b&gt;-8% 손절&lt;/b&gt;로 끝나고, 가끔 몇 배 오르는 종목이 손실을 메우는 구조입니다.&lt;/li&gt;
&lt;li&gt;혼합 전략의 30% 칸에 넣으면 수익은 비슷하고 &lt;b&gt;최대 낙폭이 5%p 줄었습니다&lt;/b&gt;. 아직 넣을지 고민 중입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;트렌드 템플릿 규칙&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;규칙을 숫자로 옮기면 이렇습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;종가 &amp;gt; 50일선 &amp;gt; 150일선 &amp;gt; 200일선 (정배열)&lt;/li&gt;
&lt;li&gt;200일선이 한 달 전보다 올라가는 중&lt;/li&gt;
&lt;li&gt;1년 최저가보다 30% 이상 위, 1년 최고가의 75% 이상&lt;/li&gt;
&lt;li&gt;직전 50일 최고가를 넘고 거래대금이 평소의 1.5배 이상이면 &lt;b&gt;다음 날 아침에 삽니다&lt;/b&gt;.&lt;/li&gt;
&lt;li&gt;산 값에서 &lt;b&gt;-8%면 손절&lt;/b&gt;, 종가가 50일선 아래로 내려가면 팝니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;2016~2026 결과는 &lt;b&gt;연 +15.9%, 최대 낙폭 -41%&lt;/b&gt;입니다. 일봉 단기 전략 중 유일하게 지금 전략(+14.2%)보다 높았습니다. 다만 KODEX 200을 그냥 들고 있는 것(+15.5%)과 비슷한 수준이라 압도적이진 않습니다. 평균 26일을 들고 있어서 단타라기보다는 스윙에 가깝습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;어떤 종목을 샀나&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;10년 동안 186개 종목을 677번 사고팔았습니다. 수익이 컸던 매매를 추리면 이렇습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;종목&lt;/th&gt;
&lt;th&gt;산 날 &amp;rarr; 판 날&lt;/th&gt;
&lt;th&gt;수익률&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;삼성전기&lt;/td&gt;
&lt;td&gt;2025-11 &amp;rarr; 2026-07&lt;/td&gt;
&lt;td&gt;+512%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;에코프로&lt;/td&gt;
&lt;td&gt;2023-02 &amp;rarr; 2023-05&lt;/td&gt;
&lt;td&gt;+261%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;알테오젠&lt;/td&gt;
&lt;td&gt;2020-05 &amp;rarr; 2020-09&lt;/td&gt;
&lt;td&gt;+208%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;HD현대일렉트릭&lt;/td&gt;
&lt;td&gt;2024-02 &amp;rarr; 2024-07&lt;/td&gt;
&lt;td&gt;+161%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;레인보우로보틱스&lt;/td&gt;
&lt;td&gt;2023-01 &amp;rarr; 2023-04&lt;/td&gt;
&lt;td&gt;+154%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;HMM&lt;/td&gt;
&lt;td&gt;2021-02 &amp;rarr; 2021-06&lt;/td&gt;
&lt;td&gt;+145%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;LG이노텍&lt;/td&gt;
&lt;td&gt;2026-04 &amp;rarr; 2026-07&lt;/td&gt;
&lt;td&gt;+142%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 자주 산 종목은 SK하이닉스(17번), 한화에어로스페이스와 JYP(11번), NC&amp;middot;삼성전자&amp;middot;KB금융(10번)이었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;열 번 중 일곱 번은 지는 전략&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;677번의 매매를 수익률 구간별로 세어 보면 이 전략의 성격이 한눈에 보입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/eqm6aO/dJMcagOhNeI/UMaM7b3NTs2U1UYzam0PIk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/eqm6aO/dJMcagOhNeI/UMaM7b3NTs2U1UYzam0PIk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/eqm6aO/dJMcagOhNeI/UMaM7b3NTs2U1UYzam0PIk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Feqm6aO%2FdJMcagOhNeI%2FUMaM7b3NTs2U1UYzam0PIk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;돈을 번 매매는 &lt;b&gt;10번 중 3번&lt;/b&gt;(29%)뿐이고, 절반 이상(53%)이 -5~-8% 구간, 즉 손절선 근처에서 끝났습니다. 대신 오른쪽 끝에 두 배 넘게 오른 매매가 11번 있고, 이 몇 번이 나머지 손실을 다 메웁니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 이 전략을 쓰려면 &lt;b&gt;손절만 연달아 나는 몇 달을 버틸 수 있어야&lt;/b&gt; 합니다. 그리고 삼성전기 같은 대박 하나에 성과가 꽤 기대고 있다는 점도 기억해야 합니다. 그런 종목이 한두 개만 빠졌어도 결과는 꽤 달라졌을 겁니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;혼합 전략의 30% 칸을 바꿔 보면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지금 전략의 &quot;대형주 모멘텀 30%&quot; 자리에 미너비니를 넣어 비교했습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;조합 (2016~2026)&lt;/th&gt;
&lt;th&gt;연수익률&lt;/th&gt;
&lt;th&gt;최대 낙폭&lt;/th&gt;
&lt;th&gt;샤프&lt;/th&gt;
&lt;th&gt;최악의 해&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;지수 추세 70 + 대형주 모멘텀 30 (지금)&lt;/td&gt;
&lt;td&gt;+15.8%&lt;/td&gt;
&lt;td&gt;-44.6%&lt;/td&gt;
&lt;td&gt;0.74&lt;/td&gt;
&lt;td&gt;2018 -6.7%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;지수 추세 70 + 미너비니 30&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;+15.6%&lt;/td&gt;
&lt;td&gt;&lt;b&gt;-39.0%&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;0.79&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;2018 -6.6%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;지수 추세 50 + 미너비니 50&lt;/td&gt;
&lt;td&gt;+16.0%&lt;/td&gt;
&lt;td&gt;-39.4%&lt;/td&gt;
&lt;td&gt;0.78&lt;/td&gt;
&lt;td&gt;2022 -9.2%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수익률은 거의 같은데, 크게 빠질 때 5%p 덜 빠지고 위험 대비 수익(샤프)이 조금 좋아졌습니다. 다만 차이가 크지 않아서 운이 섞였을 수도 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;코드로 보면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;트렌드 템플릿 조건을 그대로 코드로 옮기면 이렇습니다. 조건을 통과한 종목은 그날 거래대금이 큰 순서로 다음 날 아침에 삽니다.&lt;/p&gt;
&lt;pre class=&quot;angelscript&quot;&gt;&lt;code&gt;def minervini_candidates(d, universe, i):
    out = []
    for s in universe:
        cl = d.close[s]
        c = cl[i]
        ma50, ma150, ma200 = sma(cl, i, 50), sma(cl, i, 150), sma(cl, i, 200)
        ma200_old = sma(cl, i - 20, 200)            # 한 달 전 200일선
        year = [x for x in cl[i - 251 : i + 1] if x]  # 최근 1년 종가
        prior_high = max(d.high[s][i - 50 : i])     # 직전 50일 최고가
        v, avg_v = d.value[s][i], mean(d.value[s][i - 50 : i])

        template = (
            c &amp;gt; ma50 &amp;gt; ma150 &amp;gt; ma200        # 정배열
            and ma200 &amp;gt; ma200_old           # 200일선 상승 중
            and c &amp;gt;= 1.3 * min(year)        # 1년 최저가보다 30% 이상 위
            and c &amp;gt;= 0.75 * max(year)       # 1년 최고가의 75% 이상
        )
        if template and c &amp;gt; prior_high and v &amp;gt;= 1.5 * avg_v:
            out.append((v, s))
    return sorted(out, reverse=True)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;파는 쪽은 두 가지뿐입니다. 장중 저가가 산 값의 92%까지 내려오면 그 가격에 손절하고, 종가가 50일선 아래로 내려오면 다음 날 시가에 팝니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;지금까지 정리&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;계획을 세우고 저장소를 만들었습니다.&lt;/li&gt;
&lt;li&gt;모멘텀 백테스트를 돌렸고, 지수도 못 이겼습니다.&lt;/li&gt;
&lt;li&gt;8가지 전략을 비교하고 미래 정보 편향을 잡아, 혼합 7:3을 골랐습니다.&lt;/li&gt;
&lt;li&gt;GitHub Actions로 매일 도는 봇을 만들었습니다.&lt;/li&gt;
&lt;li&gt;공시&amp;middot;뉴스 악재 필터와 아침 브리핑을 붙였습니다.&lt;/li&gt;
&lt;li&gt;텔레그램 알림과 한국투자증권 모의투자를 연결했습니다.&lt;/li&gt;
&lt;li&gt;단타 규칙을 전부 시험했고, 비용 때문에 전부 졌습니다.&lt;/li&gt;
&lt;li&gt;살아남은 미너비니 규칙을 찾았습니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;배운 것을 세 줄로 줄이면 이렇습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;백테스트 숫자가 너무 좋으면 먼저 의심하자.&lt;/b&gt; 연 +32%의 교훈입니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;한국 주식 단타의 적은 0.43%다.&lt;/b&gt; 자주 사고팔수록 확실히 잃습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;지수를 이기기는 정말 어렵다.&lt;/b&gt; 그래서 목표를 &quot;지수만큼 벌면서 하락장에서 덜 잃기&quot;로 잡았습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;다음 계획&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;미너비니를 봇의 30% 칸에 넣을지 결정하기 (아직 고민 중입니다)&lt;/li&gt;
&lt;li&gt;모의투자 실제 주문 결과 지켜보기&lt;/li&gt;
&lt;li&gt;몇 달 쌓인 뉴스 점수가 정말 도움이 되는지 확인하기&lt;/li&gt;
&lt;li&gt;Cloudflare로 대시보드 만들기&lt;/li&gt;
&lt;li&gt;결과가 괜찮으면 소액으로 실전&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 글은 모의투자를 몇 주 돌려 본 뒤에 후기로 돌아오겠습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;주식 자동매매 봇 만들기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/17&quot;&gt;1편: 국내주식&amp;middot;한국투자증권&amp;middot;Python을 고른 이유&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/18&quot;&gt;2편: 모멘텀 전략 10년 백테스트, 지수도 못 이겼다&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/19&quot;&gt;3편: 8가지 전략 비교와 연 +32%의 함정&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/20&quot;&gt;4편: 서버 없이 GitHub Actions로 매일 아침 도는 봇&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/21&quot;&gt;5편: 공시&amp;middot;뉴스로 악재 종목 거르기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/22&quot;&gt;6편: 텔레그램 알림과 한국투자증권 모의투자 연결&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/23&quot;&gt;7편: 단타 규칙을 전부 돌려 봤더니&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/24&quot;&gt;8편: 살아남은 미너비니 규칙&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/entry/us-stock-bot&quot;&gt;9편: 미국주식도 붙였다, 나스닥100 추세추종 봇&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/주식 자동매매</category>
      <category>마크 미너비니 전략</category>
      <category>미너비니</category>
      <category>손절 -8%</category>
      <category>스윙 매매 백테스트</category>
      <category>신고가 돌파 매매</category>
      <category>자산배분 백테스트</category>
      <category>퀀트 봇</category>
      <category>트렌드 템플릿</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/24</guid>
      <comments>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-8%ED%8E%B8-%ED%98%BC%EC%9E%90-%EC%82%B4%EC%95%84%EB%82%A8%EC%9D%80-%EB%AF%B8%EB%84%88%EB%B9%84%EB%8B%88-%ED%8A%B8%EB%A0%8C%EB%93%9C-%ED%85%9C%ED%94%8C%EB%A6%BF-%EB%B4%87%EC%97%90-%EB%84%A3%EC%9D%84%EA%B9%8C#entry24comment</comments>
      <pubDate>Thu, 15 Oct 2026 23:46:02 +0900</pubDate>
    </item>
    <item>
      <title>주식 자동매매 봇 만들기 7편: 단타로 짧게 먹고 나오면 안 될까? 유명 단타 기법 전부 백테스트</title>
      <link>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-7%ED%8E%B8-%EB%8B%A8%ED%83%80%EB%A1%9C-%EC%A7%A7%EA%B2%8C-%EB%A8%B9%EA%B3%A0-%EB%82%98%EC%98%A4%EB%A9%B4-%EC%95%88-%EB%90%A0%EA%B9%8C-%EC%9C%A0%EB%AA%85-%EB%8B%A8%ED%83%80-%EA%B8%B0%EB%B2%95-%EC%A0%84%EB%B6%80-%EB%B0%B1%ED%85%8C%EC%8A%A4%ED%8A%B8</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bktV7D/dJMcag1xqFd/HMGjSObGdst3ndWGQ9obs0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bktV7D/dJMcag1xqFd/HMGjSObGdst3ndWGQ9obs0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bktV7D/dJMcag1xqFd/HMGjSObGdst3ndWGQ9obs0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbktV7D%2FdJMcag1xqFd%2FHMGjSObGdst3ndWGQ9obs0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;3편에서 &quot;최소 3년은 들고 가야 한다&quot;는 결과를 보고 나니 솔직히 좀 답답했습니다. 트레이더들은 짧게 먹고 빠지던데, 그런 방법은 안 될까 싶었습니다. 그래서 유명한 단기 매매 규칙들을 지금 전략과 &lt;b&gt;같은 비용, 같은 대형주&lt;/b&gt;로 전부 돌려 봤습니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;아래 숫자는 모두 과거 데이터로 계산한 백테스트 결과입니다. 특정 기법을 추천하거나 깎아내리려는 글이 아니라, 제 조건에서 돌려 본 기록입니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;일봉 단기 매매, 유명 트레이더 규칙, 분봉 단타까지 세 라운드를 돌렸습니다. &lt;b&gt;미너비니 규칙 하나&lt;/b&gt;만 지금 전략보다 나았습니다.&lt;/li&gt;
&lt;li&gt;한국 주식은 한 번 사고팔 때마다 세금&amp;middot;수수료&amp;middot;체결 손해로 &lt;b&gt;약 0.43%&lt;/b&gt;가 나갑니다.&lt;/li&gt;
&lt;li&gt;단타 규칙들이 비용 전에 버는 돈은 거래당 &lt;b&gt;0% 안팎&lt;/b&gt;이었습니다. 자주 사고팔수록 확실하게 잃습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1라운드: 일봉 단기 매매 (2016~2026)&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;전략&lt;/th&gt;
&lt;th&gt;누가 쓰나&lt;/th&gt;
&lt;th&gt;연수익률&lt;/th&gt;
&lt;th&gt;최대 낙폭&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;(지금 전략) 혼합 7:3&lt;/td&gt;
&lt;td&gt;&amp;nbsp;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;+14.2%&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;-44.7%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;변동성 돌파 대형주&lt;/td&gt;
&lt;td&gt;래리 윌리엄스, 국내 유튜브 단골&lt;/td&gt;
&lt;td&gt;-12.1%&lt;/td&gt;
&lt;td&gt;-81.7%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;변동성 돌파 KODEX 200&lt;/td&gt;
&lt;td&gt;&amp;nbsp;&lt;/td&gt;
&lt;td&gt;-0.1%&lt;/td&gt;
&lt;td&gt;-35.9%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;RSI(2) 눌림목&lt;/td&gt;
&lt;td&gt;래리 코너스&lt;/td&gt;
&lt;td&gt;+5.0%&lt;/td&gt;
&lt;td&gt;-46.0%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;20일 돌파&lt;/td&gt;
&lt;td&gt;터틀 트레이딩&lt;/td&gt;
&lt;td&gt;+2.0%&lt;/td&gt;
&lt;td&gt;-47.0%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;변동성 돌파 대형주는 10년 동안 18,240번 사고팔았습니다. 그 과정에서 &lt;b&gt;비용으로만 2,400만 원&lt;/b&gt;이 나갔습니다. 시작 자금이 1,000만 원이었는데 말입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2라운드: 유명 트레이더 규칙 따라 하기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이번에는 단타로 유명한 트레이더들이 공개한 규칙을 숫자로 옮겨 돌려 봤습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;전략&lt;/th&gt;
&lt;th&gt;원래 규칙&lt;/th&gt;
&lt;th&gt;연수익률&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;종가베팅 &amp;rarr; 다음 날 시가 매도&lt;/td&gt;
&lt;td&gt;국내 단타 트레이더: 거래량 터진 장대양봉을 장 마감에 사서 다음 날 아침 매도&lt;/td&gt;
&lt;td&gt;+1.4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;종가베팅 &amp;rarr; 5일선 깨지면 매도&lt;/td&gt;
&lt;td&gt;같은 셋업에서 조금 더 들고 가기&lt;/td&gt;
&lt;td&gt;+2.9%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;IBS 평균회귀&lt;/td&gt;
&lt;td&gt;약하게 끝난 날 사서 전날 고가를 넘으면 매도&lt;/td&gt;
&lt;td&gt;+3.4%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;RSI(2) KODEX 200&lt;/td&gt;
&lt;td&gt;래리 코너스 규칙을 ETF에&lt;/td&gt;
&lt;td&gt;+2.7%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;월말&amp;middot;월초 효과&lt;/td&gt;
&lt;td&gt;월말에 사서 다음 달 3일째 매도&lt;/td&gt;
&lt;td&gt;+3.9%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;쿨라매기 모멘텀 돌파&lt;/td&gt;
&lt;td&gt;크리스티안 쿨라매기: 급등주가 좁게 쉬다가 돌파하면 매수&lt;/td&gt;
&lt;td&gt;+2.2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;미너비니 트렌드 템플릿&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;마크 미너비니: 상승 추세 종목의 신고가 돌파&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;+15.9%&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미너비니 하나만 살아남았습니다. 이건 다음 편에서 따로 자세히 봅니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3라운드: 진짜 단타, 분봉으로&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;일봉으로 하니까 안 되는 거고, 장중에 실시간으로 하면 다르지 않을까 싶었습니다. 오라클 서버에 올리면 실시간 매매도 못 할 건 없으니, 분봉 단타까지 돌려 봤습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;분봉 과거 데이터는 무료로 구하기가 어렵습니다. 야후 파이낸스에서 &lt;b&gt;5분봉 약 60일, 60분봉 약 2년&lt;/b&gt;치를 받았습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;전략&lt;/th&gt;
&lt;th&gt;출처&lt;/th&gt;
&lt;th&gt;기간 수익률&lt;/th&gt;
&lt;th&gt;거래당 평균 (비용 전 &amp;rarr; 후)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;ORB 60분 (첫 1시간 고가 돌파)&lt;/td&gt;
&lt;td&gt;고전적인 시가 범위 돌파&lt;/td&gt;
&lt;td&gt;-93.0% (2년)&lt;/td&gt;
&lt;td&gt;+0.05% &amp;rarr; -0.38%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ORB 5분&lt;/td&gt;
&lt;td&gt;Zarattini&amp;middot;Aziz 2024 논문&lt;/td&gt;
&lt;td&gt;-20.5% (3개월)&lt;/td&gt;
&lt;td&gt;-0.29% &amp;rarr; -0.72%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;변동성 돌파 장중판&lt;/td&gt;
&lt;td&gt;래리 윌리엄스&lt;/td&gt;
&lt;td&gt;-24.0% (3개월)&lt;/td&gt;
&lt;td&gt;-0.25% &amp;rarr; -0.68%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;VWAP 눌림&lt;/td&gt;
&lt;td&gt;브라이언 섀넌 류&lt;/td&gt;
&lt;td&gt;-15.7% (3개월)&lt;/td&gt;
&lt;td&gt;0.00% &amp;rarr; -0.43%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;갭앤고&lt;/td&gt;
&lt;td&gt;모멘텀 데이 트레이더&lt;/td&gt;
&lt;td&gt;-6.3% (3개월)&lt;/td&gt;
&lt;td&gt;-1.05% &amp;rarr; -1.48%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;5분봉 3개월은 마침 시장이 25% 빠진 시기라 숫자 자체는 조심해서 봐야 합니다. 하지만 60분봉 2년으로 봐도 결론은 같았습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;단타가 지는 진짜 이유: 0.43%&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;핵심은 표의 마지막 열입니다. 한국 주식은 한 번 사고팔 때마다 이만큼이 나갑니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;항목&lt;/th&gt;
&lt;th&gt;비율&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;증권거래세 (팔 때)&lt;/td&gt;
&lt;td&gt;0.20%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;수수료 (살 때 + 팔 때)&lt;/td&gt;
&lt;td&gt;0.015% &amp;times; 2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;체결 손해, 슬리피지 (살 때 + 팔 때)&lt;/td&gt;
&lt;td&gt;0.1% &amp;times; 2&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;합계&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;약 0.43%&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그런데 단타 규칙들이 비용을 빼기 전에 버는 돈은 거래 한 번에 &lt;b&gt;0% 안팎&lt;/b&gt;이었습니다. ORB 60분은 비용 전에는 +0.05%로 아주 조금 벌었는데, 비용을 빼니 -0.38%가 됐습니다. 이걸 2년 동안 6,800번 반복하니 계좌가 거의 사라졌습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결국 실시간이냐 일봉이냐의 문제가 아니었습니다. &lt;b&gt;세금과 비용을 이길 만큼 한 번에 크게 먹는 규칙이 없으면&lt;/b&gt;, 자주 사고팔수록 확실하게 잃습니다.&lt;/p&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;KODEX 200 같은 국내 주식형 ETF는 증권거래세가 없어서 비용이 훨씬 쌉니다. 그래서 같은 변동성 돌파도 ETF에서는 -0.1%로 손실이 거의 없었습니다. 그렇다고 버는 것도 아니었지만요.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;참고한 자료&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;쿨라매기 규칙: stonkscapital.substack.com의 Kullam&amp;auml;gi 모델 정리&lt;/li&gt;
&lt;li&gt;종가베팅: tilnote.io의 종가베팅 정리&lt;/li&gt;
&lt;li&gt;IBS: quantifiedstrategies.com&lt;/li&gt;
&lt;li&gt;ORB 5분: Zarattini, Barbon, Aziz, &quot;A Profitable Day Trading Strategy for the U.S. Equity Market&quot; (2024)&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;코드로 보면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모든 백테스트는 같은 비용 설정을 씁니다. 사고팔 때 체결가를 일부러 불리하게(살 때는 0.1% 비싸게, 팔 때는 0.1% 싸게) 잡고, 팔 때는 거래세까지 뺍니다.&lt;/p&gt;
&lt;pre class=&quot;makefile&quot;&gt;&lt;code&gt;@dataclass(frozen=True)
class Costs:
    commission: float = 0.00015  # 매수/매도 각각 0.015%
    sell_tax: float = 0.0020     # 증권거래세 0.20%
    slippage: float = 0.0010     # 체결가 불리함 0.1%


# 살 때
px = open_price * (1 + c.slippage)
cost = qty * px * (1 + c.commission)

# 팔 때
px = open_price * (1 - c.slippage)
proceeds = qty * px * (1 - c.commission - c.sell_tax)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;숫자 몇 개라 별것 아닌 것 같지만, 이 세 줄이 거래 한 번마다 약 0.43%를 가져갑니다. 다른 사람의 단타 백테스트를 볼 때도 이 비용이 들어갔는지부터 확인해 보세요.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 혼자 살아남은 미너비니 규칙을 자세히 보고, 봇에 넣을지 따져 봅니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;주식 자동매매 봇 만들기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/17&quot;&gt;1편: 국내주식&amp;middot;한국투자증권&amp;middot;Python을 고른 이유&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/18&quot;&gt;2편: 모멘텀 전략 10년 백테스트, 지수도 못 이겼다&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/19&quot;&gt;3편: 8가지 전략 비교와 연 +32%의 함정&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/20&quot;&gt;4편: 서버 없이 GitHub Actions로 매일 아침 도는 봇&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/21&quot;&gt;5편: 공시&amp;middot;뉴스로 악재 종목 거르기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/22&quot;&gt;6편: 텔레그램 알림과 한국투자증권 모의투자 연결&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/23&quot;&gt;7편: 단타 규칙을 전부 돌려 봤더니&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/24&quot;&gt;8편: 살아남은 미너비니 규칙&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/entry/us-stock-bot&quot;&gt;9편: 미국주식도 붙였다, 나스닥100 추세추종 봇&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/주식 자동매매</category>
      <category>ORB 전략</category>
      <category>VWAP 매매</category>
      <category>단타 백테스트</category>
      <category>단타 수수료</category>
      <category>래리 윌리엄스</category>
      <category>변동성 돌파 전략</category>
      <category>종가베팅</category>
      <category>증권거래세</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/23</guid>
      <comments>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-7%ED%8E%B8-%EB%8B%A8%ED%83%80%EB%A1%9C-%EC%A7%A7%EA%B2%8C-%EB%A8%B9%EA%B3%A0-%EB%82%98%EC%98%A4%EB%A9%B4-%EC%95%88-%EB%90%A0%EA%B9%8C-%EC%9C%A0%EB%AA%85-%EB%8B%A8%ED%83%80-%EA%B8%B0%EB%B2%95-%EC%A0%84%EB%B6%80-%EB%B0%B1%ED%85%8C%EC%8A%A4%ED%8A%B8#entry23comment</comments>
      <pubDate>Thu, 15 Oct 2026 23:45:13 +0900</pubDate>
    </item>
    <item>
      <title>주식 자동매매 봇 만들기 6편: 텔레그램 알림 봇 만들기와 한국투자증권 모의투자 연결</title>
      <link>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-6%ED%8E%B8-%ED%85%94%EB%A0%88%EA%B7%B8%EB%9E%A8-%EC%95%8C%EB%A6%BC-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0%EC%99%80-%ED%95%9C%EA%B5%AD%ED%88%AC%EC%9E%90%EC%A6%9D%EA%B6%8C-%EB%AA%A8%EC%9D%98%ED%88%AC%EC%9E%90-%EC%97%B0%EA%B2%B0</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dxA6RS/dJMcairAG8J/MZof2QkFgECy0e4KCk0jik/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dxA6RS/dJMcairAG8J/MZof2QkFgECy0e4KCk0jik/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dxA6RS/dJMcairAG8J/MZof2QkFgECy0e4KCk0jik/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdxA6RS%2FdJMcairAG8J%2FMZof2QkFgECy0e4KCk0jik%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;봇이 무슨 일을 했는지 매일 확인하려면 알림이 있어야 합니다. 이번 편에서는 텔레그램 봇을 만들어 연결하고, 드디어 한국투자증권 모의투자 계좌를 붙였습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;텔레그램 알림에 필요한 건 &lt;b&gt;봇 토큰&lt;/b&gt;과 &lt;b&gt;채팅 ID&lt;/b&gt; 두 개뿐입니다.&lt;/li&gt;
&lt;li&gt;getUpdates가 빈 배열(&lt;code&gt;[]&lt;/code&gt;)이면 봇한테 아직 말을 안 건 겁니다. 아무 메시지나 보내고 새로고침하세요.&lt;/li&gt;
&lt;li&gt;토큰과 키는 모두 &lt;b&gt;GitHub Secrets&lt;/b&gt;에 넣고 코드에는 남기지 않습니다.&lt;/li&gt;
&lt;li&gt;한국투자증권은 &lt;b&gt;모의투자용 키가 따로&lt;/b&gt; 있습니다. 첫 주문은 실제 주문 없이 목록만 뽑아서 확인했습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;텔레그램 봇 만들기&lt;/h2&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;1. 봇 토큰&lt;/h3&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;텔레그램에서 &lt;b&gt;@BotFather&lt;/b&gt;(파란 체크가 있는 공식 계정)를 찾습니다.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;/newbot&lt;/code&gt;을 보내고, 봇 이름과 봇 아이디를 정합니다. 아이디는 반드시 &lt;code&gt;bot&lt;/code&gt;으로 끝나야 합니다.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;123456789:AAH...&lt;/code&gt; 모양의 토큰이 옵니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2. 채팅 ID&lt;/h3&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;만든 봇을 찾아 &lt;b&gt;시작&lt;/b&gt;을 누르고 아무 말이나 보냅니다. 이걸 안 하면 봇이 먼저 말을 걸 수 없습니다.&lt;/li&gt;
&lt;li&gt;브라우저에서 &lt;code&gt;https://api.telegram.org/bot&amp;lt;토큰&amp;gt;/getUpdates&lt;/code&gt;를 엽니다.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;&quot;chat&quot;:{&quot;id&quot;:숫자&lt;/code&gt;에 있는 숫자가 채팅 ID입니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음에는 &lt;code&gt;{&quot;ok&quot;:true,&quot;result&quot;:[]}&lt;/code&gt;만 나왔습니다. 봇한테 메시지를 안 보내서였습니다. &quot;헬로월드&quot;를 보내고 새로고침하니 이렇게 채팅 ID가 보였습니다. (가린 부분이 채팅 ID와 이름입니다.)&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2125&quot; data-origin-height=&quot;69&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bFtgBG/dJMcairAG8M/5HldUVTOPPqTQQ6wkHLKJK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bFtgBG/dJMcairAG8M/5HldUVTOPPqTQQ6wkHLKJK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bFtgBG/dJMcairAG8M/5HldUVTOPPqTQQ6wkHLKJK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbFtgBG%2FdJMcairAG8M%2F5HldUVTOPPqTQQ6wkHLKJK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2125&quot; height=&quot;69&quot; data-origin-width=&quot;2125&quot; data-origin-height=&quot;69&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;토큰과 채팅 ID는 GitHub Secrets에만 넣고, 코드나 캡처에는 남기지 않는 게 좋습니다. 혹시 토큰이 밖에 보였다면 @BotFather에서 &lt;code&gt;/mybots&lt;/code&gt; &amp;rarr; 봇 선택 &amp;rarr; &lt;b&gt;API Token&lt;/b&gt; &amp;rarr; &lt;b&gt;Revoke current token&lt;/b&gt;으로 새로 받으면 됩니다. 채팅 ID는 바뀌지 않습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;두 값을 Secrets의 &lt;code&gt;TELEGRAM_BOT_TOKEN&lt;/code&gt;, &lt;code&gt;TELEGRAM_CHAT_ID&lt;/code&gt;에 넣고 돌리니 메시지가 오기 시작했습니다. 아침 브리핑, 가상매매 결과, 그리고 아래에서 연결할 모의투자 주문 목록입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;1173&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cy0m8e/dJMcairAG8Q/OteyOfHX1SJ3vHeIHS3n30/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cy0m8e/dJMcairAG8Q/OteyOfHX1SJ3vHeIHS3n30/img.jpg&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cy0m8e/dJMcairAG8Q/OteyOfHX1SJ3vHeIHS3n30/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fcy0m8e%2FdJMcairAG8Q%2FOteyOfHX1SJ3vHeIHS3n30%2Fimg.jpg&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;720&quot; height=&quot;1173&quot; data-origin-width=&quot;720&quot; data-origin-height=&quot;1173&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;브리핑에는 그날 시장 분위기와 종목별 주요 뉴스, 악재로 빠진 종목과 제외 기간이 들어갑니다. 이날은 코스피&amp;middot;코스닥이 7%대 급락한 날이라 브리핑부터 꽤 살벌했습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;한국투자증권 모의투자 연결&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국투자증권 계좌는 휴대폰 앱으로 비대면 개설했습니다. 그다음 KIS Developers에서 &lt;b&gt;모의투자용&lt;/b&gt; 앱키와 앱시크릿을 받았습니다. 모의투자 키와 실전 키는 서로 다르니 헷갈리지 않게 조심해야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;GitHub Secrets에는 이렇게 넣었습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;이름&lt;/th&gt;
&lt;th&gt;값&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;KIS_APP_KEY&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;앱키&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;KIS_APP_SECRET&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;앱시크릿&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;KIS_ACCOUNT_NO&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;계좌번호 앞 8자리 (하이픈 없이)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;KIS_ACCOUNT_PRODUCT&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;계좌번호 뒤 2자리 (보통 01)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기까지 넣으면 저장소 Secrets 목록이 이렇게 됩니다. 이름만 보이고 값은 다시 볼 수 없습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;367&quot; data-origin-height=&quot;796&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/B6GOd/dJMcabTAaJJ/Ld3JYV2tECKsKAV1qewHH1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/B6GOd/dJMcabTAaJJ/Ld3JYV2tECKsKAV1qewHH1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/B6GOd/dJMcabTAaJJ/Ld3JYV2tECKsKAV1qewHH1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FB6GOd%2FdJMcabTAaJJ%2FLd3JYV2tECKsKAV1qewHH1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;367&quot; height=&quot;796&quot; data-origin-width=&quot;367&quot; data-origin-height=&quot;796&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연결 확인은 &lt;b&gt;잔고 조회 &amp;rarr; 주문 목록만 뽑기(실제 주문 없음)&lt;/b&gt; 순서로 했습니다. 모의투자 잔고 10,000,000원이 제대로 읽혔고, 첫 주문 목록은 &quot;KODEX 단기채권 60주&quot;였습니다. 시장이 하락 추세라 채권부터 사는 겁니다. 위 텔레그램 캡처의 마지막 메시지(dry-run)가 이 결과입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이제 봇은 가상 장부 대신 &lt;b&gt;한국투자증권 모의투자 계좌&lt;/b&gt;에 평일 아침 9시 10분마다 실제로 주문을 넣습니다. 실전 계좌 전환은 제가 직접 승인할 때만 되도록 막아 뒀습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;코드로 보면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;텔레그램 알림 코드는 이게 전부입니다. 토큰이나 채팅 ID가 없으면 화면에만 찍고 넘어가서, 내 PC에서 시험할 때도 그대로 쓸 수 있습니다. 알림이 실패해도 봇이 멈추지 않게 경고만 남깁니다.&lt;/p&gt;
&lt;pre class=&quot;mel&quot;&gt;&lt;code&gt;def notify(text):
    print(text)
    token = os.getenv(&quot;TELEGRAM_BOT_TOKEN&quot;, &quot;&quot;).strip()
    chat_id = os.getenv(&quot;TELEGRAM_CHAT_ID&quot;, &quot;&quot;).strip()
    if not token or not chat_id:
        return
    try:
        res = requests.post(
            f&quot;https://api.telegram.org/bot{token}/sendMessage&quot;,
            json={&quot;chat_id&quot;: chat_id, &quot;text&quot;: text},
            timeout=10,
        )
        res.raise_for_status()
    except requests.RequestException as e:
        log.warning(&quot;텔레그램 알림을 보내지 못했습니다: %s&quot;, e)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한국투자증권 API는 모의투자와 실전의 &lt;b&gt;주소와 거래 코드(TR ID)가 다릅니다&lt;/b&gt;. 그래서 둘을 표로 묶어 두고, 설정값 &lt;code&gt;KIS_ENV&lt;/code&gt; 하나로 고르게 했습니다. 그리고 실전 주문은 별도 설정(&lt;code&gt;QP_ALLOW_REAL_ORDERS=yes&lt;/code&gt;)이 없으면 아예 막히게 했습니다. 실수로 실전 키를 넣어도 주문은 나가지 않습니다.&lt;/p&gt;
&lt;pre class=&quot;ruby&quot;&gt;&lt;code&gt;BASE_URLS = {
    &quot;real&quot;: &quot;https://openapi.koreainvestment.com:9443&quot;,
    &quot;demo&quot;: &quot;https://openapivts.koreainvestment.com:29443&quot;,
}
ORDER_TR_IDS = {
    (&quot;real&quot;, &quot;buy&quot;): &quot;TTTC0012U&quot;, (&quot;real&quot;, &quot;sell&quot;): &quot;TTTC0011U&quot;,
    (&quot;demo&quot;, &quot;buy&quot;): &quot;VTTC0012U&quot;, (&quot;demo&quot;, &quot;sell&quot;): &quot;VTTC0011U&quot;,
}


def place_order(self, symbol, side, quantity):
    if not self.settings.is_demo and not self.settings.allow_real_orders:
        raise BrokerError(&quot;실전 주문이 막혀 있습니다.&quot;)
    data = self.client.request(
        &quot;POST&quot;,
        &quot;/uapi/domestic-stock/v1/trading/order-cash&quot;,
        ORDER_TR_IDS[(self.settings.env, side)],
        body={
            **self._account_params(),        # 계좌번호는 Secrets 에서
            &quot;PDNO&quot;: symbol,
            &quot;ORD_DVSN&quot;: &quot;01&quot;,                # 01 = 시장가
            &quot;ORD_QTY&quot;: str(quantity),
            &quot;ORD_UNPR&quot;: &quot;0&quot;,
        },
    )
    return data[&quot;output&quot;][&quot;ODNO&quot;]            # 주문번호&lt;/code&gt;&lt;/pre&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;KIS 접근 토큰은 1분에 한 번만 발급되고, 발급할 때마다 휴대폰으로 알림이 옵니다. 매번 새로 받지 말고 파일에 저장해 두고 만료 전까지 재사용하는 게 좋습니다. 이 토큰 파일은 GitHub에 올라가지 않게 따로 빼 뒀습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편은 조금 다른 이야기입니다. &quot;3년은 너무 길다, 단타로 짧게 먹고 나오면 안 되나?&quot;를 직접 다 돌려 봤습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;주식 자동매매 봇 만들기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/17&quot;&gt;1편: 국내주식&amp;middot;한국투자증권&amp;middot;Python을 고른 이유&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/18&quot;&gt;2편: 모멘텀 전략 10년 백테스트, 지수도 못 이겼다&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/19&quot;&gt;3편: 8가지 전략 비교와 연 +32%의 함정&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/20&quot;&gt;4편: 서버 없이 GitHub Actions로 매일 아침 도는 봇&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/21&quot;&gt;5편: 공시&amp;middot;뉴스로 악재 종목 거르기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/22&quot;&gt;6편: 텔레그램 알림과 한국투자증권 모의투자 연결&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/23&quot;&gt;7편: 단타 규칙을 전부 돌려 봤더니&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/24&quot;&gt;8편: 살아남은 미너비니 규칙&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/entry/us-stock-bot&quot;&gt;9편: 미국주식도 붙였다, 나스닥100 추세추종 봇&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/주식 자동매매</category>
      <category>BotFather</category>
      <category>getUpdates</category>
      <category>GitHub Secrets</category>
      <category>KIS Developers 앱키</category>
      <category>텔레그램 봇 만들기</category>
      <category>텔레그램 채팅 ID</category>
      <category>한국투자증권 모의투자</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/22</guid>
      <comments>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-6%ED%8E%B8-%ED%85%94%EB%A0%88%EA%B7%B8%EB%9E%A8-%EC%95%8C%EB%A6%BC-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0%EC%99%80-%ED%95%9C%EA%B5%AD%ED%88%AC%EC%9E%90%EC%A6%9D%EA%B6%8C-%EB%AA%A8%EC%9D%98%ED%88%AC%EC%9E%90-%EC%97%B0%EA%B2%B0#entry22comment</comments>
      <pubDate>Thu, 15 Oct 2026 23:44:24 +0900</pubDate>
    </item>
    <item>
      <title>주식 자동매매 봇 만들기 5편: 공시와 뉴스로 악재 종목 거르기, 네이버 뉴스 검색 API 발급</title>
      <link>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-5%ED%8E%B8-%EA%B3%B5%EC%8B%9C%EC%99%80-%EB%89%B4%EC%8A%A4%EB%A1%9C-%EC%95%85%EC%9E%AC-%EC%A2%85%EB%AA%A9-%EA%B1%B0%EB%A5%B4%EA%B8%B0-%EB%84%A4%EC%9D%B4%EB%B2%84-%EB%89%B4%EC%8A%A4-%EA%B2%80%EC%83%89-API-%EB%B0%9C%EA%B8%89</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bi7j8r/dJMcaiFfe86/dAJSWWld7YAyKALp0jY7fK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bi7j8r/dJMcaiFfe86/dAJSWWld7YAyKALp0jY7fK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bi7j8r/dJMcaiFfe86/dAJSWWld7YAyKALp0jY7fK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbi7j8r%2FdJMcaiFfe86%2FdAJSWWld7YAyKALp0jY7fK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;봇이 숫자만 보고 움직이다 보니 걱정이 하나 생겼습니다. 회사에 횡령 같은 큰 사고가 터졌는데도 차트상 조건이 맞으면 그냥 사 버릴 수 있다는 점입니다. 그래서 매일 아침 &lt;b&gt;공시와 뉴스를 읽고 악재가 있는 종목을 거르는&lt;/b&gt; 단계를 넣었습니다. 덤으로 아침마다 시장 요약도 받아 봅니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;뉴스는 사는 데가 아니라 &lt;b&gt;피하는 데&lt;/b&gt; 씁니다. 악재 종목은 30일 동안 안 사고, 들고 있으면 그날 팝니다.&lt;/li&gt;
&lt;li&gt;공시 제목은 키워드(횡령, 배임, 상장폐지 등)로 거르고, 뉴스는 Claude API에 읽혀서 심각한 악재인지 판단합니다.&lt;/li&gt;
&lt;li&gt;네이버 뉴스 검색 API는 &lt;b&gt;NAVER API HUB(네이버 클라우드)&lt;/b&gt;로 옮겨 갔습니다. 결제수단 등록이 필요하지만 &lt;b&gt;하루 25,000건까지 무료&lt;/b&gt;입니다.&lt;/li&gt;
&lt;li&gt;키는 GitHub 저장소의 &lt;b&gt;Secrets&lt;/b&gt; 탭에 넣습니다. Variables 탭이 아닙니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;뉴스로 사면 안 되나&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음에는 최신 뉴스를 반영해서 좋은 종목을 먼저 사면 어떨까 싶었습니다. 그런데 따져 보니 두 가지가 걸렸습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;검증이 어렵습니다.&lt;/b&gt; 뉴스를 읽고 판단하는 쪽이 이미 그 뒤에 무슨 일이 있었는지 알고 있으면, 과거 뉴스로 백테스트해도 결과가 부풀려집니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;속도에서 집니다.&lt;/b&gt; 좋은 뉴스는 기관과 초단타가 몇 초 만에 가격에 반영합니다. 개인 봇이 뒤따라 사면 이미 오른 뒤입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 뉴스는 &lt;b&gt;위험을 피하는 용도&lt;/b&gt;로만 쓰기로 했습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;어떻게 동작하나&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;매일 아침 봇이 돌 때 이런 순서로 움직입니다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;공시 규칙&lt;/b&gt;: DART 공시 제목에 횡령, 배임, 거래정지, 상장폐지 같은 말이 있으면 그 종목은 바로 뺍니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;뉴스 판단&lt;/b&gt;: 보유 종목과 매수 후보 20개의 뉴스와 공시를 Claude API에 보내서, 시장 전체 탓이 아닌 회사 고유의 심각한 악재인지 판단하게 합니다.&lt;/li&gt;
&lt;li&gt;악재 종목은 &lt;b&gt;30일 동안 사지 않고&lt;/b&gt;, 들고 있으면 &lt;b&gt;그날 팝니다&lt;/b&gt;.&lt;/li&gt;
&lt;li&gt;텔레그램으로 &lt;b&gt;아침 브리핑&lt;/b&gt;을 보냅니다.&lt;/li&gt;
&lt;li&gt;뉴스 분위기 점수는 &lt;b&gt;기록만&lt;/b&gt; 합니다. 몇 달 쌓인 뒤 정말 수익에 도움이 되는지 확인하고 나서 전략에 넣을 생각입니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;필요한 키는 세 개입니다. DART 공시 API(무료), 네이버 뉴스 검색 API(무료 한도 안), Claude API(하루 몇십~백 원 수준)입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;키는 Secrets에&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;키는 GitHub 저장소 &lt;b&gt;Settings &amp;gt; Secrets and variables &amp;gt; Actions&lt;/b&gt;에 넣습니다. 여기서 헷갈렸던 게 &lt;b&gt;Secrets&lt;/b&gt;와 &lt;b&gt;Variables&lt;/b&gt; 탭입니다. Variables는 누구나 볼 수 있는 일반 텍스트라 키를 넣으면 안 되고, 꼭 Secrets 탭에 넣어야 합니다. 아래 화면처럼 Variables 탭이 열려 있을 때 그대로 추가하면 안 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1326&quot; data-origin-height=&quot;779&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cXnrIt/dJMcaiFfe87/HvCaHB70rjmZokxFRkXg4K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cXnrIt/dJMcaiFfe87/HvCaHB70rjmZokxFRkXg4K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cXnrIt/dJMcaiFfe87/HvCaHB70rjmZokxFRkXg4K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcXnrIt%2FdJMcaiFfe87%2FHvCaHB70rjmZokxFRkXg4K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1326&quot; height=&quot;779&quot; data-origin-width=&quot;1326&quot; data-origin-height=&quot;779&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;네이버 검색 API가 이사 갔습니다&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;뉴스 검색 API를 받으려고 developers.naver.com에 갔더니, 검색 API가 &lt;b&gt;네이버 클라우드 플랫폼의 NAVER API HUB로 옮겨 가&lt;/b&gt; 있었습니다. 그리고 &lt;b&gt;결제수단을 등록해야&lt;/b&gt; 쓸 수 있게 바뀌었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;결제수단이라는 말에 잠깐 멈칫했는데, 요금표를 보니 검색 API는 &lt;b&gt;하루 25,000건까지 무료&lt;/b&gt;였습니다. 봇은 하루 20~30건 정도만 쓰니 요금이 나올 일은 없습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1199&quot; data-origin-height=&quot;711&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b7FQ49/dJMcaiFfe89/FHYdKupYep8h1vYvHhHlNk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b7FQ49/dJMcaiFfe89/FHYdKupYep8h1vYvHhHlNk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b7FQ49/dJMcaiFfe89/FHYdKupYep8h1vYvHhHlNk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb7FQ49%2FdJMcaiFfe89%2FFHYdKupYep8h1vYvHhHlNk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1199&quot; height=&quot;711&quot; data-origin-width=&quot;1199&quot; data-origin-height=&quot;711&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;키 받는 순서는 이렇습니다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;네이버 클라우드 콘솔에서 &lt;b&gt;Application Services &amp;gt; NAVER API HUB &amp;gt; Application&lt;/b&gt;으로 갑니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;Application 등록&lt;/b&gt;을 누르고 &lt;b&gt;뉴스(NAVER Search News API)&lt;/b&gt;만 체크합니다.&lt;/li&gt;
&lt;li&gt;이름을 넣고 등록합니다. (예: quant-pilot)&lt;/li&gt;
&lt;li&gt;만든 Application의 &lt;b&gt;인증 정보&lt;/b&gt;에서 Client ID와 Client Secret을 확인합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1903&quot; data-origin-height=&quot;806&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/biZ6zH/dJMb99VKivY/AgyVPlRdrahAHAq46kCJpk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/biZ6zH/dJMb99VKivY/AgyVPlRdrahAHAq46kCJpk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/biZ6zH/dJMb99VKivY/AgyVPlRdrahAHAq46kCJpk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbiZ6zH%2FdJMb99VKivY%2FAgyVPlRdrahAHAq46kCJpk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1903&quot; height=&quot;806&quot; data-origin-width=&quot;1903&quot; data-origin-height=&quot;806&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;호출하는 방법도 바뀌었습니다. 주소와 인증 헤더 이름만 다르고 응답 형식은 같아서, 기존 코드는 두 군데만 고치면 됐습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&amp;nbsp;&lt;/th&gt;
&lt;th&gt;예전 (developers.naver.com)&lt;/th&gt;
&lt;th&gt;지금 (NAVER API HUB)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;주소&lt;/td&gt;
&lt;td&gt;&lt;code&gt;openapi.naver.com/v1/search/news.json&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;naverapihub.apigw.ntruss.com/search/v1/news&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;ID 헤더&lt;/td&gt;
&lt;td&gt;&lt;code&gt;X-Naver-Client-Id&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;X-NCP-APIGW-API-KEY-ID&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Secret 헤더&lt;/td&gt;
&lt;td&gt;&lt;code&gt;X-Naver-Client-Secret&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;&lt;code&gt;X-NCP-APIGW-API-KEY&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;첫 실행 결과&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;키를 넣고 돌려 봤습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;공시 규칙&lt;/b&gt;: LG디스플레이와 LG에너지솔루션에서 횡령&amp;middot;배임 혐의 공시를 잡았습니다. 두 종목은 30일 동안 매수 후보에서 빠졌습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;뉴스 판단&lt;/b&gt;: 매수 후보 9종목의 뉴스를 읽고, LG에너지솔루션은 심각한 악재로, 나머지는 시장 급락에 따른 하락일 뿐 회사 고유의 악재는 아니라고 봤습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;브리핑&lt;/b&gt;: 시장 급락과 서킷브레이커 소식, 종목별 주요 뉴스가 몇 줄로 정리돼서 왔습니다. 실제 메시지는 다음 편에서 보여 드리겠습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;코드로 보면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;공시 규칙은 단어 목록 두 개입니다. &lt;code&gt;SEVERE&lt;/code&gt;에 걸리면 바로 빼고, &lt;code&gt;WATCH&lt;/code&gt;는 나쁠 수도 있는 공시라 뉴스와 함께 판단을 맡깁니다. &quot;[기재정정]&quot; 같은 머리말과 띄어쓰기는 지우고 비교합니다.&lt;/p&gt;
&lt;pre class=&quot;pgsql&quot;&gt;&lt;code&gt;SEVERE = (&quot;횡령&quot;, &quot;배임&quot;, &quot;거래정지&quot;, &quot;상장폐지&quot;, &quot;상장적격성&quot;, &quot;관리종목&quot;,
          &quot;불성실공시법인&quot;, &quot;감사의견&quot;, &quot;회생절차&quot;, &quot;파산&quot;, &quot;부도&quot;, &quot;영업정지&quot;)

WATCH = (&quot;유상증자결정&quot;, &quot;전환사채권발행결정&quot;, &quot;소송등의제기&quot;,
         &quot;조회공시요구&quot;, &quot;최대주주변경&quot;)


def classify_title(title):
    t = title
    while t.startswith(&quot;[&quot;):              # &quot;[기재정정]&quot; 같은 머리말 제거
        t = t[t.find(&quot;]&quot;) + 1 :].strip()
    t = t.replace(&quot; &quot;, &quot;&quot;)
    if any(k in t for k in SEVERE):
        return &quot;severe&quot;
    if any(k in t for k in WATCH):
        return &quot;watch&quot;
    return None&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;NAVER API HUB로 옮긴 뒤의 뉴스 검색 호출입니다. 바뀐 건 주소와 헤더 두 줄뿐입니다.&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;SEARCH_URL = &quot;https://naverapihub.apigw.ntruss.com/search/v1/news&quot;

res = requests.get(
    SEARCH_URL,
    params={&quot;query&quot;: &quot;LG에너지솔루션&quot;, &quot;display&quot;: &quot;20&quot;, &quot;sort&quot;: &quot;date&quot;},
    headers={
        &quot;X-NCP-APIGW-API-KEY-ID&quot;: os.environ[&quot;NAVER_CLIENT_ID&quot;],
        &quot;X-NCP-APIGW-API-KEY&quot;: os.environ[&quot;NAVER_CLIENT_SECRET&quot;],
    },
    timeout=10,
)
for item in res.json()[&quot;items&quot;]:
    print(item[&quot;pubDate&quot;], item[&quot;title&quot;])&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Claude API에는 종목별 뉴스&amp;middot;공시 제목을 한 번에 묶어서 보내고, 결과는 정해진 JSON 형식으로 받습니다. 종목마다 &lt;code&gt;severe&lt;/code&gt;(심각한 악재인지), &lt;code&gt;reason&lt;/code&gt;, &lt;code&gt;sentiment&lt;/code&gt;(-1~1)가 오고, 브리핑 문장이 따로 옵니다. 지시문에서 제일 공들인 부분은 &lt;b&gt;무엇이 악재가 아닌지&lt;/b&gt;였습니다. 이게 없으면 주가가 조금만 빠져도 다 악재라고 합니다.&lt;/p&gt;
&lt;pre class=&quot;ini&quot;&gt;&lt;code&gt;SYSTEM = &quot;&quot;&quot;당신은 한국 주식 자동매매 봇의 리스크 담당자입니다.
종목마다 &quot;심각한 악재&quot;인지 판단합니다. 심각한 악재는 회사의 존속이나
주주가치를 크게 해치는 사건이 사실로 확인된 경우입니다.
예: 경영진 횡령&amp;middot;배임, 분식회계, 감사의견 비적정, 상장폐지&amp;middot;거래정지 위험,
회생&amp;middot;파산, 대규모 유상증자나 전환사채 발행, 중대한 행정처분.
실적 부진, 목표가 하향, 일상적인 주가 하락, 업계 전체 뉴스, 소문이나
추측은 심각한 악재가 아닙니다. 확실하지 않으면 severe 를 false 로 둡니다.&quot;&quot;&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 텔레그램 알림을 연결하고, 드디어 한국투자증권 모의투자 계좌를 붙입니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;주식 자동매매 봇 만들기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/17&quot;&gt;1편: 국내주식&amp;middot;한국투자증권&amp;middot;Python을 고른 이유&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/18&quot;&gt;2편: 모멘텀 전략 10년 백테스트, 지수도 못 이겼다&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/19&quot;&gt;3편: 8가지 전략 비교와 연 +32%의 함정&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/20&quot;&gt;4편: 서버 없이 GitHub Actions로 매일 아침 도는 봇&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/21&quot;&gt;5편: 공시&amp;middot;뉴스로 악재 종목 거르기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/22&quot;&gt;6편: 텔레그램 알림과 한국투자증권 모의투자 연결&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/23&quot;&gt;7편: 단타 규칙을 전부 돌려 봤더니&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/24&quot;&gt;8편: 살아남은 미너비니 규칙&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/entry/us-stock-bot&quot;&gt;9편: 미국주식도 붙였다, 나스닥100 추세추종 봇&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/주식 자동매매</category>
      <category>Claude API</category>
      <category>DART 공시 API</category>
      <category>GitHub Secrets</category>
      <category>NAVER API HUB</category>
      <category>네이버 뉴스 검색 API</category>
      <category>네이버 클라우드 검색 API</category>
      <category>주식 뉴스 요약</category>
      <category>주식 악재 필터</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/21</guid>
      <comments>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-5%ED%8E%B8-%EA%B3%B5%EC%8B%9C%EC%99%80-%EB%89%B4%EC%8A%A4%EB%A1%9C-%EC%95%85%EC%9E%AC-%EC%A2%85%EB%AA%A9-%EA%B1%B0%EB%A5%B4%EA%B8%B0-%EB%84%A4%EC%9D%B4%EB%B2%84-%EB%89%B4%EC%8A%A4-%EA%B2%80%EC%83%89-API-%EB%B0%9C%EA%B8%89#entry21comment</comments>
      <pubDate>Thu, 15 Oct 2026 23:43:32 +0900</pubDate>
    </item>
    <item>
      <title>주식 자동매매 봇 만들기 4편: 서버 없이 GitHub Actions로 매일 아침 9시 10분에 도는 봇</title>
      <link>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-4%ED%8E%B8-%EC%84%9C%EB%B2%84-%EC%97%86%EC%9D%B4-GitHub-Actions%EB%A1%9C-%EB%A7%A4%EC%9D%BC-%EC%95%84%EC%B9%A8-9%EC%8B%9C-10%EB%B6%84%EC%97%90-%EB%8F%84%EB%8A%94-%EB%B4%87</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c66BT0/dJMcacdR7QE/cvpq1zqBFDBaY20WL7429k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c66BT0/dJMcacdR7QE/cvpq1zqBFDBaY20WL7429k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c66BT0/dJMcacdR7QE/cvpq1zqBFDBaY20WL7429k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc66BT0%2FdJMcacdR7QE%2Fcvpq1zqBFDBaY20WL7429k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;전략을 정했으니 이제 매일 알아서 도는 봇을 만들 차례입니다. 오라클 클라우드 서버가 있긴 하지만, 결국 서버 없이 &lt;b&gt;GitHub Actions&lt;/b&gt;로 돌리기로 했습니다. 하루에 한 번만 돌면 되는 봇이라 그걸로 충분했습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;평일 아침 &lt;b&gt;9시 10분&lt;/b&gt;에 한 번 돌고, 매달 첫 거래일에만 사고팝니다.&lt;/li&gt;
&lt;li&gt;처음에는 계좌 없이 &lt;b&gt;가상 장부 1,000만 원&lt;/b&gt;으로 시작했습니다. 설정 하나로 실제 계좌로 바꿀 수 있습니다.&lt;/li&gt;
&lt;li&gt;백테스트도 봇 규칙 그대로 다시 돌리니 연 +15.8%가 &lt;b&gt;+14.2%&lt;/b&gt;로 조금 낮아졌습니다. 이쪽이 현실에 가깝습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;봇이 하는 일&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;어제 종가까지 데이터를 받습니다.&lt;/li&gt;
&lt;li&gt;혼합 7:3 규칙으로 목표 비중을 계산합니다. (KODEX 200 / 단기채권 / 대형주 모멘텀 종목들)&lt;/li&gt;
&lt;li&gt;매달 첫 거래일이면 목표 비중에 맞게 사고팝니다. 나머지 날은 평가금액만 기록합니다.&lt;/li&gt;
&lt;li&gt;텔레그램으로 결과를 보냅니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;이때는 아직 증권사 계좌가 없어서 &lt;b&gt;가상 장부(1,000만 원)&lt;/b&gt;로 시작했습니다. 나중에 계좌를 연결하면 설정 하나만 바꾸면 되도록 만들어 뒀습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;백테스트도 봇과 똑같이&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞 편의 혼합 7:3 결과(+15.8%)는 &quot;1년에 한 번 비율 맞추기&quot;로 계산한 숫자였습니다. 실제 봇은 매달 비중을 보고, 차이가 2% 안쪽이면 건드리지 않습니다. 그래서 &lt;b&gt;봇 규칙 그대로&lt;/b&gt; 다시 돌렸습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&amp;nbsp;&lt;/th&gt;
&lt;th&gt;연평균&lt;/th&gt;
&lt;th&gt;최대 낙폭&lt;/th&gt;
&lt;th&gt;최악의 해&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;혼합 7:3 (봇 방식)&lt;/td&gt;
&lt;td&gt;+14.2%&lt;/td&gt;
&lt;td&gt;-44.7%&lt;/td&gt;
&lt;td&gt;2018 -6.3%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;조금 낮아졌지만, 실제로 돌아갈 방식으로 계산한 숫자라 이쪽을 기준으로 삼기로 했습니다. 이 시리즈에서 이후에 나오는 &quot;지금 전략 +14.2%&quot;가 이 숫자입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;오라클 서버를 두고 왜 GitHub Actions인가&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;이 전략은 &lt;b&gt;하루에 한 번&lt;/b&gt;만 돌면 됩니다. GitHub Actions는 정해진 시간에 코드를 공짜로 돌려 줍니다.&lt;/li&gt;
&lt;li&gt;서버를 관리할 필요가 없고, 실행할 때마다 기록이 남아서 뭐가 잘못됐는지 보기 쉽습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;장중 내내 시세를 봐야 하는 전략을 쓰게 되면 그때 오라클 서버로 옮길 생각입니다. 서버용 설정 파일은 미리 만들어 뒀습니다.&lt;/p&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;GitHub Actions의 schedule(cron)은 &lt;b&gt;UTC 기준&lt;/b&gt;입니다. 한국 시간 9시 10분이면 &lt;code&gt;10 0 * * 1-5&lt;/code&gt;로 적어야 합니다. 그리고 정각 근처에는 실행이 몇 분씩 밀리기도 하니 장 시작 직후처럼 몇 분이 중요한 일에는 맞지 않습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;첫 시험 실행&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시험으로 돌려 보니, 마침 KODEX 200이 200일선 아래였습니다. 그래서 봇은 70%를 단기채권에 넣고 30%는 현금으로 뒀습니다. 하락장이라 주식은 한 주도 사지 않은 겁니다. 처음엔 &quot;왜 아무것도 안 사지?&quot; 싶었는데, 규칙대로 정확히 움직인 결과였습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;코드로 보면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;봇 실행은 GitHub Actions 워크플로 파일 하나가 전부입니다. 키는 전부 Secrets에서 환경 변수로 넘기고, 하루 실행 기록은 별도 브랜치에 저장해서 다음 날 이어 씁니다.&lt;/p&gt;
&lt;pre class=&quot;yaml&quot;&gt;&lt;code&gt;name: kis-bot
on:
  schedule:
    - cron: &quot;10 0 * * 1-5&quot;   # 평일 09:10 (한국시간)
  workflow_dispatch:          # 버튼으로 수동 실행도 가능

jobs:
  run:
    runs-on: ubuntu-latest
    env:
      KIS_ENV: demo           # 모의투자
      KIS_APP_KEY: ${{ secrets.KIS_APP_KEY }}
      KIS_APP_SECRET: ${{ secrets.KIS_APP_SECRET }}
      TELEGRAM_BOT_TOKEN: ${{ secrets.TELEGRAM_BOT_TOKEN }}
      TELEGRAM_CHAT_ID: ${{ secrets.TELEGRAM_CHAT_ID }}
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-python@v5
        with:
          python-version: &quot;3.12&quot;
      - run: pip install -e .
      - run: quant-pilot run --broker kis&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;봇의 판단은 &quot;이번 달에 이미 리밸런싱했나?&quot;부터 봅니다. 했으면 악재로 걸린 종목만 팔고 끝내고, 안 했으면 목표 비중을 계산해서 주문 목록을 만듭니다. 목표와 2% 이상 차이 날 때만 주문하도록 해서 자잘한 매매를 줄였습니다.&lt;/p&gt;
&lt;pre class=&quot;reasonml&quot;&gt;&lt;code&gt;BAND = 0.02  # 목표 비중과 2% 이상 차이 날 때만 주문


def decide(panel, universe, positions, cash, last_rebalance, today, strategy, blocked):
    &quot;&quot;&quot;blocked(악재 종목)는 후보에서 빼고, 갖고 있으면 리밸런싱 날이 아니어도 판다.&quot;&quot;&quot;
    i = len(panel.days) - 1
    prices = {s: c[i] for s, c in panel.close.items() if c[i]}
    exits = {s: blocked[s] for s, q in positions.items() if q &amp;gt; 0 and s in blocked}
    if last_rebalance == today.strftime(&quot;%Y-%m&quot;):
        orders = [Order(s, -positions[s]) for s in exits if s in prices]
        return Decision(rebalanced=False, orders=orders)
    allowed = [s for s in universe if s not in blocked]
    targets = strategy.target_weights(panel, i, allowed, set(positions) - set(blocked))
    orders = plan_orders(targets, positions, prices, cash, BAND)
    return Decision(rebalanced=True, orders=orders)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 공시와 뉴스를 읽어서 악재가 있는 종목을 피하게 만듭니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;주식 자동매매 봇 만들기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/17&quot;&gt;1편: 국내주식&amp;middot;한국투자증권&amp;middot;Python을 고른 이유&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/18&quot;&gt;2편: 모멘텀 전략 10년 백테스트, 지수도 못 이겼다&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/19&quot;&gt;3편: 8가지 전략 비교와 연 +32%의 함정&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/20&quot;&gt;4편: 서버 없이 GitHub Actions로 매일 아침 도는 봇&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/21&quot;&gt;5편: 공시&amp;middot;뉴스로 악재 종목 거르기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/22&quot;&gt;6편: 텔레그램 알림과 한국투자증권 모의투자 연결&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/23&quot;&gt;7편: 단타 규칙을 전부 돌려 봤더니&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/24&quot;&gt;8편: 살아남은 미너비니 규칙&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/entry/us-stock-bot&quot;&gt;9편: 미국주식도 붙였다, 나스닥100 추세추종 봇&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/주식 자동매매</category>
      <category>GitHub Actions cron</category>
      <category>GitHub Actions 스케줄</category>
      <category>가상매매</category>
      <category>리밸런싱</category>
      <category>모의투자</category>
      <category>자동매매 서버</category>
      <category>주식 봇</category>
      <category>파이썬 자동화</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/20</guid>
      <comments>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-4%ED%8E%B8-%EC%84%9C%EB%B2%84-%EC%97%86%EC%9D%B4-GitHub-Actions%EB%A1%9C-%EB%A7%A4%EC%9D%BC-%EC%95%84%EC%B9%A8-9%EC%8B%9C-10%EB%B6%84%EC%97%90-%EB%8F%84%EB%8A%94-%EB%B4%87#entry20comment</comments>
      <pubDate>Thu, 15 Oct 2026 23:42:38 +0900</pubDate>
    </item>
    <item>
      <title>주식 자동매매 봇 만들기 3편: 8가지 전략 비교, 그리고 연 +32%가 가짜였던 이유</title>
      <link>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-3%ED%8E%B8-8%EA%B0%80%EC%A7%80-%EC%A0%84%EB%9E%B5-%EB%B9%84%EA%B5%90-%EA%B7%B8%EB%A6%AC%EA%B3%A0-%EC%97%B0-32%EA%B0%80-%EA%B0%80%EC%A7%9C%EC%98%80%EB%8D%98-%EC%9D%B4%EC%9C%A0</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Ku0AM/dJMcaaAsCGF/aUpXX6GLwh6IHwRt8h89uK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Ku0AM/dJMcaaAsCGF/aUpXX6GLwh6IHwRt8h89uK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Ku0AM/dJMcaaAsCGF/aUpXX6GLwh6IHwRt8h89uK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FKu0AM%2FdJMcaaAsCGF%2FaUpXX6GLwh6IHwRt8h89uK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞 편에서 모멘텀 전략 하나를 아무리 만져도 지수를 못 이겼습니다. 그래서 이번에는 성격이 다른 전략들을 &lt;b&gt;같은 기간, 같은 비용&lt;/b&gt;으로 나란히 붙여 봤습니다. 그러다 연 +32%라는 숫자를 만났고, 그게 왜 가짜였는지 알게 됐습니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;아래 숫자는 모두 과거 데이터로 계산한 백테스트 결과입니다. 앞으로의 수익을 보장하지 않습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;지수를 확실히 이기는 전략은 없었습니다. 대신 &lt;b&gt;하락장에서 덜 잃는&lt;/b&gt; 전략은 있었습니다.&lt;/li&gt;
&lt;li&gt;연 +32%는 &lt;b&gt;오늘 시가총액으로 종목을 고른&lt;/b&gt; 탓에 생긴 착시였습니다. 고치니 +15.9%가 됐습니다.&lt;/li&gt;
&lt;li&gt;최종 선택은 &lt;b&gt;지수 추세추종 70% + 대형주 모멘텀 30%&lt;/b&gt;입니다. 최소 3년은 들고 가야 하는 전략입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;같은 조건으로 붙여 보기&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;2016.1 ~ 2026.10&lt;/th&gt;
&lt;th&gt;연평균&lt;/th&gt;
&lt;th&gt;최대 낙폭&lt;/th&gt;
&lt;th&gt;샤프&lt;/th&gt;
&lt;th&gt;최악의 해&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;KODEX 200 보유&lt;/td&gt;
&lt;td&gt;+15.6%&lt;/td&gt;
&lt;td&gt;-41.2%&lt;/td&gt;
&lt;td&gt;0.70&lt;/td&gt;
&lt;td&gt;2022 -24.1%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;지수 추세추종&lt;/td&gt;
&lt;td&gt;+14.5%&lt;/td&gt;
&lt;td&gt;-41.2%&lt;/td&gt;
&lt;td&gt;0.72&lt;/td&gt;
&lt;td&gt;2018 -7.5%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;듀얼 모멘텀&lt;/td&gt;
&lt;td&gt;+9.9%&lt;/td&gt;
&lt;td&gt;-41.2%&lt;/td&gt;
&lt;td&gt;0.49&lt;/td&gt;
&lt;td&gt;2018 -18.3%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;저변동성 20종목&lt;/td&gt;
&lt;td&gt;+8.7%&lt;/td&gt;
&lt;td&gt;-47.8%&lt;/td&gt;
&lt;td&gt;0.62&lt;/td&gt;
&lt;td&gt;2018 -13.7%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;대형주 모멘텀&lt;/td&gt;
&lt;td&gt;+15.9%&lt;/td&gt;
&lt;td&gt;-55.1%&lt;/td&gt;
&lt;td&gt;0.63&lt;/td&gt;
&lt;td&gt;2016 -15.9%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;지수 추세추종&lt;/b&gt;: KODEX 200이 200일선 위면 KODEX 200을, 아래면 단기채권을 들고 있습니다. 한 달에 한 번만 봅니다. 수익은 지수와 비슷한데 2018년(-7.5%), 2022년(+1.3%) 같은 긴 하락장을 피했습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;듀얼 모멘텀&lt;/b&gt;: 주식과 채권 중 최근에 더 강한 쪽으로 갈아탑니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;저변동성&lt;/b&gt;: 덜 흔들리는 종목 20개를 들고 갑니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;연 +32%의 함정&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음 비교했을 때 &quot;대형주 모멘텀&quot;이 &lt;b&gt;연 +32%&lt;/b&gt;가 나왔습니다. 지수의 두 배입니다. 잠깐 신났는데, 숫자가 너무 좋아서 오히려 이상했습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원인은 &quot;대형주&quot;를 &lt;b&gt;오늘 기준 시가총액&lt;/b&gt;으로 골랐다는 데 있었습니다. 오늘 시가총액이 큰 회사는 대부분 &lt;b&gt;지난 10년 동안 많이 오른 회사&lt;/b&gt;입니다. 2016년의 제가 알 수 없었던 미래 정보를 몰래 쓴 셈입니다. 이런 실수를 &lt;b&gt;생존 편향&lt;/b&gt; 또는 &lt;b&gt;미래 정보 편향&lt;/b&gt;이라고 부릅니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 &lt;b&gt;그 시점에 거래대금이 많았던 종목&lt;/b&gt;으로 고르게 바꿨습니다. 그러자 +32%가 +15.9%로, 정확히 반 토막이 났습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;대형주 모멘텀&lt;/th&gt;
&lt;th&gt;연평균&lt;/th&gt;
&lt;th&gt;최대 낙폭&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;오늘 시가총액으로 고름 (편향)&lt;/td&gt;
&lt;td&gt;+32.1%&lt;/td&gt;
&lt;td&gt;-52.9%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;그 시점 거래대금으로 고름 (공정)&lt;/td&gt;
&lt;td&gt;+15.9%&lt;/td&gt;
&lt;td&gt;-55.1%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;백테스트 숫자가 너무 좋으면 기뻐하기 전에 먼저 의심해 보세요. &quot;그때의 내가 이 정보를 알 수 있었나?&quot;를 물어보면 대부분 걸립니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;섞어 보기: 혼합 7:3&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;지수 추세추종은 하락장 방어가 좋고, 대형주 모멘텀은 상승장에서 더 법니다. 그래서 둘을 섞었습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;70%: 지수 추세추종&lt;/li&gt;
&lt;li&gt;30%: 대형주 모멘텀&lt;/li&gt;
&lt;li&gt;1년에 한 번 비율을 7:3으로 되돌림&lt;/li&gt;
&lt;/ul&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&amp;nbsp;&lt;/th&gt;
&lt;th&gt;연평균&lt;/th&gt;
&lt;th&gt;최대 낙폭&lt;/th&gt;
&lt;th&gt;샤프&lt;/th&gt;
&lt;th&gt;최악의 해&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;KODEX 200 보유&lt;/td&gt;
&lt;td&gt;+15.6%&lt;/td&gt;
&lt;td&gt;-41.2%&lt;/td&gt;
&lt;td&gt;0.70&lt;/td&gt;
&lt;td&gt;2022 -24.1%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;혼합 7:3&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;+15.8%&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;-44.6%&lt;/td&gt;
&lt;td&gt;&lt;b&gt;0.74&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;2018 -6.7%&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;혼합 5:5&lt;/td&gt;
&lt;td&gt;+16.2%&lt;/td&gt;
&lt;td&gt;-47.3%&lt;/td&gt;
&lt;td&gt;0.72&lt;/td&gt;
&lt;td&gt;2019 -6.9%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수익은 지수와 비슷하거나 조금 높고, 긴 하락장에서 잃는 돈이 훨씬 적었습니다. 이걸로 가기로 했습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;얼마나 들고 있어야 할까&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;궁금해서 봇 규칙 그대로, 아무 날에나 시작했을 때 돈을 번 비율을 계산해 봤습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;들고 있은 기간&lt;/th&gt;
&lt;th&gt;돈을 번 비율&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1년&lt;/td&gt;
&lt;td&gt;71%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3년&lt;/td&gt;
&lt;td&gt;96%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5년&lt;/td&gt;
&lt;td&gt;100%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;가장 오래 전 고점을 회복하지 못한 기간은 2018년 1월부터 2020년 11월까지, 거의 3년이었습니다. &lt;b&gt;최소 3년은 들고 갈 각오&lt;/b&gt;가 필요한 전략입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;코드로 보면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;미래 정보 편향을 고친 부분은 생각보다 짧습니다. &quot;오늘 시가총액 상위&quot; 대신 &lt;b&gt;그 날짜까지의 60일 평균 거래대금 상위&lt;/b&gt;로 대형주를 고르는 함수 하나를 넣었습니다. 매 시점 &lt;code&gt;i&lt;/code&gt;까지의 데이터만 보기 때문에 미래를 엿볼 수 없습니다.&lt;/p&gt;
&lt;pre class=&quot;python&quot;&gt;&lt;code&gt;def top_by_trading_value(panel, i, universe, n):
    &quot;&quot;&quot;i 일까지 60일 평균 거래대금 상위 n 종목.&quot;&quot;&quot;
    avg = []
    for s in universe:
        vals = [v for v in panel.value[s][max(0, i - 59) : i + 1] if v is not None]
        if len(vals) &amp;gt;= 40:
            avg.append((sum(vals) / len(vals), s))
    avg.sort(reverse=True)
    return [s for _, s in avg[:n]]&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;혼합 7:3은 종목별 목표 비중을 돌려주는 함수로 만들었습니다. 지수 추세추종 쪽이 70%를 KODEX 200이나 단기채권에 주고, 모멘텀 쪽이 나머지 30%를 10종목에 3%씩 나눕니다. 실제 봇과 백테스트가 &lt;b&gt;같은 함수&lt;/b&gt;를 쓰게 해서 둘의 계산이 어긋나지 않게 했습니다.&lt;/p&gt;
&lt;pre class=&quot;ruby&quot;&gt;&lt;code&gt;KODEX200 = &quot;069500&quot;
SHORT_BOND = &quot;153130&quot;  # KODEX 단기채권


def target_weights(self, panel, i, universe, holdings):
    weights = {}
    tw = 0.7
    # 지수가 200일선 위면 KODEX 200, 아래면 단기채권
    for s in self.trend.targets(panel, i, universe, holdings):
        weights[s] = weights.get(s, 0) + tw
    # 나머지 30% 는 모멘텀 상위 10종목에 똑같이
    picks = self.momentum.targets(panel, i, universe, holdings)
    each = (1 - tw) / 10
    for s in picks:
        weights[s] = weights.get(s, 0) + each
    return weights  # 합이 1 보다 작으면 남는 건 현금&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 이 규칙을 서버 없이 매일 아침 돌리는 봇으로 만듭니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;주식 자동매매 봇 만들기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/17&quot;&gt;1편: 국내주식&amp;middot;한국투자증권&amp;middot;Python을 고른 이유&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/18&quot;&gt;2편: 모멘텀 전략 10년 백테스트, 지수도 못 이겼다&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/19&quot;&gt;3편: 8가지 전략 비교와 연 +32%의 함정&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/20&quot;&gt;4편: 서버 없이 GitHub Actions로 매일 아침 도는 봇&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/21&quot;&gt;5편: 공시&amp;middot;뉴스로 악재 종목 거르기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/22&quot;&gt;6편: 텔레그램 알림과 한국투자증권 모의투자 연결&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/23&quot;&gt;7편: 단타 규칙을 전부 돌려 봤더니&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/24&quot;&gt;8편: 살아남은 미너비니 규칙&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/entry/us-stock-bot&quot;&gt;9편: 미국주식도 붙였다, 나스닥100 추세추종 봇&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/주식 자동매매</category>
      <category>듀얼 모멘텀</category>
      <category>미래 정보 편향</category>
      <category>백테스트 함정</category>
      <category>생존 편향</category>
      <category>자산배분</category>
      <category>저변동성 전략</category>
      <category>지수 추세추종</category>
      <category>퀀트 전략 비교</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/19</guid>
      <comments>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-3%ED%8E%B8-8%EA%B0%80%EC%A7%80-%EC%A0%84%EB%9E%B5-%EB%B9%84%EA%B5%90-%EA%B7%B8%EB%A6%AC%EA%B3%A0-%EC%97%B0-32%EA%B0%80-%EA%B0%80%EC%A7%9C%EC%98%80%EB%8D%98-%EC%9D%B4%EC%9C%A0#entry19comment</comments>
      <pubDate>Thu, 15 Oct 2026 23:41:49 +0900</pubDate>
    </item>
    <item>
      <title>주식 자동매매 봇 만들기 2편: 모멘텀 전략 10년 백테스트, 결과는 지수도 못 이김</title>
      <link>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-2%ED%8E%B8-%EB%AA%A8%EB%A9%98%ED%85%80-%EC%A0%84%EB%9E%B5-10%EB%85%84-%EB%B0%B1%ED%85%8C%EC%8A%A4%ED%8A%B8-%EA%B2%B0%EA%B3%BC%EB%8A%94-%EC%A7%80%EC%88%98%EB%8F%84-%EB%AA%BB-%EC%9D%B4%EA%B9%80</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dfTGi3/dJMcabsv5oR/V4S0Kb9h0O88LZUeaLeEGk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dfTGi3/dJMcabsv5oR/V4S0Kb9h0O88LZUeaLeEGk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dfTGi3/dJMcabsv5oR/V4S0Kb9h0O88LZUeaLeEGk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdfTGi3%2FdJMcabsv5oR%2FV4S0Kb9h0O88LZUeaLeEGk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;봇을 돌리기 전에 먼저 해야 할 일이 있습니다. 이 규칙대로 과거에 사고팔았다면 어땠을지 확인하는 &lt;b&gt;백테스트&lt;/b&gt;입니다. 첫 전략으로는 많이들 쓰는 &lt;b&gt;모멘텀(추세추종)&lt;/b&gt;을 골랐고, 솔직히 당연히 잘 나올 줄 알았습니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;아래 숫자는 모두 과거 데이터로 계산한 결과입니다. 같은 수익이 앞으로도 난다는 뜻이 아닙니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;과거 주가는 &lt;b&gt;네이버 차트 데이터&lt;/b&gt;로 무료로 받았습니다. 한 번에 일봉 3,000개(약 12년)까지 됩니다.&lt;/li&gt;
&lt;li&gt;백테스트는 내 PC 대신 &lt;b&gt;GitHub Actions&lt;/b&gt;에서 돌렸습니다. 300종목 10년치가 몇 분이면 끝납니다.&lt;/li&gt;
&lt;li&gt;결과는 연 +14.9%로, KODEX 200을 그냥 들고 있는 것(+15.5%)보다 못했습니다. 중간에 &lt;b&gt;-63.9%&lt;/b&gt;까지 빠지기도 했습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;데이터는 네이버에서&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;과거 주가는 네이버 차트 데이터로 받았습니다. 한 번에 일봉 3,000개, 대략 12년치까지 받을 수 있고 무료입니다. 받은 건 CSV로 저장해 두고 다시 받지 않습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;백테스트는 &lt;b&gt;GitHub Actions&lt;/b&gt;에서 돌렸습니다. 코드를 올리면 GitHub 서버가 데이터를 받아 백테스트를 돌리고, 결과 리포트를 별도 브랜치(&lt;code&gt;backtest-results&lt;/code&gt;)에 올려 줍니다. 약 300종목 10년치가 몇 분이면 끝나고, 결과가 저장소에 쌓이니 나중에 비교하기도 편합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;전략: 오르는 종목을 따라 산다&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;규칙은 이렇습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;최근 6개월(마지막 1개월은 빼고) 가장 많이 오른 종목 10개를 삽니다.&lt;/li&gt;
&lt;li&gt;종목이 100일선 아래면 사지 않습니다.&lt;/li&gt;
&lt;li&gt;KODEX 200이 200일선 아래, 즉 하락장이면 새로 사지 않습니다.&lt;/li&gt;
&lt;li&gt;매주 순위를 다시 보고, 20위 밖으로 밀리면 팝니다.&lt;/li&gt;
&lt;li&gt;-10%면 손절합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;비용도 현실적으로 넣었습니다. 수수료 0.015%, 팔 때 증권거래세 0.20%, 원하는 값에 바로 체결되지 않아 생기는 손해(슬리피지) 0.1%입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;결과: 지수를 못 이겼습니다&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;2016.1 ~ 2026.10&lt;/th&gt;
&lt;th&gt;모멘텀 전략&lt;/th&gt;
&lt;th&gt;KODEX 200 보유&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;연평균 수익률&lt;/td&gt;
&lt;td&gt;+14.9%&lt;/td&gt;
&lt;td&gt;+15.5%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;최대 낙폭&lt;/td&gt;
&lt;td&gt;&lt;b&gt;-63.9%&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;-41.2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;샤프 지수&lt;/td&gt;
&lt;td&gt;0.59&lt;/td&gt;
&lt;td&gt;0.69&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;매매 횟수&lt;/td&gt;
&lt;td&gt;748&lt;/td&gt;
&lt;td&gt;0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;승률&lt;/td&gt;
&lt;td&gt;34%&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;수익은 비슷한데, 중간에 반 토막 넘게 빠지는 구간이 있었습니다. 748번이나 사고판 결과가 KODEX 200 하나 사 두고 잊어버린 것보다 못했다는 얘기입니다. 보유 종목 수, 모멘텀 기간, 리밸런싱 주기를 바꿔 12가지 조합을 돌려 봐도 지수를 확실히 이기는 건 없었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연도별로 보면 이 전략의 성격이 확실히 보입니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;연도&lt;/th&gt;
&lt;th&gt;전략&lt;/th&gt;
&lt;th&gt;KODEX 200&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;2017&lt;/td&gt;
&lt;td&gt;+54.7%&lt;/td&gt;
&lt;td&gt;+27.1%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2018&lt;/td&gt;
&lt;td&gt;+1.8%&lt;/td&gt;
&lt;td&gt;-17.3%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2022&lt;/td&gt;
&lt;td&gt;0.0%&lt;/td&gt;
&lt;td&gt;-24.2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2023&lt;/td&gt;
&lt;td&gt;+62.0%&lt;/td&gt;
&lt;td&gt;+24.9%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2025&lt;/td&gt;
&lt;td&gt;+56.5%&lt;/td&gt;
&lt;td&gt;+94.2%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;2026&lt;/td&gt;
&lt;td&gt;-5.6%&lt;/td&gt;
&lt;td&gt;+44.0%&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;하락장(2018, 2022)은 잘 피했는데, 지수가 크게 오른 해(2025, 2026)에는 오히려 한참 뒤처졌습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;여기서 배운 것&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&quot;모멘텀은 당연히 되겠지&quot;는 돌려 보기 전의 착각이었습니다.&lt;/li&gt;
&lt;li&gt;한 전략의 숫자를 계속 만지면 과거 데이터에만 딱 맞는 결과가 나오기 쉽습니다. 그래서 설정을 더 만지는 대신 &lt;b&gt;성격이 다른 전략들을 같은 조건으로 붙여 보기&lt;/b&gt;로 했습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;코드로 보면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;네이버 차트 데이터는 주소 하나로 받습니다. 응답이 XML이라 &lt;code&gt;item&lt;/code&gt; 태그만 정규식으로 뽑았습니다.&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;CHART_URL = &quot;https://fchart.stock.naver.com/sise.nhn&quot;
_ITEM = re.compile(r'&amp;lt;item data=&quot;([^&quot;]+)&quot;')


def fetch_daily_bars(symbol, count=3000):
    res = requests.get(
        CHART_URL,
        params={&quot;symbol&quot;: symbol, &quot;timeframe&quot;: &quot;day&quot;, &quot;count&quot;: count, &quot;requestType&quot;: 0},
        headers={&quot;User-Agent&quot;: &quot;Mozilla/5.0&quot;},
        timeout=20,
    )
    bars = []
    for raw in _ITEM.findall(res.content.decode(&quot;euc-kr&quot;, errors=&quot;replace&quot;)):
        day, o, h, low, c, v = raw.split(&quot;|&quot;)
        if int(v) == 0:  # 거래정지일은 0 으로 와서 뺀다
            continue
        bars.append(Bar(day, float(o), float(h), float(low), float(c), int(v)))
    return bars&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;모멘텀 점수는 &quot;1개월 전 가격 / 6개월 전 가격 - 1&quot;입니다. 100일선 아래거나 거래대금이 부족한 종목은 점수를 매기기 전에 거릅니다.&lt;/p&gt;
&lt;pre class=&quot;python&quot;&gt;&lt;code&gt;def ranking(self, panel, i, universe):
    &quot;&quot;&quot;i 일 종가까지의 정보로 매수 후보를 점수 순으로 돌려준다.&quot;&quot;&quot;
    p = self.p  # lookback=126(6개월), skip=21(1개월), stock_ma=100
    scored = []
    for s in universe:
        c = panel.close[s]
        now, past, base = c[i], c[i - p.skip], c[i - p.lookback]
        ma = sma(c, i, p.stock_ma)
        if ma is None or now &amp;lt;= ma:      # 100일선 아래면 제외
            continue
        mom = past / base - 1            # 최근 1개월을 뺀 6개월 수익률
        if mom &amp;gt; 0:
            scored.append((mom, s))
    scored.sort(reverse=True)
    return [s for _, s in scored]&lt;/code&gt;&lt;/pre&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;백테스트 엔진에서 제일 신경 쓴 건 &lt;b&gt;신호는 오늘 종가로 계산하고, 주문은 다음 날 시가에 체결&lt;/b&gt;하는 규칙입니다. 오늘 종가를 보고 오늘 종가에 산 것처럼 계산하면, 실제로는 할 수 없는 매매가 섞여서 결과가 좋아 보입니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 8가지 전략을 비교합니다. 그중 하나는 연 +32%가 나왔는데, 기뻐할 일이 아니었습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;주식 자동매매 봇 만들기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/17&quot;&gt;1편: 국내주식&amp;middot;한국투자증권&amp;middot;Python을 고른 이유&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/18&quot;&gt;2편: 모멘텀 전략 10년 백테스트, 지수도 못 이겼다&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/19&quot;&gt;3편: 8가지 전략 비교와 연 +32%의 함정&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/20&quot;&gt;4편: 서버 없이 GitHub Actions로 매일 아침 도는 봇&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/21&quot;&gt;5편: 공시&amp;middot;뉴스로 악재 종목 거르기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/22&quot;&gt;6편: 텔레그램 알림과 한국투자증권 모의투자 연결&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/23&quot;&gt;7편: 단타 규칙을 전부 돌려 봤더니&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/24&quot;&gt;8편: 살아남은 미너비니 규칙&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/entry/us-stock-bot&quot;&gt;9편: 미국주식도 붙였다, 나스닥100 추세추종 봇&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/주식 자동매매</category>
      <category>github actions</category>
      <category>kodex 200</category>
      <category>네이버 차트 데이터</category>
      <category>모멘텀 전략</category>
      <category>주식 백테스트</category>
      <category>추세추종</category>
      <category>퀀트 투자</category>
      <category>파이썬 백테스트</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/18</guid>
      <comments>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-2%ED%8E%B8-%EB%AA%A8%EB%A9%98%ED%85%80-%EC%A0%84%EB%9E%B5-10%EB%85%84-%EB%B0%B1%ED%85%8C%EC%8A%A4%ED%8A%B8-%EA%B2%B0%EA%B3%BC%EB%8A%94-%EC%A7%80%EC%88%98%EB%8F%84-%EB%AA%BB-%EC%9D%B4%EA%B9%80#entry18comment</comments>
      <pubDate>Thu, 15 Oct 2026 23:40:49 +0900</pubDate>
    </item>
    <item>
      <title>주식 자동매매 봇 만들기 1편: 국내주식&amp;middot;한국투자증권&amp;middot;Python으로 정한 이유</title>
      <link>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-1%ED%8E%B8-%EA%B5%AD%EB%82%B4%EC%A3%BC%EC%8B%9D%C2%B7%ED%95%9C%EA%B5%AD%ED%88%AC%EC%9E%90%EC%A6%9D%EA%B6%8C%C2%B7Python%EC%9C%BC%EB%A1%9C-%EC%A0%95%ED%95%9C-%EC%9D%B4%EC%9C%A0</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c0FoPA/dJMcajjSlBk/WHuWku1k6Ur8KhmSUK7jvK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c0FoPA/dJMcajjSlBk/WHuWku1k6Ur8KhmSUK7jvK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c0FoPA/dJMcajjSlBk/WHuWku1k6Ur8KhmSUK7jvK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc0FoPA%2FdJMcajjSlBk%2FWHuWku1k6Ur8KhmSUK7jvK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예전부터 주식 자동매매 봇을 하나 갖고 싶었습니다. 차트를 하루 종일 볼 자신은 없고, 그렇다고 감으로 사고팔기도 싫어서 규칙대로 알아서 움직이는 봇을 만들어 보기로 했습니다. 이름은 &lt;b&gt;quant-pilot&lt;/b&gt;입니다. 이 시리즈는 그 봇을 만들면서 정한 것, 돌려 본 것, 그리고 틀렸던 것을 순서대로 적은 기록입니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;투자 권유 글이 아닙니다. 시리즈에 나오는 수익률은 모두 과거 데이터로 돌린 백테스트 결과라 앞으로의 수익을 보장하지 않습니다. 실제 매매도 아직은 모의투자로만 하고 있습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;시장은 &lt;b&gt;국내주식&lt;/b&gt;부터 시작합니다. 소액투자자는 매매차익에 세금이 없고 환전도 필요 없습니다.&lt;/li&gt;
&lt;li&gt;증권사는 &lt;b&gt;한국투자증권 KIS Open API&lt;/b&gt;, 언어는 &lt;b&gt;Python&lt;/b&gt;으로 정했습니다. 모의투자 계좌가 무료라 마음 편히 시험할 수 있습니다.&lt;/li&gt;
&lt;li&gt;대상은 시가총액 1조 원 이상 대형주입니다. &lt;b&gt;ETF는 사지 않고&lt;/b&gt; 시장 분위기를 보는 신호로만 씁니다.&lt;/li&gt;
&lt;li&gt;실전 계좌는 &lt;b&gt;제가 직접 정한 금액으로만&lt;/b&gt; 돌리도록 처음부터 막아 뒀습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;있는 것부터 꺼내 보기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;새로 돈을 쓰기보다 이미 쓰고 있는 것들로 해결하고 싶었습니다. 손에 있던 건 이 정도입니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;오라클 클라우드 무료 서버&lt;/li&gt;
&lt;li&gt;Cloudflare Workers와 Pages&lt;/li&gt;
&lt;li&gt;GitHub 저장소&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;바라는 건 두 가지였습니다. 일단 &lt;b&gt;수익이 나는 쪽&lt;/b&gt;으로 가되, &lt;b&gt;너무 작은 회사는 위험하니 빼고 싶다&lt;/b&gt;는 것입니다. 나머지는 하나씩 따져 보면서 정했습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;이렇게 정했습니다&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;항목&lt;/th&gt;
&lt;th&gt;선택&lt;/th&gt;
&lt;th&gt;이유&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;시장&lt;/td&gt;
&lt;td&gt;국내주식 먼저&lt;/td&gt;
&lt;td&gt;소액투자자는 매매차익 세금이 없고 환전할 필요도 없습니다. 미국주식은 연 250만 원을 넘는 수익에 양도세 22%가 붙습니다.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;증권사&lt;/td&gt;
&lt;td&gt;한국투자증권 KIS Open API&lt;/td&gt;
&lt;td&gt;REST 방식이라 리눅스 서버에서 돌리기 쉽고, 모의투자 계좌가 무료입니다. 같은 API로 미국주식도 됩니다.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;언어&lt;/td&gt;
&lt;td&gt;Python&lt;/td&gt;
&lt;td&gt;데이터 분석과 백테스트 라이브러리가 제일 많습니다.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;대상 종목&lt;/td&gt;
&lt;td&gt;시가총액 1조 원 이상&lt;/td&gt;
&lt;td&gt;관리종목, 우선주, 스팩은 뺍니다.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;알림&lt;/td&gt;
&lt;td&gt;텔레그램&lt;/td&gt;
&lt;td&gt;무료고, 봇 만들기가 쉽습니다.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;진행은 4단계로 잡았습니다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;뼈대 만들기, 모의투자 연결, 종목 필터&lt;/li&gt;
&lt;li&gt;전략 백테스트&lt;/li&gt;
&lt;li&gt;모의투자로 자동매매&lt;/li&gt;
&lt;li&gt;결과가 괜찮으면 &lt;b&gt;제가 정한 금액으로만&lt;/b&gt; 실전&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;마지막 단계를 굳이 따로 적어 둔 이유가 있습니다. 봇이 어느 날 알아서 실전 계좌로 넘어가는 일만큼은 절대 없어야 하니까요.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;이름은 quant-pilot&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음에는 &lt;code&gt;kstock-autotrader&lt;/code&gt;라는 이름을 생각했습니다. 그런데 나중에 미국주식까지 하게 되면 이름에 시장이 들어간 게 영 어색할 것 같아서 &lt;b&gt;quant-pilot&lt;/b&gt;으로 바꿨습니다. 저장소는 비공개(private)로 만들었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;ETF는 왜 안 사나&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음에는 ETF도 같이 사면 되지 않나 싶었는데, 따져 보니 빼는 게 맞았습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;상승률 순위를 매기면 &lt;b&gt;레버리지 ETF가 늘 위쪽&lt;/b&gt;에 올라옵니다. 그런데 레버리지 ETF는 오래 들고 있으면 횡보장에서 가치가 조금씩 깎입니다.&lt;/li&gt;
&lt;li&gt;KODEX 200 같은 ETF는 이미 삼성전자와 SK하이닉스를 담고 있어서, 같이 사면 &lt;b&gt;같은 종목에 두 번 거는&lt;/b&gt; 셈이 됩니다.&lt;/li&gt;
&lt;li&gt;시가총액이나 관리종목 같은 필터는 회사를 거르는 기준이라 ETF에는 맞지 않습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대신 KODEX 200은 &lt;b&gt;시장 상태를 보는 신호&lt;/b&gt;로 쓰기로 했습니다. 시장 전체가 내리막이면 새로 사지 않는 식입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;첫 결과물: 종목 필터&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;1단계로 살 만한 종목을 거르는 필터부터 만들었습니다. 기준은 이렇습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;시가총액 1조 원 이상&lt;/li&gt;
&lt;li&gt;전일 거래대금 50억 원 이상&lt;/li&gt;
&lt;li&gt;상장 180일 이상 지난 보통주&lt;/li&gt;
&lt;li&gt;관리종목, 투자경고, 우선주, 스팩, ETF 제외&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;한국투자증권 계좌는 윈도우 PC에서만 만들 수 있는 줄 알았는데, 휴대폰 앱으로도 비대면 개설이 됩니다. 저는 이때 계좌가 없어서 연결은 뒤로 미루고 백테스트부터 해 보기로 했습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;코드로 보면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저장소가 비공개라 링크 대신 주요 부분만 옮겨 둡니다. 거르는 기준은 설정 한 곳에 모아 두고, 종목마다 &quot;뺄 이유&quot;를 돌려주는 함수 하나로 처리했습니다. 이유가 없으면(None) 통과입니다. 나중에 &quot;이 종목은 왜 빠졌지?&quot;를 바로 알 수 있어서 편합니다.&lt;/p&gt;
&lt;pre class=&quot;python&quot;&gt;&lt;code&gt;@dataclass(frozen=True)
class UniverseRules:
    min_market_cap: float = 1e12      # 시가총액 1조 원
    min_trading_value: float = 5e9    # 전일 거래대금 50억 원
    min_listed_days: int = 180        # 신규상장주 제외
    markets: tuple[str, ...] = (&quot;KOSPI&quot;, &quot;KOSDAQ&quot;)


def exclusion_reason(stock, rules, today):
    &quot;&quot;&quot;종목을 뺄 이유를 돌려준다. None 이면 대상에 포함.&quot;&quot;&quot;
    if stock.group != &quot;ST&quot;:
        return &quot;보통 주식 아님(ETF/ETN/리츠 등)&quot;
    if stock.preferred:
        return &quot;우선주&quot;
    if stock.spac:
        return &quot;스팩&quot;
    if stock.admin_issue:
        return &quot;관리종목&quot;
    if stock.market_warning:
        return &quot;투자주의/경고/위험&quot;
    if stock.market_cap &amp;lt; rules.min_market_cap:
        return &quot;시가총액 미달&quot;
    if stock.prev_trading_value &amp;lt; rules.min_trading_value:
        return &quot;거래대금 미달&quot;
    if today - stock.listed_date &amp;lt; timedelta(days=rules.min_listed_days):
        return &quot;신규상장&quot;
    return None&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;종목 정보(시가총액, 관리종목 여부 등)는 한국투자증권이 매일 공개하는 종목 마스터 파일에서 읽습니다. 계좌가 없어도 받을 수 있는 파일이라 이 단계는 계좌 없이 끝낼 수 있었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다음 편에서는 모멘텀 전략을 10년치 데이터로 돌려 봅니다. 솔직히 당연히 잘 나올 줄 알았는데, 결과는 꽤 달랐습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;주식 자동매매 봇 만들기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/17&quot;&gt;1편: 국내주식&amp;middot;한국투자증권&amp;middot;Python을 고른 이유&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/18&quot;&gt;2편: 모멘텀 전략 10년 백테스트, 지수도 못 이겼다&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/19&quot;&gt;3편: 8가지 전략 비교와 연 +32%의 함정&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/20&quot;&gt;4편: 서버 없이 GitHub Actions로 매일 아침 도는 봇&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/21&quot;&gt;5편: 공시&amp;middot;뉴스로 악재 종목 거르기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/22&quot;&gt;6편: 텔레그램 알림과 한국투자증권 모의투자 연결&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/23&quot;&gt;7편: 단타 규칙을 전부 돌려 봤더니&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/24&quot;&gt;8편: 살아남은 미너비니 규칙&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/entry/us-stock-bot&quot;&gt;9편: 미국주식도 붙였다, 나스닥100 추세추종 봇&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/주식 자동매매</category>
      <category>KIS Developers</category>
      <category>국내주식 자동매매</category>
      <category>자동매매 프로그램</category>
      <category>주식 봇 만들기</category>
      <category>주식 자동매매</category>
      <category>퀀트 봇</category>
      <category>파이썬 주식</category>
      <category>한국투자증권 Open API</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/17</guid>
      <comments>https://bboxnote.tistory.com/entry/%EC%A3%BC%EC%8B%9D-%EC%9E%90%EB%8F%99%EB%A7%A4%EB%A7%A4-%EB%B4%87-%EB%A7%8C%EB%93%A4%EA%B8%B0-1%ED%8E%B8-%EA%B5%AD%EB%82%B4%EC%A3%BC%EC%8B%9D%C2%B7%ED%95%9C%EA%B5%AD%ED%88%AC%EC%9E%90%EC%A6%9D%EA%B6%8C%C2%B7Python%EC%9C%BC%EB%A1%9C-%EC%A0%95%ED%95%9C-%EC%9D%B4%EC%9C%A0#entry17comment</comments>
      <pubDate>Thu, 15 Oct 2026 23:39:29 +0900</pubDate>
    </item>
    <item>
      <title>블로그에 연봉 실수령액 계산기 넣기: 코드 한 줄로 끝나는 무료 위젯</title>
      <link>https://bboxnote.tistory.com/entry/%EB%B8%94%EB%A1%9C%EA%B7%B8%EC%97%90-%EC%97%B0%EB%B4%89-%EC%8B%A4%EC%88%98%EB%A0%B9%EC%95%A1-%EA%B3%84%EC%82%B0%EA%B8%B0-%EB%84%A3%EA%B8%B0-%EC%BD%94%EB%93%9C-%ED%95%9C-%EC%A4%84%EB%A1%9C-%EB%81%9D%EB%82%98%EB%8A%94-%EB%AC%B4%EB%A3%8C-%EC%9C%84%EC%A0%AF</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ustbB/dJMcab0t1Sr/9ANvAtyDzU6OO9F8yP08lk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ustbB/dJMcab0t1Sr/9ANvAtyDzU6OO9F8yP08lk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ustbB/dJMcab0t1Sr/9ANvAtyDzU6OO9F8yP08lk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FustbB%2FdJMcab0t1Sr%2F9ANvAtyDzU6OO9F8yP08lk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;블로그에 넣는 연봉 실수령액 계산기 위젯 안내 이미지&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;코드 한 줄만 붙이면 블로그 글 안에 연봉 실수령액 계산기를 넣을 수 있습니다.&lt;/b&gt; 제가 운영하는 계산기 사이트 머니계산기(koreapaycalc.com)에서 무료로 주는 위젯이라, 방문자가 글을 읽다가 바로 자기 연봉을 넣어 볼 수 있습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;무료이고 &lt;b&gt;가입도 필요 없습니다.&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;티스토리, 워드프레스처럼 HTML을 넣을 수 있는 곳이면 됩니다. 네이버 블로그는 외부 iframe을 막아서 안 됩니다.&lt;/li&gt;
&lt;li&gt;요율이나 간이세액표가 바뀌면 위젯이 알아서 따라갑니다. 위젯 안에는 광고가 없습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;직접 써 보기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래가 실제 위젯입니다. 연봉이나 부양가족 수를 바꾸면 월 실수령액이 바로 바뀝니다.&lt;/p&gt;
&lt;p&gt;&lt;iframe src=&quot;https://koreapaycalc.com/embed/salary/&quot; width=&quot;100%&quot; height=&quot;380&quot;&gt;&lt;/iframe&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://koreapaycalc.com/salary/&quot;&gt;2026 연봉 실수령액 계산기 - 머니계산기&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연봉별로 얼마가 빠지는지 표로 보고 싶다면 &lt;a href=&quot;https://bboxnote.tistory.com/1&quot;&gt;2026 연봉 5천만 원 실수령액 글&lt;/a&gt;에 정리해 두었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;티스토리 글에 넣는 방법&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;머니계산기 위젯 페이지에 들어갑니다.&lt;/li&gt;
&lt;li&gt;블로그 배경에 맞춰 밝은 화면이나 어두운 화면을 고르고 코드 복사하기를 누릅니다.&lt;/li&gt;
&lt;li&gt;티스토리 글쓰기 화면 오른쪽 위의 기본모드를 HTML로 바꿉니다.&lt;/li&gt;
&lt;li&gt;계산기를 넣을 자리에 붙여 넣고 발행합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;워드프레스는 사용자 정의 HTML 블록을 추가하고 붙여 넣으면 됩니다. 코드 아래의 출처 링크는 지우지 말아 주세요.&lt;/p&gt;
&lt;p class=&quot;bx-btn&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://koreapaycalc.com/widget/&quot;&gt;위젯 코드 복사하러 가기&lt;/a&gt;&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;사이드바에 넣고 싶다면&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;폭이 좁은 곳에서도 쓸 수 있습니다. 폭이 360px보다 좁으면 입력칸이 위아래로 쌓여서, 티스토리 사이드바(300px 정도)나 모바일 메뉴 안에서도 잘리지 않습니다. 높이도 기본값 380 그대로 두면 됩니다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;블로그 관리 &amp;rarr; 플러그인에서 배너 출력을 켭니다.&lt;/li&gt;
&lt;li&gt;꾸미기 &amp;rarr; 사이드바에서 HTML 배너출력 옆 +를 눌러 추가합니다.&lt;/li&gt;
&lt;li&gt;편집을 눌러 같은 코드를 붙여 넣고 변경사항 저장을 누릅니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래도 계산기는 연봉이나 월급 이야기를 하는 글 끝에 붙일 때 제일 잘 쓰입니다. 글을 읽던 사람이 바로 자기 숫자를 넣어 볼 수 있기 때문입니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;입력한 연봉은 방문자 브라우저 안에서만 계산되고 어디에도 저장되지 않습니다. 계산 기준은 2026년 4대보험 요율과 국세청 근로소득 간이세액표입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 위젯을 쓰려면 돈을 내거나 가입해야 하나요?&lt;/b&gt;&lt;br /&gt;아닙니다. 무료이고 가입도 필요 없습니다. 코드만 복사해서 붙이면 됩니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 네이버 블로그에도 넣을 수 있나요?&lt;/b&gt;&lt;br /&gt;네이버 블로그는 외부 iframe을 막아서 넣을 수 없습니다. 티스토리, 워드프레스처럼 HTML을 넣을 수 있는 곳에서 쓸 수 있습니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 요율이나 세액표가 바뀌면 코드를 다시 넣어야 하나요?&lt;/b&gt;&lt;br /&gt;아닙니다. 위젯이 알아서 바뀐 기준을 따라가서, 한 번 넣어 두면 됩니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 방문자가 넣은 연봉이 어딘가에 저장되나요?&lt;/b&gt;&lt;br /&gt;저장되지 않습니다. 입력한 연봉은 방문자 브라우저 안에서만 계산됩니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/월급&amp;middot;노동</category>
      <category>머니계산기</category>
      <category>블로그 계산기 위젯</category>
      <category>실수령액 계산기 퍼가기</category>
      <category>연봉 실수령액 계산기</category>
      <category>티스토리 iframe</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/16</guid>
      <comments>https://bboxnote.tistory.com/entry/%EB%B8%94%EB%A1%9C%EA%B7%B8%EC%97%90-%EC%97%B0%EB%B4%89-%EC%8B%A4%EC%88%98%EB%A0%B9%EC%95%A1-%EA%B3%84%EC%82%B0%EA%B8%B0-%EB%84%A3%EA%B8%B0-%EC%BD%94%EB%93%9C-%ED%95%9C-%EC%A4%84%EB%A1%9C-%EB%81%9D%EB%82%98%EB%8A%94-%EB%AC%B4%EB%A3%8C-%EC%9C%84%EC%A0%AF#entry16comment</comments>
      <pubDate>Wed, 14 Oct 2026 19:33:38 +0900</pubDate>
    </item>
    <item>
      <title>클라우드플레어 요금 폭탄 막기: 지출 상한이 없어서 직접 만든 D1 쓰기 한도</title>
      <link>https://bboxnote.tistory.com/entry/%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C%ED%94%8C%EB%A0%88%EC%96%B4-%EC%9A%94%EA%B8%88-%ED%8F%AD%ED%83%84-%EB%A7%89%EA%B8%B0-%EC%A7%80%EC%B6%9C-%EC%83%81%ED%95%9C%EC%9D%B4-%EC%97%86%EC%96%B4%EC%84%9C-%EC%A7%81%EC%A0%91-%EB%A7%8C%EB%93%A0-D1-%EC%93%B0%EA%B8%B0-%ED%95%9C%EB%8F%84</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dBe0uB/dJMcajjQJqt/qaquVRKaUZVC2x8993OaI0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dBe0uB/dJMcajjQJqt/qaquVRKaUZVC2x8993OaI0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dBe0uB/dJMcajjQJqt/qaquVRKaUZVC2x8993OaI0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdBe0uB%2FdJMcajjQJqt%2FqaquVRKaUZVC2x8993OaI0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;앞 글에서 Workers + D1으로 10분마다 데이터를 모으다가 무료 한도를 넘어서 &lt;b&gt;Workers 유료(월 5달러)&lt;/b&gt;로 바꿨습니다. 그런데 바꾸고 나서 알게 된 게 있습니다. 클라우드플레어에는 &lt;b&gt;&quot;이 금액 넘으면 멈춰&quot;&lt;/b&gt; 하는 지출 상한 기능이 없습니다. 포함량을 넘으면 그냥 쓴 만큼 청구됩니다. 코드에 버그가 나서 쓰기가 폭주하면 다음 달 청구서를 보고서야 알게 되는 구조입니다. 그래서 Worker가 스스로 사용량을 세다가 멈추게 만들었습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Workers 유료는 월 5달러에 D1 쓰기 &lt;b&gt;한 달 5천만 행&lt;/b&gt;, 저장 공간 &lt;b&gt;5GB&lt;/b&gt;가 포함입니다. 넘으면 추가 요금입니다.&lt;/li&gt;
&lt;li&gt;D1은 쿼리할 때마다 &lt;code&gt;meta.rows_written&lt;/code&gt;(쓴 행 수)와 &lt;code&gt;meta.size_after&lt;/code&gt;(DB 크기)를 알려 줍니다. 이걸 달별로 더합니다.&lt;/li&gt;
&lt;li&gt;한도는 포함량보다 &lt;b&gt;넉넉히 낮게&lt;/b&gt;(쓰기 4천만 행, 4.5GB) 잡았습니다. 청구 주기가 달력의 달과 다르기 때문입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;청구서에 나오는 것&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;실제로 받은 청구서의 마지막 부분입니다. 기본료 5달러 말고는 전부 0달러이고, 항목마다 &quot;first 50 million included&quot; 같은 포함량이 적혀 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1198&quot; data-origin-height=&quot;496&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ewZ9RD/dJMcahGc0u0/uA6NSVRApOxT81ip7Ja7CK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ewZ9RD/dJMcahGc0u0/uA6NSVRApOxT81ip7Ja7CK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ewZ9RD/dJMcahGc0u0/uA6NSVRApOxT81ip7Ja7CK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FewZ9RD%2FdJMcahGc0u0%2FuA6NSVRApOxT81ip7Ja7CK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1198&quot; height=&quot;496&quot; data-origin-width=&quot;1198&quot; data-origin-height=&quot;496&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제가 쓰는 것 기준으로 포함량을 추리면 다음과 같습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;항목&lt;/th&gt;
&lt;th&gt;한 달 포함량&lt;/th&gt;
&lt;th&gt;넘으면&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;D1 쓴 행&lt;/td&gt;
&lt;td&gt;5천만 행&lt;/td&gt;
&lt;td&gt;100만 행당 1달러&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;D1 읽은 행&lt;/td&gt;
&lt;td&gt;250억 행&lt;/td&gt;
&lt;td&gt;100만 행당 0.001달러&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;D1 저장 공간&lt;/td&gt;
&lt;td&gt;5GB&lt;/td&gt;
&lt;td&gt;GB당 0.75달러&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Workers 요청&lt;/td&gt;
&lt;td&gt;1천만 번&lt;/td&gt;
&lt;td&gt;100만 번당 0.30달러&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Workers CPU 시간&lt;/td&gt;
&lt;td&gt;3천만 ms&lt;/td&gt;
&lt;td&gt;100만 ms당 0.02달러&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;단가만 보면 작아 보입니다. 그런데 버그로 반복문이 같은 데이터를 계속 쓰면 쓰기 행은 순식간에 억 단위가 됩니다. 제 수집은 하루 42만 행, 한 달 약 1천3백만 행이라 평소엔 포함량의 4분의 1 정도입니다. 문제는 평소가 아닐 때입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;안전장치 설계&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;수집할 때마다 D1이 돌려준 &lt;code&gt;meta.rows_written&lt;/code&gt;를 다 더하고, 마지막 &lt;code&gt;meta.size_after&lt;/code&gt;를 DB 크기로 기억합니다.&lt;/li&gt;
&lt;li&gt;수집이 끝나면 이 값을 &lt;code&gt;usage_monthly&lt;/code&gt; 테이블의 이번 달(UTC) 줄에 더합니다.&lt;/li&gt;
&lt;li&gt;다음 크론이 시작할 때 이번 달 합계를 먼저 읽습니다. &lt;b&gt;쓰기 4천만 행&lt;/b&gt;을 넘었으면 다음 달 1일까지 아무것도 안 하고 끝냅니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;DB 크기 4.5GB&lt;/b&gt;를 넘었으면 새 수집은 멈추고, 오래된 기록 지우기만 계속합니다. 용량이 줄면 다시 수집합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;테이블&lt;/h3&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;CREATE TABLE usage_monthly (
  month TEXT PRIMARY KEY,        -- '2026-10' (UTC)
  rows_written INTEGER NOT NULL DEFAULT 0,
  size_bytes INTEGER NOT NULL DEFAULT 0,
  paused_at TEXT,                -- 멈춘 시각
  updated_at TEXT NOT NULL
);&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;사용량 세기&lt;/h3&gt;
&lt;pre class=&quot;stata&quot;&gt;&lt;code&gt;class UsageMeter {
  rowsWritten = 0;
  sizeBytes = 0;
  // D1 결과를 그대로 넘기면 meta에서 숫자를 꺼내 더해요
  add(result?: { meta?: { rows_written?: number; size_after?: number } }) {
    const meta = result?.meta;
    if (!meta) return;
    this.rowsWritten += meta.rows_written ?? 0;
    if (meta.size_after) this.sizeBytes = meta.size_after;
  }
}

const meter = new UsageMeter();
const results = await env.DB.batch(statements);
results.forEach((r) =&amp;gt; meter.add(r));&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;이번 달 합계에 더하기&lt;/h3&gt;
&lt;pre class=&quot;pgsql&quot;&gt;&lt;code&gt;await env.DB.prepare(`
  INSERT INTO usage_monthly (month, rows_written, size_bytes, updated_at)
  VALUES (?, ?, ?, ?)
  ON CONFLICT (month) DO UPDATE SET
    rows_written = usage_monthly.rows_written + excluded.rows_written,
    size_bytes   = excluded.size_bytes,
    updated_at   = excluded.updated_at
`).bind(month, meter.rowsWritten, meter.sizeBytes, now).run();&lt;/code&gt;&lt;/pre&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;크론 시작할 때 확인&lt;/h3&gt;
&lt;pre class=&quot;javascript&quot;&gt;&lt;code&gt;async scheduled(_e, env) {
  const month = new Date().toISOString().slice(0, 7);   // '2026-10'
  const usage = await env.DB
    .prepare(&quot;SELECT rows_written, size_bytes FROM usage_monthly WHERE month = ?&quot;)
    .bind(month).first();

  if (usage &amp;amp;&amp;amp; usage.rows_written &amp;gt;= 40_000_000) {
    console.warn(&quot;collection paused: monthly writes&quot;);
    return;                                  // 다음 달까지 수집 안 함
  }
  if (usage &amp;amp;&amp;amp; usage.size_bytes &amp;gt;= 4500 * 1024 * 1024) {
    console.warn(&quot;collection paused: storage&quot;);
    await pruneOldRows(env.DB);              // 정리만 하고 끝
    return;
  }
  // ...평소 수집
}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;한도 숫자는 &lt;code&gt;wrangler.toml&lt;/code&gt;의 &lt;code&gt;[vars]&lt;/code&gt;에 넣어 두면 코드를 안 고치고 바꿀 수 있습니다. 멈췄는지는 Worker 로그에서 &lt;code&gt;collection paused&lt;/code&gt;로 검색하면 됩니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;한도를 낮게 잡은 이유&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;청구 주기가 달력과 다릅니다.&lt;/b&gt; 위 청구서를 보면 기간이 &lt;b&gt;10월 7일~11월 6일&lt;/b&gt;입니다. 제가 세는 건 UTC 달력의 1일~말일이라, 두 기간이 어긋나는 만큼 여유를 둬야 합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;안전장치를 넣기 전에 쓴 양은 세지 않았습니다.&lt;/b&gt; 그 몫도 여유로 메웁니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;세지 않는 사용량도 있습니다.&lt;/b&gt; 수집 말고 사이트 방문 때 생기는 Worker 요청과 쿼리는 이 표에 넣지 않았습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그래서 포함량 5천만 행의 80%인 4천만 행, 5GB의 90%인 4.5GB에서 멈추게 했습니다. 이 정도면 한도에 닿아도 추가 요금이 붙기 전에 멈춥니다.&lt;/p&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;무료 요금제로 돌아갈 일이 생기면 한도도 같이 낮춰야 합니다. 무료는 D1 쓰기가 하루 10만 행이라, 저는 한 달 250만 행으로 바꿔 두도록 메모해 두었습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;클라우드플레어 시리즈&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/11&quot;&gt;가비아 도메인 클라우드플레어 네임서버로 옮기기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/12&quot;&gt;Email Routing으로 도메인 메일 무료로 받기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/13&quot;&gt;Cloudflare Pages로 Next.js 사이트 무료 배포&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/14&quot;&gt;Workers Cron + D1으로 10분마다 데이터 수집&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/15&quot;&gt;요금 폭탄 막기: 직접 만든 D1 쓰기 한도&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/클라우드플레어</category>
      <category>Cloudflare Workers 유료</category>
      <category>D1 rows written</category>
      <category>D1 요금</category>
      <category>Workers Paid 5달러</category>
      <category>요금 폭탄</category>
      <category>클라우드플레어 과금</category>
      <category>클라우드플레어 요금</category>
      <category>클라우드플레어 지출 한도</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/15</guid>
      <comments>https://bboxnote.tistory.com/entry/%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C%ED%94%8C%EB%A0%88%EC%96%B4-%EC%9A%94%EA%B8%88-%ED%8F%AD%ED%83%84-%EB%A7%89%EA%B8%B0-%EC%A7%80%EC%B6%9C-%EC%83%81%ED%95%9C%EC%9D%B4-%EC%97%86%EC%96%B4%EC%84%9C-%EC%A7%81%EC%A0%91-%EB%A7%8C%EB%93%A0-D1-%EC%93%B0%EA%B8%B0-%ED%95%9C%EB%8F%84#entry15comment</comments>
      <pubDate>Wed, 14 Oct 2026 13:39:17 +0900</pubDate>
    </item>
    <item>
      <title>Cloudflare Workers Cron + D1으로 10분마다 데이터 수집하기 (서버 없이)</title>
      <link>https://bboxnote.tistory.com/entry/Cloudflare-Workers-Cron-D1%EC%9C%BC%EB%A1%9C-10%EB%B6%84%EB%A7%88%EB%8B%A4-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%88%98%EC%A7%91%ED%95%98%EA%B8%B0-%EC%84%9C%EB%B2%84-%EC%97%86%EC%9D%B4</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/POAQb/dJMcagmZAsu/isiXDXS0jP0d7gE7czkuK0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/POAQb/dJMcagmZAsu/isiXDXS0jP0d7gE7czkuK0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/POAQb/dJMcagmZAsu/isiXDXS0jP0d7gE7czkuK0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FPOAQb%2FdJMcagmZAsu%2FisiXDXS0jP0d7gE7czkuK0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개인 프로젝트 하나에서 공개 API의 목록을 &lt;b&gt;10분마다&lt;/b&gt; 받아 쌓고 있습니다. 서버를 따로 관리하기 싫어서 Cloudflare &lt;b&gt;Workers&lt;/b&gt;의 Cron Triggers와 &lt;b&gt;D1&lt;/b&gt;(클라우드플레어의 SQLite 데이터베이스)로 만들었습니다. 서버 없이 코드 한 덩어리와 설정 파일 하나로 돌아갑니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;code&gt;wrangler.toml&lt;/code&gt;에 &lt;code&gt;crons = [&quot;*/10 * * * *&quot;]&lt;/code&gt; 한 줄이면 10분마다 Worker가 실행됩니다.&lt;/li&gt;
&lt;li&gt;D1은 &lt;code&gt;wrangler d1 create&lt;/code&gt;로 만들고 바인딩으로 연결하면 코드에서 &lt;code&gt;env.DB&lt;/code&gt;로 씁니다.&lt;/li&gt;
&lt;li&gt;크론 시간은 &lt;b&gt;UTC 기준&lt;/b&gt;입니다. &quot;매일 오전 9시&quot; 같은 건 9시간 빼서 적어야 합니다.&lt;/li&gt;
&lt;li&gt;쓰기가 많으면 무료 한도를 금방 넘습니다. 제 경우 하루 42만 행이라 유료(월 5달러)로 바꿨습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;구조&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Worker 하나가 두 가지 일을 합니다. 10분마다 깨어나서 데이터를 받아 D1에 넣고(&lt;code&gt;scheduled&lt;/code&gt;), 사이트가 부르면 D1에서 읽어 돌려줍니다(&lt;code&gt;fetch&lt;/code&gt;). 대시보드 개요 화면을 보면 트리거 1개, D1 바인딩 1개가 연결된 게 보입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2556&quot; data-origin-height=&quot;1241&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/boxBGG/dJMcagmZAtk/zDW46KVbK2TmAxbarYTnv0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/boxBGG/dJMcagmZAtk/zDW46KVbK2TmAxbarYTnv0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/boxBGG/dJMcagmZAtk/zDW46KVbK2TmAxbarYTnv0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FboxBGG%2FdJMcagmZAtk%2FzDW46KVbK2TmAxbarYTnv0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2556&quot; height=&quot;1241&quot; data-origin-width=&quot;2556&quot; data-origin-height=&quot;1241&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. 프로젝트와 D1 만들기&lt;/h2&gt;
&lt;pre class=&quot;perl&quot;&gt;&lt;code&gt;npm create cloudflare@latest my-collector   # Worker 템플릿 만들기
cd my-collector
npx wrangler login
npx wrangler d1 create my-db                # D1 만들기, database_id가 출력돼요&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. wrangler.toml 설정&lt;/h2&gt;
&lt;pre class=&quot;ini&quot;&gt;&lt;code&gt;name = &quot;my-collector&quot;
main = &quot;src/index.ts&quot;
compatibility_date = &quot;2026-10-01&quot;

# 10분마다 실행 (UTC 기준)
[triggers]
crons = [&quot;*/10 * * * *&quot;]

[[d1_databases]]
binding = &quot;DB&quot;                 # 코드에서 env.DB로 써요
database_name = &quot;my-db&quot;
database_id = &quot;위에서 출력된 ID&quot;
migrations_dir = &quot;migrations&quot;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;API 키 같은 비밀값은 이 파일에 적지 말고 &lt;code&gt;npx wrangler secret put API_KEY&lt;/code&gt;로 넣습니다. 저장소에 올라가도 안전합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3. 테이블 만들기 (마이그레이션)&lt;/h2&gt;
&lt;pre class=&quot;sql&quot;&gt;&lt;code&gt;-- migrations/0001_init.sql
CREATE TABLE snapshots (
  id INTEGER PRIMARY KEY AUTOINCREMENT,
  item_id TEXT NOT NULL,
  value INTEGER,
  collected_at TEXT NOT NULL
);
CREATE INDEX idx_snapshots_time ON snapshots (collected_at);&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;applescript&quot;&gt;&lt;code&gt;npx wrangler d1 migrations apply my-db --remote&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;--remote&lt;/code&gt;를 빼면 내 컴퓨터의 로컬 D1에만 적용됩니다. 실제 데이터베이스에 넣을 때는 꼭 붙이세요.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;4. Worker 코드&lt;/h2&gt;
&lt;pre class=&quot;typescript&quot;&gt;&lt;code&gt;export interface Env {
  DB: D1Database;
  API_KEY: string;
}

export default {
  // 크론이 부를 때
  async scheduled(_event: ScheduledController, env: Env): Promise&amp;lt;void&amp;gt; {
    const res = await fetch(&quot;https://api.example.com/items&quot;, {
      headers: { Authorization: `Bearer ${env.API_KEY}` },
    });
    const items: { id: string; value: number }[] = await res.json();
    const now = new Date().toISOString();

    // 여러 줄은 batch로 한 번에 넣어요
    const stmt = env.DB.prepare(
      &quot;INSERT INTO snapshots (item_id, value, collected_at) VALUES (?, ?, ?)&quot;
    );
    await env.DB.batch(items.map((it) =&amp;gt; stmt.bind(it.id, it.value, now)));
    console.log(&quot;collected&quot;, items.length);
  },

  // 사이트가 부를 때
  async fetch(_req: Request, env: Env): Promise&amp;lt;Response&amp;gt; {
    const { results } = await env.DB
      .prepare(&quot;SELECT * FROM snapshots ORDER BY collected_at DESC LIMIT 100&quot;)
      .all();
    return Response.json(results);
  },
};&lt;/code&gt;&lt;/pre&gt;
&lt;pre class=&quot;ebnf&quot;&gt;&lt;code&gt;npx wrangler deploy&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;배포하면 그다음 10분 단위 정각부터 알아서 돕니다. 대시보드의 Worker &amp;rarr; &lt;b&gt;로그&lt;/b&gt;에서 &lt;code&gt;collected ...&lt;/code&gt; 줄이 10분마다 찍히는지 보면 됩니다. 크론을 기다리기 싫으면 &lt;code&gt;npx wrangler dev --test-scheduled&lt;/code&gt;로 로컬에서 바로 실행해 볼 수 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실제로 돌려 보니&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 D1 개요 화면의 최근 24시간입니다. 쿼리 28만 번, 쓴 행 42만 6천 개, 저장 공간 312MB입니다. 막대가 10분 간격으로 고르게 서 있는 게 크론이 제때 돌고 있다는 뜻입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2557&quot; data-origin-height=&quot;1238&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/egkKvX/dJMcagmZAuh/bmQLeCLj5dTW9sjNfAOpIK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/egkKvX/dJMcagmZAuh/bmQLeCLj5dTW9sjNfAOpIK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/egkKvX/dJMcagmZAuh/bmQLeCLj5dTW9sjNfAOpIK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FegkKvX%2FdJMcagmZAuh%2FbmQLeCLj5dTW9sjNfAOpIK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2557&quot; height=&quot;1238&quot; data-origin-width=&quot;2557&quot; data-origin-height=&quot;1238&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;D1 무료 요금제는 쓰기가 &lt;b&gt;하루 10만 행&lt;/b&gt;까지입니다. 저는 하루 42만 행을 쓰니까 무료로는 안 됐고, Workers 유료(월 5달러)로 바꿨습니다. 유료는 쓰기가 한 달 5천만 행까지 포함이라 넉넉합니다. 그런데 유료로 바꾸고 나서 알게 된 게, &lt;b&gt;클라우드플레어에는 지출 상한 기능이 없다&lt;/b&gt;는 것입니다. 그래서 요금 안전장치를 직접 만들었고, 그 이야기는 다음 글에 썼습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;헤맸던 것들&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;시간대:&lt;/b&gt; 크론도, Worker 안의 &lt;code&gt;new Date()&lt;/code&gt;도 UTC입니다. 날짜별로 묶을 때 한국 날짜가 필요하면 9시간을 더해서 계산합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;batch:&lt;/b&gt; 행마다 &lt;code&gt;run()&lt;/code&gt;을 따로 부르면 느리고 호출 수도 늘어납니다. 한 번 수집한 건 &lt;code&gt;batch&lt;/code&gt;로 묶어서 넣습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;오래된 데이터:&lt;/b&gt; 10분마다 쌓으면 금방 커집니다. 저는 35일보다 오래된 줄은 수집할 때마다 조금씩 지웁니다. 한 번에 다 지우면 그 한 번의 쓰기가 크게 튑니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;클라우드플레어 시리즈&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/11&quot;&gt;가비아 도메인 클라우드플레어 네임서버로 옮기기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/12&quot;&gt;Email Routing으로 도메인 메일 무료로 받기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/13&quot;&gt;Cloudflare Pages로 Next.js 사이트 무료 배포&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/14&quot;&gt;Workers Cron + D1으로 10분마다 데이터 수집&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/15&quot;&gt;요금 폭탄 막기: 직접 만든 D1 쓰기 한도&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/클라우드플레어</category>
      <category>cloudflare workers</category>
      <category>Cron Triggers</category>
      <category>D1 데이터베이스</category>
      <category>Workers 크론</category>
      <category>wrangler</category>
      <category>서버리스 크롤링</category>
      <category>주기적 데이터 수집</category>
      <category>클라우드플레어 D1</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/14</guid>
      <comments>https://bboxnote.tistory.com/entry/Cloudflare-Workers-Cron-D1%EC%9C%BC%EB%A1%9C-10%EB%B6%84%EB%A7%88%EB%8B%A4-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%88%98%EC%A7%91%ED%95%98%EA%B8%B0-%EC%84%9C%EB%B2%84-%EC%97%86%EC%9D%B4#entry14comment</comments>
      <pubDate>Wed, 14 Oct 2026 13:37:34 +0900</pubDate>
    </item>
    <item>
      <title>Cloudflare Pages로 Next.js 정적 사이트 무료 배포하기 (Workers 화면에 빠지지 않는 법)</title>
      <link>https://bboxnote.tistory.com/entry/Cloudflare-Pages%EB%A1%9C-Nextjs-%EC%A0%95%EC%A0%81-%EC%82%AC%EC%9D%B4%ED%8A%B8-%EB%AC%B4%EB%A3%8C-%EB%B0%B0%ED%8F%AC%ED%95%98%EA%B8%B0-Workers-%ED%99%94%EB%A9%B4%EC%97%90-%EB%B9%A0%EC%A7%80%EC%A7%80-%EC%95%8A%EB%8A%94-%EB%B2%95</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/yTqWO/dJMcajjQIF3/5OafncFOsAvARBmP1DKwRK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/yTqWO/dJMcajjQIF3/5OafncFOsAvARBmP1DKwRK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/yTqWO/dJMcajjQIF3/5OafncFOsAvARBmP1DKwRK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FyTqWO%2FdJMcajjQIF3%2F5OafncFOsAvARBmP1DKwRK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연봉 실수령액 계산기 사이트 &lt;a href=&quot;https://koreapaycalc.com&quot;&gt;머니계산기&lt;/a&gt;는 Cloudflare Pages에 올라가 있습니다. 계산은 입력값을 받아 브라우저에서만 하니까 서버가 필요 없었고, 그래서 Next.js를 정적 HTML로 뽑아 Pages에 올리는 구조를 골랐습니다. 호스팅비는 0원이고, GitHub에 푸시하면 알아서 빌드하고 배포해 주는 게 제일 컸습니다. 설정은 간단한데, 처음에 &lt;b&gt;메뉴를 잘못 들어가서&lt;/b&gt; 두 번이나 헤맸습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Next.js는 &lt;code&gt;output: &quot;export&quot;&lt;/code&gt;로 정적 HTML을 &lt;code&gt;out/&lt;/code&gt;에 뽑습니다.&lt;/li&gt;
&lt;li&gt;Create application 화면에서 GitHub 버튼을 누르면 &lt;b&gt;Worker&lt;/b&gt;로 갑니다. 맨 아래 &lt;b&gt;Continue to Pages&lt;/b&gt;를 눌러야 합니다.&lt;/li&gt;
&lt;li&gt;빌드 설정은 preset &lt;b&gt;None&lt;/b&gt;, 명령 &lt;code&gt;npm run build&lt;/code&gt;, 출력 폴더 &lt;code&gt;out&lt;/code&gt;이면 끝입니다.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;NEXT_PUBLIC_*&lt;/code&gt; 환경변수는 빌드 때 박힙니다. 바꾼 뒤에는 꼭 &lt;b&gt;재배포&lt;/b&gt;하세요.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. Next.js를 정적 사이트로 뽑기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;next.config.ts&lt;/code&gt;에 아래 세 줄을 넣으면 &lt;code&gt;npm run build&lt;/code&gt;할 때 &lt;code&gt;out/&lt;/code&gt; 폴더에 HTML이 떨어집니다.&lt;/p&gt;
&lt;pre class=&quot;cpp&quot;&gt;&lt;code&gt;const nextConfig = {
  output: &quot;export&quot;,        // 정적 HTML로 내보내기
  trailingSlash: true,     // /guide &amp;rarr; /guide/index.html
  images: { unoptimized: true }, // 이미지 최적화 서버가 없으니 끔
};
export default nextConfig;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정적 export에서는 서버에서 도는 기능(API 라우트, 요청마다 그리는 페이지, next/image 최적화)을 못 씁니다. 계산기처럼 브라우저에서 끝나는 사이트면 아무 문제 없습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. Workers 화면에 빠지지 않기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;요즘 대시보드는 &lt;b&gt;컴퓨트 &amp;rarr; Workers 및 Pages &amp;rarr; 애플리케이션 생성&lt;/b&gt;으로 들어가면 기본이 &lt;b&gt;Worker&lt;/b&gt; 만들기입니다. 위쪽 &lt;b&gt;Continue with GitHub&lt;/b&gt;를 누르면 Worker 설정으로 가 버리고, 그대로 배포하면 설정 파일이 없어서 실패하거나 Next.js를 서버 앱으로 잘못 잡습니다. 저는 여기서 두 번 빠졌습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정답은 맨 아래 작게 있는 &lt;b&gt;Need to use the legacy Pages workflow? Continue to Pages&lt;/b&gt; 링크입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1325&quot; data-origin-height=&quot;641&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cRG2nA/dJMcajjQIG1/KTa6rbp2JCLjJDWvWrPqTk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cRG2nA/dJMcajjQIG1/KTa6rbp2JCLjJDWvWrPqTk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cRG2nA/dJMcajjQIG1/KTa6rbp2JCLjJDWvWrPqTk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcRG2nA%2FdJMcajjQIG1%2FKTa6rbp2JCLjJDWvWrPqTk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1325&quot; height=&quot;641&quot; data-origin-width=&quot;1325&quot; data-origin-height=&quot;641&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3. 빌드 설정&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Pages로 들어가서 &lt;b&gt;Import an existing Git repository&lt;/b&gt;로 GitHub 저장소를 고르면 아래 화면이 나옵니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1140&quot; data-origin-height=&quot;1170&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JcJeM/dJMcajjQIIo/JHFztPSFbS5hGBfYBhvTl1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JcJeM/dJMcajjQIIo/JHFztPSFbS5hGBfYBhvTl1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JcJeM/dJMcajjQIIo/JHFztPSFbS5hGBfYBhvTl1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJcJeM%2FdJMcajjQIIo%2FJHFztPSFbS5hGBfYBhvTl1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1140&quot; height=&quot;1170&quot; data-origin-width=&quot;1140&quot; data-origin-height=&quot;1170&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;항목&lt;/th&gt;
&lt;th&gt;값&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Framework preset&lt;/td&gt;
&lt;td&gt;None&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Build command&lt;/td&gt;
&lt;td&gt;npm run build&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Build output directory&lt;/td&gt;
&lt;td&gt;out (앞에 /가 이미 붙어 있어서 out만)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Root directory&lt;/td&gt;
&lt;td&gt;비워 두기 (저장소 맨 위에 package.json이 있을 때)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Environment variables&lt;/td&gt;
&lt;td&gt;사이트 주소, 문의 메일 같은 NEXT_PUBLIC_* 값&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Node 버전은 저장소의 &lt;code&gt;.nvmrc&lt;/code&gt;(저는 &lt;code&gt;22&lt;/code&gt;)를 따라갑니다. &lt;b&gt;Save and Deploy&lt;/b&gt;를 누르면 첫 빌드가 돕니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;4. 배포가 Success인데 CSS가 통째로 날아갔다&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;첫 배포는 성공으로 나왔는데, 사이트를 열어 보니 스타일이 하나도 없었습니다. 콘솔에는 React 에러 &lt;b&gt;#418&lt;/b&gt;(서버에서 만든 HTML과 브라우저에서 그린 화면이 다름)이 떠 있었습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원인은 클라우드플레어가 아니라 제 코드였습니다. &lt;code&gt;&amp;lt;head&amp;gt;&lt;/code&gt; 안에 애드센스 스크립트를 이렇게 넣었기 때문입니다.&lt;/p&gt;
&lt;pre class=&quot;nimrod&quot;&gt;&lt;code&gt;// 문제: adsenseId가 빈 문자열(&quot;&quot;)이면 &quot;&quot;이 텍스트로 남아요
{adsenseId &amp;amp;&amp;amp; &amp;lt;script src={...} /&amp;gt;}

// 해결: 삼항 연산자로 확실히 null을 돌려줘요
{adsenseId ? &amp;lt;script src={...} /&amp;gt; : null}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;환경변수가 비어 있으면 &lt;code&gt;&quot;&quot;&lt;/code&gt;이 head 안에 텍스트 노드로 남고, React가 이걸 바로잡다가 CSS 링크까지 떼어 버렸습니다. 삼항 연산자로 바꾸자 바로 해결됐습니다.&lt;/p&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;next/script&lt;/code&gt;는 정적 export HTML에 script 태그를 남기지 않고 preload 링크만 남깁니다. 애드센스처럼 크롤러가 HTML에서 직접 찾는 스크립트는 일반 &lt;code&gt;&amp;lt;script&amp;gt;&lt;/code&gt;로 넣어야 합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;5. 환경변수는 재배포해야 바뀐다&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;NEXT_PUBLIC_*&lt;/code&gt; 값은 빌드할 때 HTML 안에 박힙니다. 그래서 &lt;b&gt;설정 &amp;rarr; 변수 및 비밀&lt;/b&gt;에서 값을 바꿔도 사이트는 그대로입니다. &lt;b&gt;배포&lt;/b&gt; 탭에서 최신 배포의 &lt;b&gt;Retry deployment&lt;/b&gt;를 눌러야 반영됩니다. 여러 개를 바꿀 때는 다 바꾼 뒤 재배포는 한 번만 하면 됩니다. 저는 문의 메일 오타를 이렇게 고쳤습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;6. 푸시하면 자동 배포, PR마다 미리보기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;연결이 끝나면 &lt;code&gt;main&lt;/code&gt;에 머지할 때마다 &lt;b&gt;Production&lt;/b&gt;으로 자동 배포되고, 다른 브랜치에 푸시하면 &lt;b&gt;Preview&lt;/b&gt; 배포가 따로 생깁니다. 미리보기마다 고유 주소가 붙어서, 머지하기 전에 실제 화면을 열어 볼 수 있습니다. 생각보다 이게 제일 유용했습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2556&quot; data-origin-height=&quot;1235&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/etqjvy/dJMcacrxI6W/qzdJntrWYKwVDKmONyfKN1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/etqjvy/dJMcacrxI6W/qzdJntrWYKwVDKmONyfKN1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/etqjvy/dJMcacrxI6W/qzdJntrWYKwVDKmONyfKN1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fetqjvy%2FdJMcacrxI6W%2FqzdJntrWYKwVDKmONyfKN1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2556&quot; height=&quot;1235&quot; data-origin-width=&quot;2556&quot; data-origin-height=&quot;1235&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;7. 내 도메인 연결&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;애드센스는 &lt;code&gt;pages.dev&lt;/code&gt; 같은 하위 도메인으로는 신청이 안 돼서 도메인을 하나 샀습니다. 클라우드플레어에서 산 도메인이라 연결은 클릭 몇 번이었습니다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;Workers 및 Pages &amp;rarr; 프로젝트 &amp;rarr; &lt;b&gt;사용자 설정 도메인&lt;/b&gt; &amp;rarr; 도메인 설정에서 &lt;code&gt;koreapaycalc.com&lt;/code&gt;을 넣고 활성화합니다.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;www.koreapaycalc.com&lt;/code&gt;도 같은 방법으로 추가합니다.&lt;/li&gt;
&lt;li&gt;환경변수의 사이트 주소를 새 도메인으로 바꾸고 재배포합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;DNS 레코드를 손으로 넣을 일이 없었고, 몇 분 만에 HTTPS까지 잡혔습니다. 재배포 뒤에는 &lt;code&gt;/sitemap.xml&lt;/code&gt;을 열어 주소가 새 도메인으로 나오는지 확인했습니다.&lt;/p&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;Google Search Console에서 &lt;b&gt;도메인 속성&lt;/b&gt;을 추가하면 DNS 확인 화면에서 Cloudflare를 고르기만 해도 버튼 한 번으로 인증됩니다. TXT 레코드를 복사해 넣을 필요가 없습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;정리&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;필요한 것&lt;/th&gt;
&lt;th&gt;클라우드플레어 기능&lt;/th&gt;
&lt;th&gt;비용&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;호스팅&amp;middot;자동 배포&lt;/td&gt;
&lt;td&gt;Pages (GitHub 연결, PR 미리보기)&lt;/td&gt;
&lt;td&gt;무료&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;도메인&lt;/td&gt;
&lt;td&gt;Registrar&lt;/td&gt;
&lt;td&gt;연 약 10달러&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;DNS&amp;middot;HTTPS&lt;/td&gt;
&lt;td&gt;사용자 설정 도메인&lt;/td&gt;
&lt;td&gt;무료&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;문의 메일&lt;/td&gt;
&lt;td&gt;Email Routing&lt;/td&gt;
&lt;td&gt;무료&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;정적 사이트라면 서버 비용 걱정 없이 시작하기 좋습니다. 함정은 딱 두 개였습니다. Workers 화면으로 잘못 들어가기 쉽다는 것, 그리고 환경변수는 재배포해야 반영된다는 것입니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;클라우드플레어 시리즈&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/11&quot;&gt;가비아 도메인 클라우드플레어 네임서버로 옮기기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/12&quot;&gt;Email Routing으로 도메인 메일 무료로 받기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/13&quot;&gt;Cloudflare Pages로 Next.js 사이트 무료 배포&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/14&quot;&gt;Workers Cron + D1으로 10분마다 데이터 수집&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/15&quot;&gt;요금 폭탄 막기: 직접 만든 D1 쓰기 한도&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/클라우드플레어</category>
      <category>Cloudflare Pages</category>
      <category>Cloudflare Pages Next.js</category>
      <category>Continue to Pages</category>
      <category>Next.js output export</category>
      <category>Next.js 정적 배포</category>
      <category>React 418 에러</category>
      <category>클라우드플레어 페이지 배포</category>
      <category>클라우드플레어 환경변수</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/13</guid>
      <comments>https://bboxnote.tistory.com/entry/Cloudflare-Pages%EB%A1%9C-Nextjs-%EC%A0%95%EC%A0%81-%EC%82%AC%EC%9D%B4%ED%8A%B8-%EB%AC%B4%EB%A3%8C-%EB%B0%B0%ED%8F%AC%ED%95%98%EA%B8%B0-Workers-%ED%99%94%EB%A9%B4%EC%97%90-%EB%B9%A0%EC%A7%80%EC%A7%80-%EC%95%8A%EB%8A%94-%EB%B2%95#entry13comment</comments>
      <pubDate>Wed, 14 Oct 2026 13:35:53 +0900</pubDate>
    </item>
    <item>
      <title>클라우드플레어 Email Routing으로 도메인 메일 무료로 받기 (지메일로 전달)</title>
      <link>https://bboxnote.tistory.com/entry/%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C%ED%94%8C%EB%A0%88%EC%96%B4-Email-Routing%EC%9C%BC%EB%A1%9C-%EB%8F%84%EB%A9%94%EC%9D%B8-%EB%A9%94%EC%9D%BC-%EB%AC%B4%EB%A3%8C%EB%A1%9C-%EB%B0%9B%EA%B8%B0-%EC%A7%80%EB%A9%94%EC%9D%BC%EB%A1%9C-%EC%A0%84%EB%8B%AC</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/euOgMa/dJMcab0tw52/MNtxKsezjAg9hbvzXOtcl0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/euOgMa/dJMcab0tw52/MNtxKsezjAg9hbvzXOtcl0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/euOgMa/dJMcab0tw52/MNtxKsezjAg9hbvzXOtcl0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FeuOgMa%2FdJMcab0tw52%2FMNtxKsezjAg9hbvzXOtcl0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;사이트를 운영하다 보면 문의 주소가 필요합니다. 개인정보처리방침이나 소개 페이지에 연락처가 있으면 애드센스 심사에도 유리합니다. 그런데 개인 지메일을 그대로 공개하긴 싫고, 메일 호스팅을 따로 쓰기엔 돈이 아까웠습니다. 그래서 위시나인(&lt;code&gt;contact@wish9.kr&lt;/code&gt;)과 머니계산기(&lt;code&gt;contact@koreapaycalc.com&lt;/code&gt;) 둘 다 클라우드플레어 &lt;b&gt;Email Routing&lt;/b&gt;으로 만들어서 제 지메일로 받고 있습니다. 무료이고 설정은 5~10분이면 끝납니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;도메인의 네임서버가 &lt;b&gt;클라우드플레어&lt;/b&gt;여야 씁니다. 아직이면 이전 글부터 보세요.&lt;/li&gt;
&lt;li&gt;받을 지메일을 &lt;b&gt;대상 주소&lt;/b&gt;로 등록하고 인증 메일을 누릅니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;라우팅 규칙&lt;/b&gt;에서 contact@내도메인 &amp;rarr; 지메일로 연결하면 끝입니다. 필요한 DNS 레코드는 클라우드플레어가 알아서 넣습니다.&lt;/li&gt;
&lt;li&gt;받기 전용입니다. 이 주소로 &lt;b&gt;보내기&lt;/b&gt;는 따로 준비해야 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. Email Routing 켜기&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;클라우드플레어 대시보드에서 도메인을 고른 뒤 &lt;b&gt;이메일 &amp;rarr; Email Routing&lt;/b&gt;으로 갑니다. (계정 홈 왼쪽 메뉴의 컴퓨트 &amp;rarr; 이메일 서비스 &amp;rarr; 이메일 라우팅에서도 들어갈 수 있습니다.)&lt;/li&gt;
&lt;li&gt;처음이면 &lt;b&gt;시작하기&lt;/b&gt;를 누르고 안내를 따라갑니다. 활성화하면 메일 수신용 MX 3개와 인증용 TXT 2개(SPF, DKIM)가 자동으로 들어갑니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;나중에 DNS 레코드를 보면 아래 레코드들이 자동으로 들어가 있습니다. 앞 글의 DNS 화면에서 보이던 그 레코드들입니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;유형&lt;/th&gt;
&lt;th&gt;내용&lt;/th&gt;
&lt;th&gt;하는 일&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;MX&lt;/td&gt;
&lt;td&gt;route1~3.mx.cloudflare.net&lt;/td&gt;
&lt;td&gt;이 도메인으로 오는 메일을 클라우드플레어가 받음&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TXT&lt;/td&gt;
&lt;td&gt;v=spf1 include:_spf.mx.cloudflare.net ~all&lt;/td&gt;
&lt;td&gt;SPF, 발신 서버 확인&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;TXT&lt;/td&gt;
&lt;td&gt;cf2024-1._domainkey ...&lt;/td&gt;
&lt;td&gt;DKIM 서명 확인&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;가비아나 다른 곳에서 쓰던 MX 레코드가 남아 있으면 충돌합니다. 예전 메일 서비스를 안 쓴다면 지우고, 클라우드플레어 MX만 남겨 두세요.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. 받을 주소(대상 주소) 등록하기&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;대상 주소&lt;/b&gt; 탭에서 메일을 실제로 받을 지메일 주소를 추가합니다.&lt;/li&gt;
&lt;li&gt;그 지메일로 클라우드플레어 인증 메일이 옵니다. 안의 링크를 눌러야 &lt;b&gt;확인됨&lt;/b&gt;으로 바뀝니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3. 라우팅 규칙 만들기&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;라우팅 규칙&lt;/b&gt; 탭에서 &lt;b&gt;라우팅 규칙 생성&lt;/b&gt;을 누릅니다.&lt;/li&gt;
&lt;li&gt;이메일 패턴에 &lt;code&gt;contact&lt;/code&gt;를 넣고 도메인을 고릅니다.&lt;/li&gt;
&lt;li&gt;동작은 &lt;b&gt;이메일로 전송&lt;/b&gt;, 대상은 방금 인증한 지메일을 골라 저장합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;784&quot; data-origin-height=&quot;511&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pfpou/dJMcaggeP3A/ZWyfGJkM7FhisOkwWxrqRk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pfpou/dJMcaggeP3A/ZWyfGJkM7FhisOkwWxrqRk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pfpou/dJMcaggeP3A/ZWyfGJkM7FhisOkwWxrqRk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fpfpou%2FdJMcaggeP3A%2FZWyfGJkM7FhisOkwWxrqRk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;784&quot; height=&quot;511&quot; data-origin-width=&quot;784&quot; data-origin-height=&quot;511&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;동작에는 &lt;b&gt;Worker로 전송&lt;/b&gt;도 있습니다. 받은 메일을 코드로 처리하고 싶을 때(예: 특정 메일만 슬랙으로 알림) 쓰는 기능입니다. 그냥 받기만 할 거면 이메일로 전송이면 충분합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저장하면 목록에 상태가 &lt;b&gt;활성&lt;/b&gt;으로 나옵니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2559&quot; data-origin-height=&quot;1237&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/TXgKs/dJMcaggeP4v/KdZ6xZd1po6bVtbBAzpNDK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/TXgKs/dJMcaggeP4v/KdZ6xZd1po6bVtbBAzpNDK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/TXgKs/dJMcaggeP4v/KdZ6xZd1po6bVtbBAzpNDK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FTXgKs%2FdJMcaggeP4v%2FKdZ6xZd1po6bVtbBAzpNDK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2559&quot; height=&quot;1237&quot; data-origin-width=&quot;2559&quot; data-origin-height=&quot;1237&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다른 메일 주소로 한 통 보내 보면 바로 지메일에 들어옵니다. 받은 메일의 받는 사람은 그대로 &lt;code&gt;contact@wish9.kr&lt;/code&gt;로 보입니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;전체 수신(catch-all)은 꺼 두었습니다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;규칙 목록 맨 위의 &lt;b&gt;전체 수신&lt;/b&gt;을 켜면, 규칙에 없는 아무 주소(&lt;code&gt;abc@&lt;/code&gt;, &lt;code&gt;admin@&lt;/code&gt; 등)로 온 메일도 다 받습니다. 오타 난 메일까지 받을 수 있는 대신 스팸도 같이 늘어서, 저는 비활성으로 두고 쓰는 주소만 규칙으로 만들었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;알아 두면 좋은 것&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;보내기는 안 됩니다.&lt;/b&gt; Email Routing은 받아서 넘겨 주는 기능이라, 지메일에서 &lt;code&gt;contact@&lt;/code&gt; 주소로 답장을 보내려면 SMTP를 제공하는 메일 서비스를 따로 연결해야 합니다. 저는 문의 답장은 개인 메일로 하고 있습니다.&lt;/li&gt;
&lt;li&gt;대시보드에 &quot;가짜 이메일 차단: DMARC 레코드 추가&quot; 권장이 뜹니다. 누가 내 도메인을 사칭해 메일을 보내는 걸 막는 레코드라, 안내대로 하나 추가해 두면 좋습니다.&lt;/li&gt;
&lt;li&gt;사이트에 문의 주소를 적어 두었다면 그 값도 새 주소로 바꿉니다. 저는 Pages 환경변수에 문의 메일을 넣어 두는데, 환경변수는 &lt;b&gt;재배포해야&lt;/b&gt; 반영됩니다(Pages 글 참고). 그리고 값이 비어 있으면 문의 항목을 통째로 숨기게 코드를 고쳐 두었습니다. 그냥 비워 두면 &quot;운영자 이메일로 보내 주세요&quot; 같은 어색한 문장만 남기 때문입니다.&lt;/li&gt;
&lt;li&gt;주소마다 규칙을 하나씩 만들 수 있어서 &lt;code&gt;contact@&lt;/code&gt;, &lt;code&gt;help@&lt;/code&gt;처럼 용도별로 나눠 받을 수도 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;클라우드플레어 시리즈&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/11&quot;&gt;가비아 도메인 클라우드플레어 네임서버로 옮기기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/12&quot;&gt;Email Routing으로 도메인 메일 무료로 받기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/13&quot;&gt;Cloudflare Pages로 Next.js 사이트 무료 배포&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/14&quot;&gt;Workers Cron + D1으로 10분마다 데이터 수집&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/15&quot;&gt;요금 폭탄 막기: 직접 만든 D1 쓰기 한도&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/클라우드플레어</category>
      <category>Cloudflare Email Routing</category>
      <category>contact 메일 만들기</category>
      <category>개인 도메인 메일 받기</category>
      <category>도메인 메일 무료</category>
      <category>도메인 이메일 지메일</category>
      <category>클라우드플레어 이메일 라우팅</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/12</guid>
      <comments>https://bboxnote.tistory.com/entry/%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C%ED%94%8C%EB%A0%88%EC%96%B4-Email-Routing%EC%9C%BC%EB%A1%9C-%EB%8F%84%EB%A9%94%EC%9D%B8-%EB%A9%94%EC%9D%BC-%EB%AC%B4%EB%A3%8C%EB%A1%9C-%EB%B0%9B%EA%B8%B0-%EC%A7%80%EB%A9%94%EC%9D%BC%EB%A1%9C-%EC%A0%84%EB%8B%AC#entry12comment</comments>
      <pubDate>Wed, 14 Oct 2026 13:34:08 +0900</pubDate>
    </item>
    <item>
      <title>가비아 도메인 클라우드플레어 네임서버로 옮기기: DNS만(회색 구름)으로 둔 이유</title>
      <link>https://bboxnote.tistory.com/entry/%EA%B0%80%EB%B9%84%EC%95%84-%EB%8F%84%EB%A9%94%EC%9D%B8-%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C%ED%94%8C%EB%A0%88%EC%96%B4-%EB%84%A4%EC%9E%84%EC%84%9C%EB%B2%84%EB%A1%9C-%EC%98%AE%EA%B8%B0%EA%B8%B0-DNS%EB%A7%8C%ED%9A%8C%EC%83%89-%EA%B5%AC%EB%A6%84%EC%9C%BC%EB%A1%9C-%EB%91%94-%EC%9D%B4%EC%9C%A0</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bnyLVh/dJMcaf9l13h/KDmSWDerCmq8XrUtow7Aj1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bnyLVh/dJMcaf9l13h/KDmSWDerCmq8XrUtow7Aj1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bnyLVh/dJMcaf9l13h/KDmSWDerCmq8XrUtow7Aj1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbnyLVh%2FdJMcaf9l13h%2FKDmSWDerCmq8XrUtow7Aj1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;위시나인(wish9.kr) 도메인은 가비아에서 샀지만, DNS는 클라우드플레어에서 관리하고 있습니다. 가비아 DNS로도 충분히 쓸 수 있는데 굳이 옮긴 이유는 두 가지입니다. 대시보드가 훨씬 편하고, 나중에 쓸 &lt;b&gt;도메인 메일 받기(Email Routing)&lt;/b&gt;가 클라우드플레어 네임서버를 써야만 되기 때문입니다. 옮기는 방법과, 제가 프록시(주황 구름)를 끄고 &lt;b&gt;DNS만&lt;/b&gt;으로 둔 이유를 정리했습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;클라우드플레어에 도메인을 추가하면 &lt;b&gt;네임서버 2개&lt;/b&gt;를 알려 줍니다. 가비아에서 이 두 개로 바꾸면 끝입니다.&lt;/li&gt;
&lt;li&gt;바꾸는 순간 가비아에 있던 DNS 설정은 쓰이지 않습니다. 필요한 레코드는 &lt;b&gt;클라우드플레어 쪽에 다 있는지&lt;/b&gt; 먼저 확인하세요.&lt;/li&gt;
&lt;li&gt;서버에서 Let's Encrypt로 HTTPS를 직접 처리한다면, A 레코드는 &lt;b&gt;DNS만(회색 구름)&lt;/b&gt;으로 두는 게 속 편합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. 클라우드플레어에 도메인 추가하기&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;dash.cloudflare.com에 로그인해서 &lt;b&gt;도메인 추가&lt;/b&gt;를 누릅니다.&lt;/li&gt;
&lt;li&gt;도메인 이름(예: wish9.kr)을 넣고 &lt;b&gt;Free&lt;/b&gt; 요금제를 고릅니다. 개인 사이트는 무료로 충분합니다.&lt;/li&gt;
&lt;li&gt;클라우드플레어가 지금 걸려 있는 DNS 레코드를 자동으로 읽어 옵니다. 빠진 게 없는지 한 번 훑어보세요.&lt;/li&gt;
&lt;li&gt;마지막 화면에 &lt;code&gt;○○○.ns.cloudflare.com&lt;/code&gt; 모양의 네임서버 2개가 나옵니다. 이 이름은 계정마다 다릅니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. 가비아에서 네임서버 바꾸기&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;가비아 도메인 관리 화면에서 &lt;b&gt;전체 도메인&lt;/b&gt; &amp;rarr; 도메인 이름을 눌러 상세로 들어갑니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;네임서버/DNS호스트/DNSSEC&lt;/b&gt; 탭에서 네임서버 &lt;b&gt;설정&lt;/b&gt;을 누릅니다.&lt;/li&gt;
&lt;li&gt;1차, 2차에 클라우드플레어가 알려 준 네임서버를 넣고 저장합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2538&quot; data-origin-height=&quot;1231&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ch5BiA/dJMcadqiNvj/7S2h26DegPNBwoM9INXUP1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ch5BiA/dJMcadqiNvj/7S2h26DegPNBwoM9INXUP1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ch5BiA/dJMcadqiNvj/7S2h26DegPNBwoM9INXUP1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fch5BiA%2FdJMcadqiNvj%2F7S2h26DegPNBwoM9INXUP1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2538&quot; height=&quot;1231&quot; data-origin-width=&quot;2538&quot; data-origin-height=&quot;1231&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;바꾼 뒤에는 아래쪽 &lt;b&gt;DNS 호스트&lt;/b&gt;가 &quot;데이터가 존재하지 않습니다&quot;로 나와도 괜찮습니다. 이제 이 도메인의 DNS는 클라우드플레어가 답하니까, 가비아 쪽 설정은 더 이상 쓰이지 않습니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;가비아에서 DNSSEC을 켜 두었다면 네임서버를 바꾸기 전에 먼저 꺼 주세요. 켜진 채로 옮기면 도메인 조회가 실패할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;반영은 보통 몇 분에서 몇 시간이면 되고, 길면 하루쯤 걸립니다. 클라우드플레어 도메인 개요 화면이 &lt;b&gt;활성&lt;/b&gt;으로 바뀌면 메일로도 알려 줍니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3. A 레코드 넣기: DNS만으로&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;도메인이 내 서버를 가리키도록 A 레코드를 넣습니다. 저는 &lt;code&gt;wish9.kr&lt;/code&gt;과 &lt;code&gt;www.wish9.kr&lt;/code&gt; 두 개를 서버 IP로 걸었습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;유형&lt;/th&gt;
&lt;th&gt;이름&lt;/th&gt;
&lt;th&gt;콘텐츠&lt;/th&gt;
&lt;th&gt;프록시 상태&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;A&lt;/td&gt;
&lt;td&gt;@&lt;/td&gt;
&lt;td&gt;서버 공용 IP&lt;/td&gt;
&lt;td&gt;DNS만&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;A&lt;/td&gt;
&lt;td&gt;www&lt;/td&gt;
&lt;td&gt;서버 공용 IP&lt;/td&gt;
&lt;td&gt;DNS만&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2559&quot; data-origin-height=&quot;1239&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/lT6i4/dJMcag1vUJI/XWyBiAziGuKqgD3qsPxsr1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/lT6i4/dJMcag1vUJI/XWyBiAziGuKqgD3qsPxsr1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/lT6i4/dJMcag1vUJI/XWyBiAziGuKqgD3qsPxsr1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FlT6i4%2FdJMcag1vUJI%2FXWyBiAziGuKqgD3qsPxsr1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;2559&quot; height=&quot;1239&quot; data-origin-width=&quot;2559&quot; data-origin-height=&quot;1239&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;레코드를 추가할 때 구름 아이콘을 눌러 회색(&lt;b&gt;DNS만&lt;/b&gt;)으로 바꾸면 됩니다. 표 아래쪽의 MX, TXT 레코드는 다음 글에서 다룰 Email Routing이 자동으로 넣은 것입니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;왜 주황 구름(프록시)을 안 켰나&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대시보드 위에 &quot;대부분의 보안 및 성능 기능에 프록싱 필요&quot;라는 노란 안내가 계속 뜹니다. 프록시를 켜면 방문자가 클라우드플레어를 거쳐 들어와서 서버 IP가 가려지고, DDoS 방어와 캐시도 받을 수 있습니다. 장점은 분명합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;다만 위시나인 서버는 Nginx와 Let's Encrypt(certbot)로 HTTPS를 &lt;b&gt;서버에서 직접&lt;/b&gt; 처리하고, certbot이 HTTP로 들어오면 HTTPS로 돌려보내는 설정까지 넣어 둡니다. 이 상태에서 프록시를 켜고 클라우드플레어 SSL/TLS 모드가 &lt;b&gt;유연(Flexible)&lt;/b&gt;이면, 클라우드플레어는 서버에 HTTP로 접속하고 서버는 다시 HTTPS로 보내라고 답해서 &lt;b&gt;무한 리디렉션&lt;/b&gt;에 빠지기 쉽습니다. 프록시를 쓰려면 SSL/TLS 모드를 &lt;b&gt;전체(엄격)&lt;/b&gt;로 맞춰야 합니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저는 인증서를 서버가 직접 관리하는 구조가 단순해서 DNS만으로 두었습니다. 서버를 옮길 때도 A 레코드의 IP만 새 서버로 바꾸고, 그다음 새 서버에서 certbot을 돌리면 인증서가 바로 나옵니다.&lt;/p&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;처음에는 DNS만으로 시작하고, 사이트가 안정된 뒤 SSL/TLS 모드를 전체(엄격)로 바꾸고 프록시를 켜 보는 순서를 추천합니다. 반대로 하면 원인 찾기가 훨씬 어렵습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;참고: 처음부터 클라우드플레어에서 사면 이 과정이 없습니다&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;머니계산기 도메인(koreapaycalc.com)은 아예 클라우드플레어 &lt;b&gt;Registrar&lt;/b&gt;(도메인 &amp;rarr; 등록)에서 1년 약 10달러에 샀습니다. 클라우드플레어에서 산 도메인은 네임서버가 처음부터 클라우드플레어라서, 이 글의 1~2단계가 통째로 필요 없습니다. 도메인을 고르면서 배운 것도 적어 두겠습니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;.kr은 클라우드플레어에서 팔지 않습니다.&lt;/b&gt; 가비아 같은 국내 업체에서 사고 네임서버만 옮겨야 합니다. 위시나인이 이 경우입니다.&lt;/li&gt;
&lt;li&gt;짧고 좋은 이름은 대부분 Premium 가격이 붙습니다. 조금 길게 만들면 일반가로 살 수 있습니다.&lt;/li&gt;
&lt;li&gt;.site, .online 같은 확장자는 첫해만 싸고 2년 차부터 25~42달러로 오릅니다. &lt;b&gt;갱신가&lt;/b&gt;를 꼭 보세요.&lt;/li&gt;
&lt;li&gt;.bid, .loan, .win 같은 확장자는 스팸 사이트가 많이 써서 피했습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;클라우드플레어 시리즈&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/11&quot;&gt;가비아 도메인 클라우드플레어 네임서버로 옮기기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/12&quot;&gt;Email Routing으로 도메인 메일 무료로 받기&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/13&quot;&gt;Cloudflare Pages로 Next.js 사이트 무료 배포&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/14&quot;&gt;Workers Cron + D1으로 10분마다 데이터 수집&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://bboxnote.tistory.com/15&quot;&gt;요금 폭탄 막기: 직접 만든 D1 쓰기 한도&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/클라우드플레어</category>
      <category>Cloudflare DNS only</category>
      <category>Let's Encrypt 클라우드플레어</category>
      <category>가비아 네임서버 변경</category>
      <category>무한 리디렉션</category>
      <category>클라우드플레어 DNS</category>
      <category>클라우드플레어 네임서버</category>
      <category>클라우드플레어 프록시</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/11</guid>
      <comments>https://bboxnote.tistory.com/entry/%EA%B0%80%EB%B9%84%EC%95%84-%EB%8F%84%EB%A9%94%EC%9D%B8-%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C%ED%94%8C%EB%A0%88%EC%96%B4-%EB%84%A4%EC%9E%84%EC%84%9C%EB%B2%84%EB%A1%9C-%EC%98%AE%EA%B8%B0%EA%B8%B0-DNS%EB%A7%8C%ED%9A%8C%EC%83%89-%EA%B5%AC%EB%A6%84%EC%9C%BC%EB%A1%9C-%EB%91%94-%EC%9D%B4%EC%9C%A0#entry11comment</comments>
      <pubDate>Wed, 14 Oct 2026 13:31:41 +0900</pubDate>
    </item>
    <item>
      <title>개발자 티스토리에 이것저것 넣기: 콘솔 이스터에그, 눈 따라오는 캐릭터, 검색 결과 없음 화면</title>
      <link>https://bboxnote.tistory.com/entry/%EA%B0%9C%EB%B0%9C%EC%9E%90-%ED%8B%B0%EC%8A%A4%ED%86%A0%EB%A6%AC%EC%97%90-%EC%9D%B4%EA%B2%83%EC%A0%80%EA%B2%83-%EB%84%A3%EA%B8%B0-%EC%BD%98%EC%86%94-%EC%9D%B4%EC%8A%A4%ED%84%B0%EC%97%90%EA%B7%B8-%EB%88%88-%EB%94%B0%EB%9D%BC%EC%98%A4%EB%8A%94-%EC%BA%90%EB%A6%AD%ED%84%B0-%EA%B2%80%EC%83%89-%EA%B2%B0%EA%B3%BC-%EC%97%86%EC%9D%8C-%ED%99%94%EB%A9%B4</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dN9HxI/dJMcafBF7B2/Nw0LbIUtGg0ailfliaTU9k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dN9HxI/dJMcafBF7B2/Nw0LbIUtGg0ailfliaTU9k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dN9HxI/dJMcafBF7B2/Nw0LbIUtGg0ailfliaTU9k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdN9HxI%2FdJMcafBF7B2%2FNw0LbIUtGg0ailfliaTU9k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;개발자가 운영하는 블로그를 구경하다 보면 개발자 도구를 열었을 때 인사가 나오거나, 캐릭터가 마우스를 쳐다보는 식의 작은 장난을 자주 보게 됩니다. 티스토리도 스킨 HTML을 직접 고칠 수 있어서 이런 걸 넣을 수 있습니다. 제 블로그에 실제로 넣은 것 중 세 가지를, 누구나 복사해서 쓸 수 있는 예시 코드로 정리했습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;콘솔 이스터에그:&lt;/b&gt; F12로 개발자 도구를 열면 그림과 인사말이 나옵니다. &lt;code&gt;console.log&lt;/code&gt; 두 줄이면 됩니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;눈 따라오는 캐릭터:&lt;/b&gt; SVG 그림의 눈동자가 마우스 쪽으로 움직입니다. 짧은 스크립트 하나면 됩니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;검색 결과 없음 화면:&lt;/b&gt; 티스토리 404 화면은 바꿀 수 없지만, 검색 결과가 0건인 화면은 꾸밀 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;코드는 어디에 넣습니까?&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세 가지 모두 같은 곳에 넣습니다. &lt;b&gt;블로그 관리 &amp;rarr; 꾸미기 &amp;rarr; 스킨 편집 &amp;rarr; html 편집&lt;/b&gt;으로 들어가서, HTML 탭에서 &lt;code&gt;&amp;lt;/head&amp;gt;&lt;/code&gt;를 찾아 그 바로 위에 붙여 넣고 오른쪽 위 &lt;b&gt;적용&lt;/b&gt;을 누르면 됩니다.&lt;/p&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;고치기 전에 HTML 탭 내용을 전부 복사해서 메모장에 저장해 두세요. 뭔가 깨져도 그대로 붙여 넣으면 원래대로 돌아옵니다. 적용을 누를 때 &quot;스킨 편집으로 인한 오류&quot; 안내가 나오는데, 확인을 누르면 됩니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. 콘솔 이스터에그&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;블로그에서 F12를 눌러 콘솔 탭을 열면 아래처럼 그림과 인사말이 나옵니다. 방문자 대부분은 볼 일이 없지만, 개발자가 열어 보면 피식 웃게 되는 장치입니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;980&quot; data-origin-height=&quot;409&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bYSsec/dJMcafhpdrk/0jdPqDYse02bCj2sg6t4b1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bYSsec/dJMcafhpdrk/0jdPqDYse02bCj2sg6t4b1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bYSsec/dJMcafhpdrk/0jdPqDYse02bCj2sg6t4b1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbYSsec%2FdJMcafhpdrk%2F0jdPqDYse02bCj2sg6t4b1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;980&quot; height=&quot;409&quot; data-origin-width=&quot;980&quot; data-origin-height=&quot;409&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre class=&quot;xml&quot; data-ke-language=&quot;html&quot;&gt;&lt;code&gt;&amp;lt;script&amp;gt;
console.log(&quot;%c\n   .-----------.\n   |  (o) (o)  |   내 블로그 이름\n   |   '---'   |\n   '-----------'\n&quot;,
  &quot;color:#e8830c;font-family:monospace;font-size:13px&quot;);
console.log(&quot;%c개발자시군요! 구경 오신 김에 댓글도 남겨 주세요.&quot;,
  &quot;color:#fff;background:#2b3a7a;padding:6px 10px;border-radius:6px&quot;);
&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;code&gt;%c&lt;/code&gt;를 앞에 붙이면 두 번째 인자로 넘긴 CSS가 그 글자에 적용됩니다. 그래서 색, 배경, 둥근 모서리까지 넣을 수 있습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;그림이 어긋날 때&lt;/h3&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;역슬래시가 ₩로 보입니다&lt;/b&gt;&lt;br /&gt;한글 글꼴에서는 &lt;code&gt;\&lt;/code&gt;가 원화 기호로 그려집니다. 그림에는 역슬래시 대신 &lt;code&gt;' - | . ( )&lt;/code&gt; 같은 문자만 쓰는 게 안전합니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;박스 테두리가 삐뚤어집니다&lt;/b&gt;&lt;br /&gt;&lt;code&gt;┌ ─ ┐&lt;/code&gt; 같은 선 문자나 &lt;code&gt;&amp;bull;&lt;/code&gt;는 글꼴마다 폭이 달라서 줄이 안 맞습니다. 저도 처음엔 선 문자로 그렸다가 어긋나서, 위처럼 영문 기호로만 다시 그렸습니다. 한글은 그림 오른쪽 바깥에만 두면 줄이 흐트러지지 않습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. 마우스를 따라오는 캐릭터 눈&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;제 블로그 사이드바의 프로필 캐릭터는 눈동자가 마우스 쪽을 쳐다보고, 가끔 눈을 깜빡입니다. 마우스를 어디에 두느냐에 따라 이렇게 바뀝니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1421&quot; data-origin-height=&quot;596&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bSwP99/dJMcahMWnlz/oMMYsUXpJwBzMRisLmo521/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bSwP99/dJMcahMWnlz/oMMYsUXpJwBzMRisLmo521/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bSwP99/dJMcahMWnlz/oMMYsUXpJwBzMRisLmo521/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbSwP99%2FdJMcahMWnlz%2FoMMYsUXpJwBzMRisLmo521%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1421&quot; height=&quot;596&quot; data-origin-width=&quot;1421&quot; data-origin-height=&quot;596&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;원리는 간단합니다. 마우스가 움직일 때마다 눈 가운데에서 마우스까지의 방향을 구하고, 그 방향으로 눈동자를 몇 칸만 옮기는 것입니다. 아래는 노란 동그라미 얼굴로 만든 예시입니다. 먼저 그림을 넣고 싶은 자리(예: 스킨 HTML의 사이드바 부분)에 이 코드를 넣습니다.&lt;/p&gt;
&lt;pre class=&quot;arduino&quot; data-ke-language=&quot;html&quot;&gt;&lt;code&gt;&amp;lt;div id=&quot;eyes-face&quot;&amp;gt;
  &amp;lt;svg viewBox=&quot;0 0 120 120&quot; width=&quot;120&quot; height=&quot;120&quot;&amp;gt;
    &amp;lt;circle cx=&quot;60&quot; cy=&quot;60&quot; r=&quot;56&quot; fill=&quot;#ffd166&quot; stroke=&quot;#222&quot; stroke-width=&quot;3&quot;/&amp;gt;
    &amp;lt;g class=&quot;lid&quot;&amp;gt;
      &amp;lt;circle cx=&quot;42&quot; cy=&quot;52&quot; r=&quot;12&quot; fill=&quot;#fff&quot; stroke=&quot;#222&quot; stroke-width=&quot;2.5&quot;/&amp;gt;
      &amp;lt;circle class=&quot;pupil&quot; data-cx=&quot;42&quot; data-cy=&quot;52&quot; cx=&quot;42&quot; cy=&quot;52&quot; r=&quot;5&quot; fill=&quot;#222&quot;/&amp;gt;
    &amp;lt;/g&amp;gt;
    &amp;lt;g class=&quot;lid&quot;&amp;gt;
      &amp;lt;circle cx=&quot;78&quot; cy=&quot;52&quot; r=&quot;12&quot; fill=&quot;#fff&quot; stroke=&quot;#222&quot; stroke-width=&quot;2.5&quot;/&amp;gt;
      &amp;lt;circle class=&quot;pupil&quot; data-cx=&quot;78&quot; data-cy=&quot;52&quot; cx=&quot;78&quot; cy=&quot;52&quot; r=&quot;5&quot; fill=&quot;#222&quot;/&amp;gt;
    &amp;lt;/g&amp;gt;
    &amp;lt;path d=&quot;M42 82 Q60 96 78 82&quot; stroke=&quot;#222&quot; stroke-width=&quot;3&quot; fill=&quot;none&quot; stroke-linecap=&quot;round&quot;/&amp;gt;
  &amp;lt;/svg&amp;gt;
&amp;lt;/div&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;그리고 아래 코드를 &lt;code&gt;&amp;lt;/head&amp;gt;&lt;/code&gt; 바로 위에 넣으면 눈이 움직이기 시작합니다.&lt;/p&gt;
&lt;pre class=&quot;xml&quot; data-ke-language=&quot;html&quot;&gt;&lt;code&gt;&amp;lt;style&amp;gt;
/* 가끔 눈 깜빡이기 */
#eyes-face .lid{transform-box:fill-box;transform-origin:center;animation:blink 4.5s infinite}
@keyframes blink{0%,93%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}
&amp;lt;/style&amp;gt;
&amp;lt;script&amp;gt;
document.addEventListener('mousemove', function (e) {
  var svg = document.querySelector('#eyes-face svg');
  if (!svg) return;
  var r = svg.getBoundingClientRect(), k = r.width / 120; // 화면 크기 &amp;divide; viewBox 크기
  svg.querySelectorAll('.pupil').forEach(function (p) {
    var cx = +p.dataset.cx, cy = +p.dataset.cy;          // 눈 가운데
    var dx = e.clientX - (r.left + cx * k);
    var dy = e.clientY - (r.top + cy * k);
    var d = Math.hypot(dx, dy) || 1;
    var m = Math.min(6, d / 40);                          // 눈동자가 움직일 최대 거리
    p.setAttribute('cx', cx + dx / d * m);
    p.setAttribute('cy', cy + dy / d * m);
  });
}, { passive: true });
&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;자기 캐릭터에 쓰고 싶으면 얼굴 부분만 자기 그림으로 바꾸고, 눈동자에 &lt;code&gt;class=&quot;pupil&quot;&lt;/code&gt;과 원래 위치(&lt;code&gt;data-cx&lt;/code&gt;, &lt;code&gt;data-cy&lt;/code&gt;)만 맞춰 주면 됩니다. 숫자 &lt;code&gt;6&lt;/code&gt;을 키우면 눈동자가 더 크게 움직입니다.&lt;/p&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;휴대폰에는 마우스가 없어서 눈이 가운데에 멈춰 있습니다. 깜빡이는 애니메이션은 휴대폰에서도 보입니다. 저는 오디세이 스킨의 프로필 사진(&lt;code&gt;.box-profile img&lt;/code&gt;)을 숨기고 그 자리에 SVG를 끼워 넣어서, 프로필 자체가 움직이게 만들었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3. 검색 결과 없음 화면 꾸미기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;처음에는 404 페이지(없는 주소로 들어왔을 때 화면)를 꾸미려고 했습니다. 그런데 티스토리는 없는 주소로 들어오면 블로그 스킨이 아닌 &lt;b&gt;티스토리 공통 오류 화면&lt;/b&gt;을 보여 줍니다. 스킨이 아예 붙지 않아서 고칠 방법이 없습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;대신 검색, 태그, 카테고리 결과가 0건일 때 나오는 화면은 스킨 안에 있어서 꾸밀 수 있습니다. 제 블로그에서는 이렇게 바꿨습니다. 터미널에서 grep을 돌렸는데 결과가 0건인 것처럼 보이게 했습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1145&quot; data-origin-height=&quot;621&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/OpHVD/dJMcahMWnlD/KOlNI45pOsm0xnu3ttzVs1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/OpHVD/dJMcahMWnlD/KOlNI45pOsm0xnu3ttzVs1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/OpHVD/dJMcahMWnlD/KOlNI45pOsm0xnu3ttzVs1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FOpHVD%2FdJMcahMWnlD%2FKOlNI45pOsm0xnu3ttzVs1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1145&quot; height=&quot;621&quot; data-origin-width=&quot;1145&quot; data-origin-height=&quot;621&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;pre class=&quot;xml&quot; data-ke-language=&quot;html&quot;&gt;&lt;code&gt;&amp;lt;style&amp;gt;
.my-empty{max-width:520px;margin:40px auto;text-align:center}
.my-empty pre{margin:0 0 20px;padding:12px 16px;border-radius:10px;background:#1d2130;color:#e4e7ef;text-align:left;white-space:pre}
.my-empty a{display:inline-block;margin-top:8px;padding:7px 16px;border:1px solid #ddd;border-radius:999px}
&amp;lt;/style&amp;gt;
&amp;lt;script&amp;gt;
document.addEventListener('DOMContentLoaded', function () {
  // 오디세이 스킨의 '결과 없음' 안내 중 지금 보이는 것만
  var boxes = [].filter.call(document.querySelectorAll('.box-no-search'), function (b) {
    return b.offsetParent !== null;
  });
  if (!boxes.length) return;
  var q = (document.querySelector('.archives') || {}).textContent || '';
  q = q.trim().replace(/[&amp;lt;&amp;gt;&amp;amp;&quot;]/g, '');
  var box = document.createElement('div');
  box.className = 'my-empty';
  box.innerHTML = '&amp;lt;pre&amp;gt;$ grep -r &quot;' + q + '&quot; ~/blog\n0 results&amp;lt;/pre&amp;gt;' +
    '&amp;lt;h3&amp;gt;찾는 글이 아직 없어요&amp;lt;/h3&amp;gt;' +
    '&amp;lt;p&amp;gt;다른 단어로 검색하거나 홈에서 둘러보세요.&amp;lt;/p&amp;gt;' +
    '&amp;lt;a href=&quot;/&quot;&amp;gt;홈으로&amp;lt;/a&amp;gt;';
  boxes[0].parentNode.insertBefore(box, boxes[0]);
  boxes.forEach(function (b) { b.style.display = 'none'; });
});
&amp;lt;/script&amp;gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오디세이 스킨은 결과가 없을 때 &lt;code&gt;.box-no-search&lt;/code&gt;라는 안내 상자를 보여 주고, 검색어는 &lt;code&gt;.archives&lt;/code&gt;에 들어 있습니다. 이 코드는 그 상자를 찾아서 숨기고, 그 자리에 새 상자를 넣습니다. 다른 스킨을 쓴다면 검색 결과가 없는 화면에서 F12로 안내 문구를 감싼 요소의 class 이름을 확인해서 바꿔 주면 됩니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;넣을 때 지킨 것&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;가볍게:&lt;/b&gt; 외부 라이브러리 없이 짧은 스크립트만 썼습니다. 그래서 페이지 속도에는 거의 영향이 없습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;글 읽기를 방해하지 않게:&lt;/b&gt; 움직이는 건 사이드바의 작은 캐릭터뿐이고, 본문에는 손대지 않았습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;class 이름 겹치지 않게:&lt;/b&gt; 스킨에 원래 있던 class와 이름이 겹치면 엉뚱한 곳 모양이 바뀝니다. 예시처럼 &lt;code&gt;my-&lt;/code&gt;, &lt;code&gt;eyes-&lt;/code&gt; 같은 접두어를 붙이는 게 좋습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;세 가지 모두 몰라도 블로그를 쓰는 데는 아무 문제 없는 기능입니다. 그래도 내 블로그에 나만 아는 장치가 하나쯤 있으면 꾸미는 재미가 생깁니다. 이 블로그에서 F12를 눌러 보시면 콘솔 인사를 바로 확인할 수 있습니다.&lt;/p&gt;</description>
      <category>개발</category>
      <category>console.log</category>
      <category>SVG</category>
      <category>개발 블로그</category>
      <category>눈 따라오는 캐릭터</category>
      <category>콘솔 이스터에그</category>
      <category>티스토리 검색 결과 없음</category>
      <category>티스토리 꾸미기</category>
      <category>티스토리 스킨 편집</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/10</guid>
      <comments>https://bboxnote.tistory.com/entry/%EA%B0%9C%EB%B0%9C%EC%9E%90-%ED%8B%B0%EC%8A%A4%ED%86%A0%EB%A6%AC%EC%97%90-%EC%9D%B4%EA%B2%83%EC%A0%80%EA%B2%83-%EB%84%A3%EA%B8%B0-%EC%BD%98%EC%86%94-%EC%9D%B4%EC%8A%A4%ED%84%B0%EC%97%90%EA%B7%B8-%EB%88%88-%EB%94%B0%EB%9D%BC%EC%98%A4%EB%8A%94-%EC%BA%90%EB%A6%AD%ED%84%B0-%EA%B2%80%EC%83%89-%EA%B2%B0%EA%B3%BC-%EC%97%86%EC%9D%8C-%ED%99%94%EB%A9%B4#entry10comment</comments>
      <pubDate>Wed, 14 Oct 2026 00:16:56 +0900</pubDate>
    </item>
    <item>
      <title>오라클 클라우드 포트 열었는데 접속이 안 될 때: 보안 목록과 iptables 둘 다 열기</title>
      <link>https://bboxnote.tistory.com/entry/%EC%98%A4%EB%9D%BC%ED%81%B4-%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%ED%8F%AC%ED%8A%B8-%EC%97%B4%EC%97%88%EB%8A%94%EB%8D%B0-%EC%A0%91%EC%86%8D%EC%9D%B4-%EC%95%88-%EB%90%A0-%EB%95%8C-%EB%B3%B4%EC%95%88-%EB%AA%A9%EB%A1%9D%EA%B3%BC-iptables-%EB%91%98-%EB%8B%A4-%EC%97%B4%EA%B8%B0</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/r8gp2/dJMcagAyeOL/OntzXbp0KmCmKhrYh1cEQk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/r8gp2/dJMcagAyeOL/OntzXbp0KmCmKhrYh1cEQk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/r8gp2/dJMcagAyeOL/OntzXbp0KmCmKhrYh1cEQk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fr8gp2%2FdJMcagAyeOL%2FOntzXbp0KmCmKhrYh1cEQk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오라클 클라우드 서버에 웹 서버를 띄웠는데 브라우저에서 접속이 안 된다면, &lt;b&gt;두 군데를 다 열었는지&lt;/b&gt; 확인해 보세요. 클라우드 쪽 보안 목록(VCN)과 서버 안의 방화벽(iptables)입니다. 특히 오라클의 우분투 이미지는 iptables에 모든 접속을 거절하는 규칙이 미리 들어 있어서, 보안 목록만 열면 여전히 막힙니다. 저도 위시나인 서버를 세팅할 때 여기서 한참 헤맸습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;막혀 있는 곳은 &lt;b&gt;VCN 보안 목록&lt;/b&gt;과 &lt;b&gt;서버의 iptables&lt;/b&gt; 두 군데입니다.&lt;/li&gt;
&lt;li&gt;우분투 이미지는 INPUT 체인 끝에 REJECT 규칙이 있어서, 허용 규칙을 &lt;b&gt;그보다 앞에&lt;/b&gt; 넣어야 합니다.&lt;/li&gt;
&lt;li&gt;넣은 규칙은 &lt;code&gt;netfilter-persistent save&lt;/code&gt;로 저장해야 재부팅 뒤에도 남습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;증상&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;서버 안에서 &lt;code&gt;curl localhost&lt;/code&gt;는 잘 되는데, 내 컴퓨터에서 &lt;code&gt;http://공용IP&lt;/code&gt;로 들어가면 한참 기다리다가 연결할 수 없다고 나옵니다. 이러면 앱 문제가 아니라 중간에서 막힌 것입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1단계: VCN 보안 목록에 수신 규칙 추가&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;네트워킹 &amp;rarr; 가상 클라우드 네트워크에서 서버가 쓰는 VCN을 엽니다.&lt;/li&gt;
&lt;li&gt;서브넷을 누르고, 연결된 &lt;b&gt;보안 목록&lt;/b&gt;(보통 Default Security List)을 엽니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;수신 규칙 추가&lt;/b&gt;를 눌러 아래처럼 넣습니다. HTTPS도 쓴다면 443도 같은 방법으로 추가합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;항목&lt;/th&gt;
&lt;th&gt;값&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;소스 유형&lt;/td&gt;
&lt;td&gt;CIDR&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;소스 CIDR&lt;/td&gt;
&lt;td&gt;0.0.0.0/0&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;IP 프로토콜&lt;/td&gt;
&lt;td&gt;TCP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;대상 포트 범위&lt;/td&gt;
&lt;td&gt;80 (HTTPS는 443)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;여기까지 하고도 접속이 안 되면 2단계가 원인입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2단계: 서버의 iptables 열기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;먼저 지금 규칙을 번호와 함께 봅니다.&lt;/p&gt;
&lt;pre class=&quot;arduino&quot;&gt;&lt;code&gt;sudo iptables -L INPUT -n --line-numbers&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;목록 끝쪽에 &lt;code&gt;REJECT ... reject-with icmp-host-prohibited&lt;/code&gt; 같은 줄이 보일 것입니다. iptables는 위에서부터 차례로 검사해서, 이 줄보다 아래에 허용 규칙을 넣으면 소용이 없습니다. 그래서 &lt;b&gt;REJECT 줄보다 앞 번호&lt;/b&gt;에 끼워 넣어야 합니다. 제 서버에서는 5번 자리에 넣으면 REJECT보다 앞이었습니다.&lt;/p&gt;
&lt;pre class=&quot;angelscript&quot;&gt;&lt;code&gt;sudo iptables -I INPUT 5 -p tcp --dport 80 -m conntrack --ctstate NEW -j ACCEPT
sudo iptables -I INPUT 5 -p tcp --dport 443 -m conntrack --ctstate NEW -j ACCEPT&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;숫자 5는 서버마다 다를 수 있으니, 위에서 확인한 REJECT 줄 번호보다 작은 번호를 쓰세요. 넣은 뒤 다시 목록을 보면 ACCEPT 줄이 REJECT 위에 있어야 합니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;재부팅해도 남도록 저장하기&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;iptables 규칙은 그대로 두면 재부팅할 때 사라집니다. 아래처럼 저장해 두세요.&lt;/p&gt;
&lt;pre class=&quot;gml&quot;&gt;&lt;code&gt;sudo apt-get install -y iptables-persistent
sudo netfilter-persistent save&lt;/code&gt;&lt;/pre&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;확인하기&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;서버에서 앱이 80번 포트를 듣고 있는지: &lt;code&gt;sudo ss -tlnp | grep ':80'&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;내 컴퓨터에서: &lt;code&gt;curl -I http://공용IP&lt;/code&gt;로 응답 헤더가 오면 성공입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;정리하면 클라우드 방화벽(보안 목록)과 서버 방화벽(iptables)이 각각 따로 있습니다. 오라클 우분투 이미지에서는 둘 다 열어야 바깥에서 들어올 수 있습니다.&lt;/p&gt;</description>
      <category>개발/클라우드</category>
      <category>OCI 보안 목록</category>
      <category>오라클 클라우드 80 포트</category>
      <category>오라클 클라우드 iptables</category>
      <category>오라클 클라우드 접속 안됨</category>
      <category>오라클 클라우드 포트 열기</category>
      <category>우분투 방화벽</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/9</guid>
      <comments>https://bboxnote.tistory.com/entry/%EC%98%A4%EB%9D%BC%ED%81%B4-%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%ED%8F%AC%ED%8A%B8-%EC%97%B4%EC%97%88%EB%8A%94%EB%8D%B0-%EC%A0%91%EC%86%8D%EC%9D%B4-%EC%95%88-%EB%90%A0-%EB%95%8C-%EB%B3%B4%EC%95%88-%EB%AA%A9%EB%A1%9D%EA%B3%BC-iptables-%EB%91%98-%EB%8B%A4-%EC%97%B4%EA%B8%B0#entry9comment</comments>
      <pubDate>Tue, 13 Oct 2026 17:00:05 +0900</pubDate>
    </item>
    <item>
      <title>오라클 클라우드 무료 서버 'Out of host capacity' 해결: 자동 재시도 스크립트</title>
      <link>https://bboxnote.tistory.com/entry/%EC%98%A4%EB%9D%BC%ED%81%B4-%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%EB%AC%B4%EB%A3%8C-%EC%84%9C%EB%B2%84-Out-of-host-capacity-%ED%95%B4%EA%B2%B0-%EC%9E%90%EB%8F%99-%EC%9E%AC%EC%8B%9C%EB%8F%84-%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/CLYYt/dJMcahzukv5/VZ5aggA2AsJAsTvbtxNly1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/CLYYt/dJMcahzukv5/VZ5aggA2AsJAsTvbtxNly1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/CLYYt/dJMcahzukv5/VZ5aggA2AsJAsTvbtxNly1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCLYYt%2FdJMcahzukv5%2FVZ5aggA2AsJAsTvbtxNly1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;오라클 클라우드 무료 서버(Ampere A1)를 만들다 보면 &lt;b&gt;Out of host capacity&lt;/b&gt; 오류가 계속 납니다. 계정 문제가 아니라 그 리전에 남은 무료 자리가 없다는 뜻이라, 자리가 날 때까지 다시 시도하는 수밖에 없습니다. 저는 위시나인 서버를 도쿄 리전에 만들 때 이 오류를 계속 만나서, OCI CLI로 자동 재시도 스크립트를 돌렸습니다. 그런데 수십 시간을 돌려도 안 됐고, 결국 &lt;b&gt;종량제(Pay As You Go)로 업그레이드하고 나서야 바로&lt;/b&gt; 만들어졌습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;Out of host capacity는 &lt;b&gt;리전에 무료 A1 자리가 없다&lt;/b&gt;는 뜻입니다.&lt;/li&gt;
&lt;li&gt;콘솔에서 몇 번 눌러 보다 안 되면 OCI CLI로 &lt;b&gt;자동 재시도&lt;/b&gt;하는 게 가장 확실합니다.&lt;/li&gt;
&lt;li&gt;재시도 간격이 너무 짧으면 429(TooManyRequests)가 나니 간격을 늘려 가며 시도합니다.&lt;/li&gt;
&lt;li&gt;수십 시간을 기다려도 안 되면 &lt;b&gt;종량제로 업그레이드&lt;/b&gt;해 보세요. 저는 업그레이드하자마자 성공했습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;왜 이 오류가 납니까?&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;A1 무료 인스턴스는 인기가 많아서 리전마다 남은 자원이 자주 바닥납니다. 이때 인스턴스 만들기를 누르면 아래와 같은 메시지가 나옵니다.&lt;/p&gt;
&lt;pre class=&quot;ada&quot;&gt;&lt;code&gt;Out of host capacity.&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;잠시 뒤 다른 사람이 자원을 반납하면 자리가 생기기 때문에, 같은 설정으로 계속 시도하다 보면 어느 순간 만들어집니다. 사양을 작게(예: 1 OCPU, 메모리 6GB) 잡으면 자리 나기가 조금 더 쉽습니다. 저도 1 OCPU, 6GB로 만들었습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;방법 1: 콘솔에서 다시 시도하기&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;컴퓨트 &amp;rarr; 인스턴스 &amp;rarr; 인스턴스 생성에서 이미지와 모양(VM.Standard.A1.Flex)을 고르고 만들기를 누릅니다.&lt;/li&gt;
&lt;li&gt;오류가 나면 같은 화면에서 다시 누르면 됩니다. 가용성 도메인이 여러 개인 리전이면 다른 곳도 골라 보세요.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;몇 번으로 끝나면 다행이지만, 하루 종일 안 될 때도 많습니다. 그럴 땐 방법 2를 씁니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;방법 2: OCI CLI로 자동 재시도하기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;OCI CLI를 설치하고 &lt;code&gt;oci setup config&lt;/code&gt;로 인증을 마치면, 터미널에서 인스턴스를 만들 수 있습니다. 오라클 콘솔의 Cloud Shell을 쓰면 인증이 이미 되어 있어서 바로 실행할 수 있습니다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;아래는 제가 쓴 스크립트를 줄인 것입니다. 성공할 때까지 반복하고, 오류 종류에 따라 기다리는 시간을 바꿉니다.&lt;/p&gt;
&lt;pre class=&quot;routeros&quot;&gt;&lt;code&gt;#!/bin/bash
# 성공할 때까지 A1 인스턴스 생성을 다시 시도
C=&quot;컴파트먼트(테넌시) OCID&quot;
AD=&quot;가용성 도메인 이름&quot;
SUBNET=&quot;서브넷 OCID&quot;
IMAGE=&quot;이미지 OCID (Ubuntu aarch64)&quot;
KEY=&quot;$HOME/my.pub&quot;

BASE_WAIT=60   # 기본 대기(초)
MAX_WAIT=900   # 429일 때 최대 대기
WAIT=$BASE_WAIT

# 공개키 파일의 빈 줄 제거 (InvalidParameter 방지)
CLEAN_KEY=$(mktemp)
sed '/^$/d' &quot;$KEY&quot; &amp;gt; &quot;$CLEAN_KEY&quot;

while true; do
  OUT=$(oci compute instance launch \
    --compartment-id &quot;$C&quot; --availability-domain &quot;$AD&quot; \
    --shape VM.Standard.A1.Flex \
    --shape-config '{&quot;ocpus&quot;:1,&quot;memoryInGBs&quot;:6}' \
    --image-id &quot;$IMAGE&quot; --subnet-id &quot;$SUBNET&quot; \
    --assign-public-ip true --display-name my-server \
    --ssh-authorized-keys-file &quot;$CLEAN_KEY&quot; 2&amp;gt;&amp;amp;1)

  if echo &quot;$OUT&quot; | grep -q '&quot;lifecycle-state&quot;'; then
    echo &quot;$(date) 성공!&quot;; break
  fi

  if echo &quot;$OUT&quot; | grep -q &quot;TooManyRequests&quot;; then
    WAIT=$(( WAIT * 2 )); [ $WAIT -gt $MAX_WAIT ] &amp;amp;&amp;amp; WAIT=$MAX_WAIT
  elif echo &quot;$OUT&quot; | grep -qE &quot;Out of host capacity|InternalError&quot;; then
    WAIT=$BASE_WAIT
  else
    echo &quot;$(date) 다른 오류라 멈춰요: $OUT&quot;; break
  fi
  echo &quot;$(date) 실패, ${WAIT}초 뒤 다시 시도&quot;
  sleep $WAIT
done&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;OCID 값들은 콘솔에서 확인할 수 있습니다. 터미널을 닫아도 계속 돌게 하려면 &lt;code&gt;nohup bash retry.sh &amp;amp;&lt;/code&gt;처럼 실행하고, 끄고 싶으면 &lt;code&gt;pkill -f retry.sh&lt;/code&gt;를 쓰면 됩니다. 저는 성공하면 디스코드로 알림이 오게 해 두고 기다렸습니다.&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;제가 겪은 함정 두 가지&lt;/h3&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;InvalidParameter 오류&lt;/b&gt;&lt;br /&gt;SSH 공개키 파일 맨 위에 빈 줄이 있으면 키를 잘못된 값으로 보고 거절합니다. 위 스크립트처럼 &lt;code&gt;sed '/^$/d'&lt;/code&gt;로 빈 줄을 지운 파일을 넘기면 해결됩니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;TooManyRequests (429)&lt;/b&gt;&lt;br /&gt;너무 자주 요청하면 오라클이 잠시 막습니다. 429가 오면 대기 시간을 두 배씩 늘리고(최대 15분), 자리 부족 오류일 때는 다시 기본 간격으로 돌아오게 했습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;방법 3: 그래도 안 되면 종량제로 업그레이드하기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;저는 위 스크립트를 &lt;b&gt;수십 시간 동안 돌려도&lt;/b&gt; 계속 Out of host capacity만 떴습니다. 무료 전용 계정은 A1 자리를 배정받는 순서가 뒤로 밀린다는 후기가 많아서, 계정을 &lt;b&gt;종량제(Pay As You Go)&lt;/b&gt;로 업그레이드했습니다. 그러자 돌고 있던 스크립트가 &lt;b&gt;바로 성공&lt;/b&gt;했습니다.&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;콘솔에서 &lt;b&gt;청구 및 비용 관리 &amp;rarr; 업그레이드 및 관리&lt;/b&gt;로 들어가 종량제로 업그레이드합니다. 카드 등록이 필요하고, 확인용 소액 승인이 잠깐 걸릴 수 있습니다.&lt;/li&gt;
&lt;li&gt;업그레이드가 끝나면 바로 &lt;b&gt;월 1달러 예산&lt;/b&gt;을 만듭니다. 청구 및 비용 관리 &amp;rarr; 예산에서 홈 리전 기준으로 만들고, 넘으면 메일이 오게 알림 규칙을 넣습니다.&lt;/li&gt;
&lt;li&gt;자동 재시도 스크립트는 그대로 두면 됩니다. 계정 상태만 바뀌어서 다음 시도부터 새 상태로 요청합니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;종량제로 바꿔도 &lt;b&gt;Always Free 한도 안에서 쓰는 자원은 계속 무료&lt;/b&gt;입니다. 다만 한도를 넘기거나 무료가 아닌 자원을 만들면 바로 과금됩니다. 오라클 예산은 쓰는 걸 막아 주는 상한이 아니라 &lt;b&gt;넘으면 알려 주는 알림&lt;/b&gt;이라서, 1달러처럼 작게 잡아 두고 메일이 오면 바로 확인하는 게 안전합니다. 한 번 업그레이드하면 보통 무료 전용 계정으로 되돌릴 수 없습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;서버를 만든 뒤 꼭 할 일&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;예산 알림 설정:&lt;/b&gt; 무료 전용 계정이든 종량제든, 실수로 유료 자원을 쓰면 바로 알 수 있게 월 1달러 예산 알림을 걸어 두세요.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;무료 한도 확인:&lt;/b&gt; 콘솔에서 Always Free 표시가 붙은 자원인지 확인하고, 한도를 넘지 않게 사양을 정합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;오래 놀리지 않기:&lt;/b&gt; 사용률이 너무 낮은 무료 인스턴스는 회수 대상이 될 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;포트 열기:&lt;/b&gt; 웹 서버를 띄울 거라면 보안 목록과 서버 방화벽을 둘 다 열어야 합니다. 다음 글에서 정리하겠습니다.&lt;/li&gt;
&lt;/ul&gt;</description>
      <category>개발/클라우드</category>
      <category>Ampere A1</category>
      <category>OCI CLI</category>
      <category>Out of host capacity</category>
      <category>오라클 클라우드</category>
      <category>오라클 클라우드 무료 서버</category>
      <category>오라클 프리티어</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/8</guid>
      <comments>https://bboxnote.tistory.com/entry/%EC%98%A4%EB%9D%BC%ED%81%B4-%ED%81%B4%EB%9D%BC%EC%9A%B0%EB%93%9C-%EB%AC%B4%EB%A3%8C-%EC%84%9C%EB%B2%84-Out-of-host-capacity-%ED%95%B4%EA%B2%B0-%EC%9E%90%EB%8F%99-%EC%9E%AC%EC%8B%9C%EB%8F%84-%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8#entry8comment</comments>
      <pubDate>Tue, 13 Oct 2026 16:53:56 +0900</pubDate>
    </item>
    <item>
      <title>블로그 소개: 알아 두면 쓸모 있는 이것저것 정리 노트</title>
      <link>https://bboxnote.tistory.com/entry/%EB%B8%94%EB%A1%9C%EA%B7%B8-%EC%86%8C%EA%B0%9C-%EC%95%8C%EC%95%84-%EB%91%90%EB%A9%B4-%EC%93%B8%EB%AA%A8-%EC%9E%88%EB%8A%94-%EC%9D%B4%EA%B2%83%EC%A0%80%EA%B2%83-%EC%A0%95%EB%A6%AC-%EB%85%B8%ED%8A%B8</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bOvFYV/dJMcadcDLUR/dAwGymlPnibARhQk0Yfn6k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bOvFYV/dJMcadcDLUR/dAwGymlPnibARhQk0Yfn6k/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bOvFYV/dJMcadcDLUR/dAwGymlPnibARhQk0Yfn6k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbOvFYV%2FdJMcadcDLUR%2FdAwGymlPnibARhQk0Yfn6k%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;안녕하세요. 빡스노트는 궁금했던 것, 알아 둔 것, 써 본 것을 이것저것 정리하는 블로그입니다. 숫자가 들어가는 글은 공식 기준과 계산식을 같이 적고, 예시로 직접 계산해 보여 드립니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;이런 글을 씁니다&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;돈&amp;middot;생활&lt;/b&gt;: 연봉 실수령액, 퇴직금, 주휴수당, 실업급여처럼 월급과 노동에 관한 계산법&lt;/li&gt;
&lt;li&gt;&lt;b&gt;게임&lt;/b&gt;: 스팀 세일 일정, 할인 알림 받는 법, 최저가 확인하는 법&lt;/li&gt;
&lt;li&gt;&lt;b&gt;공지&lt;/b&gt;: 블로그 소식과 아래 도구들의 업데이트&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;주제는 앞으로 조금씩 늘려 갈 예정입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;직접 만든 무료 도구&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;글을 쓰다가 &quot;이건 계산기로 있으면 편하겠다&quot; 싶은 것들을 직접 만들어 두었습니다. 모두 회원가입 없이 쓸 수 있습니다.&lt;/p&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;이름&lt;/th&gt;
&lt;th&gt;하는 일&lt;/th&gt;
&lt;th&gt;주소&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;머니계산기&lt;/td&gt;
&lt;td&gt;2026년 기준 연봉 실수령액, 퇴직금, 주휴수당, 실업급여 계산&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://koreapaycalc.com/&quot;&gt;koreapaycalc.com&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;위시나인&lt;/td&gt;
&lt;td&gt;스팀 게임 역대 최저가 확인, 목표 가격 알림(디스코드&amp;middot;카카오톡)&lt;/td&gt;
&lt;td&gt;&lt;a href=&quot;https://wish9.kr/&quot;&gt;wish9.kr&lt;/a&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;틀린 내용이 있다면&lt;/h2&gt;
&lt;p class=&quot;bx-tip&quot; data-ke-size=&quot;size16&quot;&gt;요율이나 일정은 해마다 바뀝니다. 바뀐 내용이나 틀린 곳을 발견하시면 댓글로 알려 주세요. 확인하고 바로 고치겠습니다.&lt;/p&gt;</description>
      <category>공지</category>
      <category>블로그 소개</category>
      <category>생활 정보</category>
      <category>스팀 할인 알림</category>
      <category>연봉 실수령액 계산기</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/7</guid>
      <comments>https://bboxnote.tistory.com/entry/%EB%B8%94%EB%A1%9C%EA%B7%B8-%EC%86%8C%EA%B0%9C-%EC%95%8C%EC%95%84-%EB%91%90%EB%A9%B4-%EC%93%B8%EB%AA%A8-%EC%9E%88%EB%8A%94-%EC%9D%B4%EA%B2%83%EC%A0%80%EA%B2%83-%EC%A0%95%EB%A6%AC-%EB%85%B8%ED%8A%B8#entry7comment</comments>
      <pubDate>Tue, 13 Oct 2026 14:28:48 +0900</pubDate>
    </item>
    <item>
      <title>스팀 할인 알림 받는 법: 원하는 가격 되면 디스코드&amp;middot;카카오톡으로 받기 (역대 최저가 확인까지)</title>
      <link>https://bboxnote.tistory.com/entry/%EC%8A%A4%ED%8C%80-%ED%95%A0%EC%9D%B8-%EC%95%8C%EB%A6%BC-%EB%B0%9B%EB%8A%94-%EB%B2%95-%EC%9B%90%ED%95%98%EB%8A%94-%EA%B0%80%EA%B2%A9-%EB%90%98%EB%A9%B4-%EB%94%94%EC%8A%A4%EC%BD%94%EB%93%9C%C2%B7%EC%B9%B4%EC%B9%B4%EC%98%A4%ED%86%A1%EC%9C%BC%EB%A1%9C-%EB%B0%9B%EA%B8%B0-%EC%97%AD%EB%8C%80-%EC%B5%9C%EC%A0%80%EA%B0%80-%ED%99%95%EC%9D%B8%EA%B9%8C%EC%A7%80</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/caGJFx/dJMcabFVxAD/f04yIDUtITdopOIpArcpkK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/caGJFx/dJMcabFVxAD/f04yIDUtITdopOIpArcpkK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/caGJFx/dJMcabFVxAD/f04yIDUtITdopOIpArcpkK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcaGJFx%2FdJMcabFVxAD%2Ff04yIDUtITdopOIpArcpkK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;스팀 찜해 둔 게임이 &lt;b&gt;내가 정한 가격 아래로 내려가면 알림&lt;/b&gt;을 받고 싶다면 위시나인을 써 보세요. 게임을 검색하고 목표 가격만 적으면, 그 가격이 됐을 때 디스코드나 카카오톡으로 알려 줍니다. 디스코드 알림은 로그인도 필요 없습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;위시나인 게임 페이지에서 &lt;b&gt;역대 최저가&lt;/b&gt;와 가격 그래프를 볼 수 있습니다.&lt;/li&gt;
&lt;li&gt;목표 가격과 디스코드 웹훅 주소만 넣으면 끝입니다. 로그인은 필요 없습니다.&lt;/li&gt;
&lt;li&gt;카카오톡으로 받으려면 카카오로 로그인하고 알림을 켭니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;1. 역대 최저가부터 확인하기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://wish9.kr/&quot;&gt;위시나인&lt;/a&gt;에서 게임 이름을 검색하고 게임 페이지를 열면 이런 정보가 나옵니다.&lt;/p&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;지금 원화 가격과 할인율&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;스팀 역대 최저가&lt;/b&gt;와 가격 그래프: 지금 가격이 싼 편인지 바로 보입니다. 지금이 기록 최저가면 표시가 붙습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;할인 달력&lt;/b&gt;: 어느 달에 자주, 크게 할인했는지 색으로 보여 줍니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;구매 판단&lt;/b&gt;: 과거 가격 기록을 바탕으로 지금 사도 될지 참고 정보를 줍니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1266&quot; data-origin-height=&quot;875&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bnUgL1/dJMcagtNujP/YjzfCaRGGFqXK57gpOMB80/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bnUgL1/dJMcagtNujP/YjzfCaRGGFqXK57gpOMB80/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bnUgL1/dJMcagtNujP/YjzfCaRGGFqXK57gpOMB80/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbnUgL1%2FdJMcagtNujP%2FYjzfCaRGGFqXK57gpOMB80%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1266&quot; height=&quot;875&quot; data-origin-width=&quot;1266&quot; data-origin-height=&quot;875&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;역대 최저가를 보면 &quot;이 게임은 보통 얼마까지 내려가는구나&quot;를 알 수 있어서, 목표 가격을 정할 때 도움이 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1249&quot; data-origin-height=&quot;572&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/Oqr2w/dJMcacE5Rt8/sF5kcZqkXPrz0g3remtuPk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/Oqr2w/dJMcacE5Rt8/sF5kcZqkXPrz0g3remtuPk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/Oqr2w/dJMcacE5Rt8/sF5kcZqkXPrz0g3remtuPk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FOqr2w%2FdJMcacE5Rt8%2FsF5kcZqkXPrz0g3remtuPk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1249&quot; height=&quot;572&quot; data-origin-width=&quot;1249&quot; data-origin-height=&quot;572&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;2. 목표 가격 알림 등록하기 (디스코드)&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;게임 페이지 아래쪽 &lt;b&gt;'가격 오면 깨워줘'&lt;/b&gt; 칸으로 내려갑니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;목표 가격&lt;/b&gt;을 적습니다. 추천 가격 버튼을 눌러도 됩니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;디스코드 웹훅 주소&lt;/b&gt;를 붙여 넣고 &lt;b&gt;알림 등록&lt;/b&gt;을 누릅니다. 확인 메시지가 디스코드로 바로 옵니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1249&quot; data-origin-height=&quot;327&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cELiEa/dJMcagOfofq/9WMpRCdAP0c8Ko7CklNn80/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cELiEa/dJMcagOfofq/9WMpRCdAP0c8Ko7CklNn80/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cELiEa/dJMcagOfofq/9WMpRCdAP0c8Ko7CklNn80/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcELiEa%2FdJMcagOfofq%2F9WMpRCdAP0c8Ko7CklNn80%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1249&quot; height=&quot;327&quot; data-origin-width=&quot;1249&quot; data-origin-height=&quot;327&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;디스코드 웹훅 주소 만드는 법&lt;/h3&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;알림을 받을 디스코드 채널의 톱니바퀴(채널 편집)를 누릅니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;연동 &amp;rarr; 웹후크 &amp;rarr; 새 웹후크&lt;/b&gt;를 만들고 &lt;b&gt;웹후크 URL 복사&lt;/b&gt;를 누릅니다.&lt;/li&gt;
&lt;li&gt;복사한 주소를 위시나인 알림 칸에 붙여 넣습니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;웹훅 주소는 알림을 보내는 데만 쓰이고, 알림 메시지에 있는 해제 링크로 언제든 지울 수 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;3. 카카오톡으로 받고 싶다면&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;위시나인에 &lt;b&gt;카카오로 로그인&lt;/b&gt;합니다.&lt;/li&gt;
&lt;li&gt;내 정보 화면에서 &lt;b&gt;카카오톡 알림 켜기&lt;/b&gt;를 누르고 메시지 전송에 동의합니다.&lt;/li&gt;
&lt;li&gt;이제 게임 페이지에서 웹훅 칸을 비워 두고 알림을 등록하면 카카오톡 &lt;b&gt;나와의 채팅&lt;/b&gt;으로 알림이 옵니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;함께 쓰면 좋은 기능&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;세일 시작 알림&lt;/b&gt;: 다음 스팀 대형 세일이 시작할 때 알려 줍니다. (&lt;a href=&quot;https://bboxnote.tistory.com/5&quot;&gt;스팀 세일 일정 글&lt;/a&gt; 참고)&lt;/li&gt;
&lt;li&gt;&lt;b&gt;순위와 추천 모음&lt;/b&gt;: 지금 할인 중인 인기 게임, 한국어 지원 할인 게임을 모아 볼 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;달러 가격 보기&lt;/b&gt;: 미국 스토어 가격으로 바꿔서 볼 수도 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;bx-btn&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://wish9.kr/&quot;&gt;&lt;b&gt;위시나인에서 스팀 게임 최저가 확인하기&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;</description>
      <category>게임/스팀 할인&amp;middot;세일</category>
      <category>스팀 가격 알림</category>
      <category>스팀 역대 최저가</category>
      <category>스팀 위시리스트 할인</category>
      <category>스팀 최저가 확인</category>
      <category>스팀 할인 알림</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/6</guid>
      <comments>https://bboxnote.tistory.com/entry/%EC%8A%A4%ED%8C%80-%ED%95%A0%EC%9D%B8-%EC%95%8C%EB%A6%BC-%EB%B0%9B%EB%8A%94-%EB%B2%95-%EC%9B%90%ED%95%98%EB%8A%94-%EA%B0%80%EA%B2%A9-%EB%90%98%EB%A9%B4-%EB%94%94%EC%8A%A4%EC%BD%94%EB%93%9C%C2%B7%EC%B9%B4%EC%B9%B4%EC%98%A4%ED%86%A1%EC%9C%BC%EB%A1%9C-%EB%B0%9B%EA%B8%B0-%EC%97%AD%EB%8C%80-%EC%B5%9C%EC%A0%80%EA%B0%80-%ED%99%95%EC%9D%B8%EA%B9%8C%EC%A7%80#entry6comment</comments>
      <pubDate>Tue, 13 Oct 2026 14:25:00 +0900</pubDate>
    </item>
    <item>
      <title>2026~2027 스팀 세일 일정 총정리 (한국 시간): 핼러윈&amp;middot;겨울&amp;middot;봄&amp;middot;여름 세일</title>
      <link>https://bboxnote.tistory.com/entry/20262027-%EC%8A%A4%ED%8C%80-%EC%84%B8%EC%9D%BC-%EC%9D%BC%EC%A0%95-%EC%B4%9D%EC%A0%95%EB%A6%AC-%ED%95%9C%EA%B5%AD-%EC%8B%9C%EA%B0%84-%ED%95%BC%EB%9F%AC%EC%9C%88%C2%B7%EA%B2%A8%EC%9A%B8%C2%B7%EB%B4%84%C2%B7%EC%97%AC%EB%A6%84-%EC%84%B8%EC%9D%BC</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dz2twE/dJMcajjPV7G/9J5kjTW73p3QKkuoN2GQnk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dz2twE/dJMcajjPV7G/9J5kjTW73p3QKkuoN2GQnk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dz2twE/dJMcajjPV7G/9J5kjTW73p3QKkuoN2GQnk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdz2twE%2FdJMcajjPV7G%2F9J5kjTW73p3QKkuoN2GQnk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;다음 스팀 대형 세일은 핼러윈 세일(Steam Scream Fest)로, 한국 시간 2026년 10월 27일(화) 새벽 2시에 시작합니다.&lt;/b&gt; 스팀 세일은 미국 태평양 시간 오전 10시에 시작해서, 한국에서는 새벽 2시(겨울철은 새벽 3시)에 열립니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;다음 세일은 &lt;b&gt;핼러윈 세일&lt;/b&gt;, 10월 27일(화) 새벽 2시에 시작합니다.&lt;/li&gt;
&lt;li&gt;겨울 12월 18일, 봄 3월 19일, 여름 6월 25일입니다. (한국 시간)&lt;/li&gt;
&lt;li&gt;위시나인에서 세일 시작 알림을 받을 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;스팀 대형 세일 일정 (한국 시간)&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;세일&lt;/th&gt;
&lt;th&gt;시작&lt;/th&gt;
&lt;th&gt;끝&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;핼러윈 세일 (Scream Fest)&lt;/td&gt;
&lt;td&gt;2026년 10월 27일(화) 새벽 2시&lt;/td&gt;
&lt;td&gt;11월 3일(화) 새벽 3시&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;겨울 세일&lt;/td&gt;
&lt;td&gt;2026년 12월 18일(금) 새벽 3시&lt;/td&gt;
&lt;td&gt;2027년 1월 5일(화) 새벽 3시&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;봄 세일&lt;/td&gt;
&lt;td&gt;2027년 3월 19일(금) 새벽 2시&lt;/td&gt;
&lt;td&gt;3월 26일(금) 새벽 2시&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;여름 세일&lt;/td&gt;
&lt;td&gt;2027년 6월 25일(금) 새벽 2시&lt;/td&gt;
&lt;td&gt;7월 9일(금) 새벽 2시&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시작 시간이 새벽 2시와 3시로 다른 건 미국 서머타임 때문입니다. 11월 초에 서머타임이 끝나면 한국 기준 한 시간 늦어지고, 3월 중순에 다시 당겨집니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;세일 시작을 놓치지 않는 법&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://wish9.kr/&quot;&gt;위시나인&lt;/a&gt; 홈 위쪽에는 다음 세일까지 남은 시간이 카운트다운으로 나옵니다. 그 옆의 &lt;b&gt;세일 시작 알림 받기&lt;/b&gt;를 누르고 디스코드 웹훅 주소를 넣으면 세일이 열릴 때 알려 줍니다. 카카오톡 알림을 켜 둔 상태라면 버튼 한 번으로 신청됩니다. 원하는 게임이 있다면 게임마다 목표 가격 알림도 걸어 두세요. 세일 중에 그 가격 아래로 내려가면 바로 알림이 옵니다. 자세한 방법은 &lt;a href=&quot;https://bboxnote.tistory.com/6&quot;&gt;스팀 할인 알림 받는 법&lt;/a&gt;에 정리해 두었습니다.&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1266&quot; data-origin-height=&quot;90&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/JsYvF/dJMcajjPYgD/aeryNGV4SYcX7D0KCP2Xz0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/JsYvF/dJMcajjPYgD/aeryNGV4SYcX7D0KCP2Xz0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/JsYvF/dJMcajjPYgD/aeryNGV4SYcX7D0KCP2Xz0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FJsYvF%2FdJMcajjPYgD%2FaeryNGV4SYcX7D0KCP2Xz0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; loading=&quot;lazy&quot; width=&quot;1266&quot; height=&quot;90&quot; data-origin-width=&quot;1266&quot; data-origin-height=&quot;90&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;세일 전에 해 두면 좋은 것&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;역대 최저가 확인&lt;/b&gt;: 세일 가격이 정말 싼지, 예전에 더 싸게 판 적이 있는지 미리 봐 두세요.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;할인 주기 보기&lt;/b&gt;: 위시나인 게임 페이지의 할인 달력에서 그 게임이 어느 세일에 크게 할인했는지 볼 수 있습니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;한국어 지원 여부&lt;/b&gt;: 추천 모음에서 한국어 지원 할인 게임만 따로 모아 볼 수 있습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;bx-btn&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://wish9.kr/&quot;&gt;&lt;b&gt;위시나인에서 세일 시작 알림 받기&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;일정은 Valve가 공개한 날짜 기준이며 바뀔 수 있습니다.&lt;/p&gt;</description>
      <category>게임/스팀 할인&amp;middot;세일</category>
      <category>스팀 겨울 세일 2026</category>
      <category>스팀 세일 시간</category>
      <category>스팀 세일 일정</category>
      <category>스팀 여름 세일 2027</category>
      <category>스팀 핼러윈 세일</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/5</guid>
      <comments>https://bboxnote.tistory.com/entry/20262027-%EC%8A%A4%ED%8C%80-%EC%84%B8%EC%9D%BC-%EC%9D%BC%EC%A0%95-%EC%B4%9D%EC%A0%95%EB%A6%AC-%ED%95%9C%EA%B5%AD-%EC%8B%9C%EA%B0%84-%ED%95%BC%EB%9F%AC%EC%9C%88%C2%B7%EA%B2%A8%EC%9A%B8%C2%B7%EB%B4%84%C2%B7%EC%97%AC%EB%A6%84-%EC%84%B8%EC%9D%BC#entry5comment</comments>
      <pubDate>Tue, 13 Oct 2026 14:20:22 +0900</pubDate>
    </item>
    <item>
      <title>2026 실업급여 계산 방법과 조건: 하루 66,048원~68,100원, 받는 기간 표</title>
      <link>https://bboxnote.tistory.com/entry/2026-%EC%8B%A4%EC%97%85%EA%B8%89%EC%97%AC-%EA%B3%84%EC%82%B0-%EB%B0%A9%EB%B2%95%EA%B3%BC-%EC%A1%B0%EA%B1%B4-%ED%95%98%EB%A3%A8-66048%EC%9B%9068100%EC%9B%90-%EB%B0%9B%EB%8A%94-%EA%B8%B0%EA%B0%84-%ED%91%9C</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/EaMAf/dJMcackAAG9/xB8ETH0gGq0AKlkEjz8Z50/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/EaMAf/dJMcackAAG9/xB8ETH0gGq0AKlkEjz8Z50/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/EaMAf/dJMcackAAG9/xB8ETH0gGq0AKlkEjz8Z50/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FEaMAf%2FdJMcackAAG9%2FxB8ETH0gGq0AKlkEjz8Z50%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;2026 실업급여 하루 66,048원~68,100원, 받는 기간 안내 이미지&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2026년 실업급여(구직급여)는 하루 66,048원에서 68,100원 사이&lt;/b&gt;로 나옵니다. 퇴직 전 평균임금의 60%를 주는데, 하한액과 상한액 사이로 맞추기 때문입니다. 받는 기간은 나이와 고용보험 가입 기간에 따라 120일에서 270일입니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;2026년에는 하루 &lt;b&gt;66,048원~68,100원&lt;/b&gt;을 받습니다.&lt;/li&gt;
&lt;li&gt;받는 기간은 나이와 가입 기간에 따라 120일~270일입니다.&lt;/li&gt;
&lt;li&gt;퇴직 전 18개월 중 180일 이상 가입하고, 본인 뜻이 아닌 퇴사여야 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실업급여를 받는 조건&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;퇴직 전 18개월 동안 고용보험 가입(피보험단위기간)이 &lt;b&gt;180일 이상&lt;/b&gt;입니다.&lt;/li&gt;
&lt;li&gt;권고사직, 계약 만료처럼 &lt;b&gt;본인 뜻이 아닌 이유&lt;/b&gt;로 그만뒀습니다. (자발적 퇴사는 원칙적으로 안 되지만, 임금 체불 같은 정당한 사유는 인정됩니다.)&lt;/li&gt;
&lt;li&gt;일할 의사와 능력이 있고, &lt;b&gt;적극적으로 구직 활동&lt;/b&gt;을 합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;하루 얼마 받습니까? (2026년)&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;계산식&lt;/td&gt;
&lt;td&gt;퇴직 전 1일 평균임금 &amp;times; 60%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;상한액&lt;/td&gt;
&lt;td&gt;하루 68,100원 (2026년 1월 1일 이후 퇴직자)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;하한액&lt;/td&gt;
&lt;td&gt;하루 66,048원 (최저시급 10,320원 &amp;times; 80% &amp;times; 8시간)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;한 달(30일) 기준&lt;/td&gt;
&lt;td&gt;약 198만~204만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예를 들어 월 300만 원을 받았다면 1일 평균임금은 98,630원이고, 60%는 59,178원입니다. 하한액보다 적으니 &lt;b&gt;하한액 66,048원&lt;/b&gt;을 받습니다. 상한액과 하한액 차이가 작아서, 월평균 임금이 &lt;b&gt;약 335만 원보다 적으면 하한액&lt;/b&gt;, &lt;b&gt;약 345만 원보다 많으면 상한액&lt;/b&gt;을 받습니다. (전일제 8시간 기준)&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;며칠 동안 받습니까? (소정급여일수)&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;고용보험 가입 기간&lt;/th&gt;
&lt;th&gt;50세 미만&lt;/th&gt;
&lt;th&gt;50세 이상&amp;middot;장애인&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1년 미만&lt;/td&gt;
&lt;td&gt;120일&lt;/td&gt;
&lt;td&gt;120일&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1년~3년 미만&lt;/td&gt;
&lt;td&gt;150일&lt;/td&gt;
&lt;td&gt;180일&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;3년~5년 미만&lt;/td&gt;
&lt;td&gt;180일&lt;/td&gt;
&lt;td&gt;210일&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;5년~10년 미만&lt;/td&gt;
&lt;td&gt;210일&lt;/td&gt;
&lt;td&gt;240일&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;10년 이상&lt;/td&gt;
&lt;td&gt;240일&lt;/td&gt;
&lt;td&gt;270일&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;예시: 2년 일한 40세가 하한액을 받으면 66,048원 &amp;times; 150일 = &lt;b&gt;총 9,907,200원&lt;/b&gt;입니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;내 조건으로 바로 계산하기&lt;/h2&gt;
&lt;p class=&quot;bx-btn&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://koreapaycalc.com/unemployment/&quot;&gt;&lt;b&gt;머니계산기 실업급여 계산기 바로 가기&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1183&quot; data-origin-height=&quot;580&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/4brPO/dJMcaiSL7h0/3KRxfIsViCCJUTXnf3KfCk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/4brPO/dJMcaiSL7h0/3KRxfIsViCCJUTXnf3KfCk/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/4brPO/dJMcaiSL7h0/3KRxfIsViCCJUTXnf3KfCk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F4brPO%2FdJMcaiSL7h0%2F3KRxfIsViCCJUTXnf3KfCk%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;머니계산기 실업급여 계산기 화면: 월평균 임금, 가입 기간, 나이를 넣으면 하루 금액과 받는 기간이 나옴&quot; loading=&quot;lazy&quot; width=&quot;1183&quot; height=&quot;580&quot; data-origin-width=&quot;1183&quot; data-origin-height=&quot;580&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;퇴직 전 3개월 월평균 임금, 하루 근무 시간, 가입 기간, 나이만 고르면 하루 금액과 받는 기간, 총액이 나옵니다. 단시간 근무자는 하루 근무 시간에 맞춰 하한액이 줄어드는 것도 반영됩니다.&lt;/p&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;실제 지급액과 수급 자격은 고용센터에서 최종 판단합니다. 신청은 고용24에서 할 수 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 스스로 그만둬도 실업급여를 받을 수 있나요?&lt;/b&gt;&lt;br /&gt;원칙적으로는 안 됩니다. 다만 임금 체불처럼 정당한 사유가 있으면 자발적 퇴사도 인정될 수 있습니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 월급이 많았으면 실업급여도 많이 받나요?&lt;/b&gt;&lt;br /&gt;평균임금의 60%를 주지만 하루 상한액이 68,100원이라, 전일제 기준 월평균 임금이 약 345만 원을 넘으면 모두 상한액을 받습니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 실업급여는 얼마 동안 받나요?&lt;/b&gt;&lt;br /&gt;나이와 고용보험 가입 기간에 따라 120일에서 270일까지입니다. 50세 이상이거나 장애인이면 같은 가입 기간이라도 더 오래 받습니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 신청은 어디서 하나요?&lt;/b&gt;&lt;br /&gt;고용24에서 신청할 수 있고, 실제 지급액과 수급 자격은 고용센터에서 최종 판단합니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/월급&amp;middot;노동</category>
      <category>구직급여 계산기</category>
      <category>실업급여 계산</category>
      <category>실업급여 상한액</category>
      <category>실업급여 조건</category>
      <category>실업급여 하한액</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/4</guid>
      <comments>https://bboxnote.tistory.com/entry/2026-%EC%8B%A4%EC%97%85%EA%B8%89%EC%97%AC-%EA%B3%84%EC%82%B0-%EB%B0%A9%EB%B2%95%EA%B3%BC-%EC%A1%B0%EA%B1%B4-%ED%95%98%EB%A3%A8-66048%EC%9B%9068100%EC%9B%90-%EB%B0%9B%EB%8A%94-%EA%B8%B0%EA%B0%84-%ED%91%9C#entry4comment</comments>
      <pubDate>Tue, 13 Oct 2026 14:12:54 +0900</pubDate>
    </item>
    <item>
      <title>2026 주휴수당 조건과 계산법: 최저시급 10,320원 기준 예시</title>
      <link>https://bboxnote.tistory.com/entry/2026-%EC%A3%BC%ED%9C%B4%EC%88%98%EB%8B%B9-%EC%A1%B0%EA%B1%B4%EA%B3%BC-%EA%B3%84%EC%82%B0%EB%B2%95-%EC%B5%9C%EC%A0%80%EC%8B%9C%EA%B8%89-10320%EC%9B%90-%EA%B8%B0%EC%A4%80-%EC%98%88%EC%8B%9C</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/WJDuo/dJMcadwTQ2g/xgVQ6xNePSeoelpvSiv82K/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/WJDuo/dJMcadwTQ2g/xgVQ6xNePSeoelpvSiv82K/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/WJDuo/dJMcadwTQ2g/xgVQ6xNePSeoelpvSiv82K/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FWJDuo%2FdJMcadwTQ2g%2FxgVQ6xNePSeoelpvSiv82K%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;2026 주휴수당 조건과 계산법, 최저시급 10,320원 기준 안내 이미지&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;일주일에 15시간 이상 일하면 주휴수당을 받습니다.&lt;/b&gt; 계산식은 &lt;b&gt;(주 근로시간 &amp;divide; 40) &amp;times; 8시간 &amp;times; 시급&lt;/b&gt;이고, 주 40시간 이상이면 8시간치로 고정됩니다. 2026년 최저시급 10,320원이면 주 40시간 기준 주휴수당은 &lt;b&gt;82,560원&lt;/b&gt;입니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;주 &lt;b&gt;15시간 이상&lt;/b&gt; 일하고 그 주에 개근하면 받습니다.&lt;/li&gt;
&lt;li&gt;계산식은 (주 근로시간 &amp;divide; 40) &amp;times; 8시간 &amp;times; 시급입니다.&lt;/li&gt;
&lt;li&gt;2026년 최저시급으로 주 40시간이면 주휴수당은 주 82,560원입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;주휴수당을 받는 조건&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;1주 소정근로시간이 &lt;b&gt;15시간 이상&lt;/b&gt;입니다.&lt;/li&gt;
&lt;li&gt;그 주에 정해진 근무일을 &lt;b&gt;모두 출근&lt;/b&gt;했습니다.&lt;/li&gt;
&lt;li&gt;아르바이트, 단시간 근로자도 조건만 맞으면 받습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;근무 시간별 주휴수당 (2026 최저시급 10,320원)&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;주 근로시간&lt;/th&gt;
&lt;th&gt;주휴 시간&lt;/th&gt;
&lt;th&gt;주휴수당(1주)&lt;/th&gt;
&lt;th&gt;주급 합계&lt;/th&gt;
&lt;th&gt;월 환산 급여&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;15시간&lt;/td&gt;
&lt;td&gt;3시간&lt;/td&gt;
&lt;td&gt;30,960원&lt;/td&gt;
&lt;td&gt;185,760원&lt;/td&gt;
&lt;td&gt;804,960원 (78시간)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;20시간&lt;/td&gt;
&lt;td&gt;4시간&lt;/td&gt;
&lt;td&gt;41,280원&lt;/td&gt;
&lt;td&gt;247,680원&lt;/td&gt;
&lt;td&gt;1,073,280원 (104시간)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;40시간&lt;/td&gt;
&lt;td&gt;8시간&lt;/td&gt;
&lt;td&gt;82,560원&lt;/td&gt;
&lt;td&gt;495,360원&lt;/td&gt;
&lt;td&gt;2,156,880원 (209시간)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;14시간&lt;/td&gt;
&lt;td&gt;없음&lt;/td&gt;
&lt;td&gt;0원&lt;/td&gt;
&lt;td&gt;144,480원&lt;/td&gt;
&lt;td&gt;-&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;월 환산 시간은 (주 근로시간 + 주휴 시간) &amp;times; 4.345주(365 &amp;divide; 7 &amp;divide; 12)를 반올림한 값입니다. 주 40시간이면 우리가 흔히 듣는 &lt;b&gt;209시간&lt;/b&gt;이 나옵니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;예시로 계산해 보기&lt;/h2&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시급 10,320원, 주 20시간 일하는 경우:&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;주휴 시간 = 20 &amp;divide; 40 &amp;times; 8 = 4시간&lt;/li&gt;
&lt;li&gt;주휴수당 = 4 &amp;times; 10,320 = 41,280원&lt;/li&gt;
&lt;li&gt;한 주 받는 돈 = 20 &amp;times; 10,320 + 41,280 = 247,680원&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;내 시급으로 바로 계산하기&lt;/h2&gt;
&lt;p class=&quot;bx-btn&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://koreapaycalc.com/weekly-holiday-pay/&quot;&gt;&lt;b&gt;머니계산기 주휴수당 계산기 바로 가기&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1183&quot; data-origin-height=&quot;629&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/dFqRQn/dJMcad4Qz6d/ma9MjlKLKSq6AShl3hSwC0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/dFqRQn/dJMcad4Qz6d/ma9MjlKLKSq6AShl3hSwC0/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/dFqRQn/dJMcad4Qz6d/ma9MjlKLKSq6AShl3hSwC0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FdFqRQn%2FdJMcad4Qz6d%2Fma9MjlKLKSq6AShl3hSwC0%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;머니계산기 주휴수당 계산기 화면: 시급과 주 근로시간을 넣으면 주휴수당과 주급이 나옴&quot; loading=&quot;lazy&quot; width=&quot;1183&quot; height=&quot;629&quot; data-origin-width=&quot;1183&quot; data-origin-height=&quot;629&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;시급과 주 근로시간만 넣으면 주휴수당, 주급, 월급이 나오고, 시급이 2026년 최저임금보다 낮으면 알려 줍니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 일주일에 15시간보다 적게 일하면 주휴수당이 없나요?&lt;/b&gt;&lt;br /&gt;네. 1주 소정근로시간이 15시간 이상이어야 주휴수당이 생깁니다. 주 14시간이면 일한 시간만큼만 받습니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 그 주에 하루 결근하면 어떻게 되나요?&lt;/b&gt;&lt;br /&gt;주휴수당은 그 주에 정해진 근무일을 모두 출근했을 때 생깁니다. 결근한 주는 주휴수당을 받지 못할 수 있습니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 주 40시간보다 더 일하면 주휴수당도 더 받나요?&lt;/b&gt;&lt;br /&gt;아닙니다. 주 40시간 이상이면 주휴 시간은 8시간으로 고정됩니다. 40시간을 넘는 시간은 주휴수당이 아니라 연장근로로 따집니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 아르바이트도 주휴수당을 받나요?&lt;/b&gt;&lt;br /&gt;네. 아르바이트나 단시간 근로자도 주 15시간 이상, 정해진 날 모두 출근이라는 조건만 맞으면 받습니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/월급&amp;middot;노동</category>
      <category>2026 최저시급</category>
      <category>알바 주휴수당</category>
      <category>주휴수당 계산기</category>
      <category>주휴수당 계산법</category>
      <category>주휴수당 조건</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/3</guid>
      <comments>https://bboxnote.tistory.com/entry/2026-%EC%A3%BC%ED%9C%B4%EC%88%98%EB%8B%B9-%EC%A1%B0%EA%B1%B4%EA%B3%BC-%EA%B3%84%EC%82%B0%EB%B2%95-%EC%B5%9C%EC%A0%80%EC%8B%9C%EA%B8%89-10320%EC%9B%90-%EA%B8%B0%EC%A4%80-%EC%98%88%EC%8B%9C#entry3comment</comments>
      <pubDate>Tue, 13 Oct 2026 14:10:20 +0900</pubDate>
    </item>
    <item>
      <title>퇴직금 계산 방법 총정리: 조건, 공식, 예시로 따라 하기 (2026)</title>
      <link>https://bboxnote.tistory.com/entry/%ED%87%B4%EC%A7%81%EA%B8%88-%EA%B3%84%EC%82%B0-%EB%B0%A9%EB%B2%95-%EC%B4%9D%EC%A0%95%EB%A6%AC-%EC%A1%B0%EA%B1%B4-%EA%B3%B5%EC%8B%9D-%EC%98%88%EC%8B%9C%EB%A1%9C-%EB%94%B0%EB%9D%BC-%ED%95%98%EA%B8%B0-2026</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pdtky/dJMcafPlY0D/TsR1HReYfUJ5UMFtKGKOLK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pdtky/dJMcafPlY0D/TsR1HReYfUJ5UMFtKGKOLK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pdtky/dJMcafPlY0D/TsR1HReYfUJ5UMFtKGKOLK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fpdtky%2FdJMcafPlY0D%2FTsR1HReYfUJ5UMFtKGKOLK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;퇴직금 계산 방법: 조건, 공식, 예시 안내 이미지&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;퇴직금 = 1일 평균임금 &amp;times; 30일 &amp;times; (재직일수 &amp;divide; 365)&lt;/b&gt;입니다. 1년 이상 일하고 주 15시간 이상 근무했다면 받을 수 있습니다. 아래 예시로 한 단계씩 계산해 보겠습니다.&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;같은 회사에서 &lt;b&gt;1년 이상&lt;/b&gt;, 주 15시간 이상 일하면 받습니다.&lt;/li&gt;
&lt;li&gt;공식은 1일 평균임금 &amp;times; 30일 &amp;times; 재직일수 &amp;divide; 365입니다.&lt;/li&gt;
&lt;li&gt;3년 9개월, 월 300만 원이면 약 1,099만 원입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;퇴직금을 받을 수 있는 조건&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;같은 회사에서 &lt;b&gt;1년(365일) 이상&lt;/b&gt; 일했습니다.&lt;/li&gt;
&lt;li&gt;4주 평균 &lt;b&gt;주 15시간 이상&lt;/b&gt; 일했습니다.&lt;/li&gt;
&lt;li&gt;정규직, 계약직, 아르바이트 구분 없이 조건만 맞으면 받습니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;계산 순서&lt;/h2&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;&lt;b&gt;퇴직일 정하기&lt;/b&gt;: 마지막 근무일의 다음 날이 퇴직일입니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;3개월 임금 합계&lt;/b&gt;: 퇴직일 전 3개월 동안 받은 세전 임금(기본급 + 수당)을 더합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;상여금&amp;middot;연차수당 더하기&lt;/b&gt;: 1년 동안 받은 상여금과 연차수당의 3/12만 더합니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;1일 평균임금&lt;/b&gt;: 위 합계를 그 3개월의 실제 일수(89~92일)로 나눕니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;퇴직금&lt;/b&gt;: 1일 평균임금 &amp;times; 30 &amp;times; 재직일수 &amp;divide; 365&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;예시: 3년 9개월 일하고 월 300만 원 받은 경우&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;입사일&lt;/td&gt;
&lt;td&gt;2023년 1월 2일&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;마지막 근무일&lt;/td&gt;
&lt;td&gt;2026년 9월 30일 (퇴직일 10월 1일)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;재직일수&lt;/td&gt;
&lt;td&gt;1,368일&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;퇴직 전 3개월 임금&lt;/td&gt;
&lt;td&gt;9,000,000원 (7월~9월, 92일)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1일 평균임금&lt;/td&gt;
&lt;td&gt;9,000,000 &amp;divide; 92 = 97,826.08원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;퇴직금&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;97,826.08 &amp;times; 30 &amp;times; 1,368 &amp;divide; 365 = 약 1,099만 9천 원&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;상여금이나 연차수당이 있었다면 1일 평균임금이 올라가서 퇴직금도 늘어납니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 364일 일했으면 못 받습니까?&lt;/b&gt;&lt;br /&gt;네. 퇴직금은 재직일수가 365일 이상이어야 생깁니다. 마지막 근무일과 퇴직일 계산을 꼭 확인하세요.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 퇴직금에도 세금이 붙습니까?&lt;/b&gt;&lt;br /&gt;네, 퇴직소득세가 따로 붙습니다. 위 금액은 세전 금액입니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 언제까지 받아야 합니까?&lt;/b&gt;&lt;br /&gt;원칙적으로 퇴직 후 14일 안에 지급해야 합니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;날짜만 넣으면 자동으로 계산하기&lt;/h2&gt;
&lt;p class=&quot;bx-btn&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://koreapaycalc.com/severance/&quot;&gt;&lt;b&gt;머니계산기 퇴직금 계산기 바로 가기&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1183&quot; data-origin-height=&quot;745&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cQdP79/dJMcag1vf5z/Ukck6gPHFEIdTkVFDwVnn1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cQdP79/dJMcag1vf5z/Ukck6gPHFEIdTkVFDwVnn1/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cQdP79/dJMcag1vf5z/Ukck6gPHFEIdTkVFDwVnn1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcQdP79%2FdJMcag1vf5z%2FUkck6gPHFEIdTkVFDwVnn1%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;머니계산기 퇴직금 계산기 화면: 입사일과 퇴사일, 월급을 넣으면 퇴직금이 나옴&quot; loading=&quot;lazy&quot; width=&quot;1183&quot; height=&quot;745&quot; data-origin-width=&quot;1183&quot; data-origin-height=&quot;745&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;입사일, 마지막 근무일, 3개월 임금, 상여금과 연차수당을 넣으면 재직일수와 1일 평균임금, 퇴직금이 바로 나옵니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/월급&amp;middot;노동</category>
      <category>퇴직금 계산 방법</category>
      <category>퇴직금 계산기</category>
      <category>퇴직금 조건</category>
      <category>퇴직금 지급 기준</category>
      <category>평균임금 계산</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/2</guid>
      <comments>https://bboxnote.tistory.com/entry/%ED%87%B4%EC%A7%81%EA%B8%88-%EA%B3%84%EC%82%B0-%EB%B0%A9%EB%B2%95-%EC%B4%9D%EC%A0%95%EB%A6%AC-%EC%A1%B0%EA%B1%B4-%EA%B3%B5%EC%8B%9D-%EC%98%88%EC%8B%9C%EB%A1%9C-%EB%94%B0%EB%9D%BC-%ED%95%98%EA%B8%B0-2026#entry2comment</comments>
      <pubDate>Tue, 13 Oct 2026 14:06:56 +0900</pubDate>
    </item>
    <item>
      <title>2026 연봉 5천만 원 실수령액은 얼마? 월 357만 원 (공제 항목 표 정리)</title>
      <link>https://bboxnote.tistory.com/entry/2026-%EC%97%B0%EB%B4%89-5%EC%B2%9C%EB%A7%8C-%EC%9B%90-%EC%8B%A4%EC%88%98%EB%A0%B9%EC%95%A1%EC%9D%80-%EC%96%BC%EB%A7%88-%EC%9B%94-357%EB%A7%8C-%EC%9B%90-%EA%B3%B5%EC%A0%9C-%ED%95%AD%EB%AA%A9-%ED%91%9C-%EC%A0%95%EB%A6%AC</link>
      <description>&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/pL3tu/dJMcabzb0Ql/uTcl01hxPTkWp2lzXjFXmK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/pL3tu/dJMcabzb0Ql/uTcl01hxPTkWp2lzXjFXmK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/pL3tu/dJMcabzb0Ql/uTcl01hxPTkWp2lzXjFXmK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpL3tu%2FdJMcabzb0Ql%2FuTcl01hxPTkWp2lzXjFXmK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;2026 연봉 5천만 원 월 실수령액 357만 원 공제 항목 안내 이미지&quot; loading=&quot;lazy&quot; width=&quot;1200&quot; height=&quot;675&quot; data-origin-width=&quot;1200&quot; data-origin-height=&quot;675&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;2026년 기준 연봉 5천만 원의 월 실수령액은 약 357만 원&lt;/b&gt;입니다. 세전 월급 416만 원에서 4대보험과 세금으로 약 59만 5천 원이 빠집니다. (부양가족 본인 1명, 비과세 식대 월 20만 원 기준)&lt;/p&gt;
&lt;p class=&quot;bx-sum-title&quot; data-ke-size=&quot;size16&quot;&gt;한눈에 보기&lt;/p&gt;
&lt;ul class=&quot;bx-sum&quot; style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;월 실수령액은 &lt;b&gt;약 357만 원&lt;/b&gt;(3,571,556원)입니다.&lt;/li&gt;
&lt;li&gt;4대보험과 세금으로 한 달에 595,110원이 빠집니다.&lt;/li&gt;
&lt;li&gt;부양가족 수, 비과세 금액, 원천징수 비율에 따라 달라집니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;연봉 5천만 원 공제 항목 한눈에 보기&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;항목&lt;/th&gt;
&lt;th&gt;월 금액&lt;/th&gt;
&lt;th&gt;계산 기준&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;세전 월급&lt;/td&gt;
&lt;td&gt;4,166,666원&lt;/td&gt;
&lt;td&gt;연봉 &amp;divide; 12&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;국민연금&lt;/td&gt;
&lt;td&gt;188,410원&lt;/td&gt;
&lt;td&gt;과세 월급의 4.75%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;건강보험&lt;/td&gt;
&lt;td&gt;142,600원&lt;/td&gt;
&lt;td&gt;과세 월급의 3.595%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;장기요양보험&lt;/td&gt;
&lt;td&gt;18,730원&lt;/td&gt;
&lt;td&gt;건강보험료 &amp;times; (0.9448% &amp;divide; 7.19%)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;고용보험&lt;/td&gt;
&lt;td&gt;35,690원&lt;/td&gt;
&lt;td&gt;과세 월급의 0.9%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;근로소득세&lt;/td&gt;
&lt;td&gt;190,620원&lt;/td&gt;
&lt;td&gt;국세청 근로소득 간이세액표&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;지방소득세&lt;/td&gt;
&lt;td&gt;19,060원&lt;/td&gt;
&lt;td&gt;소득세의 10%&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;공제 합계&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;595,110원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;월 실수령액&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;&lt;b&gt;3,571,556원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;연 약 4,286만 원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;보험료는 비과세 식대 20만 원을 뺀 과세 월급(3,966,666원)에 요율을 곱하고, 10원 미만은 버립니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;연봉별 실수령액 비교 (2026년)&lt;/h2&gt;
&lt;table data-ke-align=&quot;alignLeft&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;연봉&lt;/th&gt;
&lt;th&gt;세전 월급&lt;/th&gt;
&lt;th&gt;공제 합계&lt;/th&gt;
&lt;th&gt;월 실수령액&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;3,000만 원&lt;/td&gt;
&lt;td&gt;2,500,000원&lt;/td&gt;
&lt;td&gt;255,560원&lt;/td&gt;
&lt;td&gt;2,244,440원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;4,000만 원&lt;/td&gt;
&lt;td&gt;3,333,333원&lt;/td&gt;
&lt;td&gt;397,550원&lt;/td&gt;
&lt;td&gt;2,935,783원&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;b&gt;5,000만 원&lt;/b&gt;&lt;/td&gt;
&lt;td&gt;4,166,666원&lt;/td&gt;
&lt;td&gt;595,110원&lt;/td&gt;
&lt;td&gt;&lt;b&gt;3,571,556원&lt;/b&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;6,000만 원&lt;/td&gt;
&lt;td&gt;5,000,000원&lt;/td&gt;
&lt;td&gt;804,590원&lt;/td&gt;
&lt;td&gt;4,195,410원&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;실수령액이 사람마다 다른 이유&lt;/h2&gt;
&lt;ul style=&quot;list-style-type: disc;&quot; data-ke-list-type=&quot;disc&quot;&gt;
&lt;li&gt;&lt;b&gt;부양가족 수&lt;/b&gt;: 부양가족이 많을수록 소득세가 줄어듭니다. 8세 이상 20세 이하 자녀가 있으면 더 줄어듭니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;비과세 수당&lt;/b&gt;: 식대, 차량유지비처럼 비과세 금액이 크면 보험료와 세금이 모두 줄어듭니다.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;원천징수 비율&lt;/b&gt;: 회사에 80%, 100%, 120% 중 하나로 신청할 수 있습니다. 매달 받는 돈과 연말정산 환급액이 달라집니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;내 조건으로 정확히 계산하려면 계산기에 연봉, 부양가족 수, 비과세 금액을 넣어 보세요.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;내 연봉으로 바로 계산하기&lt;/h2&gt;
&lt;p class=&quot;bx-btn&quot; data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://koreapaycalc.com/salary/&quot;&gt;&lt;b&gt;머니계산기 연봉 실수령액 계산기 바로 가기&lt;/b&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1183&quot; data-origin-height=&quot;745&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/3SBwg/dJMcafoeKz0/WPmljreEZcn2bLB4M0uWXK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/3SBwg/dJMcafoeKz0/WPmljreEZcn2bLB4M0uWXK/img.png&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/3SBwg/dJMcafoeKz0/WPmljreEZcn2bLB4M0uWXK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F3SBwg%2FdJMcafoeKz0%2FWPmljreEZcn2bLB4M0uWXK%2Fimg.png&quot; onerror=&quot;this.onerror=null; this.src='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png'; this.srcset='//t1.daumcdn.net/tistory_admin/static/images/no-image-v1.png';&quot; alt=&quot;머니계산기 연봉 실수령액 계산기 화면: 연봉과 부양가족 수를 넣으면 월 실수령액이 나옴&quot; loading=&quot;lazy&quot; width=&quot;1183&quot; height=&quot;745&quot; data-origin-width=&quot;1183&quot; data-origin-height=&quot;745&quot;/&gt;&lt;/span&gt;&lt;/figure&gt;
&lt;/p&gt;
&lt;ol style=&quot;list-style-type: decimal;&quot; data-ke-list-type=&quot;decimal&quot;&gt;
&lt;li&gt;연봉(세전)을 입력합니다.&lt;/li&gt;
&lt;li&gt;비과세 금액(보통 식대 20만 원)과 부양가족 수, 자녀 수를 고릅니다.&lt;/li&gt;
&lt;li&gt;월 실수령액과 항목별 공제액이 바로 나옵니다.&lt;/li&gt;
&lt;/ol&gt;
&lt;p class=&quot;bx-note&quot; data-ke-size=&quot;size16&quot;&gt;국민연금 기준소득월액 상&amp;middot;하한(41만~659만 원)은 2026년 7월~2027년 6월 적용값입니다. 실제 급여명세서는 회사의 비과세 항목과 신고 방식에 따라 조금 다를 수 있습니다.&lt;/p&gt;
&lt;h2 data-ke-size=&quot;size26&quot;&gt;자주 묻는 질문&lt;/h2&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 연봉 5천만 원이면 한 달에 실제로 얼마 받습니까?&lt;/b&gt;&lt;br /&gt;2026년 기준 약 357만 원입니다. 부양가족 본인 1명, 비과세 식대 월 20만 원으로 계산한 값이고, 세전 월급 416만 원에서 약 59만 5천 원이 빠집니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 계산기마다 실수령액이 조금씩 다른 이유는 뭔가요?&lt;/b&gt;&lt;br /&gt;부양가족 수, 비과세 수당 금액, 원천징수 비율(80%&amp;middot;100%&amp;middot;120%)을 어떻게 넣었느냐에 따라 달라집니다. 같은 연봉이라도 이 세 가지가 다르면 매달 받는 돈이 달라집니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 원천징수 비율을 80%로 하면 이득인가요?&lt;/b&gt;&lt;br /&gt;매달 떼는 소득세가 줄어서 월급은 조금 늘지만, 그만큼 연말정산 환급이 줄거나 더 낼 수 있습니다. 1년 전체로 내는 세금은 같습니다.&lt;/p&gt;
&lt;p class=&quot;bx-qa&quot; data-ke-size=&quot;size16&quot;&gt;&lt;b&gt;Q. 국민연금은 연봉이 높아도 계속 늘어납니까?&lt;/b&gt;&lt;br /&gt;아닙니다. 기준소득월액에 상한이 있어서 2026년 7월부터 2027년 6월까지는 월 659만 원까지만 보험료가 붙습니다.&lt;/p&gt;</description>
      <category>돈&amp;middot;생활/월급&amp;middot;노동</category>
      <category>2026 연봉 실수령액</category>
      <category>4대보험 계산</category>
      <category>연봉 5천 실수령액</category>
      <category>연봉 실수령액 표</category>
      <category>월급 실수령액</category>
      <author>bboxnote</author>
      <guid isPermaLink="true">https://bboxnote.tistory.com/1</guid>
      <comments>https://bboxnote.tistory.com/entry/2026-%EC%97%B0%EB%B4%89-5%EC%B2%9C%EB%A7%8C-%EC%9B%90-%EC%8B%A4%EC%88%98%EB%A0%B9%EC%95%A1%EC%9D%80-%EC%96%BC%EB%A7%88-%EC%9B%94-357%EB%A7%8C-%EC%9B%90-%EA%B3%B5%EC%A0%9C-%ED%95%AD%EB%AA%A9-%ED%91%9C-%EC%A0%95%EB%A6%AC#entry1comment</comments>
      <pubDate>Tue, 13 Oct 2026 14:04:10 +0900</pubDate>
    </item>
  </channel>
</rss>