<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>AI 바이브코딩 &amp;mdash; 바이낸스 선물 자동매매 실전</title>
    <link>https://creator88837.tistory.com/</link>
    <description>AI 몰랐던 40대 후반 직장인이
바이낸스 API 선물 자동매매 봇을
직접 만들고 운영하는 현실 도전기
AI 바이브코딩으로 만든 봇, 수익 검증부터 실패까지 솔직하게 기록합니다</description>
    <language>ko</language>
    <pubDate>Fri, 14 Aug 2026 20:26:49 +0900</pubDate>
    <generator>TISTORY</generator>
    <ttl>100</ttl>
    <managingEditor>creator88837</managingEditor>
    <image>
      <title>AI 바이브코딩 &amp;mdash; 바이낸스 선물 자동매매 실전</title>
      <url>https://tistory1.daumcdn.net/tistory/8691950/attach/8a2e94ae9eca4af891b72dadfc23c159</url>
      <link>https://creator88837.tistory.com</link>
    </image>
    <item>
      <title>바이낸스 선물 자동매매 결과 2026년 7월</title>
      <link>https://creator88837.tistory.com/52</link>
      <description>&lt;h3 data-ke-size=&quot;size23&quot;&gt;2026년 7월 봇별 운영 결과&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2122&quot; data-origin-height=&quot;1319&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bLRvOb/dJMcajb1Mwl/gJMCpvQyJrKrheX7pXKgnk/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bLRvOb/dJMcajb1Mwl/gJMCpvQyJrKrheX7pXKgnk/img.png&quot; data-alt=&quot;7월 매매 결과&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bLRvOb/dJMcajb1Mwl/gJMCpvQyJrKrheX7pXKgnk/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbLRvOb%2FdJMcajb1Mwl%2FgJMCpvQyJrKrheX7pXKgnk%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;2122&quot; height=&quot;1319&quot; data-origin-width=&quot;2122&quot; data-origin-height=&quot;1319&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;7월 매매 결과&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;5개&amp;nbsp;봇&amp;nbsp;7월초&amp;middot;말&amp;nbsp;잔고,&amp;nbsp;거래횟수,&amp;nbsp;승률,&amp;nbsp;PF,&amp;nbsp;순손익,&amp;nbsp;월&amp;nbsp;수익률&amp;nbsp;전체&amp;nbsp;수치.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2026년 7월 청산 사유별 손익 breakdown&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2122&quot; data-origin-height=&quot;1022&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ecrjPh/dJMcaasKcOj/LiYav4R4LowcJK66w1Mk40/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ecrjPh/dJMcaasKcOj/LiYav4R4LowcJK66w1Mk40/img.png&quot; data-alt=&quot;청산 사유&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ecrjPh/dJMcaasKcOj/LiYav4R4LowcJK66w1Mk40/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FecrjPh%2FdJMcaasKcOj%2FLiYav4R4LowcJK66w1Mk40%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;2122&quot; height=&quot;1022&quot; data-origin-width=&quot;2122&quot; data-origin-height=&quot;1022&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;청산 사유&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;EXIT_SIGNAL,&amp;nbsp;STOP_LOSS,&amp;nbsp;TAKE_PROFIT,&amp;nbsp;RANGE_EXIT&amp;nbsp;사유별&amp;nbsp;건수와&amp;nbsp;손익&amp;nbsp;상세.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;데이터 출처&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;바이낸스&amp;nbsp;API(fapiPrivateGetIncome,&amp;nbsp;잔고/실현손익/수수료/펀딩비)&amp;nbsp;+&amp;nbsp;각&amp;nbsp;봇&amp;nbsp;로그&amp;nbsp;파일(거래횟수/승률/PF)&lt;br /&gt;7월초잔고&amp;nbsp;=&amp;nbsp;6월말잔고&amp;nbsp;연결&amp;nbsp;/&amp;nbsp;7월말잔고&amp;nbsp;=&amp;nbsp;포지션&amp;nbsp;없을&amp;nbsp;때&amp;nbsp;안정적인&amp;nbsp;총잔고&amp;nbsp;기준&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;특이사항&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;1봇(BTC): 7월말잔고 $312.77은 Jul 31 17:00 RANGE_EXIT 청산 직후 무포지션 순간 잔고. TP 1건(+$48.67, Jul 1)이 월 수익 대부분 견인.&lt;br /&gt;&lt;br /&gt;2봇(ETH):&amp;nbsp;7월&amp;nbsp;초&amp;nbsp;전략&amp;nbsp;교체&amp;nbsp;후&amp;nbsp;7/23&amp;nbsp;재설정,&amp;nbsp;7/24부터&amp;nbsp;첫&amp;nbsp;정상&amp;nbsp;거래.&amp;nbsp;7회&amp;nbsp;거래&amp;nbsp;중&amp;nbsp;SL&amp;nbsp;1건(-$11.02)이&amp;nbsp;손실&amp;nbsp;견인,&amp;nbsp;나머지&amp;nbsp;5승&amp;nbsp;순익&amp;nbsp;+$11.02로&amp;nbsp;PF&amp;nbsp;0.86.&lt;br /&gt;&lt;br /&gt;3봇(ONDO):&amp;nbsp;순손익&amp;nbsp;-$12.28&amp;nbsp;=&amp;nbsp;7월초&amp;nbsp;출금&amp;nbsp;~$156&amp;nbsp;+&amp;nbsp;7월말&amp;nbsp;입금&amp;nbsp;~$143&amp;nbsp;+&amp;nbsp;거래&amp;nbsp;PnL&amp;nbsp;+$1.51&amp;nbsp;(27회).&amp;nbsp;거래&amp;nbsp;자체는&amp;nbsp;소폭&amp;nbsp;플러스이나&amp;nbsp;입출금&amp;nbsp;조정으로&amp;nbsp;잔고&amp;nbsp;순감.&lt;br /&gt;&lt;br /&gt;4봇(ONDO):&amp;nbsp;출금/입금&amp;nbsp;없이&amp;nbsp;순수&amp;nbsp;거래&amp;nbsp;+$60.01.&amp;nbsp;7/23&amp;nbsp;13:00&amp;nbsp;EXIT_SIGNAL&amp;nbsp;+$50.91&amp;nbsp;(ONDO&amp;nbsp;급등&amp;nbsp;롱&amp;nbsp;보유)&amp;nbsp;1건이&amp;nbsp;월&amp;nbsp;수익&amp;nbsp;견인.&amp;nbsp;PF&amp;nbsp;2.80으로&amp;nbsp;7월&amp;nbsp;전&amp;nbsp;봇&amp;nbsp;중&amp;nbsp;최고.&lt;br /&gt;&lt;br /&gt;5봇(XRP):&amp;nbsp;7월말잔고&amp;nbsp;$248.03은&amp;nbsp;Jul&amp;nbsp;30&amp;nbsp;마지막&amp;nbsp;거래&amp;nbsp;청산&amp;nbsp;후&amp;nbsp;무포지션&amp;nbsp;잔고.&amp;nbsp;5봇&amp;nbsp;계좌&amp;nbsp;실자본은&amp;nbsp;7월&amp;nbsp;내내&amp;nbsp;$248~$256대.&lt;/p&gt;</description>
      <category>월별 자동매매 실전 결과</category>
      <category>바이낸스</category>
      <category>바이낸스선물봇</category>
      <category>봇운영기록</category>
      <category>선물자동매매</category>
      <category>실전결과</category>
      <category>월별수익률</category>
      <category>자동매매</category>
      <category>자동매매봇</category>
      <category>코인자동매매</category>
      <author>creator88837</author>
      <guid isPermaLink="true">https://creator88837.tistory.com/52</guid>
      <comments>https://creator88837.tistory.com/52#entry52comment</comments>
      <pubDate>Mon, 3 Aug 2026 21:45:31 +0900</pubDate>
    </item>
    <item>
      <title>바이낸스 선물 자동매매 결과 2026년 6월</title>
      <link>https://creator88837.tistory.com/51</link>
      <description>&lt;h3 data-ke-size=&quot;size23&quot;&gt;2026년 6월 봇별 운영 결과&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2122&quot; data-origin-height=&quot;1458&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/ZH5NJ/dJMb99UP3QP/cw6foYnvye8RFQT0oos1ck/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/ZH5NJ/dJMb99UP3QP/cw6foYnvye8RFQT0oos1ck/img.png&quot; data-alt=&quot;6월 매매 결과&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/ZH5NJ/dJMb99UP3QP/cw6foYnvye8RFQT0oos1ck/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FZH5NJ%2FdJMb99UP3QP%2Fcw6foYnvye8RFQT0oos1ck%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;2122&quot; height=&quot;1458&quot; data-origin-width=&quot;2122&quot; data-origin-height=&quot;1458&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;6월 매매 결과&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;5개&amp;nbsp;봇&amp;nbsp;6월초&amp;middot;말&amp;nbsp;잔고,&amp;nbsp;거래횟수,&amp;nbsp;승률,&amp;nbsp;PF,&amp;nbsp;순손익,&amp;nbsp;MDD,&amp;nbsp;Sharpe&amp;nbsp;전체&amp;nbsp;수치.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2026년 6월 청산 사유별 손익 breakdown&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2122&quot; data-origin-height=&quot;1022&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cT3Dci/dJMcafni6Km/IoXIWzgzKIDA8KbKmrnCS1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cT3Dci/dJMcafni6Km/IoXIWzgzKIDA8KbKmrnCS1/img.png&quot; data-alt=&quot;청산 사유&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cT3Dci/dJMcafni6Km/IoXIWzgzKIDA8KbKmrnCS1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcT3Dci%2FdJMcafni6Km%2FIoXIWzgzKIDA8KbKmrnCS1%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;2122&quot; height=&quot;1022&quot; data-origin-width=&quot;2122&quot; data-origin-height=&quot;1022&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;청산 사유&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;EXIT_SIGNAL,&amp;nbsp;STOP_LOSS,&amp;nbsp;TAKE_PROFIT,&amp;nbsp;기타&amp;nbsp;사유별&amp;nbsp;건수와&amp;nbsp;손익&amp;nbsp;상세.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;데이터 출처&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;바이낸스 API(잔고/실현손익/수수료/펀딩비) + 각 봇 로그 파일(거래횟수/승률/PF)&lt;br /&gt;계산&amp;nbsp;방식:&amp;nbsp;6월초&amp;middot;6월말&amp;nbsp;잔고는&amp;nbsp;현재잔고에서&amp;nbsp;이후&amp;nbsp;발생한&amp;nbsp;income을&amp;nbsp;역산한&amp;nbsp;값.&amp;nbsp;계좌&amp;nbsp;내&amp;nbsp;입출금이&amp;nbsp;있었다면&amp;nbsp;오차&amp;nbsp;가능.&lt;br /&gt;MDD&amp;middot;Sharpe는&amp;nbsp;거래소&amp;nbsp;실현손익&amp;nbsp;기준&amp;nbsp;자본곡선(실제&amp;nbsp;달러),&amp;nbsp;거래횟수&amp;middot;승률&amp;middot;PF는&amp;nbsp;봇&amp;nbsp;로그의&amp;nbsp;청산&amp;nbsp;기록&amp;nbsp;기준.&amp;nbsp;거래소&amp;nbsp;raw&amp;nbsp;데이터는&amp;nbsp;부분체결로&amp;nbsp;건수가&amp;nbsp;부풀려짐.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;특이사항&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;1봇(BTC): 6월 내내 TP/SL이 수량 0으로 잡히는 버그 상태. EXIT_SIGNAL 청산 2건만 실제 발생. 6/30 버전 교체로 해결.&lt;br /&gt;&lt;br /&gt;2봇(구&amp;nbsp;ONDO&amp;nbsp;KDJ&amp;nbsp;2h):&amp;nbsp;6월&amp;nbsp;순손익&amp;nbsp;-$94.33(-65.05%)로&amp;nbsp;전&amp;nbsp;봇&amp;nbsp;중&amp;nbsp;최악.&amp;nbsp;PF&amp;nbsp;0.41,&amp;nbsp;Sharpe&amp;nbsp;-7.74,&amp;nbsp;MDD&amp;nbsp;-66.97%&amp;nbsp;전&amp;nbsp;지표&amp;nbsp;최하.&amp;nbsp;EXIT_SIGNAL&amp;nbsp;청산&amp;nbsp;30건에서&amp;nbsp;-$113.5&amp;nbsp;손실이&amp;nbsp;대부분을&amp;nbsp;차지함.&amp;nbsp;TP/SL보다&amp;nbsp;반대신호&amp;nbsp;청산에서&amp;nbsp;훨씬&amp;nbsp;많이&amp;nbsp;잃음.&lt;br /&gt;&lt;br /&gt;3봇&amp;middot;4봇(ONDO):&amp;nbsp;PF&amp;nbsp;각각&amp;nbsp;0.74,&amp;nbsp;0.62로&amp;nbsp;6월은&amp;nbsp;손실&amp;nbsp;구조.&amp;nbsp;ONDO&amp;nbsp;계열&amp;nbsp;봇&amp;nbsp;3개가&amp;nbsp;전부&amp;nbsp;마이너스&amp;nbsp;&amp;mdash;&amp;nbsp;6월&amp;nbsp;ONDO&amp;nbsp;시장이&amp;nbsp;KDJ&amp;nbsp;전략에&amp;nbsp;불리한&amp;nbsp;횡보였을&amp;nbsp;가능성.&lt;br /&gt;&lt;br /&gt;5봇(XRP):&amp;nbsp;승률&amp;nbsp;38.1%로&amp;nbsp;낮지만&amp;nbsp;PF&amp;nbsp;1.40,&amp;nbsp;Sharpe&amp;nbsp;2.46으로&amp;nbsp;유일하게&amp;nbsp;플러스.&amp;nbsp;익절&amp;nbsp;크기가&amp;nbsp;손절을&amp;nbsp;압도하는&amp;nbsp;추세추종형&amp;nbsp;결과.&lt;/p&gt;</description>
      <category>월별 자동매매 실전 결과</category>
      <category>바이낸스</category>
      <category>바이낸스봇</category>
      <category>봇수익률</category>
      <category>선물자동매매</category>
      <category>수익공개</category>
      <category>실전검증</category>
      <category>자동매매</category>
      <category>자동매매봇</category>
      <category>코인자동매매</category>
      <author>creator88837</author>
      <guid isPermaLink="true">https://creator88837.tistory.com/51</guid>
      <comments>https://creator88837.tistory.com/51#entry51comment</comments>
      <pubDate>Mon, 3 Aug 2026 21:27:21 +0900</pubDate>
    </item>
    <item>
      <title>바이낸스 자동매매 TP SL 설정, 백테스트 수백 번으로 찾는 법</title>
      <link>https://creator88837.tistory.com/50</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;바이낸스&amp;nbsp;선물&amp;nbsp;자동매매&amp;nbsp;봇에서&amp;nbsp;같은&amp;nbsp;전략이라도&amp;nbsp;파라미터&amp;nbsp;설정에&amp;nbsp;따라&amp;nbsp;결과가&amp;nbsp;완전히&amp;nbsp;달라진다.&lt;br /&gt;수익률&amp;nbsp;1,350%짜리&amp;nbsp;전략도&amp;nbsp;TP와&amp;nbsp;SL&amp;nbsp;수치를&amp;nbsp;잘못&amp;nbsp;잡으면&amp;nbsp;실전에서&amp;nbsp;손실이&amp;nbsp;난다.&lt;br /&gt;이&amp;nbsp;글에서는&amp;nbsp;TP,&amp;nbsp;SL,&amp;nbsp;레버리지&amp;nbsp;최적값을&amp;nbsp;어떻게&amp;nbsp;찾는지,&amp;nbsp;그&amp;nbsp;과정에서&amp;nbsp;주의할&amp;nbsp;점은&amp;nbsp;무엇인지를&amp;nbsp;실전&amp;nbsp;백테스트&amp;nbsp;경험을&amp;nbsp;바탕으로&amp;nbsp;정리한다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;파라미터란 무엇인가&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;파라미터는 봇의 동작을 결정하는 수치 설정값이다.&lt;br /&gt;코드&amp;nbsp;안에&amp;nbsp;숫자로&amp;nbsp;박혀있고,&amp;nbsp;이&amp;nbsp;숫자를&amp;nbsp;바꾸면&amp;nbsp;봇의&amp;nbsp;행동&amp;nbsp;방식이&amp;nbsp;달라진다.&lt;br /&gt;&lt;br /&gt;자동매매&amp;nbsp;봇에서&amp;nbsp;가장&amp;nbsp;중요한&amp;nbsp;파라미터는&amp;nbsp;세&amp;nbsp;가지다.&lt;br /&gt;&lt;br /&gt;TP(Take&amp;nbsp;Profit,&amp;nbsp;익절):&amp;nbsp;진입&amp;nbsp;가격&amp;nbsp;대비&amp;nbsp;몇&amp;nbsp;%&amp;nbsp;수익이&amp;nbsp;나면&amp;nbsp;자동으로&amp;nbsp;청산할지&amp;nbsp;설정한다.&lt;br /&gt;TP가&amp;nbsp;5%면&amp;nbsp;진입&amp;nbsp;후&amp;nbsp;5%&amp;nbsp;오르면(LONG&amp;nbsp;기준)&amp;nbsp;자동&amp;nbsp;청산된다.&lt;br /&gt;&lt;br /&gt;SL(Stop&amp;nbsp;Loss,&amp;nbsp;손절):&amp;nbsp;진입&amp;nbsp;가격&amp;nbsp;대비&amp;nbsp;몇&amp;nbsp;%&amp;nbsp;손실이&amp;nbsp;나면&amp;nbsp;자동으로&amp;nbsp;청산할지&amp;nbsp;설정한다.&lt;br /&gt;SL이&amp;nbsp;3%면&amp;nbsp;진입&amp;nbsp;후&amp;nbsp;3%&amp;nbsp;내려가면&amp;nbsp;자동&amp;nbsp;청산된다.&lt;br /&gt;&lt;br /&gt;레버리지(Leverage):&amp;nbsp;내&amp;nbsp;증거금의&amp;nbsp;몇&amp;nbsp;배로&amp;nbsp;포지션을&amp;nbsp;잡을지&amp;nbsp;설정한다.&lt;br /&gt;레버리지&amp;nbsp;5배면&amp;nbsp;$100&amp;nbsp;증거금으로&amp;nbsp;$500짜리&amp;nbsp;포지션을&amp;nbsp;잡는다.&lt;br /&gt;레버리지가&amp;nbsp;높을수록&amp;nbsp;수익도&amp;nbsp;크고&amp;nbsp;손실도&amp;nbsp;크다.&lt;br /&gt;&lt;br /&gt;이&amp;nbsp;세&amp;nbsp;가지&amp;nbsp;외에도&amp;nbsp;타임프레임,&amp;nbsp;진입&amp;nbsp;조건&amp;nbsp;수치(예:&amp;nbsp;MACD&amp;nbsp;파라미터)도&amp;nbsp;파라미터에&amp;nbsp;해당한다.&lt;br /&gt;하지만&amp;nbsp;TP,&amp;nbsp;SL,&amp;nbsp;레버리지가&amp;nbsp;결과에&amp;nbsp;가장&amp;nbsp;직접적인&amp;nbsp;영향을&amp;nbsp;준다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;파라미터 하나가 전체 결과를 바꾸는 이유&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;전략 자체는 같아도 TP와 SL 비율을 어떻게 잡느냐에 따라 전혀 다른 봇이 된다.&lt;br /&gt;&lt;br /&gt;TP를&amp;nbsp;낮게&amp;nbsp;잡으면&amp;nbsp;(예:&amp;nbsp;3%):&lt;br /&gt;자주&amp;nbsp;익절된다.&amp;nbsp;승률이&amp;nbsp;올라간다.&lt;br /&gt;하지만&amp;nbsp;한&amp;nbsp;번의&amp;nbsp;수익이&amp;nbsp;작아서&amp;nbsp;손절&amp;nbsp;한&amp;nbsp;번에&amp;nbsp;여러&amp;nbsp;번의&amp;nbsp;수익이&amp;nbsp;날아간다.&lt;br /&gt;거래&amp;nbsp;횟수가&amp;nbsp;많아지고&amp;nbsp;수수료&amp;nbsp;부담이&amp;nbsp;커진다.&lt;br /&gt;&lt;br /&gt;TP를&amp;nbsp;높게&amp;nbsp;잡으면&amp;nbsp;(예:&amp;nbsp;20%):&lt;br /&gt;익절&amp;nbsp;조건이&amp;nbsp;까다롭다.&amp;nbsp;승률이&amp;nbsp;내려간다.&lt;br /&gt;하지만&amp;nbsp;한&amp;nbsp;번&amp;nbsp;익절될&amp;nbsp;때&amp;nbsp;수익이&amp;nbsp;크다.&lt;br /&gt;거래&amp;nbsp;횟수가&amp;nbsp;줄어들고&amp;nbsp;수수료&amp;nbsp;부담이&amp;nbsp;작아진다.&lt;br /&gt;&lt;br /&gt;어느&amp;nbsp;쪽이&amp;nbsp;맞는지는&amp;nbsp;전략에&amp;nbsp;따라&amp;nbsp;다르다.&lt;br /&gt;추세&amp;nbsp;추종&amp;nbsp;전략은&amp;nbsp;TP를&amp;nbsp;크게&amp;nbsp;잡아야&amp;nbsp;트렌드를&amp;nbsp;다&amp;nbsp;먹을&amp;nbsp;수&amp;nbsp;있다.&lt;br /&gt;반전&amp;nbsp;전략은&amp;nbsp;TP를&amp;nbsp;작게&amp;nbsp;잡아야&amp;nbsp;빠르게&amp;nbsp;수익을&amp;nbsp;확정한다.&lt;br /&gt;&lt;br /&gt;직접&amp;nbsp;수백&amp;nbsp;번&amp;nbsp;백테스트를&amp;nbsp;돌려서&amp;nbsp;알게&amp;nbsp;된&amp;nbsp;것이다.&lt;br /&gt;처음에는&amp;nbsp;TP를&amp;nbsp;높이면&amp;nbsp;당연히&amp;nbsp;수익률이&amp;nbsp;올라간다고&amp;nbsp;생각했다.&lt;br /&gt;실제로는&amp;nbsp;승률이&amp;nbsp;너무&amp;nbsp;낮아져서&amp;nbsp;MDD가&amp;nbsp;커지고&amp;nbsp;실전에서&amp;nbsp;버티기&amp;nbsp;힘든&amp;nbsp;구조가&amp;nbsp;됐다.&lt;br /&gt;반대로&amp;nbsp;TP를&amp;nbsp;낮추면&amp;nbsp;승률은&amp;nbsp;높은데&amp;nbsp;수익이&amp;nbsp;너무&amp;nbsp;작아서&amp;nbsp;손절&amp;nbsp;몇&amp;nbsp;번에&amp;nbsp;다&amp;nbsp;깎이는&amp;nbsp;경우도&amp;nbsp;생겼다.&lt;br /&gt;TP와&amp;nbsp;SL&amp;nbsp;사이의&amp;nbsp;균형점을&amp;nbsp;찾는&amp;nbsp;게&amp;nbsp;핵심이다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;파라미터 최적값을 찾는 방법&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;백테스트를 반복해서 비교하는 방법이 유일하다.&lt;br /&gt;수치를&amp;nbsp;조금씩&amp;nbsp;바꿔가며&amp;nbsp;결과를&amp;nbsp;보고,&amp;nbsp;가장&amp;nbsp;균형이&amp;nbsp;좋은&amp;nbsp;조합을&amp;nbsp;선택한다.&lt;br /&gt;&lt;br /&gt;순서는&amp;nbsp;이렇다.&lt;br /&gt;&lt;br /&gt;1단계&amp;nbsp;&amp;mdash;&amp;nbsp;TP부터&amp;nbsp;고정하고&amp;nbsp;SL을&amp;nbsp;바꾼다.&lt;br /&gt;TP를&amp;nbsp;10%로&amp;nbsp;고정하고&amp;nbsp;SL을&amp;nbsp;2%,&amp;nbsp;3%,&amp;nbsp;5%,&amp;nbsp;7%로&amp;nbsp;바꿔가며&amp;nbsp;백테스트를&amp;nbsp;돌린다.&lt;br /&gt;각각의&amp;nbsp;수익률,&amp;nbsp;MDD,&amp;nbsp;승률,&amp;nbsp;거래&amp;nbsp;횟수를&amp;nbsp;기록한다.&lt;br /&gt;&lt;br /&gt;2단계&amp;nbsp;&amp;mdash;&amp;nbsp;SL을&amp;nbsp;고정하고&amp;nbsp;TP를&amp;nbsp;바꾼다.&lt;br /&gt;1단계에서&amp;nbsp;가장&amp;nbsp;좋았던&amp;nbsp;SL&amp;nbsp;값을&amp;nbsp;고정하고&amp;nbsp;TP를&amp;nbsp;5%,&amp;nbsp;10%,&amp;nbsp;15%,&amp;nbsp;20%로&amp;nbsp;바꿔가며&amp;nbsp;돌린다.&lt;br /&gt;&lt;br /&gt;3단계&amp;nbsp;&amp;mdash;&amp;nbsp;레버리지를&amp;nbsp;바꾼다.&lt;br /&gt;가장&amp;nbsp;좋은&amp;nbsp;TP/SL&amp;nbsp;조합을&amp;nbsp;찾은&amp;nbsp;후,&amp;nbsp;레버리지를&amp;nbsp;2배,&amp;nbsp;3배,&amp;nbsp;5배로&amp;nbsp;바꿔가며&amp;nbsp;결과를&amp;nbsp;비교한다.&lt;br /&gt;레버리지가&amp;nbsp;높아질수록&amp;nbsp;MDD도&amp;nbsp;같은&amp;nbsp;비율로&amp;nbsp;커진다는&amp;nbsp;걸&amp;nbsp;확인한다.&lt;br /&gt;&lt;br /&gt;[AI에게&amp;nbsp;시킨&amp;nbsp;명령어]&lt;br /&gt;&quot;TP를&amp;nbsp;5%,&amp;nbsp;10%,&amp;nbsp;15%,&amp;nbsp;20%로&amp;nbsp;바꿔가며&amp;nbsp;각각&amp;nbsp;백테스트&amp;nbsp;결과를&amp;nbsp;출력해줘.&amp;nbsp;수익률,&amp;nbsp;MDD,&amp;nbsp;승률,&amp;nbsp;거래&amp;nbsp;횟수를&amp;nbsp;표&amp;nbsp;형태로&amp;nbsp;보여줘&quot;&lt;br /&gt;&lt;br /&gt;이&amp;nbsp;명령어&amp;nbsp;하나로&amp;nbsp;파라미터&amp;nbsp;비교&amp;nbsp;테이블을&amp;nbsp;자동으로&amp;nbsp;만들&amp;nbsp;수&amp;nbsp;있다.&lt;br /&gt;수동으로&amp;nbsp;수치를&amp;nbsp;바꿔가며&amp;nbsp;돌릴&amp;nbsp;필요&amp;nbsp;없이&amp;nbsp;한&amp;nbsp;번에&amp;nbsp;여러&amp;nbsp;결과를&amp;nbsp;볼&amp;nbsp;수&amp;nbsp;있다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2826&quot; data-origin-height=&quot;1529&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/9DEM4/dJMcaccSNIq/khZTfx5j3JNkAtlkrwhG1k/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/9DEM4/dJMcaccSNIq/khZTfx5j3JNkAtlkrwhG1k/img.png&quot; data-alt=&quot;TP&amp;amp;middot;SL&amp;amp;nbsp;조합별&amp;amp;nbsp;백테스트&amp;amp;nbsp;결과&amp;amp;nbsp;비교&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/9DEM4/dJMcaccSNIq/khZTfx5j3JNkAtlkrwhG1k/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F9DEM4%2FdJMcaccSNIq%2FkhZTfx5j3JNkAtlkrwhG1k%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;2826&quot; height=&quot;1529&quot; data-origin-width=&quot;2826&quot; data-origin-height=&quot;1529&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;TP&amp;middot;SL&amp;nbsp;조합별&amp;nbsp;백테스트&amp;nbsp;결과&amp;nbsp;비교&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;br /&gt;TP&amp;middot;SL 조합별 백테스트 결과 비교&amp;nbsp;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;TP&amp;middot;SL&amp;nbsp;조합&amp;nbsp;4가지의&amp;nbsp;수익률,&amp;nbsp;MDD,&amp;nbsp;승률,&amp;nbsp;거래&amp;nbsp;횟수를&amp;nbsp;비교한&amp;nbsp;예시&amp;nbsp;표.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;실전에서 파라미터를 바꿔 결과가 달라진 경험&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;1봇 BTC 봇 업그레이드 과정에서 파라미터 변경으로 결과가 크게 바뀐 경험이 있다.&lt;br /&gt;&lt;br /&gt;처음에는&amp;nbsp;TP&amp;nbsp;7%로&amp;nbsp;운영했다.&lt;br /&gt;백테스트에서는&amp;nbsp;나쁘지&amp;nbsp;않았다.&lt;br /&gt;실전&amp;nbsp;6개월을&amp;nbsp;운영하고&amp;nbsp;결과를&amp;nbsp;보니&amp;nbsp;수익이&amp;nbsp;났지만&amp;nbsp;MDD가&amp;nbsp;컸다.&lt;br /&gt;&lt;br /&gt;타임프레임을&amp;nbsp;4시간봉에서&amp;nbsp;8시간봉으로&amp;nbsp;바꾸고&amp;nbsp;TP를&amp;nbsp;19%로&amp;nbsp;올렸다.&lt;br /&gt;같은&amp;nbsp;KDJ&amp;nbsp;전략인데&amp;nbsp;파라미터만&amp;nbsp;바꿨다.&lt;br /&gt;백테스트&amp;nbsp;결과가&amp;nbsp;달라졌다.&lt;br /&gt;거래&amp;nbsp;횟수는&amp;nbsp;줄었지만&amp;nbsp;한&amp;nbsp;번&amp;nbsp;수익이&amp;nbsp;날&amp;nbsp;때&amp;nbsp;더&amp;nbsp;크게&amp;nbsp;났고,&amp;nbsp;MDD가&amp;nbsp;안정됐다.&lt;br /&gt;&lt;br /&gt;파라미터&amp;nbsp;변경&amp;nbsp;전후&amp;nbsp;비교:&lt;br /&gt;타임프레임&amp;nbsp;4h&amp;nbsp;/&amp;nbsp;TP&amp;nbsp;7%&amp;nbsp;&amp;rarr;&amp;nbsp;거래&amp;nbsp;잦음,&amp;nbsp;수수료&amp;nbsp;부담&amp;nbsp;큼&lt;br /&gt;타임프레임&amp;nbsp;8h&amp;nbsp;/&amp;nbsp;TP&amp;nbsp;19%&amp;nbsp;&amp;rarr;&amp;nbsp;거래&amp;nbsp;적음,&amp;nbsp;수익폭&amp;nbsp;큼&lt;br /&gt;&lt;br /&gt;어느&amp;nbsp;쪽이&amp;nbsp;낫다고&amp;nbsp;단정할&amp;nbsp;수&amp;nbsp;없다.&lt;br /&gt;코인의&amp;nbsp;특성,&amp;nbsp;시장&amp;nbsp;상황,&amp;nbsp;자신이&amp;nbsp;감당할&amp;nbsp;수&amp;nbsp;있는&amp;nbsp;MDD&amp;nbsp;수준에&amp;nbsp;따라&amp;nbsp;달라진다.&lt;br /&gt;중요한&amp;nbsp;건&amp;nbsp;직접&amp;nbsp;백테스트로&amp;nbsp;확인하는&amp;nbsp;과정이다.&lt;br /&gt;MDD가&amp;nbsp;왜&amp;nbsp;이렇게&amp;nbsp;중요한지&amp;nbsp;이해가&amp;nbsp;안&amp;nbsp;된다면&amp;nbsp;자동매매&amp;nbsp;백테스트에서&amp;nbsp;MDD가&amp;nbsp;중요한&amp;nbsp;이유(실용글&amp;nbsp;7)를&amp;nbsp;먼저&amp;nbsp;읽는&amp;nbsp;걸&amp;nbsp;추천한다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;과최적화를 조심해야 하는 이유&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;파라미터 최적화에서 가장 조심해야 할 함정이 과최적화다.&lt;br /&gt;백테스트&amp;nbsp;데이터에만&amp;nbsp;딱&amp;nbsp;맞게&amp;nbsp;설정값을&amp;nbsp;찾다&amp;nbsp;보면,&amp;nbsp;그&amp;nbsp;기간에만&amp;nbsp;좋고&amp;nbsp;실전에서는&amp;nbsp;안&amp;nbsp;되는&amp;nbsp;파라미터가&amp;nbsp;나온다.&lt;br /&gt;&lt;br /&gt;예를&amp;nbsp;들어&amp;nbsp;2023년~2025년&amp;nbsp;데이터로&amp;nbsp;최적화한&amp;nbsp;파라미터가&amp;nbsp;2026년&amp;nbsp;시장에서&amp;nbsp;작동&amp;nbsp;안&amp;nbsp;할&amp;nbsp;수&amp;nbsp;있다.&lt;br /&gt;2023~2025&amp;nbsp;기간의&amp;nbsp;특수한&amp;nbsp;흐름에&amp;nbsp;딱&amp;nbsp;맞게&amp;nbsp;조정된&amp;nbsp;값이기&amp;nbsp;때문이다.&lt;br /&gt;&lt;br /&gt;과최적화를&amp;nbsp;피하는&amp;nbsp;방법이&amp;nbsp;있다.&lt;br /&gt;&lt;br /&gt;첫째,&amp;nbsp;백테스트&amp;nbsp;기간을&amp;nbsp;길게&amp;nbsp;잡는다.&lt;br /&gt;최소&amp;nbsp;2~3년&amp;nbsp;이상의&amp;nbsp;데이터로&amp;nbsp;테스트하는&amp;nbsp;게&amp;nbsp;맞다.&lt;br /&gt;단기&amp;nbsp;데이터로&amp;nbsp;최적화하면&amp;nbsp;그&amp;nbsp;구간의&amp;nbsp;특성에만&amp;nbsp;맞는&amp;nbsp;값이&amp;nbsp;나온다.&lt;br /&gt;&lt;br /&gt;둘째,&amp;nbsp;최적값보다&amp;nbsp;안정적인&amp;nbsp;값을&amp;nbsp;선택한다.&lt;br /&gt;백테스트에서&amp;nbsp;수익률이&amp;nbsp;제일&amp;nbsp;높은&amp;nbsp;값이&amp;nbsp;아니라,&amp;nbsp;여러&amp;nbsp;구간에서&amp;nbsp;꾸준히&amp;nbsp;좋은&amp;nbsp;값을&amp;nbsp;선택한다.&lt;br /&gt;극단적으로&amp;nbsp;좋은&amp;nbsp;값은&amp;nbsp;그&amp;nbsp;기간에만&amp;nbsp;맞는&amp;nbsp;경우가&amp;nbsp;많다.&lt;br /&gt;&lt;br /&gt;셋째,&amp;nbsp;실전으로&amp;nbsp;검증한다.&lt;br /&gt;백테스트로&amp;nbsp;찾은&amp;nbsp;파라미터도&amp;nbsp;실전&amp;nbsp;소액&amp;nbsp;운영으로&amp;nbsp;1년&amp;nbsp;이상&amp;nbsp;검증해야&amp;nbsp;한다.&lt;br /&gt;백테스트와&amp;nbsp;실전이&amp;nbsp;다르게&amp;nbsp;나오면&amp;nbsp;파라미터를&amp;nbsp;다시&amp;nbsp;점검한다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;결론&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;파라미터 최적화는 백테스트를 반복하는 과정이다.&lt;br /&gt;TP,&amp;nbsp;SL,&amp;nbsp;레버리지를&amp;nbsp;하나씩&amp;nbsp;바꿔가며&amp;nbsp;수익률,&amp;nbsp;MDD,&amp;nbsp;승률이&amp;nbsp;어떻게&amp;nbsp;달라지는지&amp;nbsp;직접&amp;nbsp;확인해야&amp;nbsp;한다.&lt;br /&gt;&lt;br /&gt;순서는&amp;nbsp;이렇게&amp;nbsp;잡는다.&lt;br /&gt;TP를&amp;nbsp;먼저&amp;nbsp;고정하고&amp;nbsp;SL을&amp;nbsp;찾는다.&lt;br /&gt;SL을&amp;nbsp;고정하고&amp;nbsp;TP를&amp;nbsp;찾는다.&lt;br /&gt;마지막으로&amp;nbsp;레버리지를&amp;nbsp;조정한다.&lt;br /&gt;&lt;br /&gt;주의할&amp;nbsp;점은&amp;nbsp;두&amp;nbsp;가지다.&lt;br /&gt;TP가&amp;nbsp;높다고&amp;nbsp;무조건&amp;nbsp;좋지&amp;nbsp;않다.&amp;nbsp;승률이&amp;nbsp;낮아지고&amp;nbsp;MDD가&amp;nbsp;커진다.&lt;br /&gt;백테스트에서&amp;nbsp;가장&amp;nbsp;좋은&amp;nbsp;값이&amp;nbsp;실전에서도&amp;nbsp;좋으리라는&amp;nbsp;보장이&amp;nbsp;없다.&lt;br /&gt;과최적화를&amp;nbsp;피하려면&amp;nbsp;긴&amp;nbsp;기간&amp;nbsp;데이터로&amp;nbsp;검증하고,&amp;nbsp;실전으로&amp;nbsp;다시&amp;nbsp;확인하는&amp;nbsp;과정이&amp;nbsp;필요하다.&lt;br /&gt;&lt;br /&gt;매일&amp;nbsp;새벽까지&amp;nbsp;백테스트를&amp;nbsp;돌린&amp;nbsp;시간이&amp;nbsp;지금의&amp;nbsp;봇&amp;nbsp;운영&amp;nbsp;기반이&amp;nbsp;됐다.&lt;br /&gt;결국&amp;nbsp;TP와&amp;nbsp;SL에는&amp;nbsp;정답이&amp;nbsp;없다.&lt;br /&gt;정답처럼&amp;nbsp;보이는&amp;nbsp;숫자는&amp;nbsp;직접&amp;nbsp;반복한&amp;nbsp;백테스트와&amp;nbsp;실전&amp;nbsp;검증을&amp;nbsp;통해서만&amp;nbsp;찾을&amp;nbsp;수&amp;nbsp;있다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;함께 읽으면 좋은 글&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://creator88837.tistory.com/14&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2026.05.30 - [바이낸스 선물 자동매매] - 7화 자동매매 백테스트, 수익률보다 MDD가 중요한 이유&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://creator88837.tistory.com/32&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2026.06.21 - [바이낸스 선물 자동매매] - 백테스트 파라미터 수정, 메모장으로 익절 손절 바꾸는 법&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://creator88837.tistory.com/27&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2026.06.14 - [바이낸스 선물 자동매매] - 11화 바이낸스 자동매매, 연 60% 수익에서 멈추는 이유&lt;/a&gt;&lt;/p&gt;</description>
      <category>바이낸스 선물 자동매매</category>
      <category>TPSL설정</category>
      <category>레버리지설정</category>
      <category>바이낸스</category>
      <category>백테스트</category>
      <category>봇최적화</category>
      <category>선물자동매매</category>
      <category>자동매매</category>
      <category>자동매매봇</category>
      <category>코인자동매매</category>
      <category>파라미터최적화</category>
      <author>creator88837</author>
      <guid isPermaLink="true">https://creator88837.tistory.com/50</guid>
      <comments>https://creator88837.tistory.com/50#entry50comment</comments>
      <pubDate>Sat, 25 Jul 2026 18:44:53 +0900</pubDate>
    </item>
    <item>
      <title>KDJ 자동매매 ONDO 백테스트, MDD -72%가 발목을 잡은 이유</title>
      <link>https://creator88837.tistory.com/49</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;바이낸스&amp;nbsp;선물&amp;nbsp;자동매매에서&amp;nbsp;KDJ&amp;nbsp;전략을&amp;nbsp;ONDO에&amp;nbsp;적용한&amp;nbsp;백테스트&amp;nbsp;결과를&amp;nbsp;정리했다.&lt;br /&gt;수익률은&amp;nbsp;높게&amp;nbsp;나왔다.&lt;br /&gt;문제는&amp;nbsp;MDD였다.&lt;br /&gt;이&amp;nbsp;글에서는&amp;nbsp;KDJ&amp;nbsp;지표의&amp;nbsp;기본&amp;nbsp;개념부터&amp;nbsp;실전&amp;nbsp;백테스트&amp;nbsp;결과,&amp;nbsp;그리고&amp;nbsp;MDD가&amp;nbsp;왜&amp;nbsp;자동매매에서&amp;nbsp;결정적인&amp;nbsp;지표인지를&amp;nbsp;실제&amp;nbsp;데이터를&amp;nbsp;바탕으로&amp;nbsp;정리한다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;KDJ 지표란 무엇인가&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;KDJ는 스토캐스틱(Stochastic) 오실레이터를 발전시킨 지표다.&lt;br /&gt;스토캐스틱은&amp;nbsp;현재&amp;nbsp;가격이&amp;nbsp;일정&amp;nbsp;기간의&amp;nbsp;가격&amp;nbsp;범위에서&amp;nbsp;어느&amp;nbsp;위치에&amp;nbsp;있는지를&amp;nbsp;보여주는&amp;nbsp;지표다.&lt;br /&gt;KDJ는&amp;nbsp;여기에&amp;nbsp;J선을&amp;nbsp;추가해서&amp;nbsp;신호를&amp;nbsp;더&amp;nbsp;빠르게&amp;nbsp;포착한다.&lt;br /&gt;&lt;br /&gt;세&amp;nbsp;개의&amp;nbsp;선으로&amp;nbsp;구성된다.&lt;br /&gt;K선,&amp;nbsp;D선,&amp;nbsp;J선이다.&lt;br /&gt;&lt;br /&gt;K선은&amp;nbsp;스토캐스틱의&amp;nbsp;기본&amp;nbsp;선이다.&lt;br /&gt;일정&amp;nbsp;기간(기본값&amp;nbsp;9)&amp;nbsp;동안의&amp;nbsp;최고가와&amp;nbsp;최저가&amp;nbsp;범위에서&amp;nbsp;현재&amp;nbsp;종가의&amp;nbsp;위치를&amp;nbsp;0~100으로&amp;nbsp;표시한다.&lt;br /&gt;가격이&amp;nbsp;최고점에&amp;nbsp;가까울수록&amp;nbsp;100에&amp;nbsp;가깝고,&amp;nbsp;최저점에&amp;nbsp;가까울수록&amp;nbsp;0에&amp;nbsp;가깝다.&lt;br /&gt;&lt;br /&gt;D선은&amp;nbsp;K선의&amp;nbsp;이동평균이다.&lt;br /&gt;기본값은&amp;nbsp;3기간이다.&lt;br /&gt;K선보다&amp;nbsp;느리게&amp;nbsp;움직인다.&lt;br /&gt;&lt;br /&gt;J선은&amp;nbsp;K선과&amp;nbsp;D선의&amp;nbsp;차이를&amp;nbsp;증폭한&amp;nbsp;선이다.&lt;br /&gt;계산식은&amp;nbsp;3K&amp;nbsp;-&amp;nbsp;2D다.&lt;br /&gt;그래서&amp;nbsp;0~100&amp;nbsp;범위를&amp;nbsp;벗어나기도&amp;nbsp;한다.&lt;br /&gt;가격&amp;nbsp;변화에&amp;nbsp;가장&amp;nbsp;먼저&amp;nbsp;반응하고,&amp;nbsp;변동폭도&amp;nbsp;가장&amp;nbsp;크다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;KDJ에서 매수&amp;middot;매도 신호를 읽는 법&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;KDJ는 두 가지 방식으로 신호를 읽는다.&lt;br /&gt;과매수&amp;middot;과매도&amp;nbsp;구간과&amp;nbsp;크로스&amp;nbsp;신호다.&lt;br /&gt;&lt;br /&gt;과매수&amp;middot;과매도&amp;nbsp;구간:&lt;br /&gt;K와&amp;nbsp;D가&amp;nbsp;80&amp;nbsp;이상이면&amp;nbsp;과매수&amp;nbsp;구간이다.&amp;nbsp;가격이&amp;nbsp;너무&amp;nbsp;올라서&amp;nbsp;조정이&amp;nbsp;올&amp;nbsp;수&amp;nbsp;있다는&amp;nbsp;의미다.&lt;br /&gt;K와&amp;nbsp;D가&amp;nbsp;20&amp;nbsp;이하이면&amp;nbsp;과매도&amp;nbsp;구간이다.&amp;nbsp;가격이&amp;nbsp;너무&amp;nbsp;내려서&amp;nbsp;반등이&amp;nbsp;올&amp;nbsp;수&amp;nbsp;있다는&amp;nbsp;의미다.&lt;br /&gt;&lt;br /&gt;크로스&amp;nbsp;신호:&lt;br /&gt;K선이&amp;nbsp;D선을&amp;nbsp;아래에서&amp;nbsp;위로&amp;nbsp;뚫으면&amp;nbsp;골든크로스다.&amp;nbsp;상승&amp;nbsp;신호로&amp;nbsp;본다.&lt;br /&gt;K선이&amp;nbsp;D선을&amp;nbsp;위에서&amp;nbsp;아래로&amp;nbsp;뚫으면&amp;nbsp;데드크로스다.&amp;nbsp;하락&amp;nbsp;신호로&amp;nbsp;본다.&lt;br /&gt;&lt;br /&gt;자동매매에서는&amp;nbsp;두&amp;nbsp;조건을&amp;nbsp;함께&amp;nbsp;쓰는&amp;nbsp;게&amp;nbsp;일반적이다.&lt;br /&gt;과매도&amp;nbsp;구간(K,&amp;nbsp;D&amp;nbsp;모두&amp;nbsp;20&amp;nbsp;이하)에서&amp;nbsp;골든크로스가&amp;nbsp;나오면&amp;nbsp;LONG&amp;nbsp;진입.&lt;br /&gt;과매수&amp;nbsp;구간(K,&amp;nbsp;D&amp;nbsp;모두&amp;nbsp;80&amp;nbsp;이상)에서&amp;nbsp;데드크로스가&amp;nbsp;나오면&amp;nbsp;SHORT&amp;nbsp;진입.&lt;br /&gt;둘&amp;nbsp;중&amp;nbsp;하나만&amp;nbsp;쓰면&amp;nbsp;오신호가&amp;nbsp;많아진다.&lt;br /&gt;&lt;br /&gt;J선은&amp;nbsp;단독&amp;nbsp;신호로&amp;nbsp;쓰기도&amp;nbsp;한다.&lt;br /&gt;J선이&amp;nbsp;0&amp;nbsp;이하로&amp;nbsp;내려가면&amp;nbsp;극단적&amp;nbsp;과매도,&amp;nbsp;100&amp;nbsp;이상이면&amp;nbsp;극단적&amp;nbsp;과매수로&amp;nbsp;본다.&lt;br /&gt;방향&amp;nbsp;전환이&amp;nbsp;올&amp;nbsp;가능성이&amp;nbsp;높은&amp;nbsp;구간이다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;KDJ를 자동매매 코드로 만드는 방법&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;파이썬에서 KDJ는 직접 계산 방식으로 구현한다.&lt;br /&gt;&lt;br /&gt;[AI에게&amp;nbsp;시킨&amp;nbsp;명령어]&lt;br /&gt;&quot;2시간봉&amp;nbsp;기준으로&amp;nbsp;KDJ&amp;nbsp;지표를&amp;nbsp;계산하고,&amp;nbsp;K가&amp;nbsp;D를&amp;nbsp;골든크로스할&amp;nbsp;때&amp;nbsp;LONG&amp;nbsp;신호,&amp;nbsp;데드크로스할&amp;nbsp;때&amp;nbsp;SHORT&amp;nbsp;신호를&amp;nbsp;잡는&amp;nbsp;코드&amp;nbsp;작성해줘.&amp;nbsp;K와&amp;nbsp;D가&amp;nbsp;모두&amp;nbsp;20&amp;nbsp;이하일&amp;nbsp;때만&amp;nbsp;LONG,&amp;nbsp;80&amp;nbsp;이상일&amp;nbsp;때만&amp;nbsp;SHORT&amp;nbsp;허용하도록&quot;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1784970657124&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;KDJ 계산 코드:
low_min = df['low'].rolling(window=9).min()
high_max = df['high'].rolling(window=9).max()
rsv = (df['close'] - low_min) / (high_max - low_min) * 100
df['K'] = rsv.ewm(com=2).mean()
df['D'] = df['K'].ewm(com=2).mean()
df['J'] = 3 * df['K'] - 2 * df['D']

LONG 진입 조건 코드:
long_signal = (
    (df['K'] &amp;gt; df['D']) &amp;amp;
    (df['K'].shift(1) &amp;lt;= df['D'].shift(1)) &amp;amp;
    (df['K'] &amp;lt; 20) &amp;amp;
    (df['D'] &amp;lt; 20)
)
K가 D를 아래에서 위로 돌파하고, K와 D가 모두 20 이하일 때만 LONG으로 진입한다.

SHORT 진입 조건 코드:
short_signal = (
    (df['K'] &amp;lt; df['D']) &amp;amp;
    (df['K'].shift(1) &amp;gt;= df['D'].shift(1)) &amp;amp;
    (df['K'] &amp;gt; 80) &amp;amp;
    (df['D'] &amp;gt; 80)
)
K가 D를 위에서 아래로 돌파하고, K와 D가 모두 80 이상일 때만 SHORT으로 진입한다.&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1976&quot; data-origin-height=&quot;767&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/SxXZY/dJMcabdTTXw/7TmwAuoIq3KYy246K6MDO1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/SxXZY/dJMcabdTTXw/7TmwAuoIq3KYy246K6MDO1/img.png&quot; data-alt=&quot;ONDO 2h 백테스트 결과표&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/SxXZY/dJMcabdTTXw/7TmwAuoIq3KYy246K6MDO1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FSxXZY%2FdJMcabdTTXw%2F7TmwAuoIq3KYy246K6MDO1%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;1976&quot; height=&quot;767&quot; data-origin-width=&quot;1976&quot; data-origin-height=&quot;767&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;ONDO 2h 백테스트 결과표&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;KDJ 전략 ONDO 백테스트 결과 비교표&amp;nbsp;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;초기&amp;nbsp;설정과&amp;nbsp;파라미터&amp;nbsp;최적화&amp;nbsp;후&amp;nbsp;결과를&amp;nbsp;나란히&amp;nbsp;정리한&amp;nbsp;표.&amp;nbsp;수익률,&amp;nbsp;MDD,&amp;nbsp;거래&amp;nbsp;횟수,&amp;nbsp;승률&amp;nbsp;비교.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;ONDO 봇 백테스트 결과&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;2봇에 ONDO/USDT 2시간봉 기준으로 KDJ 전략을 적용하고 백테스트를 돌렸다.&lt;br /&gt;기간은&amp;nbsp;2024년&amp;nbsp;1월부터&amp;nbsp;2026년&amp;nbsp;4월까지,&amp;nbsp;초기&amp;nbsp;자본&amp;nbsp;$150,&amp;nbsp;레버리지&amp;nbsp;2배&amp;nbsp;기준이다.&lt;br /&gt;거래&amp;nbsp;횟수는&amp;nbsp;1,153회였다.&lt;br /&gt;&lt;br /&gt;실제로&amp;nbsp;2봇은&amp;nbsp;운영&amp;nbsp;초반에&amp;nbsp;전략을&amp;nbsp;여러&amp;nbsp;번&amp;nbsp;바꿨다.&lt;br /&gt;지금&amp;nbsp;보는&amp;nbsp;수치는&amp;nbsp;KDJ&amp;nbsp;전략으로&amp;nbsp;전체&amp;nbsp;기간을&amp;nbsp;시뮬레이션한&amp;nbsp;백테스트&amp;nbsp;결과다.&lt;br /&gt;&lt;br /&gt;수익률은&amp;nbsp;높게&amp;nbsp;나왔다.&lt;br /&gt;2024년이&amp;nbsp;특히&amp;nbsp;컸다.&lt;br /&gt;ONDO가&amp;nbsp;코인&amp;nbsp;출시&amp;nbsp;초반이라&amp;nbsp;방향이&amp;nbsp;뚜렷한&amp;nbsp;상승장이었기&amp;nbsp;때문이다.&lt;br /&gt;KDJ는&amp;nbsp;추세가&amp;nbsp;있을&amp;nbsp;때&amp;nbsp;강하다.&lt;br /&gt;방향이&amp;nbsp;잡히면&amp;nbsp;신호가&amp;nbsp;맞아&amp;nbsp;떨어지고&amp;nbsp;익절이&amp;nbsp;쌓인다.&lt;br /&gt;2024년&amp;nbsp;결과가&amp;nbsp;크게&amp;nbsp;나온&amp;nbsp;건&amp;nbsp;이&amp;nbsp;때문이다.&lt;br /&gt;&lt;br /&gt;2025년,&amp;nbsp;2026년으로&amp;nbsp;갈수록&amp;nbsp;결과가&amp;nbsp;줄어들었다.&lt;br /&gt;ONDO의&amp;nbsp;상승&amp;nbsp;에너지가&amp;nbsp;꺾이면서&amp;nbsp;KDJ&amp;nbsp;신호가&amp;nbsp;자주&amp;nbsp;빗나가기&amp;nbsp;시작했다.&lt;br /&gt;&lt;br /&gt;그리고&amp;nbsp;MDD가&amp;nbsp;문제였다.&lt;br /&gt;전체&amp;nbsp;구간&amp;nbsp;MDD가&amp;nbsp;-72.78%였다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;KDJ 신호가 통하는 장과 통하지 않는 장&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;KDJ는 가격이 한 방향으로 움직이는 추세 장에서 강하다.&lt;br /&gt;K선과&amp;nbsp;D선이&amp;nbsp;교차하면서&amp;nbsp;방향이&amp;nbsp;잡히고,&amp;nbsp;신호대로&amp;nbsp;수익이&amp;nbsp;쌓인다.&lt;br /&gt;&lt;br /&gt;반대로&amp;nbsp;방향&amp;nbsp;없이&amp;nbsp;위아래를&amp;nbsp;반복하는&amp;nbsp;횡보&amp;nbsp;장에서는&amp;nbsp;약하다.&lt;br /&gt;신호가&amp;nbsp;나올&amp;nbsp;때마다&amp;nbsp;진입하는데,&amp;nbsp;가격이&amp;nbsp;방향을&amp;nbsp;못&amp;nbsp;잡으니&amp;nbsp;진입할&amp;nbsp;때마다&amp;nbsp;손실이&amp;nbsp;쌓인다.&lt;br /&gt;&lt;br /&gt;ONDO는&amp;nbsp;2024년&amp;nbsp;출시&amp;nbsp;초반에&amp;nbsp;강한&amp;nbsp;상승&amp;nbsp;추세를&amp;nbsp;탔다.&lt;br /&gt;그&amp;nbsp;구간에서&amp;nbsp;KDJ&amp;nbsp;신호가&amp;nbsp;잘&amp;nbsp;맞아&amp;nbsp;떨어지며&amp;nbsp;수익이&amp;nbsp;쌓였다.&lt;br /&gt;2025년부터는&amp;nbsp;흐름이&amp;nbsp;꺾이면서&amp;nbsp;횡보&amp;nbsp;구간이&amp;nbsp;길어졌다.&lt;br /&gt;KDJ&amp;nbsp;신호는&amp;nbsp;계속&amp;nbsp;나오는데&amp;nbsp;방향이&amp;nbsp;없어서&amp;nbsp;잔손절이&amp;nbsp;반복됐다.&lt;br /&gt;&lt;br /&gt;연도별&amp;nbsp;백테스트&amp;nbsp;수익률이&amp;nbsp;이&amp;nbsp;흐름을&amp;nbsp;그대로&amp;nbsp;보여준다.&lt;br /&gt;&lt;br /&gt;2024년:&amp;nbsp;+882%&amp;nbsp;(백테스트&amp;nbsp;기준)&lt;br /&gt;2025년:&amp;nbsp;+229%&amp;nbsp;(백테스트&amp;nbsp;기준)&lt;br /&gt;2026년&amp;nbsp;(4개월):&amp;nbsp;+103%&amp;nbsp;(백테스트&amp;nbsp;기준)&lt;br /&gt;누적&amp;nbsp;합계:&amp;nbsp;+6,442%&amp;nbsp;(백테스트&amp;nbsp;기준)&lt;br /&gt;&lt;br /&gt;수익률&amp;nbsp;자체는&amp;nbsp;전부&amp;nbsp;플러스지만,&amp;nbsp;2024년&amp;nbsp;대비&amp;nbsp;이후&amp;nbsp;구간이&amp;nbsp;급격히&amp;nbsp;줄어든다.&lt;br /&gt;시장&amp;nbsp;환경이&amp;nbsp;달라진&amp;nbsp;만큼&amp;nbsp;KDJ&amp;nbsp;신호의&amp;nbsp;정확도도&amp;nbsp;달라진&amp;nbsp;결과다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;MDD -72%가 실전에서 의미하는 것&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;MDD -72.78%는 원금의 70% 넘게 줄어드는 구간이 생긴다는 뜻이다.&lt;br /&gt;백테스트&amp;nbsp;화면에서&amp;nbsp;보면&amp;nbsp;그냥&amp;nbsp;숫자다.&lt;br /&gt;&lt;br /&gt;실제로&amp;nbsp;봇&amp;nbsp;운영&amp;nbsp;중&amp;nbsp;잔고가&amp;nbsp;$50&amp;nbsp;수준까지&amp;nbsp;줄어든&amp;nbsp;시기가&amp;nbsp;있었다.&lt;br /&gt;전략을&amp;nbsp;여러&amp;nbsp;번&amp;nbsp;교체한&amp;nbsp;결과이지만,&amp;nbsp;KDJ&amp;nbsp;전략의&amp;nbsp;높은&amp;nbsp;MDD가&amp;nbsp;영향을&amp;nbsp;준&amp;nbsp;건&amp;nbsp;분명했다.&lt;br /&gt;그&amp;nbsp;구간에서&amp;nbsp;버티지&amp;nbsp;못하고&amp;nbsp;봇을&amp;nbsp;끄면&amp;nbsp;이후&amp;nbsp;반등을&amp;nbsp;전부&amp;nbsp;놓친다.&lt;br /&gt;수익률이&amp;nbsp;아무리&amp;nbsp;높게&amp;nbsp;나와도&amp;nbsp;실전에서&amp;nbsp;봇을&amp;nbsp;계속&amp;nbsp;돌리지&amp;nbsp;못하면&amp;nbsp;의미가&amp;nbsp;없다.&lt;br /&gt;보통&amp;nbsp;이&amp;nbsp;구간에서&amp;nbsp;버티지&amp;nbsp;못하고&amp;nbsp;봇을&amp;nbsp;끄게&amp;nbsp;된다.&lt;br /&gt;봇을&amp;nbsp;끄는&amp;nbsp;순간&amp;nbsp;그&amp;nbsp;뒤에&amp;nbsp;오는&amp;nbsp;반등을&amp;nbsp;전부&amp;nbsp;놓친다.&lt;br /&gt;수익률이&amp;nbsp;아무리&amp;nbsp;높게&amp;nbsp;나와도&amp;nbsp;실전에서&amp;nbsp;봇을&amp;nbsp;계속&amp;nbsp;돌리지&amp;nbsp;못하면&amp;nbsp;의미가&amp;nbsp;없다.&lt;br /&gt;&lt;br /&gt;MDD가&amp;nbsp;높아진&amp;nbsp;이유는&amp;nbsp;KDJ&amp;nbsp;전략의&amp;nbsp;특성에&amp;nbsp;있다.&lt;br /&gt;KDJ는&amp;nbsp;빠른&amp;nbsp;지표다.&lt;br /&gt;신호가&amp;nbsp;자주&amp;nbsp;나온다.&lt;br /&gt;추세&amp;nbsp;장에서는&amp;nbsp;이게&amp;nbsp;장점이지만,&amp;nbsp;횡보&amp;nbsp;구간에서는&amp;nbsp;신호가&amp;nbsp;나올&amp;nbsp;때마다&amp;nbsp;진입하다가&amp;nbsp;잔손절이&amp;nbsp;쌓인다.&lt;br /&gt;&lt;br /&gt;실제로&amp;nbsp;2봇,&amp;nbsp;3봇,&amp;nbsp;4봇이&amp;nbsp;ONDO를&amp;nbsp;거래했는데&amp;nbsp;6월에&amp;nbsp;셋&amp;nbsp;다&amp;nbsp;같이&amp;nbsp;무너졌다.&lt;br /&gt;ONDO가&amp;nbsp;횡보하던&amp;nbsp;구간이었다.&lt;br /&gt;KDJ가&amp;nbsp;계속&amp;nbsp;신호를&amp;nbsp;냈고&amp;nbsp;봇은&amp;nbsp;계속&amp;nbsp;들어갔다&amp;nbsp;나오고,&amp;nbsp;들어갔다&amp;nbsp;나오기를&amp;nbsp;반복했다.&lt;br /&gt;그&amp;nbsp;경험을&amp;nbsp;정리한&amp;nbsp;글이&amp;nbsp;있다.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;a href=&quot;https://creator88837.tistory.com/45&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2026.07.09 - [바이낸스 선물 자동매매] - 바이낸스 봇 리스크 분산, 같은 코인에 3개 몰았더니 다 같이 -$183&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;br /&gt;&lt;br /&gt;파라미터를 바꿔서 테스트해봤는데&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;MDD를 낮추려고 파라미터를 바꿔가며 여러 번 테스트했다.&lt;br /&gt;period,&amp;nbsp;signal,&amp;nbsp;TP,&amp;nbsp;SL,&amp;nbsp;OB&amp;nbsp;값을&amp;nbsp;다르게&amp;nbsp;조합했다.&lt;br /&gt;&lt;br /&gt;거래&amp;nbsp;횟수는&amp;nbsp;1,153회에서&amp;nbsp;858회로&amp;nbsp;줄었다.&lt;br /&gt;MDD는&amp;nbsp;-72.78%에서&amp;nbsp;-66.28%로&amp;nbsp;소폭&amp;nbsp;개선됐다.&lt;br /&gt;&lt;br /&gt;수치상으로는&amp;nbsp;줄었다.&lt;br /&gt;하지만&amp;nbsp;여전히&amp;nbsp;-66%다.&lt;br /&gt;$150이&amp;nbsp;약&amp;nbsp;$51로&amp;nbsp;줄어드는&amp;nbsp;구간이&amp;nbsp;생긴다는&amp;nbsp;뜻이다.&lt;br /&gt;실전&amp;nbsp;기준으로&amp;nbsp;크게&amp;nbsp;다르지&amp;nbsp;않다.&lt;br /&gt;&lt;br /&gt;파라미터를&amp;nbsp;바꾸는&amp;nbsp;방식으로는&amp;nbsp;이&amp;nbsp;전략의&amp;nbsp;MDD를&amp;nbsp;실전&amp;nbsp;운영이&amp;nbsp;가능한&amp;nbsp;수준까지&amp;nbsp;낮추기&amp;nbsp;어렵다는&amp;nbsp;결론이&amp;nbsp;나왔다.&lt;br /&gt;전략&amp;nbsp;구조&amp;nbsp;자체의&amp;nbsp;한계였다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;결론&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;KDJ는 빠른 신호가 장점인 지표다.&lt;br /&gt;추세가&amp;nbsp;뚜렷한&amp;nbsp;장에서는&amp;nbsp;백테스트&amp;nbsp;수익률이&amp;nbsp;높게&amp;nbsp;나온다.&lt;br /&gt;&lt;br /&gt;하지만&amp;nbsp;MDD를&amp;nbsp;먼저&amp;nbsp;봐야&amp;nbsp;한다.&lt;br /&gt;수익률이&amp;nbsp;아무리&amp;nbsp;높아도&amp;nbsp;MDD가&amp;nbsp;-70%를&amp;nbsp;넘으면&amp;nbsp;실전에서&amp;nbsp;버티기&amp;nbsp;어렵다.&lt;br /&gt;파라미터&amp;nbsp;최적화로도&amp;nbsp;MDD가&amp;nbsp;안&amp;nbsp;내려온다면&amp;nbsp;전략&amp;nbsp;구조&amp;nbsp;자체를&amp;nbsp;바꿔야&amp;nbsp;한다.&lt;br /&gt;&lt;br /&gt;백테스트를&amp;nbsp;볼&amp;nbsp;때&amp;nbsp;수익률과&amp;nbsp;MDD를&amp;nbsp;함께&amp;nbsp;보는&amp;nbsp;습관이&amp;nbsp;자동매매에서&amp;nbsp;가장&amp;nbsp;중요한&amp;nbsp;것&amp;nbsp;중&amp;nbsp;하나다.&lt;br /&gt;높은&amp;nbsp;수익률보다&amp;nbsp;낮은&amp;nbsp;MDD가&amp;nbsp;실전에서&amp;nbsp;더&amp;nbsp;오래&amp;nbsp;살아남는다.&lt;br /&gt;이번&amp;nbsp;ONDO&amp;nbsp;KDJ&amp;nbsp;백테스트가&amp;nbsp;그&amp;nbsp;사실을&amp;nbsp;다시&amp;nbsp;확인한&amp;nbsp;사례였다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;함께 읽으면 좋은 글&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://creator88837.tistory.com/14&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2026.05.30 - [바이낸스 선물 자동매매] - 7화 자동매매 백테스트, 수익률보다 MDD가 중요한 이유&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://creator88837.tistory.com/50&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2026.07.25 - [바이낸스 선물 자동매매] - 바이낸스 자동매매 TP SL 설정, 백테스트 수백 번으로 찾는 법&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;</description>
      <category>바이낸스 선물 자동매매</category>
      <category>KDJ</category>
      <category>KDJ지표</category>
      <category>MDD</category>
      <category>ONDO자동매매</category>
      <category>바이낸스</category>
      <category>백테스트</category>
      <category>선물자동매매</category>
      <category>자동매매</category>
      <category>자동매매봇</category>
      <category>코인자동매매</category>
      <author>creator88837</author>
      <guid isPermaLink="true">https://creator88837.tistory.com/49</guid>
      <comments>https://creator88837.tistory.com/49#entry49comment</comments>
      <pubDate>Sat, 25 Jul 2026 18:32:55 +0900</pubDate>
    </item>
    <item>
      <title>바이낸스 헤지 모드와 원웨이 모드 차이, 자동매매는 무엇이 좋을까</title>
      <link>https://creator88837.tistory.com/48</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;바이낸스&amp;nbsp;선물&amp;nbsp;자동매매&amp;nbsp;봇을&amp;nbsp;만들&amp;nbsp;때&amp;nbsp;포지션&amp;nbsp;모드를&amp;nbsp;선택해야&amp;nbsp;한다.&lt;br /&gt;헤지&amp;nbsp;모드(Hedge&amp;nbsp;Mode)와&amp;nbsp;원웨이&amp;nbsp;모드(One-way&amp;nbsp;Mode)&amp;nbsp;두&amp;nbsp;가지다.&lt;br /&gt;인터넷에는&amp;nbsp;무조건&amp;nbsp;헤지&amp;nbsp;모드를&amp;nbsp;사용해야&amp;nbsp;한다는&amp;nbsp;설명이&amp;nbsp;많다.&lt;br /&gt;하지만&amp;nbsp;봇&amp;nbsp;구조에&amp;nbsp;따라&amp;nbsp;오히려&amp;nbsp;원웨이&amp;nbsp;모드가&amp;nbsp;더&amp;nbsp;단순하고&amp;nbsp;오류도&amp;nbsp;적다.&lt;br /&gt;이&amp;nbsp;글에서는&amp;nbsp;두&amp;nbsp;모드의&amp;nbsp;차이,&amp;nbsp;각각&amp;nbsp;어떤&amp;nbsp;경우에&amp;nbsp;맞는지를&amp;nbsp;실전&amp;nbsp;경험을&amp;nbsp;바탕으로&amp;nbsp;정리한다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;원웨이 모드와 헤지 모드의 차이&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;원웨이 모드(One-way Mode)는 한 코인에 한 방향만 포지션을 가질 수 있다.&lt;br /&gt;LONG이&amp;nbsp;열려있으면&amp;nbsp;SHORT을&amp;nbsp;추가로&amp;nbsp;열&amp;nbsp;수&amp;nbsp;없다.&lt;br /&gt;LONG&amp;nbsp;상태에서&amp;nbsp;SHORT&amp;nbsp;주문을&amp;nbsp;넣으면&amp;nbsp;기존&amp;nbsp;LONG이&amp;nbsp;청산되고&amp;nbsp;SHORT이&amp;nbsp;새로&amp;nbsp;열린다.&lt;br /&gt;방향이&amp;nbsp;바뀌는&amp;nbsp;순간&amp;nbsp;기존&amp;nbsp;포지션이&amp;nbsp;자동으로&amp;nbsp;정리되는&amp;nbsp;구조다.&lt;br /&gt;&lt;br /&gt;헤지&amp;nbsp;모드(Hedge&amp;nbsp;Mode)는&amp;nbsp;같은&amp;nbsp;코인에&amp;nbsp;LONG과&amp;nbsp;SHORT을&amp;nbsp;동시에&amp;nbsp;가질&amp;nbsp;수&amp;nbsp;있다.&lt;br /&gt;LONG이&amp;nbsp;열려있어도&amp;nbsp;별도로&amp;nbsp;SHORT을&amp;nbsp;열&amp;nbsp;수&amp;nbsp;있다.&lt;br /&gt;두&amp;nbsp;포지션은&amp;nbsp;서로&amp;nbsp;독립적으로&amp;nbsp;존재한다.&lt;br /&gt;코드에서&amp;nbsp;positionSide&amp;nbsp;파라미터로&amp;nbsp;각&amp;nbsp;주문이&amp;nbsp;어느&amp;nbsp;포지션에&amp;nbsp;해당하는지&amp;nbsp;명시해야&amp;nbsp;한다.&lt;br /&gt;&lt;br /&gt;바이낸스&amp;nbsp;선물의&amp;nbsp;기본값은&amp;nbsp;원웨이&amp;nbsp;모드다.&lt;br /&gt;계정을&amp;nbsp;새로&amp;nbsp;만들면&amp;nbsp;원웨이&amp;nbsp;모드로&amp;nbsp;시작된다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;원웨이 모드가 맞는 경우&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;봇이 순차적으로 거래한다면 원웨이 모드로 충분하다.&lt;br /&gt;&lt;br /&gt;순차적&amp;nbsp;거래란&amp;nbsp;이런&amp;nbsp;구조다.&lt;br /&gt;LONG&amp;nbsp;진입&amp;nbsp;&amp;rarr;&amp;nbsp;TP&amp;nbsp;또는&amp;nbsp;SL로&amp;nbsp;청산&amp;nbsp;&amp;rarr;&amp;nbsp;SHORT&amp;nbsp;진입&amp;nbsp;&amp;rarr;&amp;nbsp;TP&amp;nbsp;또는&amp;nbsp;SL로&amp;nbsp;청산&amp;nbsp;&amp;rarr;&amp;nbsp;다시&amp;nbsp;LONG&amp;nbsp;진입.&lt;br /&gt;한&amp;nbsp;번에&amp;nbsp;한&amp;nbsp;방향만&amp;nbsp;보유하고,&amp;nbsp;청산된&amp;nbsp;뒤에&amp;nbsp;다음&amp;nbsp;포지션을&amp;nbsp;연다.&lt;br /&gt;&lt;br /&gt;이&amp;nbsp;구조에서&amp;nbsp;원웨이&amp;nbsp;모드의&amp;nbsp;장점은&amp;nbsp;코드가&amp;nbsp;단순하다는&amp;nbsp;점이다.&lt;br /&gt;positionSide&amp;nbsp;파라미터를&amp;nbsp;넣을&amp;nbsp;필요가&amp;nbsp;없다.&lt;br /&gt;MARKET&amp;nbsp;청산&amp;nbsp;주문에&amp;nbsp;reduceOnly를&amp;nbsp;써도&amp;nbsp;오류가&amp;nbsp;없다.&lt;br /&gt;방향&amp;nbsp;전환도&amp;nbsp;자연스럽다.&amp;nbsp;LONG&amp;nbsp;포지션이&amp;nbsp;청산되면&amp;nbsp;SHORT&amp;nbsp;주문을&amp;nbsp;넣으면&amp;nbsp;된다.&lt;br /&gt;&lt;br /&gt;여러&amp;nbsp;봇을&amp;nbsp;운영하더라도&amp;nbsp;봇마다&amp;nbsp;바이낸스&amp;nbsp;서브계정을&amp;nbsp;따로&amp;nbsp;만들고&amp;nbsp;각자&amp;nbsp;API&amp;nbsp;키를&amp;nbsp;쓴다면&amp;nbsp;봇끼리&amp;nbsp;간섭이&amp;nbsp;없다.&lt;br /&gt;봇&amp;nbsp;2가&amp;nbsp;XRP&amp;nbsp;SHORT을&amp;nbsp;들고&amp;nbsp;있어도,&amp;nbsp;봇&amp;nbsp;3이&amp;nbsp;별도&amp;nbsp;서브계정에서&amp;nbsp;XRP&amp;nbsp;LONG을&amp;nbsp;열면&amp;nbsp;완전히&amp;nbsp;독립적이다.&lt;br /&gt;이&amp;nbsp;경우&amp;nbsp;원웨이&amp;nbsp;모드로&amp;nbsp;충분하다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2826&quot; data-origin-height=&quot;1526&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cnvUVK/dJMcajiIuxS/BlIicWTxha40F55nmk1We0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cnvUVK/dJMcajiIuxS/BlIicWTxha40F55nmk1We0/img.png&quot; data-alt=&quot;원웨이 모드 VS 헤지 모드 비교&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cnvUVK/dJMcajiIuxS/BlIicWTxha40F55nmk1We0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcnvUVK%2FdJMcajiIuxS%2FBlIicWTxha40F55nmk1We0%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;2826&quot; height=&quot;1526&quot; data-origin-width=&quot;2826&quot; data-origin-height=&quot;1526&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;원웨이 모드 VS 헤지 모드 비교&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;바이낸스 헤지 모드 vs 원웨이 모드 비교표&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;봇&amp;nbsp;구조별로&amp;nbsp;어떤&amp;nbsp;모드가&amp;nbsp;적합한지,&amp;nbsp;코드&amp;nbsp;차이,&amp;nbsp;오류&amp;nbsp;위험을&amp;nbsp;한눈에&amp;nbsp;정리한&amp;nbsp;표.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;헤지 모드가 필요한 경우&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;내가 운영해 본 자동매매 기준에서는 헤지 모드가 꼭 필요한 경우가 한 가지 있었다.&lt;br /&gt;봇&amp;nbsp;하나가&amp;nbsp;LONG을&amp;nbsp;닫지&amp;nbsp;않은&amp;nbsp;채&amp;nbsp;SHORT을&amp;nbsp;추가로&amp;nbsp;열어야&amp;nbsp;할&amp;nbsp;때다.&lt;br /&gt;&lt;br /&gt;예를&amp;nbsp;들어&amp;nbsp;이런&amp;nbsp;전략이다.&lt;br /&gt;XRP&amp;nbsp;LONG으로&amp;nbsp;진입한&amp;nbsp;뒤&amp;nbsp;하락&amp;nbsp;신호가&amp;nbsp;잡히면&amp;nbsp;SHORT을&amp;nbsp;추가로&amp;nbsp;연다.&lt;br /&gt;LONG은&amp;nbsp;그대로&amp;nbsp;두고&amp;nbsp;SHORT을&amp;nbsp;헤지로&amp;nbsp;보유하는&amp;nbsp;구조다.&lt;br /&gt;이&amp;nbsp;경우&amp;nbsp;원웨이&amp;nbsp;모드에서는&amp;nbsp;SHORT&amp;nbsp;주문이&amp;nbsp;LONG을&amp;nbsp;청산해버린다.&lt;br /&gt;헤지&amp;nbsp;모드라야&amp;nbsp;두&amp;nbsp;포지션이&amp;nbsp;독립적으로&amp;nbsp;유지된다.&lt;br /&gt;&lt;br /&gt;두&amp;nbsp;봇이&amp;nbsp;같은&amp;nbsp;코인의&amp;nbsp;반대&amp;nbsp;방향을&amp;nbsp;거래하는&amp;nbsp;경우는&amp;nbsp;헤지&amp;nbsp;모드가&amp;nbsp;필요&amp;nbsp;없다.&lt;br /&gt;봇마다&amp;nbsp;서브계정을&amp;nbsp;따로&amp;nbsp;만들고&amp;nbsp;API&amp;nbsp;키를&amp;nbsp;각자&amp;nbsp;쓰면&amp;nbsp;봇끼리&amp;nbsp;포지션이&amp;nbsp;간섭하지&amp;nbsp;않는다.&lt;br /&gt;서브계정&amp;nbsp;분리&amp;nbsp;구조라면&amp;nbsp;원웨이&amp;nbsp;모드로도&amp;nbsp;충분하다.&lt;br /&gt;&lt;br /&gt;단순한&amp;nbsp;추세&amp;nbsp;추종이나&amp;nbsp;TP/SL&amp;nbsp;기반&amp;nbsp;전략은&amp;nbsp;한&amp;nbsp;번에&amp;nbsp;한&amp;nbsp;방향만&amp;nbsp;보유한다.&lt;br /&gt;이런&amp;nbsp;전략에서&amp;nbsp;헤지&amp;nbsp;모드는&amp;nbsp;굳이&amp;nbsp;필요하지&amp;nbsp;않다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;헤지 모드에서 코드가 달라지는 점&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;헤지 모드를 쓰면 코드에 positionSide를 명시해야 한다.&lt;br /&gt;모든&amp;nbsp;주문에&amp;nbsp;LONG&amp;nbsp;또는&amp;nbsp;SHORT&amp;nbsp;방향을&amp;nbsp;지정해야&amp;nbsp;한다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1784449967549&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;SHORT 진입:
exchange.create_order('BTCUSDT', 'MARKET', 'sell', amount,
                      params={'positionSide': 'SHORT'})

SHORT 청산:
exchange.create_order('BTCUSDT', 'MARKET', 'buy', amount,
                      params={'positionSide': 'SHORT'})&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;원웨이&amp;nbsp;모드에서는&amp;nbsp;positionSide가&amp;nbsp;필요&amp;nbsp;없다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1784449993253&quot; class=&quot;bash&quot; data-ke-language=&quot;bash&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;SHORT 진입:
exchange.create_order('BTCUSDT', 'MARKET', 'sell', amount)

SHORT 청산:
exchange.create_order('BTCUSDT', 'MARKET', 'buy', amount,
                      params={'reduceOnly': True})&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;헤지&amp;nbsp;모드에서는&amp;nbsp;MARKET&amp;nbsp;청산&amp;nbsp;주문에&amp;nbsp;reduceOnly를&amp;nbsp;쓰면&amp;nbsp;-2022&amp;nbsp;오류가&amp;nbsp;난다.&lt;br /&gt;원웨이&amp;nbsp;모드에서는&amp;nbsp;reduceOnly가&amp;nbsp;정상&amp;nbsp;작동한다.&lt;br /&gt;실용글&amp;nbsp;20에서&amp;nbsp;다룬&amp;nbsp;-2022&amp;nbsp;오류가&amp;nbsp;바로&amp;nbsp;헤지&amp;nbsp;모드에서&amp;nbsp;reduceOnly를&amp;nbsp;쓴&amp;nbsp;게&amp;nbsp;원인이었다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;내 봇 운영에서 배운 것&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;처음 봇을 만들 때 헤지 모드로 설정하고 시작했다.&lt;br /&gt;봇이&amp;nbsp;자동으로&amp;nbsp;양방향&amp;nbsp;거래를&amp;nbsp;한다고&amp;nbsp;생각했기&amp;nbsp;때문이다.&lt;br /&gt;&lt;br /&gt;실제로는&amp;nbsp;서브계정마다&amp;nbsp;API&amp;nbsp;키가&amp;nbsp;달랐고,&amp;nbsp;각&amp;nbsp;봇은&amp;nbsp;순차적으로&amp;nbsp;거래하고&amp;nbsp;있었다.&lt;br /&gt;헤지&amp;nbsp;모드가&amp;nbsp;굳이&amp;nbsp;필요하지&amp;nbsp;않은&amp;nbsp;구조였다.&lt;br /&gt;&lt;br /&gt;그&amp;nbsp;결과&amp;nbsp;positionSide를&amp;nbsp;모든&amp;nbsp;주문에&amp;nbsp;넣어야&amp;nbsp;했고,&amp;nbsp;reduceOnly를&amp;nbsp;헤지&amp;nbsp;모드에서&amp;nbsp;써서&amp;nbsp;-2022&amp;nbsp;오류가&amp;nbsp;났다.&lt;br /&gt;원웨이&amp;nbsp;모드였다면&amp;nbsp;겪지&amp;nbsp;않아도&amp;nbsp;될&amp;nbsp;복잡함이었다.&lt;br /&gt;&lt;br /&gt;지금&amp;nbsp;돌이켜보면,&amp;nbsp;순차적&amp;nbsp;거래&amp;nbsp;+&amp;nbsp;서브계정&amp;nbsp;분리&amp;nbsp;구조라면&amp;nbsp;원웨이&amp;nbsp;모드가&amp;nbsp;더&amp;nbsp;단순하고&amp;nbsp;오류도&amp;nbsp;적었을&amp;nbsp;것이다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;포지션 모드 설정 방법&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;포지션이 하나도 없는 상태에서만 변경할 수 있다.&lt;br /&gt;포지션이&amp;nbsp;열려있으면&amp;nbsp;변경&amp;nbsp;버튼이&amp;nbsp;비활성화된다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;990&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bxh1lV/dJMcaae15JZ/MTktODD0KgSfaPSeqFq3e0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bxh1lV/dJMcaae15JZ/MTktODD0KgSfaPSeqFq3e0/img.jpg&quot; data-alt=&quot;바이낸스 선물화면&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bxh1lV/dJMcaae15JZ/MTktODD0KgSfaPSeqFq3e0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbxh1lV%2FdJMcaae15JZ%2FMTktODD0KgSfaPSeqFq3e0%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;1080&quot; height=&quot;990&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;990&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;바이낸스 선물화면&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;바이낸스 선물 더보기 메뉴 진입 위치&amp;nbsp;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;거래 화면 우측 상단의 ... 버튼을 클릭하면 설정 메뉴로 진입할 수 있다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;1641&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/7vAMP/dJMcabLPQBH/SiGVK5uqDfEUThK0grIAd0/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/7vAMP/dJMcabLPQBH/SiGVK5uqDfEUThK0grIAd0/img.jpg&quot; data-alt=&quot;바이낸스 선물모드&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/7vAMP/dJMcabLPQBH/SiGVK5uqDfEUThK0grIAd0/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2F7vAMP%2FdJMcabLPQBH%2FSiGVK5uqDfEUThK0grIAd0%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;1080&quot; height=&quot;1641&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;1641&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;바이낸스 선물모드&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;br /&gt;바이낸스 선물 Preferences 진입 경로&amp;nbsp;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;... 버튼 클릭 후 나오는 화면에서 Features 탭 &amp;rarr; Preferences를 선택한다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;1229&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/br4HYk/dJMcah6kAae/iGKpN5B2TbRJ01Wx5AEF2K/img.jpg&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/br4HYk/dJMcah6kAae/iGKpN5B2TbRJ01Wx5AEF2K/img.jpg&quot; data-alt=&quot;선물모드 선택화면&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/br4HYk/dJMcah6kAae/iGKpN5B2TbRJ01Wx5AEF2K/img.jpg&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbr4HYk%2FdJMcah6kAae%2FiGKpN5B2TbRJ01Wx5AEF2K%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;1080&quot; height=&quot;1229&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;1229&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;선물모드 선택화면&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h4 data-ke-size=&quot;size20&quot;&gt;&lt;br /&gt;바이낸스 선물 포지션 모드 변경 화면&amp;nbsp;&lt;/h4&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;Preferences의 Trading Mode 탭에서 Position Mode를 클릭하면 원하는 모드로 변경할 수 있다.&lt;br /&gt;&lt;br /&gt;설정&amp;nbsp;순서:&lt;br /&gt;1.&amp;nbsp;바이낸스&amp;nbsp;선물&amp;nbsp;거래&amp;nbsp;화면에서&amp;nbsp;우측&amp;nbsp;상단&amp;nbsp;...&amp;nbsp;버튼을&amp;nbsp;클릭한다.&lt;br /&gt;2.&amp;nbsp;Features&amp;nbsp;탭에서&amp;nbsp;Preferences를&amp;nbsp;선택한다.&lt;br /&gt;3.&amp;nbsp;Trading&amp;nbsp;Mode&amp;nbsp;탭에서&amp;nbsp;Position&amp;nbsp;Mode를&amp;nbsp;클릭한다.&lt;br /&gt;4.&amp;nbsp;원하는&amp;nbsp;모드(One-way&amp;nbsp;Mode&amp;nbsp;또는&amp;nbsp;Hedge&amp;nbsp;Mode)를&amp;nbsp;선택한다.&lt;br /&gt;&lt;br /&gt;서브계정을&amp;nbsp;쓰고&amp;nbsp;있다면&amp;nbsp;서브계정마다&amp;nbsp;따로&amp;nbsp;설정해야&amp;nbsp;한다.&lt;br /&gt;메인&amp;nbsp;계정&amp;nbsp;설정이&amp;nbsp;서브계정에&amp;nbsp;적용되지&amp;nbsp;않는다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;결론&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;포지션 모드는 봇 구조에 맞게 선택하는 게 맞다.&lt;br /&gt;&lt;br /&gt;순차적으로&amp;nbsp;거래하는&amp;nbsp;봇&amp;nbsp;+&amp;nbsp;서브계정&amp;nbsp;분리&amp;nbsp;구조라면&amp;nbsp;원웨이&amp;nbsp;모드가&amp;nbsp;단순하고&amp;nbsp;오류가&amp;nbsp;적다.&lt;br /&gt;positionSide&amp;nbsp;없이&amp;nbsp;코드를&amp;nbsp;짤&amp;nbsp;수&amp;nbsp;있고,&amp;nbsp;reduceOnly도&amp;nbsp;자유롭게&amp;nbsp;쓸&amp;nbsp;수&amp;nbsp;있다.&lt;br /&gt;&lt;br /&gt;한&amp;nbsp;봇이&amp;nbsp;LONG을&amp;nbsp;닫지&amp;nbsp;않은&amp;nbsp;채&amp;nbsp;SHORT을&amp;nbsp;동시에&amp;nbsp;보유해야&amp;nbsp;하는&amp;nbsp;전략이라면&amp;nbsp;헤지&amp;nbsp;모드가&amp;nbsp;필요하다.&lt;br /&gt;&lt;br /&gt;무조건&amp;nbsp;헤지&amp;nbsp;모드가&amp;nbsp;맞다는&amp;nbsp;게&amp;nbsp;아니다.&lt;br /&gt;내&amp;nbsp;봇이&amp;nbsp;어떻게&amp;nbsp;작동하는지&amp;nbsp;먼저&amp;nbsp;파악하고,&amp;nbsp;그에&amp;nbsp;맞는&amp;nbsp;모드를&amp;nbsp;선택하는&amp;nbsp;게&amp;nbsp;순서다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&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;br /&gt;&lt;a style=&quot;background-color: #e6f5ff; color: #0070d1; text-align: start;&quot; href=&quot;https://creator88837.tistory.com/5&quot;&gt;2026.05.23 - [바이낸스 선물 자동매매] - 바이낸스 자동매매 API 발급 순서, 서브계정이 먼저인 이유&lt;/a&gt; &lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://creator88837.tistory.com/43&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2026.07.09 - [바이낸스 선물 자동매매] - 바이낸스 봇 청산 실패 -2022 오류, 고쳤는데 다음날 또 터졌다&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a href=&quot;https://creator88837.tistory.com/47&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2026.07.12 - [바이낸스 선물 자동매매] - 바이낸스 자동매매, TP/SL이 한 달 동안 작동 안 된 이유&lt;/a&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>바이낸스 선물 자동매매</category>
      <category>API</category>
      <category>바이낸스</category>
      <category>백테스트</category>
      <category>선물자동매매</category>
      <category>원웨이모드</category>
      <category>자동매매</category>
      <category>자동매매봇</category>
      <category>코인자동매매</category>
      <category>포지션모드</category>
      <category>헤지모드</category>
      <author>creator88837</author>
      <guid isPermaLink="true">https://creator88837.tistory.com/48</guid>
      <comments>https://creator88837.tistory.com/48#entry48comment</comments>
      <pubDate>Sun, 19 Jul 2026 17:56:12 +0900</pubDate>
    </item>
    <item>
      <title>바이낸스 자동매매, TP/SL이 한 달 동안 작동 안 된 이유</title>
      <link>https://creator88837.tistory.com/47</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;바이낸스&amp;nbsp;선물&amp;nbsp;자동매매&amp;nbsp;봇에서&amp;nbsp;TP/SL&amp;nbsp;주문이&amp;nbsp;한&amp;nbsp;달&amp;nbsp;내내&amp;nbsp;작동하지&amp;nbsp;않는&amp;nbsp;버그를&amp;nbsp;경험했다.&lt;br /&gt;진입은&amp;nbsp;정상적으로&amp;nbsp;됐고,&amp;nbsp;봇&amp;nbsp;로그에는&amp;nbsp;&quot;OCO&amp;nbsp;설정&amp;nbsp;완료&quot;가&amp;nbsp;찍혔다.&lt;br /&gt;그런데&amp;nbsp;실제로는&amp;nbsp;처음부터&amp;nbsp;손절도&amp;nbsp;익절도&amp;nbsp;걸려있지&amp;nbsp;않은&amp;nbsp;상태로&amp;nbsp;운영되고&amp;nbsp;있었다.&lt;br /&gt;이&amp;nbsp;글에서는&amp;nbsp;원인이&amp;nbsp;뭐였는지,&amp;nbsp;어떻게&amp;nbsp;발견했는지,&amp;nbsp;어떻게&amp;nbsp;해결했는지를&amp;nbsp;실전&amp;nbsp;로그와&amp;nbsp;함께&amp;nbsp;정리한다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;TP/SL 버그를 발견한 과정&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;2026년 6월 30일, 서버를 재시작하고 점검을 하다가 이상한 걸 발견했다.&lt;br /&gt;거래소에는&amp;nbsp;SHORT&amp;nbsp;포지션이&amp;nbsp;잡혀있는데,&amp;nbsp;fetch_open_orders()&amp;nbsp;결과가&amp;nbsp;0건이었다.&lt;br /&gt;&lt;br /&gt;포지션이&amp;nbsp;있으면&amp;nbsp;TP/SL&amp;nbsp;주문도&amp;nbsp;같이&amp;nbsp;잡혀있어야&amp;nbsp;정상이다.&lt;br /&gt;그런데&amp;nbsp;열린&amp;nbsp;주문이&amp;nbsp;하나도&amp;nbsp;없다.&lt;br /&gt;&lt;br /&gt;처음에는&amp;nbsp;서버&amp;nbsp;재시작&amp;nbsp;때&amp;nbsp;주문이&amp;nbsp;날아간&amp;nbsp;거라고&amp;nbsp;생각했다.&lt;br /&gt;그래서&amp;nbsp;그&amp;nbsp;시점&amp;nbsp;이전에&amp;nbsp;이미&amp;nbsp;완료된&amp;nbsp;거래&amp;nbsp;이력을&amp;nbsp;직접&amp;nbsp;조회해봤다.&lt;br /&gt;&lt;br /&gt;6월&amp;nbsp;22일&amp;nbsp;17:05&amp;nbsp;진입,&amp;nbsp;6월&amp;nbsp;23일&amp;nbsp;09:00&amp;nbsp;청산된&amp;nbsp;거래였다.&lt;br /&gt;거래소&amp;nbsp;주문&amp;nbsp;이력에서&amp;nbsp;STOP_MARKET,&amp;nbsp;TAKE_PROFIT_MARKET을&amp;nbsp;찾아봤다.&lt;br /&gt;단&amp;nbsp;한&amp;nbsp;건도&amp;nbsp;없었다.&lt;br /&gt;&lt;br /&gt;재시작이&amp;nbsp;원인이&amp;nbsp;아니었다.&lt;br /&gt;처음부터&amp;nbsp;TP/SL&amp;nbsp;주문&amp;nbsp;자체가&amp;nbsp;생성되지&amp;nbsp;않고&amp;nbsp;있었던&amp;nbsp;것이다.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;원인:&amp;nbsp;closePosition과&amp;nbsp;수량을&amp;nbsp;동시에&amp;nbsp;보내면&amp;nbsp;수량이&amp;nbsp;0이&amp;nbsp;된다&amp;nbsp;h2&lt;br /&gt;&lt;br /&gt;원인은&amp;nbsp;TP/SL&amp;nbsp;주문을&amp;nbsp;만드는&amp;nbsp;방식에&amp;nbsp;있었다.&lt;br /&gt;&lt;br /&gt;봇이&amp;nbsp;TP/SL&amp;nbsp;주문을&amp;nbsp;걸&amp;nbsp;때&amp;nbsp;이렇게&amp;nbsp;보내고&amp;nbsp;있었다.&lt;br /&gt;&lt;br /&gt;문제 코드:&lt;/p&gt;
&lt;pre id=&quot;code_1783863225572&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;exchange.create_order(symbol, 'STOP_MARKET', 'sell', amount,
                      params={'stopPrice': sl_price, 'closePosition': True})&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;closePosition:&amp;nbsp;True는&amp;nbsp;&quot;포지션&amp;nbsp;전체를&amp;nbsp;청산하겠다&quot;는&amp;nbsp;의미다.&lt;br /&gt;amount는&amp;nbsp;&quot;이&amp;nbsp;수량을&amp;nbsp;청산하겠다&quot;는&amp;nbsp;의미다.&lt;br /&gt;&lt;br /&gt;이&amp;nbsp;두&amp;nbsp;가지를&amp;nbsp;동시에&amp;nbsp;보내면&amp;nbsp;충돌이&amp;nbsp;생긴다.&lt;br /&gt;&quot;전체&amp;nbsp;청산할게&quot;&amp;nbsp;+&amp;nbsp;&quot;0.008&amp;nbsp;BTC&amp;nbsp;청산할게&quot;를&amp;nbsp;동시에&amp;nbsp;말하는&amp;nbsp;것이다.&lt;br /&gt;&lt;br /&gt;이&amp;nbsp;계정에서&amp;nbsp;STOP_MARKET,&amp;nbsp;TAKE_PROFIT_MARKET&amp;nbsp;주문은&amp;nbsp;바이낸스의&amp;nbsp;Algo&amp;nbsp;주문&amp;nbsp;시스템으로&amp;nbsp;처리된다.&lt;br /&gt;이&amp;nbsp;시스템은&amp;nbsp;두&amp;nbsp;방식이&amp;nbsp;충돌할&amp;nbsp;때&amp;nbsp;에러를&amp;nbsp;반환하지&amp;nbsp;않는다.&lt;br /&gt;대신&amp;nbsp;조용히&amp;nbsp;수량을&amp;nbsp;0으로&amp;nbsp;바꿔서&amp;nbsp;주문을&amp;nbsp;만들어버린다.&lt;br /&gt;&lt;br /&gt;수량이&amp;nbsp;0인&amp;nbsp;주문은&amp;nbsp;가격이&amp;nbsp;닿아도&amp;nbsp;아무것도&amp;nbsp;안&amp;nbsp;한다.&lt;br /&gt;이름만&amp;nbsp;손절/익절&amp;nbsp;주문이고&amp;nbsp;실제로는&amp;nbsp;빈&amp;nbsp;껍데기였다.&lt;br /&gt;&lt;br /&gt;Algo&amp;nbsp;주문&amp;nbsp;전용&amp;nbsp;API로&amp;nbsp;직접&amp;nbsp;조회한&amp;nbsp;결과는&amp;nbsp;이렇게&amp;nbsp;나왔다.&lt;br /&gt;&lt;br /&gt;type:&amp;nbsp;STOP_MARKET,&amp;nbsp;quantity:&amp;nbsp;0.0,&amp;nbsp;algoStatus:&amp;nbsp;NEW&lt;br /&gt;type:&amp;nbsp;TAKE_PROFIT_MARKET,&amp;nbsp;quantity:&amp;nbsp;0.0,&amp;nbsp;algoStatus:&amp;nbsp;NEW&lt;br /&gt;&lt;br /&gt;수량이&amp;nbsp;0인&amp;nbsp;채로&amp;nbsp;&quot;열린&amp;nbsp;상태(NEW)&quot;로&amp;nbsp;잡혀있었다.&lt;br /&gt;가격이&amp;nbsp;닿아도&amp;nbsp;청산할&amp;nbsp;수량이&amp;nbsp;없으니&amp;nbsp;아무&amp;nbsp;일도&amp;nbsp;일어나지&amp;nbsp;않는다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;봇이 정상이라고 착각한 이유&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;더 큰 문제가 있었다.&lt;br /&gt;봇은&amp;nbsp;이걸&amp;nbsp;전혀&amp;nbsp;모르고&amp;nbsp;있었다.&lt;br /&gt;&lt;br /&gt;TP/SL&amp;nbsp;주문을&amp;nbsp;보내고&amp;nbsp;나서&amp;nbsp;봇&amp;nbsp;로그에는&amp;nbsp;이렇게&amp;nbsp;찍혔다.&lt;br /&gt;&quot;OCO&amp;nbsp;설정&amp;nbsp;완료&quot;&lt;br /&gt;&lt;br /&gt;봇이&amp;nbsp;확인하는&amp;nbsp;방법이&amp;nbsp;fetch_open_orders()였는데,&amp;nbsp;이&amp;nbsp;방법으로는&amp;nbsp;Algo&amp;nbsp;주문이&amp;nbsp;조회되지&amp;nbsp;않는다.&lt;br /&gt;&lt;br /&gt;일반&amp;nbsp;조회와&amp;nbsp;Algo&amp;nbsp;전용&amp;nbsp;조회&amp;nbsp;결과가&amp;nbsp;다르다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2826&quot; data-origin-height=&quot;1526&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/cCYiWM/dJMcahymisg/I7pP1mHvPlEYVuiTqdL3p1/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/cCYiWM/dJMcahymisg/I7pP1mHvPlEYVuiTqdL3p1/img.png&quot; data-alt=&quot;바이낸스 TP/SL 수량 0 버그&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/cCYiWM/dJMcahymisg/I7pP1mHvPlEYVuiTqdL3p1/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcCYiWM%2FdJMcahymisg%2FI7pP1mHvPlEYVuiTqdL3p1%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;2826&quot; height=&quot;1526&quot; data-origin-width=&quot;2826&quot; data-origin-height=&quot;1526&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;바이낸스 TP/SL 수량 0 버그&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;왼쪽은&amp;nbsp;일반&amp;nbsp;fetch_open_orders()&amp;nbsp;결과(0건),&amp;nbsp;오른쪽은&amp;nbsp;Algo&amp;nbsp;전용&amp;nbsp;조회&amp;nbsp;결과(수량&amp;nbsp;0짜리&amp;nbsp;주문&amp;nbsp;2건).&amp;nbsp;같은&amp;nbsp;계정인데&amp;nbsp;결과가&amp;nbsp;다르다.&lt;br /&gt;&lt;br /&gt;일반&amp;nbsp;조회:&amp;nbsp;0건&lt;br /&gt;Algo&amp;nbsp;전용&amp;nbsp;조회:&amp;nbsp;STOP_MARKET&amp;nbsp;/&amp;nbsp;TAKE_PROFIT_MARKET,&amp;nbsp;quantity:&amp;nbsp;'0.0',&amp;nbsp;algoStatus:&amp;nbsp;'NEW'&lt;br /&gt;&lt;br /&gt;봇은&amp;nbsp;&quot;주문을&amp;nbsp;냈더니&amp;nbsp;정상&amp;nbsp;완료됐다&quot;고&amp;nbsp;판단하고&amp;nbsp;다음&amp;nbsp;단계로&amp;nbsp;넘어갔다.&lt;br /&gt;그&amp;nbsp;사이에&amp;nbsp;수량&amp;nbsp;0짜리&amp;nbsp;빈&amp;nbsp;껍데기&amp;nbsp;주문이&amp;nbsp;Algo&amp;nbsp;시스템&amp;nbsp;안에&amp;nbsp;계속&amp;nbsp;쌓였다.&lt;br /&gt;&lt;br /&gt;여기에&amp;nbsp;또&amp;nbsp;다른&amp;nbsp;문제가&amp;nbsp;있다.&lt;br /&gt;이&amp;nbsp;수량&amp;nbsp;0&amp;nbsp;유령&amp;nbsp;주문이&amp;nbsp;&quot;열린&amp;nbsp;상태(NEW)&quot;로&amp;nbsp;남아있어서,&amp;nbsp;다음&amp;nbsp;진입&amp;nbsp;때&amp;nbsp;같은&amp;nbsp;방향으로&amp;nbsp;TP/SL&amp;nbsp;주문을&amp;nbsp;다시&amp;nbsp;생성하려&amp;nbsp;하면&amp;nbsp;-4130&amp;nbsp;오류가&amp;nbsp;나면서&amp;nbsp;거부됐다.&lt;br /&gt;&lt;br /&gt;&quot;이미&amp;nbsp;같은&amp;nbsp;방향&amp;nbsp;closePosition&amp;nbsp;주문이&amp;nbsp;있어서&amp;nbsp;안&amp;nbsp;된다&quot;는&amp;nbsp;이유다.&lt;br /&gt;처음엔&amp;nbsp;TP/SL이&amp;nbsp;빈&amp;nbsp;껍데기로라도&amp;nbsp;생성됐고,&amp;nbsp;이후&amp;nbsp;거래부터는&amp;nbsp;아예&amp;nbsp;생성조차&amp;nbsp;안&amp;nbsp;됐다.&lt;br /&gt;갈수록&amp;nbsp;막히는&amp;nbsp;구조였다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;2345봇은 처음부터 왜 괜찮았나&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;같은 봇 코드로 만든 2봇, 3봇, 4봇, 5봇은 이 문제가 없었다.&lt;br /&gt;차이는&amp;nbsp;TP/SL&amp;nbsp;주문을&amp;nbsp;거는&amp;nbsp;방식에&amp;nbsp;있었다.&lt;br /&gt;&lt;br /&gt;항목&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1봇&amp;nbsp;(버그&amp;nbsp;있음)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2345봇&amp;nbsp;(정상)&lt;br /&gt;────────────────────────────────────────────────────────────────&lt;br /&gt;TP/SL&amp;nbsp;생성&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;closePosition:&amp;nbsp;True&amp;nbsp;+&amp;nbsp;수량&amp;nbsp;전달&amp;nbsp;&amp;nbsp;reduceOnly:&amp;nbsp;True&amp;nbsp;+&amp;nbsp;수량&amp;nbsp;명시&lt;br /&gt;취소&amp;nbsp;방법&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;fetch_open_orders&amp;nbsp;&amp;rarr;&amp;nbsp;cancel_order&amp;nbsp;fapiPrivateDeleteAllOpenOrders&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;+&amp;nbsp;fapiPrivateDeleteAlgoOpenOrders&lt;br /&gt;&lt;br /&gt;2345봇은&amp;nbsp;&quot;이&amp;nbsp;수량만큼&amp;nbsp;청산하고,&amp;nbsp;포지션&amp;nbsp;줄이는&amp;nbsp;용도로만&amp;nbsp;쓸게(reduceOnly)&quot;라고&amp;nbsp;말했다.&lt;br /&gt;충돌이&amp;nbsp;없었다.&lt;br /&gt;&lt;br /&gt;1봇은&amp;nbsp;&quot;전체&amp;nbsp;청산할게(closePosition),&amp;nbsp;근데&amp;nbsp;수량도&amp;nbsp;이만큼이야&quot;라고&amp;nbsp;말해서&amp;nbsp;충돌이&amp;nbsp;생겼다.&lt;br /&gt;&lt;br /&gt;취소도&amp;nbsp;마찬가지다.&lt;br /&gt;2345봇은&amp;nbsp;일반&amp;nbsp;주문&amp;nbsp;취소&amp;nbsp;+&amp;nbsp;Algo&amp;nbsp;주문&amp;nbsp;취소를&amp;nbsp;둘&amp;nbsp;다&amp;nbsp;호출했다.&lt;br /&gt;1봇은&amp;nbsp;일반&amp;nbsp;주문&amp;nbsp;취소만&amp;nbsp;호출했다.&amp;nbsp;Algo&amp;nbsp;주문이&amp;nbsp;남는&amp;nbsp;이유였다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;TP/SL 버그 수정 방법&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;수정은 두 곳이다.&lt;br /&gt;&lt;br /&gt;첫&amp;nbsp;번째,&amp;nbsp;TP/SL&amp;nbsp;주문&amp;nbsp;생성&amp;nbsp;방식&amp;nbsp;변경.&lt;br /&gt;&lt;br /&gt;[AI에게&amp;nbsp;시킨&amp;nbsp;명령어]&lt;br /&gt;&quot;closePosition&amp;nbsp;대신&amp;nbsp;reduceOnly:&amp;nbsp;True로&amp;nbsp;바꿔줘.&amp;nbsp;수량은&amp;nbsp;amount&amp;nbsp;그대로&amp;nbsp;쓰고.&amp;nbsp;2345봇과&amp;nbsp;동일한&amp;nbsp;방식으로&quot;&lt;br /&gt;&lt;br /&gt;[수정 전]&lt;/p&gt;
&lt;pre id=&quot;code_1783863387676&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;exchange.create_order(symbol, 'STOP_MARKET', 'sell', amount,
                      params={'stopPrice': sl_price, 'closePosition': True})&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;[수정 후]&lt;/p&gt;
&lt;pre id=&quot;code_1783863403780&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;exchange.create_order(symbol, 'STOP_MARKET', 'sell', amount,
                      params={'stopPrice': sl_price, 'reduceOnly': True,
                              'workingType': 'MARK_PRICE'})&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;두&amp;nbsp;번째,&amp;nbsp;주문&amp;nbsp;취소&amp;nbsp;함수&amp;nbsp;변경.&lt;br /&gt;일반&amp;nbsp;주문&amp;nbsp;취소만&amp;nbsp;하던&amp;nbsp;것을&amp;nbsp;Algo&amp;nbsp;주문&amp;nbsp;취소도&amp;nbsp;함께&amp;nbsp;호출하도록&amp;nbsp;수정했다.&lt;br /&gt;&lt;br /&gt;[수정 전]&lt;/p&gt;
&lt;pre id=&quot;code_1783863424412&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;orders = exchange.fetch_open_orders(symbol)
for o in orders:
    exchange.cancel_order(o['id'], symbol)&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;[수정 후]&lt;/p&gt;
&lt;pre id=&quot;code_1783863439132&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;exchange.fapiPrivateDeleteAllOpenOrders({'symbol': 'BTCUSDT'})
exchange.fapiPrivateDeleteAlgoOpenOrders({'symbol': 'BTCUSDT'})&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;br /&gt;결론&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;핵심은 두 가지다.&lt;br /&gt;&lt;br /&gt;첫째,&amp;nbsp;closePosition과&amp;nbsp;amount를&amp;nbsp;동시에&amp;nbsp;보내면&amp;nbsp;안&amp;nbsp;된다.&lt;br /&gt;Algo&amp;nbsp;주문&amp;nbsp;시스템이&amp;nbsp;충돌을&amp;nbsp;에러&amp;nbsp;없이&amp;nbsp;처리하면서&amp;nbsp;수량을&amp;nbsp;0으로&amp;nbsp;만든다.&lt;br /&gt;봇&amp;nbsp;로그에는&amp;nbsp;&quot;설정&amp;nbsp;완료&quot;가&amp;nbsp;찍히기&amp;nbsp;때문에&amp;nbsp;발견하기&amp;nbsp;어렵다.&lt;br /&gt;&lt;br /&gt;둘째,&amp;nbsp;TP/SL&amp;nbsp;주문&amp;nbsp;취소할&amp;nbsp;때&amp;nbsp;Algo&amp;nbsp;주문&amp;nbsp;API를&amp;nbsp;따로&amp;nbsp;호출해야&amp;nbsp;한다.&lt;br /&gt;일반&amp;nbsp;fetch_open_orders()로는&amp;nbsp;Algo&amp;nbsp;주문이&amp;nbsp;조회되지&amp;nbsp;않는다.&lt;br /&gt;취소&amp;nbsp;전용&amp;nbsp;API(fapiPrivateDeleteAlgoOpenOrders)를&amp;nbsp;반드시&amp;nbsp;함께&amp;nbsp;써야&amp;nbsp;완전히&amp;nbsp;정리된다.&lt;br /&gt;&lt;br /&gt;이&amp;nbsp;버그는&amp;nbsp;실용글&amp;nbsp;3에서&amp;nbsp;다룬&amp;nbsp;취소&amp;nbsp;관련&amp;nbsp;절반(Algo&amp;nbsp;취소&amp;nbsp;API&amp;nbsp;필요)과&amp;nbsp;이어지는&amp;nbsp;내용이다.&lt;br /&gt;취소는&amp;nbsp;알고&amp;nbsp;있었는데&amp;nbsp;생성&amp;nbsp;단계의&amp;nbsp;충돌은&amp;nbsp;이번에&amp;nbsp;처음&amp;nbsp;발견했다.&lt;br /&gt;&lt;br /&gt;봇이&amp;nbsp;정상이라고&amp;nbsp;로그를&amp;nbsp;찍어도,&amp;nbsp;거래소에서&amp;nbsp;직접&amp;nbsp;Algo&amp;nbsp;주문을&amp;nbsp;조회해보는&amp;nbsp;습관이&amp;nbsp;필요하다.&lt;br /&gt;특히&amp;nbsp;포지션이&amp;nbsp;있는데&amp;nbsp;열린&amp;nbsp;주문이&amp;nbsp;0건으로&amp;nbsp;나오면&amp;nbsp;Algo&amp;nbsp;시스템을&amp;nbsp;직접&amp;nbsp;확인해봐야&amp;nbsp;한다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;함께 읽으면 좋은 글&amp;nbsp;&lt;br /&gt;&lt;br /&gt;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a style=&quot;background-color: #e6f5ff; color: #0070d1; text-align: start;&quot; href=&quot;https://creator88837.tistory.com/6&quot;&gt;2026.05.24 - [바이낸스 선물 자동매매] - 바이낸스 TP/SL 취소 오류, Algo 주문 API 따로 있었다&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1783864145206&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;바이낸스 TP/SL 취소 오류, Algo 주문 API 따로 있었다&quot; data-og-description=&quot;바이낸스 선물 자동매매 봇에서 TP/SL 주문 취소가 안 되는 문제가 생겼다.익절이 됐는데도 손절 주문이 그대로 남았고, 봇이 다음 포지션을 잡을 때마다 충돌이 생겼다.1달이 넘도록 원인을 못 &quot; data-og-host=&quot;creator88837.tistory.com&quot; data-og-source-url=&quot;https://creator88837.tistory.com/6&quot; data-og-url=&quot;https://creator88837.tistory.com/6&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/hcoRt/dJMb82MPhkc/NwmWXexWpxZhJyRGm4cI91/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cexpBy/dJMb896fPXQ/IcYkzHvL02W5JQFJKw0kJK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/CA1xU/dJMb8U85P8h/VVTCKT0XqJHRats3ygBZo0/img.jpg?width=300&amp;amp;height=650&amp;amp;face=0_0_300_650&quot;&gt;&lt;a href=&quot;https://creator88837.tistory.com/6&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://creator88837.tistory.com/6&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/hcoRt/dJMb82MPhkc/NwmWXexWpxZhJyRGm4cI91/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cexpBy/dJMb896fPXQ/IcYkzHvL02W5JQFJKw0kJK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/CA1xU/dJMb8U85P8h/VVTCKT0XqJHRats3ygBZo0/img.jpg?width=300&amp;amp;height=650&amp;amp;face=0_0_300_650');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;바이낸스 TP/SL 취소 오류, Algo 주문 API 따로 있었다&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;바이낸스 선물 자동매매 봇에서 TP/SL 주문 취소가 안 되는 문제가 생겼다.익절이 됐는데도 손절 주문이 그대로 남았고, 봇이 다음 포지션을 잡을 때마다 충돌이 생겼다.1달이 넘도록 원인을 못&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;creator88837.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a style=&quot;background-color: #e6f5ff; color: #0070d1; text-align: start;&quot; href=&quot;https://creator88837.tistory.com/43&quot;&gt;2026.07.09 - [바이낸스 선물 자동매매] - 바이낸스 봇 청산 실패 -2022 오류, 고쳤는데 다음날 또 터졌다&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1783864229307&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;바이낸스 봇 청산 실패 -2022 오류, 고쳤는데 다음날 또 터졌다&quot; data-og-description=&quot;바이낸스 선물 자동매매 봇 청산 오류 -2022를 정리했다.고쳐서 테스트까지 통과했는데, 다음날 같은 오류가 재발했다.이 글에서는 -2022 오류의 두 가지 원인과 헤지 모드에서의 진짜 해결법을 코&quot; data-og-host=&quot;creator88837.tistory.com&quot; data-og-source-url=&quot;https://creator88837.tistory.com/43&quot; data-og-url=&quot;https://creator88837.tistory.com/43&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/WcufP/dJMb9jgJo5m/Uol0FbQjl3rs7i7eMQdsa1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/QlA7M/dJMb8UH1oU6/VKenhTxTdsg2igI2SkMEXK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/fim3O/dJMb87N8WHg/fjfaikWmNP4whJQ7G7ylX0/img.png?width=2085&amp;amp;height=810&amp;amp;face=0_0_2085_810&quot;&gt;&lt;a href=&quot;https://creator88837.tistory.com/43&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://creator88837.tistory.com/43&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/WcufP/dJMb9jgJo5m/Uol0FbQjl3rs7i7eMQdsa1/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/QlA7M/dJMb8UH1oU6/VKenhTxTdsg2igI2SkMEXK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/fim3O/dJMb87N8WHg/fjfaikWmNP4whJQ7G7ylX0/img.png?width=2085&amp;amp;height=810&amp;amp;face=0_0_2085_810');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;바이낸스 봇 청산 실패 -2022 오류, 고쳤는데 다음날 또 터졌다&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;바이낸스 선물 자동매매 봇 청산 오류 -2022를 정리했다.고쳐서 테스트까지 통과했는데, 다음날 같은 오류가 재발했다.이 글에서는 -2022 오류의 두 가지 원인과 헤지 모드에서의 진짜 해결법을 코&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;creator88837.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;a style=&quot;background-color: #e6f5ff; color: #0070d1; text-align: start;&quot; href=&quot;https://creator88837.tistory.com/44&quot;&gt;2026.07.09 - [바이낸스 선물 자동매매] - 바이낸스 봇 청산 실패 -2019 오류, 0.001 BTC를 1 BTC로 착각한 이유&lt;/a&gt;&lt;/p&gt;
&lt;figure id=&quot;og_1783864310152&quot; contenteditable=&quot;false&quot; data-ke-type=&quot;opengraph&quot; data-ke-align=&quot;alignCenter&quot; data-og-type=&quot;article&quot; data-og-title=&quot;바이낸스 봇 청산 실패 -2019 오류, 0.001 BTC를 1 BTC로 착각한 이유&quot; data-og-description=&quot;바이낸스 선물 자동매매 봇 청산 오류 -2019를 정리했다.-2022를 잡고 다음날 발생한 오류로, 0.001 BTC 포지션을 1 BTC로 착각해 증거금 부족이 발생했다.이 글에서는 ccxt fetch_positions의 contracts 단위 오&quot; data-og-host=&quot;creator88837.tistory.com&quot; data-og-source-url=&quot;https://creator88837.tistory.com/44&quot; data-og-url=&quot;https://creator88837.tistory.com/44&quot; data-og-image=&quot;https://scrap.kakaocdn.net/dn/bArGog/dJMb896fPZf/Wed4LKg19ASdmaYuWJvOgK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/yYN5u/dJMb9aKQ4YW/u5LNtslfJwpZxLa0ce8znk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cfhU9v/dJMb84qkGBp/TL6itBttB4f064KgGaVHcK/img.png?width=2085&amp;amp;height=884&amp;amp;face=0_0_2085_884&quot;&gt;&lt;a href=&quot;https://creator88837.tistory.com/44&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; data-source-url=&quot;https://creator88837.tistory.com/44&quot;&gt;
&lt;div class=&quot;og-image&quot; style=&quot;background-image: url('https://scrap.kakaocdn.net/dn/bArGog/dJMb896fPZf/Wed4LKg19ASdmaYuWJvOgK/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/yYN5u/dJMb9aKQ4YW/u5LNtslfJwpZxLa0ce8znk/img.png?width=800&amp;amp;height=800&amp;amp;face=0_0_800_800,https://scrap.kakaocdn.net/dn/cfhU9v/dJMb84qkGBp/TL6itBttB4f064KgGaVHcK/img.png?width=2085&amp;amp;height=884&amp;amp;face=0_0_2085_884');&quot;&gt;&amp;nbsp;&lt;/div&gt;
&lt;div class=&quot;og-text&quot;&gt;
&lt;p class=&quot;og-title&quot; data-ke-size=&quot;size16&quot;&gt;바이낸스 봇 청산 실패 -2019 오류, 0.001 BTC를 1 BTC로 착각한 이유&lt;/p&gt;
&lt;p class=&quot;og-desc&quot; data-ke-size=&quot;size16&quot;&gt;바이낸스 선물 자동매매 봇 청산 오류 -2019를 정리했다.-2022를 잡고 다음날 발생한 오류로, 0.001 BTC 포지션을 1 BTC로 착각해 증거금 부족이 발생했다.이 글에서는 ccxt fetch_positions의 contracts 단위 오&lt;/p&gt;
&lt;p class=&quot;og-host&quot; data-ke-size=&quot;size16&quot;&gt;creator88837.tistory.com&lt;/p&gt;
&lt;/div&gt;
&lt;/a&gt;&lt;/figure&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;</description>
      <category>바이낸스 선물 자동매매</category>
      <category>api오류</category>
      <category>바이낸스</category>
      <category>바이낸스봇</category>
      <category>바이낸스오류</category>
      <category>봇버그</category>
      <category>선물자동매매</category>
      <category>자동매매</category>
      <category>자동매매봇</category>
      <category>코인자동매매</category>
      <category>파이썬자동매매</category>
      <author>creator88837</author>
      <guid isPermaLink="true">https://creator88837.tistory.com/47</guid>
      <comments>https://creator88837.tistory.com/47#entry47comment</comments>
      <pubDate>Wed, 15 Jul 2026 09:00:45 +0900</pubDate>
    </item>
    <item>
      <title>12화 바이낸스 자동매매, $300이 10년 뒤 $3만이 되는 이유</title>
      <link>https://creator88837.tistory.com/46</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;바이낸스&amp;nbsp;자동매매&amp;nbsp;전략이&amp;nbsp;연&amp;nbsp;60%&amp;nbsp;수익률을&amp;nbsp;10년&amp;nbsp;유지한다면,&amp;nbsp;$300은&amp;nbsp;약&amp;nbsp;$3만까지&amp;nbsp;불어난다.&lt;br /&gt;이번&amp;nbsp;글에서는&amp;nbsp;실제&amp;nbsp;백테스트&amp;nbsp;데이터를&amp;nbsp;바탕으로&amp;nbsp;복리&amp;nbsp;효과와&amp;nbsp;MDD의&amp;nbsp;중요성을&amp;nbsp;정리했다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;$300이 10년 뒤 어떻게 되는지 계산해봤다&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;지금 봇이 돌아가는 자본은 $300이다.&lt;br /&gt;연&amp;nbsp;60%&amp;nbsp;복리로&amp;nbsp;10년을&amp;nbsp;굴리면&amp;nbsp;어떻게&amp;nbsp;될까.&lt;br /&gt;&lt;br /&gt;1년차&amp;nbsp;&amp;nbsp;&amp;nbsp;$480&lt;br /&gt;2년차&amp;nbsp;&amp;nbsp;&amp;nbsp;$768&lt;br /&gt;3년차&amp;nbsp;&amp;nbsp;&amp;nbsp;$1,229&lt;br /&gt;4년차&amp;nbsp;&amp;nbsp;&amp;nbsp;$1,966&lt;br /&gt;5년차&amp;nbsp;&amp;nbsp;&amp;nbsp;$3,146&lt;br /&gt;6년차&amp;nbsp;&amp;nbsp;&amp;nbsp;$5,033&lt;br /&gt;7년차&amp;nbsp;&amp;nbsp;&amp;nbsp;$8,053&lt;br /&gt;8년차&amp;nbsp;&amp;nbsp;&amp;nbsp;$12,885&lt;br /&gt;9년차&amp;nbsp;&amp;nbsp;&amp;nbsp;$20,616&lt;br /&gt;10년차&amp;nbsp;&amp;nbsp;$32,985&lt;br /&gt;&lt;br /&gt;10년이면&amp;nbsp;$32,985다.&lt;br /&gt;$300이&amp;nbsp;110배가&amp;nbsp;됐다.&lt;br /&gt;&lt;br /&gt;이&amp;nbsp;숫자를&amp;nbsp;보고&amp;nbsp;처음에는&amp;nbsp;실감이&amp;nbsp;안&amp;nbsp;났다.&lt;br /&gt;그냥&amp;nbsp;계산기가&amp;nbsp;뱉은&amp;nbsp;숫자라고&amp;nbsp;생각했다.&lt;br /&gt;&lt;br /&gt;근데&amp;nbsp;2023년부터&amp;nbsp;2025년까지&amp;nbsp;3년&amp;nbsp;연속으로&amp;nbsp;60%를&amp;nbsp;달성한&amp;nbsp;전략이&amp;nbsp;백테스트에서&amp;nbsp;실제로&amp;nbsp;나왔다.&lt;br /&gt;그냥&amp;nbsp;이론이&amp;nbsp;아니다.&lt;br /&gt;이미&amp;nbsp;데이터가&amp;nbsp;있다.&lt;br /&gt;&lt;br /&gt;60%&amp;nbsp;캡&amp;nbsp;전략&amp;nbsp;연도별&amp;nbsp;수익률:&lt;br /&gt;2023:&amp;nbsp;+70%&lt;br /&gt;2024:&amp;nbsp;+63%&lt;br /&gt;2025:&amp;nbsp;+65%&lt;br /&gt;2026:&amp;nbsp;+59%&amp;nbsp;(진행&amp;nbsp;중)&lt;br /&gt;&lt;br /&gt;4년&amp;nbsp;중&amp;nbsp;3년을&amp;nbsp;달성했다.&lt;br /&gt;2026년도&amp;nbsp;6월&amp;nbsp;기준으로&amp;nbsp;목표($2,192)에&amp;nbsp;거의&amp;nbsp;도달했다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;중요한 건 원금이 아니었다&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;처음에는 $300이라는 원금이 너무 적다고 생각했다.&lt;br /&gt;이&amp;nbsp;돈으로&amp;nbsp;뭘&amp;nbsp;할&amp;nbsp;수&amp;nbsp;있겠나&amp;nbsp;싶었다.&lt;br /&gt;&lt;br /&gt;비교를&amp;nbsp;해봤다.&lt;br /&gt;$3,000으로&amp;nbsp;시작해서&amp;nbsp;연&amp;nbsp;30%를&amp;nbsp;10년&amp;nbsp;유지하면&amp;nbsp;어떻게&amp;nbsp;될까.&lt;br /&gt;&lt;br /&gt;1년차&amp;nbsp;&amp;nbsp;&amp;nbsp;$3,900&lt;br /&gt;5년차&amp;nbsp;&amp;nbsp;&amp;nbsp;$11,139&lt;br /&gt;10년차&amp;nbsp;&amp;nbsp;$41,373&lt;br /&gt;&lt;br /&gt;원금이&amp;nbsp;10배&amp;nbsp;더&amp;nbsp;많다.&lt;br /&gt;수익률은&amp;nbsp;절반이다.&lt;br /&gt;근데&amp;nbsp;10년&amp;nbsp;후에는&amp;nbsp;$41,373&amp;nbsp;vs&amp;nbsp;$32,985.&lt;br /&gt;&lt;br /&gt;생각보다&amp;nbsp;차이가&amp;nbsp;작다.&lt;br /&gt;원금&amp;nbsp;10배&amp;nbsp;차이인데&amp;nbsp;결과는&amp;nbsp;1.25배밖에&amp;nbsp;안&amp;nbsp;된다.&lt;br /&gt;&lt;br /&gt;반대로&amp;nbsp;읽으면&amp;nbsp;이런&amp;nbsp;뜻이다.&lt;br /&gt;원금을&amp;nbsp;10배로&amp;nbsp;늘리는&amp;nbsp;것과,&amp;nbsp;수익률을&amp;nbsp;2배로&amp;nbsp;높이는&amp;nbsp;것이&amp;nbsp;거의&amp;nbsp;같은&amp;nbsp;효과를&amp;nbsp;낸다.&lt;br /&gt;&lt;br /&gt;원금을&amp;nbsp;10배로&amp;nbsp;늘리는&amp;nbsp;게&amp;nbsp;쉬울까.&lt;br /&gt;수익률을&amp;nbsp;연&amp;nbsp;30%에서&amp;nbsp;60%로&amp;nbsp;올리는&amp;nbsp;게&amp;nbsp;쉬울까.&lt;br /&gt;&lt;br /&gt;둘&amp;nbsp;다&amp;nbsp;쉽지&amp;nbsp;않다.&lt;br /&gt;근데&amp;nbsp;이미&amp;nbsp;60%를&amp;nbsp;달성하는&amp;nbsp;전략이&amp;nbsp;백테스트에서&amp;nbsp;나왔다.&lt;br /&gt;원금은&amp;nbsp;나중에&amp;nbsp;올리면&amp;nbsp;된다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;시간이 핵심인 이유&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;복리를 직접 계산해보기 전까지는 막연하게 좋은 거라고만 알고 있었다.&lt;br /&gt;계산을&amp;nbsp;해보고&amp;nbsp;나서야&amp;nbsp;어느&amp;nbsp;구간에서&amp;nbsp;힘이&amp;nbsp;생기는지&amp;nbsp;보였다.&lt;br /&gt;&lt;br /&gt;1년차에서&amp;nbsp;2년차:&amp;nbsp;$480&amp;nbsp;&amp;rarr;&amp;nbsp;$768.&amp;nbsp;증가폭&amp;nbsp;$288.&lt;br /&gt;9년차에서&amp;nbsp;10년차:&amp;nbsp;$20,616&amp;nbsp;&amp;rarr;&amp;nbsp;$32,985.&amp;nbsp;증가폭&amp;nbsp;$12,369.&lt;br /&gt;&lt;br /&gt;같은&amp;nbsp;60%인데&amp;nbsp;달러로&amp;nbsp;불어나는&amp;nbsp;금액이&amp;nbsp;43배&amp;nbsp;차이가&amp;nbsp;난다.&lt;br /&gt;복리는&amp;nbsp;시작이&amp;nbsp;아니라&amp;nbsp;후반에&amp;nbsp;폭발한다.&lt;br /&gt;&lt;br /&gt;초반&amp;nbsp;몇&amp;nbsp;년은&amp;nbsp;티가&amp;nbsp;안&amp;nbsp;난다.&lt;br /&gt;$300이&amp;nbsp;$480,&amp;nbsp;$768이&amp;nbsp;되는&amp;nbsp;과정은&amp;nbsp;답답하다.&lt;br /&gt;이게&amp;nbsp;맞는&amp;nbsp;방향인지&amp;nbsp;의심이&amp;nbsp;드는&amp;nbsp;구간이다.&lt;br /&gt;&lt;br /&gt;근데&amp;nbsp;7년차를&amp;nbsp;넘어가면서&amp;nbsp;달라진다.&lt;br /&gt;$8,053&amp;nbsp;&amp;rarr;&amp;nbsp;$12,885&amp;nbsp;&amp;rarr;&amp;nbsp;$20,616&amp;nbsp;&amp;rarr;&amp;nbsp;$32,985.&lt;br /&gt;3년&amp;nbsp;만에&amp;nbsp;4배가&amp;nbsp;된다.&lt;br /&gt;&lt;br /&gt;그&amp;nbsp;7년을&amp;nbsp;버티는&amp;nbsp;게&amp;nbsp;핵심이다.&lt;br /&gt;버티려면&amp;nbsp;전략이&amp;nbsp;살아있어야&amp;nbsp;한다.&lt;br /&gt;전략이&amp;nbsp;살아있으려면&amp;nbsp;크게&amp;nbsp;잃으면&amp;nbsp;안&amp;nbsp;된다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/UsmR3/dJMcabSojXh/Pl0ayjBaehmXjkwUIPduCK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/UsmR3/dJMcabSojXh/Pl0ayjBaehmXjkwUIPduCK/img.png&quot; data-alt=&quot;복리성장곡선&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/UsmR3/dJMcabSojXh/Pl0ayjBaehmXjkwUIPduCK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FUsmR3%2FdJMcabSojXh%2FPl0ayjBaehmXjkwUIPduCK%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;1080&quot; height=&quot;1080&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;복리성장곡선&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;초반&amp;nbsp;6년은&amp;nbsp;거의&amp;nbsp;평탄하게&amp;nbsp;보이지만,&amp;nbsp;7년차를&amp;nbsp;넘어가면서&amp;nbsp;곡선이&amp;nbsp;급격히&amp;nbsp;꺾인다.&lt;br /&gt;같은&amp;nbsp;60%인데&amp;nbsp;달러로&amp;nbsp;불어나는&amp;nbsp;금액이&amp;nbsp;후반으로&amp;nbsp;갈수록&amp;nbsp;기하급수적으로&amp;nbsp;커진다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;-50%짜리 해 하나가 10년을 망가뜨린다&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;만약 5년차에 -50%가 끼어들면 어떻게 될까.&lt;br /&gt;&lt;br /&gt;5년차까지&amp;nbsp;연&amp;nbsp;60%&amp;nbsp;&amp;rarr;&amp;nbsp;$3,146&lt;br /&gt;6년차&amp;nbsp;-50%&amp;nbsp;&amp;rarr;&amp;nbsp;$1,573&lt;br /&gt;7년차부터&amp;nbsp;다시&amp;nbsp;60%&amp;nbsp;&amp;rarr;&amp;nbsp;$2,517&amp;nbsp;&amp;rarr;&amp;nbsp;$4,027&amp;nbsp;&amp;rarr;&amp;nbsp;$6,443&amp;nbsp;&amp;rarr;&amp;nbsp;$10,309&lt;br /&gt;&lt;br /&gt;10년&amp;nbsp;후&amp;nbsp;$10,309.&lt;br /&gt;-50%&amp;nbsp;한&amp;nbsp;해가&amp;nbsp;없었으면&amp;nbsp;$32,985였을&amp;nbsp;자리다.&lt;br /&gt;3분의&amp;nbsp;1이&amp;nbsp;됐다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;1080&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/c7VX0u/dJMcaiD196P/abxXjtKsHj5UXUKZkQfak0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/c7VX0u/dJMcaiD196P/abxXjtKsHj5UXUKZkQfak0/img.png&quot; data-alt=&quot;충격시뮬레이션&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/c7VX0u/dJMcaiD196P/abxXjtKsHj5UXUKZkQfak0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fc7VX0u%2FdJMcaiD196P%2FabxXjtKsHj5UXUKZkQfak0%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;1080&quot; height=&quot;1080&quot; data-origin-width=&quot;1080&quot; data-origin-height=&quot;1080&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;충격시뮬레이션&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;파란&amp;nbsp;선(정상&amp;nbsp;복리)과&amp;nbsp;빨간&amp;nbsp;선(5년차&amp;nbsp;-50%&amp;nbsp;충격)의&amp;nbsp;격차가&amp;nbsp;10년&amp;nbsp;뒤&amp;nbsp;3.2배까지&amp;nbsp;벌어진다.&lt;br /&gt;-50%짜리&amp;nbsp;해&amp;nbsp;하나가&amp;nbsp;복리&amp;nbsp;곡선&amp;nbsp;전체를&amp;nbsp;무너뜨린다.&lt;br /&gt;&lt;br /&gt;이게&amp;nbsp;MDD를&amp;nbsp;낮춰야&amp;nbsp;하는&amp;nbsp;이유다.&lt;br /&gt;수익률을&amp;nbsp;더&amp;nbsp;올리는&amp;nbsp;것보다&amp;nbsp;큰&amp;nbsp;손실을&amp;nbsp;막는&amp;nbsp;게&amp;nbsp;훨씬&amp;nbsp;중요하다.&lt;br /&gt;&lt;br /&gt;연&amp;nbsp;60%&amp;nbsp;캡&amp;nbsp;전략의&amp;nbsp;MDD는&amp;nbsp;-19.61%였다.&lt;br /&gt;원본&amp;nbsp;전략의&amp;nbsp;MDD는&amp;nbsp;-42.98%였다.&lt;br /&gt;같은&amp;nbsp;기간,&amp;nbsp;같은&amp;nbsp;봇인데&amp;nbsp;MDD가&amp;nbsp;두&amp;nbsp;배&amp;nbsp;이상&amp;nbsp;차이가&amp;nbsp;난다.&lt;br /&gt;&lt;br /&gt;수익률은&amp;nbsp;원본이&amp;nbsp;앞선다.&lt;br /&gt;+877%&amp;nbsp;vs&amp;nbsp;+624%.&lt;br /&gt;그&amp;nbsp;격차가&amp;nbsp;큰&amp;nbsp;하락장&amp;nbsp;하나에&amp;nbsp;뒤집힌다.&lt;br /&gt;&lt;br /&gt;원본&amp;nbsp;-40%,&amp;nbsp;캡&amp;nbsp;+60%&amp;nbsp;인&amp;nbsp;해가&amp;nbsp;오면&lt;br /&gt;원본&amp;nbsp;$2,932&amp;nbsp;&amp;rarr;&amp;nbsp;$1,759&lt;br /&gt;캡&amp;nbsp;$2,174&amp;nbsp;&amp;rarr;&amp;nbsp;$3,478&lt;br /&gt;격차가&amp;nbsp;두&amp;nbsp;배로&amp;nbsp;벌어진다.&lt;br /&gt;&lt;br /&gt;코인&amp;nbsp;시장에서&amp;nbsp;그런&amp;nbsp;해는&amp;nbsp;반드시&amp;nbsp;온다.&lt;br /&gt;2022년이&amp;nbsp;그랬다.&lt;br /&gt;언제인지는&amp;nbsp;모른다.&lt;br /&gt;그냥&amp;nbsp;온다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;살아남는 구조를 만드는 것이 먼저인 이유&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;투자를 오래 해온 사람들이 하는 말이 있다.&lt;br /&gt;&quot;부자가&amp;nbsp;되는&amp;nbsp;건&amp;nbsp;수익률이&amp;nbsp;아니라&amp;nbsp;시간이다.&quot;&lt;br /&gt;&lt;br /&gt;처음에는&amp;nbsp;이&amp;nbsp;말이&amp;nbsp;잘&amp;nbsp;와닿지&amp;nbsp;않았다.&lt;br /&gt;수익률이&amp;nbsp;높아야&amp;nbsp;빠르게&amp;nbsp;불어나는&amp;nbsp;거&amp;nbsp;아닌가.&lt;br /&gt;&lt;br /&gt;근데&amp;nbsp;복리&amp;nbsp;계산을&amp;nbsp;해보고&amp;nbsp;나서&amp;nbsp;다르게&amp;nbsp;읽혔다.&lt;br /&gt;수익률보다&amp;nbsp;시간이&amp;nbsp;먼저라는&amp;nbsp;뜻이&amp;nbsp;아니었다.&lt;br /&gt;수익률을&amp;nbsp;유지한&amp;nbsp;채&amp;nbsp;오래&amp;nbsp;살아남는&amp;nbsp;것이&amp;nbsp;핵심이라는&amp;nbsp;뜻이었다.&lt;br /&gt;&lt;br /&gt;크게&amp;nbsp;잃으면&amp;nbsp;회복하는&amp;nbsp;데&amp;nbsp;시간이&amp;nbsp;오래&amp;nbsp;걸린다.&lt;br /&gt;-50%를&amp;nbsp;당하면&amp;nbsp;원금으로&amp;nbsp;돌아오는&amp;nbsp;것만으로&amp;nbsp;+100%가&amp;nbsp;필요하다.&lt;br /&gt;그&amp;nbsp;시간&amp;nbsp;동안&amp;nbsp;복리가&amp;nbsp;쌓이지&amp;nbsp;않는다.&lt;br /&gt;&lt;br /&gt;60%&amp;nbsp;캡&amp;nbsp;전략은&amp;nbsp;피크에서&amp;nbsp;멈춘다.&lt;br /&gt;더&amp;nbsp;벌&amp;nbsp;수&amp;nbsp;있는데&amp;nbsp;멈추는&amp;nbsp;게&amp;nbsp;아깝다.&lt;br /&gt;근데&amp;nbsp;멈추는&amp;nbsp;순간&amp;nbsp;그해&amp;nbsp;드로다운을&amp;nbsp;안&amp;nbsp;겪는다.&lt;br /&gt;다음&amp;nbsp;해를&amp;nbsp;더&amp;nbsp;큰&amp;nbsp;원금으로&amp;nbsp;시작한다.&lt;br /&gt;&lt;br /&gt;원본이&amp;nbsp;수익&amp;nbsp;피크를&amp;nbsp;찍고&amp;nbsp;내려오는&amp;nbsp;동안,&amp;nbsp;캡은&amp;nbsp;멈춰서&amp;nbsp;기다린다.&lt;br /&gt;그&amp;nbsp;차이가&amp;nbsp;복리로&amp;nbsp;쌓인다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;지금 이 순간에 드는 생각&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;$300이 작은 돈이라는 건 안다.&lt;br /&gt;솔직히&amp;nbsp;부끄럽기도&amp;nbsp;하다.&lt;br /&gt;&lt;br /&gt;근데&amp;nbsp;이제는&amp;nbsp;생각이&amp;nbsp;바뀌었다.&lt;br /&gt;$300이&amp;nbsp;문제가&amp;nbsp;아니다.&lt;br /&gt;이&amp;nbsp;전략이&amp;nbsp;실전에서도&amp;nbsp;통하는가가&amp;nbsp;문제다.&lt;br /&gt;&lt;br /&gt;그게&amp;nbsp;증명되면&amp;nbsp;금액은&amp;nbsp;언제든지&amp;nbsp;올릴&amp;nbsp;수&amp;nbsp;있다.&lt;br /&gt;지금은&amp;nbsp;전략을&amp;nbsp;검증하는&amp;nbsp;중이다.&lt;br /&gt;&lt;br /&gt;백테스트는&amp;nbsp;백테스트다.&lt;br /&gt;3년&amp;nbsp;연속&amp;nbsp;60%를&amp;nbsp;달성한&amp;nbsp;데이터가&amp;nbsp;있지만,&amp;nbsp;실전은&amp;nbsp;다르다.&lt;br /&gt;실전이&amp;nbsp;쌓여야&amp;nbsp;숫자에&amp;nbsp;신뢰가&amp;nbsp;생긴다.&lt;br /&gt;&lt;br /&gt;검증은&amp;nbsp;계속하고&amp;nbsp;있다.&lt;br /&gt;결과가&amp;nbsp;나오면&amp;nbsp;다시&amp;nbsp;올린다.&lt;br /&gt;&lt;br /&gt;※&amp;nbsp;이&amp;nbsp;글의&amp;nbsp;10년&amp;nbsp;복리&amp;nbsp;계산은&amp;nbsp;단순&amp;nbsp;계산이며&amp;nbsp;세금&amp;middot;수수료를&amp;nbsp;포함하지&amp;nbsp;않는다.&lt;br /&gt;60%&amp;nbsp;캡&amp;nbsp;전략&amp;nbsp;수치는&amp;nbsp;실제&amp;nbsp;백테스트&amp;nbsp;결과이지만,&amp;nbsp;미래&amp;nbsp;수익을&amp;nbsp;보장하지&amp;nbsp;않는다.&lt;/p&gt;</description>
      <category>바이낸스 선물 자동매매</category>
      <category>MDD</category>
      <category>리스크관리</category>
      <category>바이낸스</category>
      <category>백테스트</category>
      <category>복리</category>
      <category>선물자동매매</category>
      <category>수익률</category>
      <category>자동매매</category>
      <category>자동매매봇</category>
      <category>코인자동매매</category>
      <author>creator88837</author>
      <guid isPermaLink="true">https://creator88837.tistory.com/46</guid>
      <comments>https://creator88837.tistory.com/46#entry46comment</comments>
      <pubDate>Mon, 13 Jul 2026 09:00:56 +0900</pubDate>
    </item>
    <item>
      <title>바이낸스 봇 리스크 분산, 같은 코인에 3개 몰았더니 다 같이 -$183</title>
      <link>https://creator88837.tistory.com/45</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;바이낸스&amp;nbsp;선물&amp;nbsp;자동매매&amp;nbsp;봇&amp;nbsp;6월&amp;nbsp;실전&amp;nbsp;결과를&amp;nbsp;정리했다.&lt;br /&gt;총&amp;nbsp;5개&amp;nbsp;봇을&amp;nbsp;운영했고,&amp;nbsp;합산&amp;nbsp;순손익은&amp;nbsp;-$152.22였다.&lt;br /&gt;이&amp;nbsp;글에서는&amp;nbsp;ONDO&amp;nbsp;봇&amp;nbsp;3개가&amp;nbsp;동시에&amp;nbsp;손실을&amp;nbsp;낸&amp;nbsp;원인과&amp;nbsp;리스크&amp;nbsp;분산&amp;nbsp;기준을&amp;nbsp;실제&amp;nbsp;수치를&amp;nbsp;바탕으로&amp;nbsp;정리한다.&lt;br /&gt;&lt;br /&gt;1봇&amp;nbsp;BTC는&amp;nbsp;+$0.68.&lt;br /&gt;5봇&amp;nbsp;XRP는&amp;nbsp;+$30.90.&lt;br /&gt;이&amp;nbsp;두&amp;nbsp;봇은&amp;nbsp;플러스로&amp;nbsp;마쳤다.&lt;br /&gt;&lt;br /&gt;문제는&amp;nbsp;나머지&amp;nbsp;세&amp;nbsp;봇이었다.&lt;br /&gt;2봇&amp;nbsp;ONDO&amp;nbsp;-$94.33.&lt;br /&gt;3봇&amp;nbsp;ONDO&amp;nbsp;-$41.61.&lt;br /&gt;4봇&amp;nbsp;ONDO&amp;nbsp;-$47.86.&lt;br /&gt;합산&amp;nbsp;-$183.80.&lt;br /&gt;&lt;br /&gt;ONDO가&amp;nbsp;6월&amp;nbsp;내내&amp;nbsp;약세였다.&lt;br /&gt;그리고&amp;nbsp;그&amp;nbsp;코인에&amp;nbsp;붙어있던&amp;nbsp;봇&amp;nbsp;3개가&amp;nbsp;동시에&amp;nbsp;손실을&amp;nbsp;냈다..&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;봇이&amp;nbsp;5개라도&amp;nbsp;같은&amp;nbsp;코인이면&amp;nbsp;리스크&amp;nbsp;분산이&amp;nbsp;안&amp;nbsp;된다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;투자에서 리스크 분산은 자산을 여러 곳에 나눠 담는 전략이다.&lt;br /&gt;한&amp;nbsp;곳에&amp;nbsp;몰리면&amp;nbsp;그&amp;nbsp;자산이&amp;nbsp;흔들릴&amp;nbsp;때&amp;nbsp;전체가&amp;nbsp;흔들린다.&lt;br /&gt;주식&amp;nbsp;투자에서&amp;nbsp;한&amp;nbsp;종목에&amp;nbsp;전&amp;nbsp;재산을&amp;nbsp;넣지&amp;nbsp;말라고&amp;nbsp;하는&amp;nbsp;이유다.&lt;br /&gt;&lt;br /&gt;자동매매&amp;nbsp;봇도&amp;nbsp;같은&amp;nbsp;원리다.&lt;br /&gt;봇을&amp;nbsp;5개&amp;nbsp;운영한다고&amp;nbsp;해서&amp;nbsp;리스크가&amp;nbsp;자동으로&amp;nbsp;분산되지&amp;nbsp;않는다.&lt;br /&gt;봇이&amp;nbsp;바라보는&amp;nbsp;코인이&amp;nbsp;다&amp;nbsp;같으면,&amp;nbsp;봇이&amp;nbsp;5개든&amp;nbsp;10개든&amp;nbsp;리스크는&amp;nbsp;하나다.&lt;br /&gt;&lt;br /&gt;코인&amp;nbsp;가격이&amp;nbsp;오르면&amp;nbsp;5개&amp;nbsp;봇이&amp;nbsp;동시에&amp;nbsp;수익을&amp;nbsp;내고,&lt;br /&gt;코인&amp;nbsp;가격이&amp;nbsp;떨어지면&amp;nbsp;5개&amp;nbsp;봇이&amp;nbsp;동시에&amp;nbsp;손실을&amp;nbsp;낸다.&lt;br /&gt;봇을&amp;nbsp;나눠놨지만&amp;nbsp;사실상&amp;nbsp;하나의&amp;nbsp;포지션과&amp;nbsp;같다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;ONDO&amp;nbsp;3개&amp;nbsp;배치가&amp;nbsp;-$183&amp;nbsp;동시&amp;nbsp;손실을&amp;nbsp;만든&amp;nbsp;이유&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;당시 봇 배치는 이랬다.&lt;br /&gt;&lt;br /&gt;1봇:&amp;nbsp;BTC&lt;br /&gt;2봇:&amp;nbsp;ONDO&lt;br /&gt;3봇:&amp;nbsp;ONDO&lt;br /&gt;4봇:&amp;nbsp;ONDO&lt;br /&gt;5봇:&amp;nbsp;XRP&lt;br /&gt;&lt;br /&gt;ONDO에&amp;nbsp;봇&amp;nbsp;3개를&amp;nbsp;배치한&amp;nbsp;이유가&amp;nbsp;있었다.&lt;br /&gt;백테스트&amp;nbsp;결과가&amp;nbsp;전략마다&amp;nbsp;달랐기&amp;nbsp;때문이다.&lt;br /&gt;전략마다&amp;nbsp;다른&amp;nbsp;수익률이&amp;nbsp;나왔으니&amp;nbsp;&quot;전략을&amp;nbsp;다르게&amp;nbsp;했으니&amp;nbsp;분산됐다&quot;고&amp;nbsp;생각했다.&lt;br /&gt;&lt;br /&gt;착각이었다.&lt;br /&gt;&lt;br /&gt;전략이&amp;nbsp;달라도&amp;nbsp;코인이&amp;nbsp;같으면&amp;nbsp;가격&amp;nbsp;방향은&amp;nbsp;같다.&lt;br /&gt;ONDO가&amp;nbsp;올라야&amp;nbsp;3개&amp;nbsp;봇이&amp;nbsp;다&amp;nbsp;수익을&amp;nbsp;낸다.&lt;br /&gt;ONDO가&amp;nbsp;빠지면&amp;nbsp;3개&amp;nbsp;봇이&amp;nbsp;다&amp;nbsp;손실을&amp;nbsp;낸다.&lt;br /&gt;전략의&amp;nbsp;차이는&amp;nbsp;진입&amp;nbsp;타이밍이나&amp;nbsp;익절&amp;nbsp;목표에만&amp;nbsp;영향을&amp;nbsp;줄&amp;nbsp;뿐이다.&lt;br /&gt;방향&amp;nbsp;자체는&amp;nbsp;코인이&amp;nbsp;결정한다.&lt;br /&gt;&lt;br /&gt;결과가&amp;nbsp;이를&amp;nbsp;증명했다.&lt;br /&gt;2봇&amp;nbsp;MDD가&amp;nbsp;-66.97%였다.&lt;br /&gt;초기&amp;nbsp;잔고&amp;nbsp;$145에서&amp;nbsp;최대&amp;nbsp;$97&amp;nbsp;가까이&amp;nbsp;빠진&amp;nbsp;셈이다.&lt;br /&gt;3봇은&amp;nbsp;-31.17%,&amp;nbsp;4봇은&amp;nbsp;-23.33%.&lt;br /&gt;전략이&amp;nbsp;달랐음에도&amp;nbsp;방향은&amp;nbsp;같았고,&amp;nbsp;손실&amp;nbsp;크기만&amp;nbsp;달랐다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2085&quot; data-origin-height=&quot;885&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/b8xlct/dJMcadbwsSF/k4Ue5YrdSZNemlUe7uBIVK/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/b8xlct/dJMcadbwsSF/k4Ue5YrdSZNemlUe7uBIVK/img.png&quot; data-alt=&quot;2026년 6월 봇별 실전 성과&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/b8xlct/dJMcadbwsSF/k4Ue5YrdSZNemlUe7uBIVK/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fb8xlct%2FdJMcadbwsSF%2Fk4Ue5YrdSZNemlUe7uBIVK%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;2085&quot; height=&quot;885&quot; data-origin-width=&quot;2085&quot; data-origin-height=&quot;885&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;2026년 6월 봇별 실전 성과&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;br /&gt;같은&amp;nbsp;코인&amp;nbsp;집중&amp;nbsp;리스크가&amp;nbsp;백테스트에서&amp;nbsp;보이지&amp;nbsp;않는&amp;nbsp;이유&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;백테스트는 과거 데이터 기준이다.&lt;br /&gt;특정&amp;nbsp;기간에&amp;nbsp;ONDO가&amp;nbsp;상승했다면,&amp;nbsp;그&amp;nbsp;기간&amp;nbsp;백테스트는&amp;nbsp;전략마다&amp;nbsp;다른&amp;nbsp;수익률을&amp;nbsp;보여준다.&lt;br /&gt;각&amp;nbsp;전략이&amp;nbsp;다른&amp;nbsp;시점에&amp;nbsp;다른&amp;nbsp;수익을&amp;nbsp;냈기&amp;nbsp;때문이다.&lt;br /&gt;&quot;서로&amp;nbsp;다른&amp;nbsp;성과를&amp;nbsp;냈으니&amp;nbsp;분산&amp;nbsp;효과가&amp;nbsp;있다&quot;는&amp;nbsp;결론이&amp;nbsp;나온다.&lt;br /&gt;&lt;br /&gt;그런데&amp;nbsp;실전에서는&amp;nbsp;코인의&amp;nbsp;방향이&amp;nbsp;먼저&amp;nbsp;결정된다.&lt;br /&gt;방향이&amp;nbsp;정해지면&amp;nbsp;전략마다&amp;nbsp;손익&amp;nbsp;크기가&amp;nbsp;달라질&amp;nbsp;뿐이지,&amp;nbsp;전부&amp;nbsp;같은&amp;nbsp;방향으로&amp;nbsp;움직인다.&lt;br /&gt;&lt;br /&gt;6월&amp;nbsp;ONDO는&amp;nbsp;하락세였다.&lt;br /&gt;전략이&amp;nbsp;달랐던&amp;nbsp;3개&amp;nbsp;봇은&amp;nbsp;전부&amp;nbsp;같은&amp;nbsp;방향으로&amp;nbsp;손실을&amp;nbsp;봤다.&lt;br /&gt;손실&amp;nbsp;크기는&amp;nbsp;달랐지만&amp;nbsp;방향은&amp;nbsp;하나였다.&lt;br /&gt;&lt;br /&gt;백테스트는&amp;nbsp;특정&amp;nbsp;기간의&amp;nbsp;승자를&amp;nbsp;보여준다.&lt;br /&gt;그&amp;nbsp;기간이&amp;nbsp;지나면&amp;nbsp;시장&amp;nbsp;환경이&amp;nbsp;바뀐다.&lt;br /&gt;전략이&amp;nbsp;달라도&amp;nbsp;코인이&amp;nbsp;같으면&amp;nbsp;환경이&amp;nbsp;바뀔&amp;nbsp;때&amp;nbsp;전략이&amp;nbsp;다&amp;nbsp;같이&amp;nbsp;흔들린다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;자동매매&amp;nbsp;봇&amp;nbsp;리스크&amp;nbsp;분산의&amp;nbsp;실제&amp;nbsp;기준&amp;nbsp;세&amp;nbsp;가지&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;이번 경험을 통해 정리한 기준이 있다.&lt;br /&gt;&lt;br /&gt;첫째,&amp;nbsp;코인을&amp;nbsp;분산한다.&lt;br /&gt;봇이&amp;nbsp;몇&amp;nbsp;개든&amp;nbsp;같은&amp;nbsp;코인에&amp;nbsp;여러&amp;nbsp;봇을&amp;nbsp;붙이지&amp;nbsp;않는다.&lt;br /&gt;봇&amp;nbsp;수가&amp;nbsp;아니라&amp;nbsp;코인&amp;nbsp;수가&amp;nbsp;분산의&amp;nbsp;기준이다.&lt;br /&gt;BTC&amp;nbsp;1봇,&amp;nbsp;ONDO&amp;nbsp;1봇,&amp;nbsp;XRP&amp;nbsp;1봇처럼&amp;nbsp;코인별로&amp;nbsp;1개씩이&amp;nbsp;원칙이다.&lt;br /&gt;&lt;br /&gt;둘째,&amp;nbsp;코인&amp;nbsp;간&amp;nbsp;상관관계를&amp;nbsp;파악한다.&lt;br /&gt;알트코인끼리는&amp;nbsp;상관관계가&amp;nbsp;높다.&lt;br /&gt;BTC가&amp;nbsp;하락하면&amp;nbsp;ONDO도&amp;nbsp;XRP도&amp;nbsp;같이&amp;nbsp;빠지는&amp;nbsp;경향이&amp;nbsp;있다.&lt;br /&gt;완전한&amp;nbsp;분산은&amp;nbsp;어렵지만,&amp;nbsp;최소한&amp;nbsp;종목을&amp;nbsp;달리해야&amp;nbsp;동시&amp;nbsp;손실&amp;nbsp;규모가&amp;nbsp;줄어든다.&lt;br /&gt;6월&amp;nbsp;결과에서도&amp;nbsp;BTC와&amp;nbsp;XRP는&amp;nbsp;플러스였다.&lt;br /&gt;ONDO만&amp;nbsp;유독&amp;nbsp;하락세였기&amp;nbsp;때문에&amp;nbsp;두&amp;nbsp;코인이&amp;nbsp;전체&amp;nbsp;손실을&amp;nbsp;일부&amp;nbsp;상쇄해줬다.&lt;br /&gt;만약&amp;nbsp;5개&amp;nbsp;봇이&amp;nbsp;전부&amp;nbsp;ONDO였다면&amp;nbsp;손실은&amp;nbsp;훨씬&amp;nbsp;컸을&amp;nbsp;것이다.&lt;br /&gt;&lt;br /&gt;셋째,&amp;nbsp;알트코인의&amp;nbsp;시즌&amp;nbsp;특성을&amp;nbsp;고려한다.&lt;br /&gt;알트코인&amp;nbsp;자동매매는&amp;nbsp;BTC&amp;nbsp;상승장에서&amp;nbsp;주로&amp;nbsp;작동한다.&lt;br /&gt;BTC가&amp;nbsp;횡보하거나&amp;nbsp;하락하는&amp;nbsp;구간에서&amp;nbsp;알트코인&amp;nbsp;봇은&amp;nbsp;성과가&amp;nbsp;나오기&amp;nbsp;어렵다.&lt;br /&gt;알트코인은&amp;nbsp;BTC가&amp;nbsp;오를&amp;nbsp;때&amp;nbsp;따라&amp;nbsp;오르고,&amp;nbsp;BTC가&amp;nbsp;빠질&amp;nbsp;때&amp;nbsp;더&amp;nbsp;크게&amp;nbsp;빠지는&amp;nbsp;특성이&amp;nbsp;있다.&lt;br /&gt;알트코인&amp;nbsp;봇을&amp;nbsp;여러&amp;nbsp;개&amp;nbsp;운영한다면&amp;nbsp;BTC&amp;nbsp;흐름을&amp;nbsp;함께&amp;nbsp;참고하는&amp;nbsp;것이&amp;nbsp;낫다.&lt;br /&gt;BTC가&amp;nbsp;하락&amp;nbsp;중이라면&amp;nbsp;알트코인&amp;nbsp;봇&amp;nbsp;전체가&amp;nbsp;불리한&amp;nbsp;환경에&amp;nbsp;놓인다.&lt;br /&gt;알트코인&amp;nbsp;봇을&amp;nbsp;여러&amp;nbsp;개&amp;nbsp;가동할수록&amp;nbsp;BTC&amp;nbsp;방향에&amp;nbsp;더&amp;nbsp;크게&amp;nbsp;노출되는&amp;nbsp;셈이다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;결론&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;봇 5개라도 코인이 같으면 봇 1개와 위험 구조가 같다.&lt;br /&gt;&lt;br /&gt;리스크&amp;nbsp;분산에서&amp;nbsp;코인&amp;nbsp;분산이&amp;nbsp;전략&amp;nbsp;분산보다&amp;nbsp;먼저다.&lt;br /&gt;전략이&amp;nbsp;달라도&amp;nbsp;코인이&amp;nbsp;같으면&amp;nbsp;의미가&amp;nbsp;없다.&lt;br /&gt;코인이&amp;nbsp;달라야&amp;nbsp;방향이&amp;nbsp;갈리고,&amp;nbsp;방향이&amp;nbsp;갈려야&amp;nbsp;한쪽이&amp;nbsp;빠질&amp;nbsp;때&amp;nbsp;다른&amp;nbsp;쪽이&amp;nbsp;버텨준다.&lt;br /&gt;&lt;br /&gt;분산이&amp;nbsp;제대로&amp;nbsp;됐는지&amp;nbsp;확인하는&amp;nbsp;가장&amp;nbsp;쉬운&amp;nbsp;방법은&amp;nbsp;이&amp;nbsp;질문&amp;nbsp;하나다.&lt;br /&gt;&quot;지금&amp;nbsp;운영&amp;nbsp;중인&amp;nbsp;봇&amp;nbsp;중&amp;nbsp;같은&amp;nbsp;코인이&amp;nbsp;두&amp;nbsp;개&amp;nbsp;이상인가?&quot;&lt;br /&gt;그렇다면&amp;nbsp;그&amp;nbsp;코인에&amp;nbsp;집중된&amp;nbsp;만큼&amp;nbsp;리스크도&amp;nbsp;집중돼&amp;nbsp;있다.&lt;br /&gt;&lt;br /&gt;6월에&amp;nbsp;ONDO&amp;nbsp;3개&amp;nbsp;봇이&amp;nbsp;동시에&amp;nbsp;-$183을&amp;nbsp;기록하고&amp;nbsp;나서야&amp;nbsp;이걸&amp;nbsp;실감했다.&lt;br /&gt;백테스트에서는&amp;nbsp;보이지&amp;nbsp;않는&amp;nbsp;리스크다.&lt;br /&gt;봇이&amp;nbsp;실제로&amp;nbsp;돌아가고&amp;nbsp;같은&amp;nbsp;방향으로&amp;nbsp;빠지는&amp;nbsp;걸&amp;nbsp;눈으로&amp;nbsp;봐야&amp;nbsp;와닿는다.&lt;/p&gt;</description>
      <category>바이낸스 선물 자동매매</category>
      <category>리스크분산</category>
      <category>바이낸스</category>
      <category>바이낸스봇</category>
      <category>분산투자</category>
      <category>선물자동매매</category>
      <category>실전검증</category>
      <category>자동매매</category>
      <category>자동매매봇</category>
      <category>코인봇운영</category>
      <category>코인자동매매</category>
      <author>creator88837</author>
      <guid isPermaLink="true">https://creator88837.tistory.com/45</guid>
      <comments>https://creator88837.tistory.com/45#entry45comment</comments>
      <pubDate>Sat, 11 Jul 2026 00:10:52 +0900</pubDate>
    </item>
    <item>
      <title>바이낸스 봇 청산 실패 -2019 오류, 0.001 BTC를 1 BTC로 착각한 이유</title>
      <link>https://creator88837.tistory.com/44</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;바이낸스&amp;nbsp;선물&amp;nbsp;자동매매&amp;nbsp;봇&amp;nbsp;청산&amp;nbsp;오류&amp;nbsp;-2019를&amp;nbsp;정리했다.&lt;br /&gt;-2022를&amp;nbsp;잡고&amp;nbsp;다음날&amp;nbsp;발생한&amp;nbsp;오류로,&amp;nbsp;0.001&amp;nbsp;BTC&amp;nbsp;포지션을&amp;nbsp;1&amp;nbsp;BTC로&amp;nbsp;착각해&amp;nbsp;증거금&amp;nbsp;부족이&amp;nbsp;발생했다.&lt;br /&gt;이&amp;nbsp;글에서는&amp;nbsp;ccxt&amp;nbsp;fetch_positions의&amp;nbsp;contracts&amp;nbsp;단위&amp;nbsp;오류&amp;nbsp;원인과&amp;nbsp;해결법을&amp;nbsp;정리한다.&lt;br /&gt;&lt;br /&gt;-2022를&amp;nbsp;잡았다.&lt;br /&gt;청산&amp;nbsp;시장가&amp;nbsp;주문에서&amp;nbsp;reduceOnly&amp;nbsp;파라미터를&amp;nbsp;제거하고&amp;nbsp;정상&amp;nbsp;작동을&amp;nbsp;확인했다.&lt;br /&gt;5월&amp;nbsp;27일에&amp;nbsp;수정을&amp;nbsp;완료했다.&lt;br /&gt;&lt;br /&gt;5월&amp;nbsp;28일&amp;nbsp;새벽&amp;nbsp;1시.&lt;br /&gt;또&amp;nbsp;청산&amp;nbsp;오류가&amp;nbsp;났다.&lt;br /&gt;이번엔&amp;nbsp;다른&amp;nbsp;코드였다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1783842416775&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;{&quot;code&quot;: -2019, &quot;msg&quot;: &quot;Margin is insufficient.&quot;}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;증거금이&amp;nbsp;부족하다는&amp;nbsp;뜻이다.&lt;br /&gt;이상했다.&lt;br /&gt;BTC&amp;nbsp;롱&amp;nbsp;포지션&amp;nbsp;0.001을&amp;nbsp;청산하는&amp;nbsp;건데&amp;nbsp;증거금이&amp;nbsp;왜&amp;nbsp;부족한가.&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;바이낸스&amp;nbsp;-2019&amp;nbsp;오류가&amp;nbsp;청산&amp;nbsp;도중에&amp;nbsp;발생하는&amp;nbsp;이유&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;-2019는 &quot;증거금(Margin)이 부족하다&quot;는 바이낸스 API 오류 코드다.&lt;br /&gt;&lt;br /&gt;선물&amp;nbsp;거래에서&amp;nbsp;포지션을&amp;nbsp;열거나&amp;nbsp;주문을&amp;nbsp;낼&amp;nbsp;때&amp;nbsp;계좌에&amp;nbsp;충분한&amp;nbsp;증거금이&amp;nbsp;있어야&amp;nbsp;한다.&lt;br /&gt;잔고가&amp;nbsp;주문에&amp;nbsp;필요한&amp;nbsp;증거금보다&amp;nbsp;적으면&amp;nbsp;바이낸스가&amp;nbsp;-2019로&amp;nbsp;거부한다.&lt;br /&gt;&lt;br /&gt;일반적으로는&amp;nbsp;잔고&amp;nbsp;부족이&amp;nbsp;원인이다.&lt;br /&gt;그런데&amp;nbsp;이번&amp;nbsp;경우는&amp;nbsp;잔고가&amp;nbsp;충분했다.&lt;br /&gt;청산인데&amp;nbsp;증거금이&amp;nbsp;왜&amp;nbsp;부족하다는&amp;nbsp;건지&amp;nbsp;이해가&amp;nbsp;안&amp;nbsp;됐다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;청산이&amp;nbsp;신규&amp;nbsp;숏&amp;nbsp;진입으로&amp;nbsp;처리되면&amp;nbsp;-2019&amp;nbsp;오류가&amp;nbsp;발생한다&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;봇이 BTC 롱 0.001을 청산하려고 했다.&lt;br /&gt;바이낸스가&amp;nbsp;-2019로&amp;nbsp;거부했다.&lt;br /&gt;&lt;br /&gt;청산인데&amp;nbsp;증거금이&amp;nbsp;부족할&amp;nbsp;리가&amp;nbsp;없다.&lt;br /&gt;청산은&amp;nbsp;포지션을&amp;nbsp;줄이는&amp;nbsp;행위이고,&amp;nbsp;증거금을&amp;nbsp;더&amp;nbsp;요구하는&amp;nbsp;게&amp;nbsp;아니라&amp;nbsp;오히려&amp;nbsp;돌려받는&amp;nbsp;쪽이다.&lt;br /&gt;&lt;br /&gt;이건&amp;nbsp;청산이&amp;nbsp;청산으로&amp;nbsp;처리되지&amp;nbsp;않고&amp;nbsp;신규&amp;nbsp;주문으로&amp;nbsp;처리된&amp;nbsp;것이었다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;contracts&amp;nbsp;단위&amp;nbsp;오류로&amp;nbsp;수량이&amp;nbsp;1000배&amp;nbsp;부풀려졌다&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;-2022를 고치는 과정에서 실제 수량을 조회하기 위해 fetch_positions를 도입했다.&lt;br /&gt;ccxt&amp;nbsp;라이브러리의&amp;nbsp;fetch_positions는&amp;nbsp;포지션&amp;nbsp;정보를&amp;nbsp;딕셔너리&amp;nbsp;형태로&amp;nbsp;반환한다.&lt;br /&gt;그&amp;nbsp;딕셔너리&amp;nbsp;안에&amp;nbsp;'contracts'라는&amp;nbsp;키가&amp;nbsp;있다.&lt;br /&gt;&lt;br /&gt;여기서&amp;nbsp;단위&amp;nbsp;오류가&amp;nbsp;발생했다.&lt;br /&gt;&lt;br /&gt;바이낸스&amp;nbsp;선물에서&amp;nbsp;BTC/USDT의&amp;nbsp;최소&amp;nbsp;거래&amp;nbsp;단위는&amp;nbsp;0.001&amp;nbsp;BTC다.&lt;br /&gt;ccxt의&amp;nbsp;'contracts'는&amp;nbsp;계약&amp;nbsp;수를&amp;nbsp;반환한다.&lt;br /&gt;0.001&amp;nbsp;BTC&amp;nbsp;=&amp;nbsp;1계약이다.&lt;br /&gt;즉,&amp;nbsp;BTC&amp;nbsp;0.001짜리&amp;nbsp;포지션이&amp;nbsp;있으면&amp;nbsp;contracts&amp;nbsp;=&amp;nbsp;1을&amp;nbsp;반환한다.&lt;br /&gt;&lt;br /&gt;봇이&amp;nbsp;이&amp;nbsp;값을&amp;nbsp;그대로&amp;nbsp;amount로&amp;nbsp;사용했다.&lt;br /&gt;amount&amp;nbsp;=&amp;nbsp;1.0으로&amp;nbsp;인식했다는&amp;nbsp;뜻이다.&lt;br /&gt;그래서&amp;nbsp;봇이&amp;nbsp;1&amp;nbsp;BTC&amp;nbsp;매도를&amp;nbsp;시도했다.&lt;br /&gt;&lt;br /&gt;계좌에&amp;nbsp;있는&amp;nbsp;포지션은&amp;nbsp;0.001&amp;nbsp;BTC다.&lt;br /&gt;봇이&amp;nbsp;1&amp;nbsp;BTC&amp;nbsp;매도를&amp;nbsp;시도하면&amp;nbsp;어떻게&amp;nbsp;될까.&lt;br /&gt;선물에서&amp;nbsp;보유량을&amp;nbsp;초과하는&amp;nbsp;매도&amp;nbsp;주문을&amp;nbsp;내면&amp;nbsp;초과분은&amp;nbsp;신규&amp;nbsp;숏&amp;nbsp;진입&amp;nbsp;시도로&amp;nbsp;처리된다.&lt;br /&gt;0.001&amp;nbsp;BTC&amp;nbsp;청산&amp;nbsp;후&amp;nbsp;남은&amp;nbsp;0.999&amp;nbsp;BTC&amp;nbsp;매도는&amp;nbsp;신규&amp;nbsp;숏&amp;nbsp;0.999&amp;nbsp;BTC&amp;nbsp;진입&amp;nbsp;시도가&amp;nbsp;된다.&lt;br /&gt;0.999&amp;nbsp;BTC&amp;nbsp;숏&amp;nbsp;포지션을&amp;nbsp;열려면&amp;nbsp;상당한&amp;nbsp;증거금이&amp;nbsp;필요하다.&lt;br /&gt;그&amp;nbsp;증거금이&amp;nbsp;없으니&amp;nbsp;-2019가&amp;nbsp;반환된&amp;nbsp;것이다.&lt;br /&gt;&lt;br /&gt;정리하면&amp;nbsp;이렇다.&lt;br /&gt;청산하려&amp;nbsp;했는데&amp;nbsp;실제로는&amp;nbsp;&quot;청산&amp;nbsp;+&amp;nbsp;대규모&amp;nbsp;신규&amp;nbsp;숏&amp;nbsp;진입&amp;nbsp;시도&quot;가&amp;nbsp;됐고,&lt;br /&gt;신규&amp;nbsp;진입에&amp;nbsp;필요한&amp;nbsp;증거금이&amp;nbsp;없어서&amp;nbsp;거부됐다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2085&quot; data-origin-height=&quot;884&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bg2Squ/dJMcagsDmlw/s4fZMtI9QiJz2n8gCfYjD0/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bg2Squ/dJMcagsDmlw/s4fZMtI9QiJz2n8gCfYjD0/img.png&quot; data-alt=&quot;ccxt fetch_positions 수량 단위 비교&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bg2Squ/dJMcagsDmlw/s4fZMtI9QiJz2n8gCfYjD0/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fbg2Squ%2FdJMcagsDmlw%2Fs4fZMtI9QiJz2n8gCfYjD0%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;2085&quot; height=&quot;884&quot; data-origin-width=&quot;2085&quot; data-origin-height=&quot;884&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;ccxt fetch_positions 수량 단위 비교&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;&lt;br /&gt;&lt;br /&gt;2봇~5봇에&amp;nbsp;같은&amp;nbsp;문제가&amp;nbsp;없었던&amp;nbsp;이유&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;2봇~5봇을 확인했다.&lt;br /&gt;모두&amp;nbsp;청산&amp;nbsp;수량으로&amp;nbsp;self.position['amount']를&amp;nbsp;그대로&amp;nbsp;사용하고&amp;nbsp;있었다.&lt;br /&gt;&lt;br /&gt;봇이&amp;nbsp;포지션에&amp;nbsp;진입할&amp;nbsp;때&amp;nbsp;실제&amp;nbsp;체결&amp;nbsp;수량을&amp;nbsp;BTC&amp;nbsp;단위로&amp;nbsp;계산해서&amp;nbsp;JSON&amp;nbsp;파일에&amp;nbsp;저장한다.&lt;br /&gt;BTC/USDT&amp;nbsp;선물&amp;nbsp;0.001&amp;nbsp;BTC&amp;nbsp;진입&amp;nbsp;&amp;rarr;&amp;nbsp;JSON에&amp;nbsp;amount&amp;nbsp;=&amp;nbsp;0.001로&amp;nbsp;저장.&lt;br /&gt;청산&amp;nbsp;시&amp;nbsp;이&amp;nbsp;값을&amp;nbsp;그대로&amp;nbsp;쓴다.&lt;br /&gt;&lt;br /&gt;1봇은&amp;nbsp;-2022를&amp;nbsp;고치면서&amp;nbsp;fetch_positions로&amp;nbsp;실제&amp;nbsp;수량을&amp;nbsp;조회하도록&amp;nbsp;바꿨다.&lt;br /&gt;그&amp;nbsp;과정에서&amp;nbsp;contracts&amp;nbsp;단위를&amp;nbsp;BTC&amp;nbsp;단위로&amp;nbsp;혼동한&amp;nbsp;것이다.&lt;br /&gt;수정이&amp;nbsp;오히려&amp;nbsp;새&amp;nbsp;버그를&amp;nbsp;만들었다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;저장된&amp;nbsp;수량으로&amp;nbsp;되돌려서&amp;nbsp;-2019를&amp;nbsp;해결했다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;AI에게 이렇게 요청했다.&lt;br /&gt;&lt;br /&gt;&quot;fetch_positions로&amp;nbsp;수량을&amp;nbsp;조회하도록&amp;nbsp;수정했는데&amp;nbsp;p['contracts']가&amp;nbsp;BTC&amp;nbsp;단위가&amp;nbsp;아니라&amp;nbsp;계약&amp;nbsp;수&amp;nbsp;단위라서&amp;nbsp;1&amp;nbsp;BTC로&amp;nbsp;잘못&amp;nbsp;인식하는&amp;nbsp;문제가&amp;nbsp;생겼다.&amp;nbsp;2봇~5봇처럼&amp;nbsp;self.position['amount']를&amp;nbsp;그대로&amp;nbsp;쓰는&amp;nbsp;방식으로&amp;nbsp;되돌려줘.&quot;&lt;br /&gt;&lt;br /&gt;수정&amp;nbsp;전&amp;nbsp;코드&amp;nbsp;(문제):&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1783842525727&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;```python
# contracts 단위 오류
positions = self.exchange.fetch_positions([self.symbol])
actual_amount = None
for p in positions:
    if float(p['contracts']) &amp;gt; 0:
        actual_amount = float(p['contracts'])  # 계약 수 반환 (0.001 BTC = 1계약 &amp;rarr; 1.0 반환)
        break
amount = actual_amount  # 1.0으로 인식 &amp;rarr; 1 BTC 매도 시도
```&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;수정&amp;nbsp;후&amp;nbsp;코드:&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1783842556903&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;```python
# 2봇~5봇과 동일한 방식
amount = self.position['amount']  # 진입 시 저장한 BTC 단위 값 (0.001)
```&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;fetch_positions&amp;nbsp;로직&amp;nbsp;전체를&amp;nbsp;제거하고&amp;nbsp;원래&amp;nbsp;방식으로&amp;nbsp;되돌렸다.&lt;br /&gt;수정&amp;nbsp;후&amp;nbsp;청산이&amp;nbsp;정상&amp;nbsp;작동했다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&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;br /&gt;-2019가 청산 중에 발생하면 수량 단위를 먼저 의심해야 한다.&lt;br /&gt;&lt;br /&gt;ccxt&amp;nbsp;라이브러리를&amp;nbsp;사용할&amp;nbsp;때&amp;nbsp;fetch_positions가&amp;nbsp;반환하는&amp;nbsp;'contracts'는&amp;nbsp;계약&amp;nbsp;수&amp;nbsp;단위다.&lt;br /&gt;BTC/USDT에서&amp;nbsp;0.001&amp;nbsp;BTC&amp;nbsp;=&amp;nbsp;1계약이므로&amp;nbsp;이&amp;nbsp;값을&amp;nbsp;그대로&amp;nbsp;쓰면&amp;nbsp;수량이&amp;nbsp;1000배&amp;nbsp;뻥튀기된다.&lt;br /&gt;BTC&amp;nbsp;단위가&amp;nbsp;필요하면&amp;nbsp;'contractSize'를&amp;nbsp;곱하거나&amp;nbsp;'notional'을&amp;nbsp;현재가로&amp;nbsp;나눠야&amp;nbsp;한다.&lt;br /&gt;&lt;br /&gt;가장&amp;nbsp;간단한&amp;nbsp;해결책은&amp;nbsp;진입&amp;nbsp;시&amp;nbsp;저장한&amp;nbsp;수량을&amp;nbsp;그대로&amp;nbsp;쓰는&amp;nbsp;것이다.&lt;br /&gt;진입&amp;nbsp;시점에&amp;nbsp;이미&amp;nbsp;BTC&amp;nbsp;단위로&amp;nbsp;계산한&amp;nbsp;값이&amp;nbsp;JSON에&amp;nbsp;있다.&lt;br /&gt;청산&amp;nbsp;시&amp;nbsp;굳이&amp;nbsp;다시&amp;nbsp;조회할&amp;nbsp;필요가&amp;nbsp;없다.&lt;br /&gt;&lt;br /&gt;이번&amp;nbsp;버그&amp;nbsp;3연속&amp;nbsp;경험에서&amp;nbsp;공통적으로&amp;nbsp;느낀&amp;nbsp;것이&amp;nbsp;있다.&lt;br /&gt;수정할&amp;nbsp;때&amp;nbsp;검증된&amp;nbsp;다른&amp;nbsp;봇의&amp;nbsp;방식을&amp;nbsp;참고하지&amp;nbsp;않고&amp;nbsp;새&amp;nbsp;로직을&amp;nbsp;추가하면&amp;nbsp;새&amp;nbsp;버그가&amp;nbsp;생긴다.&lt;br /&gt;2봇~5봇은&amp;nbsp;처음부터&amp;nbsp;self.position['amount']를&amp;nbsp;써왔고&amp;nbsp;같은&amp;nbsp;문제가&amp;nbsp;단&amp;nbsp;한&amp;nbsp;번도&amp;nbsp;없었다.&lt;br /&gt;기존&amp;nbsp;방식이&amp;nbsp;잘&amp;nbsp;되고&amp;nbsp;있을&amp;nbsp;때는&amp;nbsp;이유&amp;nbsp;없이&amp;nbsp;바꾸지&amp;nbsp;않는&amp;nbsp;것이&amp;nbsp;낫다.&lt;/p&gt;</description>
      <category>바이낸스 선물 자동매매</category>
      <category>api오류</category>
      <category>바이낸스</category>
      <category>바이낸스봇</category>
      <category>바이낸스오류</category>
      <category>봇버그</category>
      <category>선물자동매매</category>
      <category>자동매매</category>
      <category>자동매매봇</category>
      <category>코인자동매매</category>
      <category>파이썬자동매매</category>
      <author>creator88837</author>
      <guid isPermaLink="true">https://creator88837.tistory.com/44</guid>
      <comments>https://creator88837.tistory.com/44#entry44comment</comments>
      <pubDate>Fri, 10 Jul 2026 13:30:20 +0900</pubDate>
    </item>
    <item>
      <title>바이낸스 봇 청산 실패 -2022 오류, 고쳤는데 다음날 또 터졌다</title>
      <link>https://creator88837.tistory.com/43</link>
      <description>&lt;p data-ke-size=&quot;size16&quot;&gt;바이낸스&amp;nbsp;선물&amp;nbsp;자동매매&amp;nbsp;봇&amp;nbsp;청산&amp;nbsp;오류&amp;nbsp;-2022를&amp;nbsp;정리했다.&lt;br /&gt;고쳐서&amp;nbsp;테스트까지&amp;nbsp;통과했는데,&amp;nbsp;다음날&amp;nbsp;같은&amp;nbsp;오류가&amp;nbsp;재발했다.&lt;br /&gt;이&amp;nbsp;글에서는&amp;nbsp;-2022&amp;nbsp;오류의&amp;nbsp;두&amp;nbsp;가지&amp;nbsp;원인과&amp;nbsp;헤지&amp;nbsp;모드에서의&amp;nbsp;진짜&amp;nbsp;해결법을&amp;nbsp;코드와&amp;nbsp;함께&amp;nbsp;정리한다.&lt;br /&gt;&lt;br /&gt;5월&amp;nbsp;25일에&amp;nbsp;-4509&amp;nbsp;오류를&amp;nbsp;잡았다.&lt;br /&gt;진입&amp;nbsp;직후&amp;nbsp;OCO&amp;nbsp;주문&amp;nbsp;실패&amp;nbsp;문제였다.&lt;br /&gt;sleep(5)를&amp;nbsp;추가해서&amp;nbsp;해결했고,&amp;nbsp;테스트에서&amp;nbsp;정상&amp;nbsp;작동을&amp;nbsp;확인했다.&lt;br /&gt;&lt;br /&gt;다음날인&amp;nbsp;5월&amp;nbsp;26일&amp;nbsp;오후&amp;nbsp;1시.&lt;br /&gt;EXIT_SIGNAL이&amp;nbsp;나왔다.&lt;br /&gt;봇이&amp;nbsp;BTC&amp;nbsp;롱&amp;nbsp;포지션&amp;nbsp;청산을&amp;nbsp;시도했다.&lt;br /&gt;이번엔&amp;nbsp;청산이&amp;nbsp;안&amp;nbsp;됐다.&lt;br /&gt;로그에&amp;nbsp;찍힌&amp;nbsp;오류는&amp;nbsp;-2022였다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1783841147809&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;{&quot;code&quot;: -2022, &quot;msg&quot;: &quot;ReduceOnly Order is rejected.&quot;}&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;바이낸스&amp;nbsp;-2022&amp;nbsp;오류가&amp;nbsp;청산&amp;nbsp;주문을&amp;nbsp;거부하는&amp;nbsp;원인&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;-2022는 reduceOnly 주문이 거부됐다는 뜻이다.&lt;br /&gt;reduceOnly는&amp;nbsp;직역하면&amp;nbsp;&quot;포지션을&amp;nbsp;줄이는&amp;nbsp;용도로만&amp;nbsp;써라&quot;는&amp;nbsp;조건이다.&lt;br /&gt;&lt;br /&gt;선물&amp;nbsp;거래에서&amp;nbsp;청산&amp;nbsp;주문을&amp;nbsp;낼&amp;nbsp;때&amp;nbsp;이&amp;nbsp;조건을&amp;nbsp;붙이면&amp;nbsp;바이낸스가&amp;nbsp;해당&amp;nbsp;주문을&amp;nbsp;반드시&amp;nbsp;포지션&amp;nbsp;청산&amp;nbsp;목적으로만&amp;nbsp;처리한다.&lt;br /&gt;실수로&amp;nbsp;포지션이&amp;nbsp;반대&amp;nbsp;방향으로&amp;nbsp;늘어나는&amp;nbsp;것을&amp;nbsp;막기&amp;nbsp;위한&amp;nbsp;안전장치다.&lt;br /&gt;&lt;br /&gt;예를&amp;nbsp;들어&amp;nbsp;BTC&amp;nbsp;롱&amp;nbsp;0.001을&amp;nbsp;보유&amp;nbsp;중일&amp;nbsp;때,&lt;br /&gt;청산&amp;nbsp;주문(매도)에&amp;nbsp;reduceOnly를&amp;nbsp;붙이면&amp;nbsp;0.001을&amp;nbsp;초과하는&amp;nbsp;매도는&amp;nbsp;자동으로&amp;nbsp;거부된다.&lt;br /&gt;포지션을&amp;nbsp;줄이는&amp;nbsp;것만&amp;nbsp;허용한다는&amp;nbsp;뜻이다.&lt;br /&gt;&lt;br /&gt;이&amp;nbsp;조건이&amp;nbsp;거부(-2022)됐다는&amp;nbsp;건&amp;nbsp;뭔가&amp;nbsp;이&amp;nbsp;조건을&amp;nbsp;충족하지&amp;nbsp;못하는&amp;nbsp;상황이&amp;nbsp;발생했다는&amp;nbsp;의미다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;OCO가&amp;nbsp;취소된&amp;nbsp;뒤&amp;nbsp;청산까지&amp;nbsp;실패하면&amp;nbsp;포지션이&amp;nbsp;무방비&amp;nbsp;상태가&amp;nbsp;된다&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;봇의 청산 절차는 두 단계로 진행된다.&lt;br /&gt;&lt;br /&gt;1단계&amp;nbsp;&amp;mdash;&amp;nbsp;기존&amp;nbsp;OCO(SL/TP)&amp;nbsp;주문을&amp;nbsp;취소한다.&lt;br /&gt;2단계&amp;nbsp;&amp;mdash;&amp;nbsp;시장가&amp;nbsp;청산&amp;nbsp;주문을&amp;nbsp;전송한다.&lt;br /&gt;&lt;br /&gt;이날은&amp;nbsp;1단계(OCO&amp;nbsp;취소)는&amp;nbsp;성공했다.&lt;br /&gt;그런데&amp;nbsp;2단계(시장가&amp;nbsp;청산)에서&amp;nbsp;-2022가&amp;nbsp;반환됐다.&lt;br /&gt;&lt;br /&gt;결과적으로&amp;nbsp;SL/TP는&amp;nbsp;이미&amp;nbsp;취소됐고,&amp;nbsp;청산&amp;nbsp;주문도&amp;nbsp;실패한&amp;nbsp;상태가&amp;nbsp;됐다.&lt;br /&gt;손절도&amp;nbsp;익절도&amp;nbsp;없고&amp;nbsp;청산&amp;nbsp;명령도&amp;nbsp;통하지&amp;nbsp;않는&amp;nbsp;무방비&amp;nbsp;상태로&amp;nbsp;포지션이&amp;nbsp;고착됐다.&lt;br /&gt;봇은&amp;nbsp;정상&amp;nbsp;작동&amp;nbsp;중으로&amp;nbsp;표시되지만&amp;nbsp;포지션은&amp;nbsp;방치된&amp;nbsp;것이다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;처음에는&amp;nbsp;청산&amp;nbsp;수량&amp;nbsp;불일치가&amp;nbsp;-2022의&amp;nbsp;원인이라고&amp;nbsp;생각했다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;로그를 분석했다.&lt;br /&gt;봇이&amp;nbsp;JSON&amp;nbsp;파일에&amp;nbsp;저장한&amp;nbsp;포지션&amp;nbsp;수량은&amp;nbsp;0.001&amp;nbsp;BTC였다.&lt;br /&gt;그런데&amp;nbsp;봇이&amp;nbsp;처음&amp;nbsp;진입했을&amp;nbsp;때&amp;nbsp;주문이&amp;nbsp;일부만&amp;nbsp;체결되는&amp;nbsp;경우가&amp;nbsp;있다.&lt;br /&gt;0.001을&amp;nbsp;주문했는데&amp;nbsp;0.0009만&amp;nbsp;체결된&amp;nbsp;상태라면&amp;nbsp;실제&amp;nbsp;잔여&amp;nbsp;수량은&amp;nbsp;JSON과&amp;nbsp;다르다.&lt;br /&gt;&lt;br /&gt;reduceOnly&amp;nbsp;조건이&amp;nbsp;붙어&amp;nbsp;있으면&amp;nbsp;바이낸스는&amp;nbsp;실제&amp;nbsp;보유량(0.0009)을&amp;nbsp;초과하는&amp;nbsp;수량의&amp;nbsp;청산&amp;nbsp;주문을&amp;nbsp;거부한다.&lt;br /&gt;봇은&amp;nbsp;JSON에&amp;nbsp;저장된&amp;nbsp;0.001로&amp;nbsp;청산을&amp;nbsp;시도하고,&amp;nbsp;실제&amp;nbsp;보유량&amp;nbsp;0.0009와&amp;nbsp;불일치하니&amp;nbsp;-2022가&amp;nbsp;난&amp;nbsp;것이다.&lt;br /&gt;&lt;br /&gt;AI에게&amp;nbsp;이렇게&amp;nbsp;요청했다.&lt;br /&gt;&lt;br /&gt;&quot;청산&amp;nbsp;시&amp;nbsp;봇이&amp;nbsp;JSON에&amp;nbsp;저장된&amp;nbsp;수량으로&amp;nbsp;주문을&amp;nbsp;내고&amp;nbsp;있다.&amp;nbsp;실제&amp;nbsp;바이낸스&amp;nbsp;포지션에서&amp;nbsp;현재&amp;nbsp;수량을&amp;nbsp;직접&amp;nbsp;조회해서&amp;nbsp;그&amp;nbsp;수량으로&amp;nbsp;청산하도록&amp;nbsp;수정해줘.&quot;&lt;br /&gt;&lt;br /&gt;수정&amp;nbsp;전&amp;nbsp;코드:&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1783841237272&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;```python
# JSON 저장값으로 청산
amount = self.position['amount']
self.exchange.create_market_sell_order(self.symbol, amount,
                                       params={'reduceOnly': True})
```&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;수정&amp;nbsp;후&amp;nbsp;코드:&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1783841261624&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;```python
# 거래소 실제 수량 조회
positions = self.exchange.fetch_positions([self.symbol])
actual_amount = None
for p in positions:
    if float(p['contracts']) &amp;gt; 0:
        actual_amount = float(p['contracts'])
        break

if actual_amount is None:
    logging.warning(&quot;거래소 포지션 없음 &amp;mdash; 상태 초기화&quot;)
    self.position = None
    return False

# 실제 수량으로 청산
self.exchange.create_market_sell_order(self.symbol, actual_amount,
                                       params={'reduceOnly': True})
```&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;수정&amp;nbsp;후&amp;nbsp;테스트에서는&amp;nbsp;정상&amp;nbsp;작동했다.&lt;br /&gt;이걸로&amp;nbsp;해결됐다고&amp;nbsp;생각했다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;-2022&amp;nbsp;오류가&amp;nbsp;수정&amp;nbsp;후에도&amp;nbsp;다음날&amp;nbsp;재발했다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;5월 27일 새벽 1시 10분.&lt;br /&gt;또&amp;nbsp;-2022가&amp;nbsp;떴다.&lt;br /&gt;이번에는&amp;nbsp;청산&amp;nbsp;시도가&amp;nbsp;있을&amp;nbsp;때마다&amp;nbsp;반복됐다.&lt;br /&gt;&lt;br /&gt;수량을&amp;nbsp;확인했다.&lt;br /&gt;실제&amp;nbsp;수량과&amp;nbsp;JSON&amp;nbsp;저장값이&amp;nbsp;동일했다.&amp;nbsp;0.001&amp;nbsp;=&amp;nbsp;0.001.&lt;br /&gt;수량&amp;nbsp;불일치가&amp;nbsp;원인이&amp;nbsp;아니었다.&lt;br /&gt;어제&amp;nbsp;수정한&amp;nbsp;게&amp;nbsp;원인이&amp;nbsp;아니었다는&amp;nbsp;뜻이다.&lt;br /&gt;&lt;br /&gt;처음부터&amp;nbsp;다시&amp;nbsp;생각해야&amp;nbsp;했다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;헤지&amp;nbsp;모드에서&amp;nbsp;시장가&amp;nbsp;청산에&amp;nbsp;reduceOnly를&amp;nbsp;쓰면&amp;nbsp;-2022가&amp;nbsp;난다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;2봇~5봇의 청산 로직과 비교했다.&lt;br /&gt;4개&amp;nbsp;봇은&amp;nbsp;모두&amp;nbsp;정상적으로&amp;nbsp;청산이&amp;nbsp;되고&amp;nbsp;있었다.&lt;br /&gt;그&amp;nbsp;코드를&amp;nbsp;확인했더니&amp;nbsp;차이가&amp;nbsp;바로&amp;nbsp;보였다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;&lt;figure class=&quot;imageblock alignCenter&quot; data-ke-mobileStyle=&quot;widthOrigin&quot; data-origin-width=&quot;2085&quot; data-origin-height=&quot;810&quot;&gt;&lt;span data-url=&quot;https://blog.kakaocdn.net/dn/bjJP4V/dJMcahkQHXb/7Lpe8UEpDkUFJIy3i1vQ41/img.png&quot; data-phocus=&quot;https://blog.kakaocdn.net/dn/bjJP4V/dJMcahkQHXb/7Lpe8UEpDkUFJIy3i1vQ41/img.png&quot; data-alt=&quot;봇 청산 주문 방식 비교&quot;&gt;&lt;img src=&quot;https://blog.kakaocdn.net/dn/bjJP4V/dJMcahkQHXb/7Lpe8UEpDkUFJIy3i1vQ41/img.png&quot; srcset=&quot;https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&amp;fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbjJP4V%2FdJMcahkQHXb%2F7Lpe8UEpDkUFJIy3i1vQ41%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;2085&quot; height=&quot;810&quot; data-origin-width=&quot;2085&quot; data-origin-height=&quot;810&quot;/&gt;&lt;/span&gt;&lt;figcaption&gt;봇 청산 주문 방식 비교&lt;/figcaption&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;2봇~5봇은&amp;nbsp;청산&amp;nbsp;시장가&amp;nbsp;주문에&amp;nbsp;별도&amp;nbsp;파라미터를&amp;nbsp;붙이지&amp;nbsp;않는다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1783841413128&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;```python
# 2봇~5봇 청산 방식
self.exchange.create_market_sell_order(self.symbol, amount)
```&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;1봇은&amp;nbsp;`params={'reduceOnly':&amp;nbsp;True}`가&amp;nbsp;붙어&amp;nbsp;있었다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1783841446632&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;```python
# 1봇 청산 방식 (문제)
self.exchange.create_market_sell_order(self.symbol, amount,
                                       params={'reduceOnly': True})
```&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;이&amp;nbsp;한&amp;nbsp;줄&amp;nbsp;차이가&amp;nbsp;원인이었다.&lt;br /&gt;&lt;br /&gt;헤지&amp;nbsp;모드(Hedge&amp;nbsp;Mode)&amp;nbsp;계정에서는&amp;nbsp;시장가&amp;nbsp;주문에&amp;nbsp;reduceOnly&amp;nbsp;파라미터를&amp;nbsp;지원하지&amp;nbsp;않는다.&lt;br /&gt;reduceOnly는&amp;nbsp;OCO(SL/TP)&amp;nbsp;같은&amp;nbsp;조건부&amp;nbsp;주문에&amp;nbsp;쓰는&amp;nbsp;파라미터다.&lt;br /&gt;청산&amp;nbsp;시장가&amp;nbsp;주문에는&amp;nbsp;붙일&amp;nbsp;필요가&amp;nbsp;없다.&lt;br /&gt;헤지&amp;nbsp;모드에서는&amp;nbsp;포지션&amp;nbsp;방향(positionSide)이&amp;nbsp;이미&amp;nbsp;LONG/SHORT으로&amp;nbsp;구분되어&amp;nbsp;있어서&amp;nbsp;반대&amp;nbsp;방향&amp;nbsp;진입과&amp;nbsp;청산이&amp;nbsp;자동으로&amp;nbsp;분리된다.&lt;br /&gt;따로&amp;nbsp;reduceOnly를&amp;nbsp;붙이지&amp;nbsp;않아도&amp;nbsp;청산&amp;nbsp;주문은&amp;nbsp;청산으로만&amp;nbsp;처리된다.&lt;br /&gt;&lt;br /&gt;쉽게&amp;nbsp;설명하면&amp;nbsp;이렇다.&lt;br /&gt;봇이&amp;nbsp;바이낸스에&amp;nbsp;이렇게&amp;nbsp;말한&amp;nbsp;셈이다.&lt;br /&gt;&quot;0.001&amp;nbsp;BTC&amp;nbsp;팔게.&amp;nbsp;근데&amp;nbsp;이&amp;nbsp;주문,&amp;nbsp;절대로&amp;nbsp;포지션&amp;nbsp;늘리는&amp;nbsp;데&amp;nbsp;쓰면&amp;nbsp;안&amp;nbsp;돼.&quot;&lt;br /&gt;바이낸스가&amp;nbsp;&quot;그&amp;nbsp;조건은&amp;nbsp;여기서&amp;nbsp;처리&amp;nbsp;못&amp;nbsp;해.&amp;nbsp;거부(-2022)&quot;라고&amp;nbsp;응답한&amp;nbsp;것이다.&lt;br /&gt;그냥&amp;nbsp;&quot;0.001&amp;nbsp;BTC&amp;nbsp;팔게&quot;라고만&amp;nbsp;했으면&amp;nbsp;됐는데,&amp;nbsp;불필요한&amp;nbsp;조건이&amp;nbsp;오류를&amp;nbsp;만들었다.&lt;br /&gt;&lt;br /&gt;1차&amp;nbsp;진단에서&amp;nbsp;수량&amp;nbsp;불일치를&amp;nbsp;원인으로&amp;nbsp;봤던&amp;nbsp;것은&amp;nbsp;잘못된&amp;nbsp;진단이었다.&lt;br /&gt;fetch_positions로&amp;nbsp;수량을&amp;nbsp;다시&amp;nbsp;조회하는&amp;nbsp;수정&amp;nbsp;후에도&amp;nbsp;reduceOnly는&amp;nbsp;그대로&amp;nbsp;남아&amp;nbsp;있었으니&amp;nbsp;-2022가&amp;nbsp;재발한&amp;nbsp;것이다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;reduceOnly&amp;nbsp;파라미터&amp;nbsp;제거로&amp;nbsp;청산&amp;nbsp;오류를&amp;nbsp;해결했다&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;AI에게 이렇게 요청했다.&lt;br /&gt;&lt;br /&gt;&quot;청산&amp;nbsp;시장가&amp;nbsp;주문에서&amp;nbsp;params={'reduceOnly':&amp;nbsp;True}를&amp;nbsp;제거해줘.&amp;nbsp;2봇~5봇처럼&amp;nbsp;파라미터&amp;nbsp;없이&amp;nbsp;일반&amp;nbsp;시장가&amp;nbsp;주문으로&amp;nbsp;변경해줘.&quot;&lt;br /&gt;&lt;br /&gt;수정&amp;nbsp;전:&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1783841507040&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;```python
self.exchange.create_market_sell_order(self.symbol, amount,
                                       params={'reduceOnly': True})
```&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;수정&amp;nbsp;후:&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;pre id=&quot;code_1783841525696&quot; class=&quot;html xml&quot; data-ke-language=&quot;html&quot; data-ke-type=&quot;codeblock&quot;&gt;&lt;code&gt;```python
self.exchange.create_market_sell_order(self.symbol, amount)
```&lt;/code&gt;&lt;/pre&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;&lt;br /&gt;두&amp;nbsp;글자&amp;nbsp;차이다.&lt;br /&gt;수정&amp;nbsp;후&amp;nbsp;모든&amp;nbsp;청산이&amp;nbsp;정상&amp;nbsp;작동했다.&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;h3 data-ke-size=&quot;size23&quot;&gt;결론&amp;nbsp;&lt;/h3&gt;
&lt;p data-ke-size=&quot;size16&quot;&gt;&lt;br /&gt;-2022 오류가 나면 두 가지를 확인해야 한다.&lt;br /&gt;&lt;br /&gt;첫째,&amp;nbsp;청산&amp;nbsp;수량이&amp;nbsp;실제&amp;nbsp;보유량과&amp;nbsp;일치하는지&amp;nbsp;확인한다.&lt;br /&gt;JSON&amp;nbsp;저장값을&amp;nbsp;그대로&amp;nbsp;쓰면&amp;nbsp;부분&amp;nbsp;체결&amp;nbsp;시&amp;nbsp;불일치가&amp;nbsp;생길&amp;nbsp;수&amp;nbsp;있다.&lt;br /&gt;&lt;br /&gt;둘째,&amp;nbsp;청산&amp;nbsp;시장가&amp;nbsp;주문에&amp;nbsp;불필요한&amp;nbsp;파라미터가&amp;nbsp;붙어&amp;nbsp;있는지&amp;nbsp;확인한다.&lt;br /&gt;헤지&amp;nbsp;모드에서&amp;nbsp;시장가&amp;nbsp;청산&amp;nbsp;주문에&amp;nbsp;reduceOnly를&amp;nbsp;쓰면&amp;nbsp;-2022로&amp;nbsp;거부된다.&lt;br /&gt;&lt;br /&gt;이번&amp;nbsp;경험에서&amp;nbsp;배운&amp;nbsp;것은&amp;nbsp;오류&amp;nbsp;진단을&amp;nbsp;단정&amp;nbsp;짓지&amp;nbsp;말아야&amp;nbsp;한다는&amp;nbsp;점이다.&lt;br /&gt;같은&amp;nbsp;오류&amp;nbsp;코드라도&amp;nbsp;원인이&amp;nbsp;두&amp;nbsp;개&amp;nbsp;이상일&amp;nbsp;수&amp;nbsp;있다.&lt;br /&gt;한&amp;nbsp;가지를&amp;nbsp;고쳐서&amp;nbsp;됐다고&amp;nbsp;해도,&amp;nbsp;재발하면&amp;nbsp;처음부터&amp;nbsp;다시&amp;nbsp;살펴봐야&amp;nbsp;한다.&lt;br /&gt;그리고&amp;nbsp;같은&amp;nbsp;기능을&amp;nbsp;하는&amp;nbsp;다른&amp;nbsp;봇의&amp;nbsp;코드와&amp;nbsp;비교하는&amp;nbsp;게&amp;nbsp;빠른&amp;nbsp;해결&amp;nbsp;방법이다.&lt;/p&gt;</description>
      <category>바이낸스 선물 자동매매</category>
      <category>api오류</category>
      <category>바이낸스</category>
      <category>바이낸스봇</category>
      <category>바이낸스오류</category>
      <category>봇버그</category>
      <category>선물자동매매</category>
      <category>자동매매</category>
      <category>자동매매봇</category>
      <category>코인자동매매</category>
      <category>파이썬자동매매</category>
      <author>creator88837</author>
      <guid isPermaLink="true">https://creator88837.tistory.com/43</guid>
      <comments>https://creator88837.tistory.com/43#entry43comment</comments>
      <pubDate>Fri, 10 Jul 2026 09:00:43 +0900</pubDate>
    </item>
  </channel>
</rss>