<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>퀀티랩 블로그 | 블로그</title><description/><link>https://blog.quantylab.com/</link><language>en</language><item><title>파이썬으로 IMF에서 각국의 GDP 수집하기 (v.2025)</title><link>https://blog.quantylab.com/blog/2025-11-27-acquisition_imf_weo/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2025-11-27-acquisition_imf_weo/</guid><pubDate>Thu, 27 Nov 2025 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;이번 글에서는 파이썬을 사용하여 IMF(국제통화기금)에서 WEO(World Economic Outlook) 데이터베이스를 통해 세계 경제 데이터를 수집하고 GDP(국내총생산) 데이터를 조회하고 시각화하는 방법을 소개합니다.&lt;/p&gt;
&lt;p&gt;WEO 데이터베이스에는 각국의 GDP, 인플레이션, 실업률 등 다양한 경제 지표가 포함되어 있습니다. 여기서는 GDP 데이터를 중심으로 다룹니다.&lt;/p&gt;
&lt;p&gt;다음 내용을 다룹니다:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;WEO 데이터를 SDMX 3.0 API를 통해 수집하는 방법&lt;/li&gt;
&lt;li&gt;GDP 데이터 조회 및 시각화 방법&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;&lt;h2 id=&quot;필요한-라이브러리-설치&quot;&gt;필요한 라이브러리 설치&lt;/h2&gt;&lt;/div&gt;
&lt;p&gt;먼저 필요한 파이썬 라이브러리를 설치합니다. &lt;code dir=&quot;auto&quot;&gt;pandas&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;requests&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;matplotlib&lt;/code&gt; 라이브러리가 필요합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;span&gt;&lt;/span&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;pip&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;install&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;pandas&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;requests&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;matplotlib&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;div&gt;&lt;h2 id=&quot;weo-데이터-수집&quot;&gt;WEO 데이터 수집&lt;/h2&gt;&lt;/div&gt;
&lt;p&gt;IMF의 WEO 데이터는 SDMX 3.0 API를 통해 접근할 수 있습니다. 다음은 파이썬을 사용하여 GDP 데이터를 수집하는 예제 코드입니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; json&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; requests&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;get_weo_data&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# Dataset&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# - Dataset name: World Economic Outlook (WEO)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# - ID: WEO&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# - Agency: IMF.RES&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# - Version: 9.0.0&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;IMF.RES,WEO&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# Data Query&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# https://api.imf.org/external/sdmx/3.0/data/{context}/{agencyID}/{resourceID}/{version}/{key}[?c][&amp;#x26;updatedAfter][&amp;#x26;firstNObservations][&amp;#x26;lastNObservations][&amp;#x26;dimensionAtObservation][&amp;#x26;attributes][&amp;#x26;measures][&amp;#x26;includeHistory][&amp;#x26;asOf]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;url &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;https://api.imf.org/external/sdmx/3.0/data/dataflow/IMF.RES/WEO/9.0.0/*&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;res &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; requests.&lt;/span&gt;&lt;span&gt;get&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;url&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; json.&lt;/span&gt;&lt;span&gt;loads&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;res.text&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;return&lt;/span&gt;&lt;span&gt; data&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;get_weo_data 함수를 호출하여 WEO 데이터를 수집할 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; json&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;with&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;open&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;weo_data.json&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;w&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;as&lt;/span&gt;&lt;span&gt; fout:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;get_weo_data&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;json.&lt;/span&gt;&lt;span&gt;dump&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;data&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; fout&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;수집한 데이터는 SDMX 3.0 형식으로 제공되서 파싱이 필요합니다.&lt;/p&gt;
&lt;div&gt;&lt;h2 id=&quot;gdp-데이터-조회-및-시각화&quot;&gt;GDP 데이터 조회 및 시각화&lt;/h2&gt;&lt;/div&gt;
&lt;p&gt;데이터를 살펴보면 dataSets 키 아래에 여러 국가와 지표가 포함되어 있습니다. 그런데 키 값이 복잡하므로, 이를 해석하기 위해서는 structures 키 아래의 정보를 참고해야 합니다.&lt;/p&gt;
&lt;p&gt;다음은 데이터를 파싱하여 판다스 데이터프레임으로 변환하는 예제 코드입니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;output &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; data_set &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; data_sets:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;structure &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; structures[data_set[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;structure&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;series_dims &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; structure[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;dimensions&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;series&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;obs_dims &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; structure[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;dimensions&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;observation&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; series_key, series_content &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; data_set[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;series&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;items&lt;/span&gt;&lt;span&gt;():&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;# series dimensions 파싱&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;dim_indices &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; series_key.&lt;/span&gt;&lt;span&gt;split&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;series_info &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; i, dim_index &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;enumerate&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;dim_indices&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;dim_id &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; series_dims[i]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;id&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;dim_value_id &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; series_dims[i]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;values&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;][&lt;/span&gt;&lt;span&gt;int&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;dim_index&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;][&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;id&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;series_info[dim_id] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; dim_value_id&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;# series attributes 파싱&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;attributes_info &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; attr_value, struct_attr &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;zip&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;series_content.&lt;/span&gt;&lt;span&gt;get&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;attributes&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;                                           &lt;/span&gt;&lt;/span&gt;&lt;span&gt;structure&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;attributes&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;series&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;attr_id &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; struct_attr[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;id&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;# coded attribute는 index로 제공 =&gt; value id로 변환&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;isinstance&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;attr_value&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;int&lt;/span&gt;&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;                &lt;/span&gt;&lt;/span&gt;&lt;span&gt;attr_id_value &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; struct_attr[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;values&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;attr_value&lt;/span&gt;&lt;span&gt;][&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;id&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;else&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;                &lt;/span&gt;&lt;/span&gt;&lt;span&gt;attr_id_value &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; attr_value  &lt;/span&gt;&lt;span&gt;# uncoded string&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;attributes_info[attr_id] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; attr_id_value&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;# observations 처리&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;observations&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;not&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; series_content:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;continue&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; obs_key, obs_value &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; series_content[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;observations&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;items&lt;/span&gt;&lt;span&gt;():&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;obs_idx &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;int&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;obs_key&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;obs_dim_value &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; obs_dims[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;values&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;][&lt;/span&gt;&lt;span&gt;obs_idx&lt;/span&gt;&lt;span&gt;][&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;value&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;value &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; obs_value[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;row &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;                &lt;/span&gt;&lt;span&gt;**&lt;/span&gt;&lt;span&gt;series_info,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;                &lt;/span&gt;&lt;span&gt;**&lt;/span&gt;&lt;span&gt;attributes_info,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;                &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;TIME_PERIOD&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;: obs_dim_value,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;                &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;: value&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;output.&lt;/span&gt;&lt;span&gt;append&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;row&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# pandas DF 생성&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pandas &lt;/span&gt;&lt;span&gt;as&lt;/span&gt;&lt;span&gt; pd&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;DataFrame&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;output&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;div&gt;
&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;.dataframe tbody tr th {&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;vertical-align: top;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;.dataframe thead th {&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;text-align: right;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;table border=&quot;1&quot;&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th&gt;&lt;/th&gt;
      &lt;th&gt;COUNTRY&lt;/th&gt;
      &lt;th&gt;INDICATOR&lt;/th&gt;
      &lt;th&gt;FREQUENCY&lt;/th&gt;
      &lt;th&gt;SCALE&lt;/th&gt;
      &lt;th&gt;DECIMALS_DISPLAYED&lt;/th&gt;
      &lt;th&gt;OVERLAP&lt;/th&gt;
      &lt;th&gt;COUNTRY_UPDATE_DATE&lt;/th&gt;
      &lt;th&gt;TIME_PERIOD&lt;/th&gt;
      &lt;th&gt;VALUE&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;th&gt;0&lt;/th&gt;
      &lt;td&gt;ABW&lt;/td&gt;
      &lt;td&gt;BCA&lt;/td&gt;
      &lt;td&gt;A&lt;/td&gt;
      &lt;td&gt;9&lt;/td&gt;
      &lt;td&gt;3&lt;/td&gt;
      &lt;td&gt;OL&lt;/td&gt;
      &lt;td&gt;9/19/2025&lt;/td&gt;
      &lt;td&gt;1999&lt;/td&gt;
      &lt;td&gt;-435000000&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th&gt;1&lt;/th&gt;
      &lt;td&gt;ABW&lt;/td&gt;
      &lt;td&gt;BCA&lt;/td&gt;
      &lt;td&gt;A&lt;/td&gt;
      &lt;td&gt;9&lt;/td&gt;
      &lt;td&gt;3&lt;/td&gt;
      &lt;td&gt;OL&lt;/td&gt;
      &lt;td&gt;9/19/2025&lt;/td&gt;
      &lt;td&gt;2000&lt;/td&gt;
      &lt;td&gt;213000000&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th&gt;2&lt;/th&gt;
      &lt;td&gt;ABW&lt;/td&gt;
      &lt;td&gt;BCA&lt;/td&gt;
      &lt;td&gt;A&lt;/td&gt;
      &lt;td&gt;9&lt;/td&gt;
      &lt;td&gt;3&lt;/td&gt;
      &lt;td&gt;OL&lt;/td&gt;
      &lt;td&gt;9/19/2025&lt;/td&gt;
      &lt;td&gt;2001&lt;/td&gt;
      &lt;td&gt;310000000&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th&gt;3&lt;/th&gt;
      &lt;td&gt;ABW&lt;/td&gt;
      &lt;td&gt;BCA&lt;/td&gt;
      &lt;td&gt;A&lt;/td&gt;
      &lt;td&gt;9&lt;/td&gt;
      &lt;td&gt;3&lt;/td&gt;
      &lt;td&gt;OL&lt;/td&gt;
      &lt;td&gt;9/19/2025&lt;/td&gt;
      &lt;td&gt;2002&lt;/td&gt;
      &lt;td&gt;-333000000&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th&gt;4&lt;/th&gt;
      &lt;td&gt;ABW&lt;/td&gt;
      &lt;td&gt;BCA&lt;/td&gt;
      &lt;td&gt;A&lt;/td&gt;
      &lt;td&gt;9&lt;/td&gt;
      &lt;td&gt;3&lt;/td&gt;
      &lt;td&gt;OL&lt;/td&gt;
      &lt;td&gt;9/19/2025&lt;/td&gt;
      &lt;td&gt;2003&lt;/td&gt;
      &lt;td&gt;-167000000&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th&gt;...&lt;/th&gt;
      &lt;td&gt;...&lt;/td&gt;
      &lt;td&gt;...&lt;/td&gt;
      &lt;td&gt;...&lt;/td&gt;
      &lt;td&gt;...&lt;/td&gt;
      &lt;td&gt;...&lt;/td&gt;
      &lt;td&gt;...&lt;/td&gt;
      &lt;td&gt;...&lt;/td&gt;
      &lt;td&gt;...&lt;/td&gt;
      &lt;td&gt;...&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th&gt;354235&lt;/th&gt;
      &lt;td&gt;ZWE&lt;/td&gt;
      &lt;td&gt;TXG_RPCH&lt;/td&gt;
      &lt;td&gt;A&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;3&lt;/td&gt;
      &lt;td&gt;OL&lt;/td&gt;
      &lt;td&gt;9/5/2025&lt;/td&gt;
      &lt;td&gt;2026&lt;/td&gt;
      &lt;td&gt;-0.814&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th&gt;354236&lt;/th&gt;
      &lt;td&gt;ZWE&lt;/td&gt;
      &lt;td&gt;TXG_RPCH&lt;/td&gt;
      &lt;td&gt;A&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;3&lt;/td&gt;
      &lt;td&gt;OL&lt;/td&gt;
      &lt;td&gt;9/5/2025&lt;/td&gt;
      &lt;td&gt;2027&lt;/td&gt;
      &lt;td&gt;4.939&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th&gt;354237&lt;/th&gt;
      &lt;td&gt;ZWE&lt;/td&gt;
      &lt;td&gt;TXG_RPCH&lt;/td&gt;
      &lt;td&gt;A&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;3&lt;/td&gt;
      &lt;td&gt;OL&lt;/td&gt;
      &lt;td&gt;9/5/2025&lt;/td&gt;
      &lt;td&gt;2028&lt;/td&gt;
      &lt;td&gt;4.226&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th&gt;354238&lt;/th&gt;
      &lt;td&gt;ZWE&lt;/td&gt;
      &lt;td&gt;TXG_RPCH&lt;/td&gt;
      &lt;td&gt;A&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;3&lt;/td&gt;
      &lt;td&gt;OL&lt;/td&gt;
      &lt;td&gt;9/5/2025&lt;/td&gt;
      &lt;td&gt;2029&lt;/td&gt;
      &lt;td&gt;3.698&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;th&gt;354239&lt;/th&gt;
      &lt;td&gt;ZWE&lt;/td&gt;
      &lt;td&gt;TXG_RPCH&lt;/td&gt;
      &lt;td&gt;A&lt;/td&gt;
      &lt;td&gt;0&lt;/td&gt;
      &lt;td&gt;3&lt;/td&gt;
      &lt;td&gt;OL&lt;/td&gt;
      &lt;td&gt;9/5/2025&lt;/td&gt;
      &lt;td&gt;2030&lt;/td&gt;
      &lt;td&gt;3.604&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;354240 rows × 9 columns&lt;/p&gt;

&lt;p&gt;위 코드에서는 다음과 같은 작업을 수행합니다:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;data_sets와 structures를 추출하여 각각의 시리즈와 관측치를 파싱합니다.&lt;/li&gt;
&lt;li&gt;series_key를 ”:“로 분리하여 각 차원의 값을 추출합니다.&lt;/li&gt;
&lt;li&gt;series_content의 attributes를 구조체의 attributes와 매핑하여 속성 값을 추출합니다.&lt;/li&gt;
&lt;li&gt;observations를 순회하며 각 관측치의 시간과 값을 추출하여 최종적으로 판다스 데이터프레임으로 변환합니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;이제 df 데이터프레임에는 각국의 GDP 데이터가 포함되어 있습니다. 이를 활용하여 다양한 분석과 시각화를 수행할 수 있습니다.&lt;/p&gt;
&lt;p&gt;특정 데이터를 조회하기 위해서 국가 코드, 지표 코드 등을 알아야 합니다. 예를 들어, 미국은 “USA”, 한국은 “KOR”입니다. 주요 GDP 지표는 다음과 같습니다:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;실질 GDP (현재 가격): NGDP_R&lt;/li&gt;
&lt;li&gt;실질 GDP (전년 대비 증감률): NGDP_RPCH&lt;/li&gt;
&lt;li&gt;GDP 갭 (실질 GDP - 잠재 GDP): NGAP_NPGDP&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;다음 링크에서 각국의 GDP 데이터를 직접 조회할 수도 있습니다:
&lt;a href=&quot;https://data.imf.org/en/Data-Explorer?datasetUrn=IMF.RES:WEO(9.0.0)&quot;&gt;https://data.imf.org/en/Data-Explorer?datasetUrn=IMF.RES:WEO(9.0.0)&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;조회한 테이블 좌측의 ℹ️ 아이콘을 클릭하면 Timeseries code를 확인할 수 있는데, 여기서 국가 코드와 지표 코드를 알 수 있습니다. 예를 들어, &lt;code dir=&quot;auto&quot;&gt;Timeseries code: KOR.NGDP_RPCH.A&lt;/code&gt;는 한국(KOR)의 실질 GDP 성장률(NGDP_RPCH)을 의미합니다. A는 연간 데이터를 나타냅니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;alt text&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1260&quot; height=&quot;483&quot; src=&quot;https://blog.quantylab.com/_astro/imf_timeseries_code.ylVt3zSd_2gEHOd.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;다음은 미국과 한국의 실질 GDP와 실질 GDP 성장률을 시각화하는 예제 코드입니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; matplotlib.pyplot &lt;/span&gt;&lt;span&gt;as&lt;/span&gt;&lt;span&gt; plt&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# NGDP_R: 실질 GDP (현재 가격)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# NGDP_RPCH: 실질 GDP (전년 대비 증감률)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# NGAP_NPGDP: GDP 갭 (실질 GDP - 잠재 GDP)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;fig, axes &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; plt.&lt;/span&gt;&lt;span&gt;subplots&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;nrows&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ncols&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;3&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;figsize&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;12&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;6&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# 미국&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;us_data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df[(df[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;COUNTRY&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;USA&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;&amp;#x26;&lt;/span&gt;&lt;span&gt; (df[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;INDICATOR&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;NGDP_R&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)].&lt;/span&gt;&lt;span&gt;copy&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;us_data[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;to_numeric&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;us_data&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;us_data.&lt;/span&gt;&lt;span&gt;plot&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;x&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;TIME_PERIOD&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;y&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;title&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;US Real GDP Over Time&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;kind&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;line&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ax&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;axes&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;us_data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df[(df[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;COUNTRY&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;USA&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;&amp;#x26;&lt;/span&gt;&lt;span&gt; (df[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;INDICATOR&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;NGDP_RPCH&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)].&lt;/span&gt;&lt;span&gt;copy&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;us_data[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;to_numeric&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;us_data&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;us_data.&lt;/span&gt;&lt;span&gt;plot&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;x&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;TIME_PERIOD&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;y&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;title&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;US Real GDP Growth Rate Over Time&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;kind&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;line&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ax&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;axes&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;us_data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df[(df[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;COUNTRY&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;USA&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;&amp;#x26;&lt;/span&gt;&lt;span&gt; (df[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;INDICATOR&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;NGAP_NPGDP&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)].&lt;/span&gt;&lt;span&gt;copy&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;us_data[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;to_numeric&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;us_data&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;us_data.&lt;/span&gt;&lt;span&gt;plot&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;x&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;TIME_PERIOD&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;y&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;title&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;US GDP Gap Over Time&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;kind&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;line&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ax&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;axes&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# 한국&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;kr_data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df[(df[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;COUNTRY&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;KOR&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;&amp;#x26;&lt;/span&gt;&lt;span&gt; (df[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;INDICATOR&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;NGDP_R&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)].&lt;/span&gt;&lt;span&gt;copy&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;kr_data[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;to_numeric&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;kr_data&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;kr_data.&lt;/span&gt;&lt;span&gt;plot&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;x&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;TIME_PERIOD&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;y&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;title&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;Korea Real GDP Over Time&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;kind&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;line&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ax&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;axes&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;kr_data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df[(df[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;COUNTRY&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;KOR&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;&amp;#x26;&lt;/span&gt;&lt;span&gt; (df[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;INDICATOR&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;NGDP_RPCH&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)].&lt;/span&gt;&lt;span&gt;copy&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;kr_data[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;to_numeric&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;kr_data&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;kr_data.&lt;/span&gt;&lt;span&gt;plot&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;x&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;TIME_PERIOD&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;y&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;title&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;Korea Real GDP Growth Rate Over Time&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;kind&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;line&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ax&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;axes&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;kr_data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df[(df[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;COUNTRY&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;KOR&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;&amp;#x26;&lt;/span&gt;&lt;span&gt; (df[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;INDICATOR&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;NGAP_NPGDP&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)].&lt;/span&gt;&lt;span&gt;copy&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;kr_data[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;to_numeric&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;kr_data&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;kr_data.&lt;/span&gt;&lt;span&gt;plot&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;x&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;TIME_PERIOD&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;y&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;VALUE&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;title&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;Korea GDP Gap Over Time&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;kind&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;line&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ax&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;axes&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;plt.&lt;/span&gt;&lt;span&gt;tight_layout&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;&lt;img alt=&quot;alt text&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1186&quot; height=&quot;590&quot; src=&quot;https://blog.quantylab.com/_astro/plot.DGsvXrJd_Zgfw8k.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;양국의 실질 GDP는 꾸준히 증가하는 추세를 보이며, 실질 GDP 성장률은 경기 변동에 따라 등락을 반복하는 모습을 확인할 수 있습니다.&lt;/p&gt;
&lt;p&gt;GDP 갭 역시 경제 상황에 따라 변화하는 모습을 시각적으로 파악할 수 있습니다. 잠재 GDP는 경제가 완전 고용 상태에서 생산할 수 있는 최대 생산량을 나타내는데, GDP 갭이 양수일 경우 실제 GDP가 잠재 GDP를 초과하는 상태를 의미하며, 음수일 경우 그 반대를 의미합니다. GDP 갭이 양수로 크면 인플레이션 압력이 증가할 수 있고, 음수로 크면 경기 침체의 신호일 수 있습니다.&lt;/p&gt;
&lt;p&gt;이와 같이 파이썬을 활용하여 IMF WEO 데이터베이스에서 각국의 GDP 데이터를 수집하고 분석할 수 있습니다. 미국, 한국 외에도 다양한 국가의 GDP 데이터를 동일한 방법으로 수집하여 비교 분석할 수 있습니다.&lt;/p&gt;</content:encoded><category>Python</category><category>IMF</category><category>WEO</category><category>GDP</category></item><item><title>물가 지수와 코스피의 상관관계 분석</title><link>https://blog.quantylab.com/blog/2022-02-15-priceindex/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2022-02-15-priceindex/</guid><pubDate>Tue, 15 Feb 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;이번 포스트에서는 한국의 소비자/생산자 물가 지수와 코스피 사이의 상관관계를 분석합니다. 이 포스트에서 사용하는 데이터는 퀀티랩 네이버 카페의 &lt;code dir=&quot;auto&quot;&gt;금융 데이터&lt;/code&gt; 게시판에서 다운받을 수 있습니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;소비자/생산자 물가 지수: &lt;a href=&quot;https://cafe.naver.com/quantylab/124&quot;&gt;https://cafe.naver.com/quantylab/140&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;코스피 종가: &lt;a href=&quot;https://cafe.naver.com/quantylab/141&quot;&gt;https://cafe.naver.com/quantylab/141&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;먼저 다운받은 데이터들을 불러옵니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pandas &lt;/span&gt;&lt;span&gt;as&lt;/span&gt;&lt;span&gt; pd&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_cpi &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;read_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;./cpi_20220215.csv&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;header&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_ppi &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;read_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;./ppi_20220215.csv&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;header&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_kospi &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;read_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;./kospi_20220218.csv&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;header&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이 세 데이터를 하나의 DataFrame으로 합치겠습니다. 코스피는 일별이고 CPI 및 PPI 데이터는 월별 데이터 입니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_kospi.&lt;/span&gt;&lt;span&gt;merge&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df_cpi&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;how&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;left&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;on&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;month&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;fillna&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;method&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;ffill&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;dropna&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;subset&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;cpi&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df.&lt;/span&gt;&lt;span&gt;merge&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df_ppi&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;how&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;left&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;on&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;month&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;fillna&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;method&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;ffill&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;dropna&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;subset&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;ppi&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;dt&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;to_datetime&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;format&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;%Y%m&lt;/span&gt;&lt;span&gt;%d&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;cpi&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;cpi&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;astype&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;float&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;ppi&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;ppi&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;astype&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;float&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df.&lt;/span&gt;&lt;span&gt;reset_index&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;drop&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;True&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;월별 데이터를 일별 데이터로 &lt;code dir=&quot;auto&quot;&gt;month&lt;/code&gt; 열을 기준으로 left join 했습니다. 여기서 &lt;code dir=&quot;auto&quot;&gt;cpi&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;ppi&lt;/code&gt; 열의 데이터 형식이 문자열로 되어 있어서 &lt;code dir=&quot;auto&quot;&gt;float&lt;/code&gt;로 캐스팅 했습니다.&lt;/p&gt;
&lt;p&gt;이제 코스피와 CPI, 코스피와 PPI 차트를 출력해 보려고 합니다. 두 데이터의 값의 범위가 크게 차이나기 때문에 y 축을 2개 사용합니다.&lt;/p&gt;
&lt;p&gt;다음과 같이 두 시계열을 별도의 y축으로 그리는 함수인 &lt;code dir=&quot;auto&quot;&gt;get_multchart()&lt;/code&gt;를 작성했습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;get_multchart&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;xticklabels&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;y1&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;y2&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;label1=&lt;/span&gt;&lt;span&gt;&apos;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;label2=&lt;/span&gt;&lt;span&gt;&apos;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;w=&lt;/span&gt;&lt;span&gt;500&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;h=&lt;/span&gt;&lt;span&gt;300&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;sizing_mode=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;stretch_width&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;x &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; np.&lt;/span&gt;&lt;span&gt;arange&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;len&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;xticklabels&lt;/span&gt;&lt;span&gt;))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;xticks &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; np.&lt;/span&gt;&lt;span&gt;linspace&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;len&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;xticklabels&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;10&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;endpoint&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;True&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;dtype&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;int&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;tolist&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;p &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;figure&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;plot_width&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;w&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;plot_height&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;h&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;tools&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;y_axis_location&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;left&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;p.xaxis.ticker &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; xticks&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;p.xaxis.major_label_overrides &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {_x: util.&lt;/span&gt;&lt;span&gt;format_date&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;str&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;xticklabels&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;_x&lt;/span&gt;&lt;span&gt;])) &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; _x &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; xticks}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;p.xaxis.major_label_orientation &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt;np.pi &lt;/span&gt;&lt;span&gt;/&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;p.yaxis.major_label_text_color &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;red&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;p.yaxis.formatter &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;NumeralTickFormatter&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;format&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;0,0&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;p.y_range &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;Range1d&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;y1.&lt;/span&gt;&lt;span&gt;min&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;*&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;0.95&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; y1.&lt;/span&gt;&lt;span&gt;max&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;*&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;1.05&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;p.extra_y_ranges &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;y2_range&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;Range1d&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;y2.&lt;/span&gt;&lt;span&gt;min&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;*&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;0.95&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; y2.&lt;/span&gt;&lt;span&gt;max&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;*&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;1.05&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;y2_axis &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;LinearAxis&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;y_range_name&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;y2_range&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;y2_axis.major_label_text_color &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;blue&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;y2_axis.formatter &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;NumeralTickFormatter&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;format&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;0,0&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;p.&lt;/span&gt;&lt;span&gt;add_layout&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;y2_axis&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;right&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;p.&lt;/span&gt;&lt;span&gt;line&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;x&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; y1&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;line_color&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;red&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;legend_label&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;label1&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;p.&lt;/span&gt;&lt;span&gt;line&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;x&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; y2&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;line_color&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;blue&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;legend_label&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;label2&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;y_range_name&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;y2_range&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;configure_legend&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;p&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;grid &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;gridplot&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;[[&lt;/span&gt;&lt;span&gt;p&lt;/span&gt;&lt;span&gt;]],&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;toolbar_location&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;None&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;sizing_mode&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;sizing_mode&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;return&lt;/span&gt;&lt;span&gt; grid&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이 함수를 이용해서 두 차트를 그립니다. 먼저 코스피와 CPI, 다음으로 코스피와 PPI를 그립니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; bokeh.io &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; output_notebook, show&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;output_notebook&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;show&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;get_multchart&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;dt&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;cpi&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;label1&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;KOSPI&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;label2&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;CPI&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;show&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;get_multchart&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;dt&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;ppi&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;label1&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;KOSPI&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;label2&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;PPI&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;&lt;img alt=&quot;cpi&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1666&quot; height=&quot;461&quot; src=&quot;https://blog.quantylab.com/_astro/1.BMCg3NU4_FSzlv.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;ppi&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1666&quot; height=&quot;460&quot; src=&quot;https://blog.quantylab.com/_astro/2.BbJV2UMM_ZsEE5.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;여기서 CPI, PPI는 전월 대비 % 값입니다. CPI와 코스피를 봤을 때 2001년 부근에서는 서로 역관계처럼 보이다가 2007년 부근에서는 코스피가 CPI를 선행하는 것처럼도 보입니다. PPI도 구간에 따라서 상관성이 다르게 보입니다. 즉 물가 지수와 코스피만으로 서로가 밀접한 상관성이 있다고 말할 수는 없어 보입니다. 이 부부은 2008년 금융위기로 주식 폭락과 물가&lt;/p&gt;
&lt;p&gt;실제로 피어슨 상관계수를 구해 보면 구간에 따라서 매우 큰 차이가 생기는 것을 볼 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; scipy.stats &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pearsonr&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;_df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;20150101&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;print&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;pearsonr&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;_df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;cpi&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;print&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;pearsonr&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;_df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;ppi&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;(0.3184625030996628, 1.1693520291646116e-42)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;(0.7737092632552787, 0.0)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;그렇다고 상관성이 아주 없다고 볼 수도 없습니다. 주식 딥러닝 모델을 구축할 때 학습데이터의 피처로 충분히 활용할 만하다고 보입니다.&lt;/p&gt;</content:encoded><category>금융데이터분석</category><category>물가지수</category><category>CPI</category><category>PPI</category><category>코스피</category><category>상관관계</category></item><item><title>구글 검색 트렌드와 코스피 상관관계 분석</title><link>https://blog.quantylab.com/blog/2022-02-10-google_trend/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2022-02-10-google_trend/</guid><pubDate>Thu, 10 Feb 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;이번 포스트에서는 “kospi” 검색어에 대한 구글 검색 트렌드와 실제 코스피 지수를 한 차트에 그려보고 상관관계 분석을 해보겠습니다. 여기서 사용하는 데이터는 퀀티랩 네이버 카페에 올려 놓았습니다. 카페에 가입하시면 다운 받으실 수 있습니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;구글 검색 트렌드: &lt;a href=&quot;https://cafe.naver.com/quantylab/124&quot;&gt;https://cafe.naver.com/quantylab/124&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;코스피 종가: &lt;a href=&quot;https://cafe.naver.com/quantylab/125&quot;&gt;https://cafe.naver.com/quantylab/125&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;위 데이터를 다운 받은 후 먼저 아래와 같이 구글 검색 트렌드 데이터를 불러옵니다. 이 데이터는 주간 단위의 데이터이므로 4년치라도 행의 수는 많지 않습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pandas &lt;/span&gt;&lt;span&gt;as&lt;/span&gt;&lt;span&gt; pd&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;read_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;./google_trend_kospi_2018_2021.csv&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;header&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df.columns &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;interest&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;to_datetime&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;format&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;%Y-%m-&lt;/span&gt;&lt;span&gt;%d&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;

































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;index&lt;/th&gt;&lt;th&gt;date&lt;/th&gt;&lt;th&gt;interest&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;2018-01-07&lt;/td&gt;&lt;td&gt;26&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;2018-01-14&lt;/td&gt;&lt;td&gt;30&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;2018-01-21&lt;/td&gt;&lt;td&gt;28&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;2018-01-28&lt;/td&gt;&lt;td&gt;29&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;2018-02-04&lt;/td&gt;&lt;td&gt;33&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;203&lt;/td&gt;&lt;td&gt;2021-11-28&lt;/td&gt;&lt;td&gt;53&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;204&lt;/td&gt;&lt;td&gt;2021-12-05&lt;/td&gt;&lt;td&gt;56&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;205&lt;/td&gt;&lt;td&gt;2021-12-12&lt;/td&gt;&lt;td&gt;55&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;206&lt;/td&gt;&lt;td&gt;2021-12-19&lt;/td&gt;&lt;td&gt;60&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;207&lt;/td&gt;&lt;td&gt;2021-12-26&lt;/td&gt;&lt;td&gt;52&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;이 데이터를 다음처럼 차트로 그려볼 수 있습니다. 차트를 그릴 때 다양한 라이브러리를 활용할 수 있지만 여기서는 bokeh 라이브러리를 사용했습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; math &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pi&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; bokeh.io &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; output_notebook, show&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; bokeh.plotting &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; figure, gridplot&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; bokeh.models &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; DatetimeTickFormatter&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;output_notebook&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;grid &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;p &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;figure&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;title&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Google Trend (kospi)&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;plot_width&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;500&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;plot_height&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;200&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;tools&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;crosshair&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;p.&lt;/span&gt;&lt;span&gt;line&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;interest&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;line_color&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;black&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;p.xaxis.formatter &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;DatetimeTickFormatter&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;months&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;%Y-%m-&lt;/span&gt;&lt;span&gt;%d&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;p.xaxis.major_label_orientation &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pi&lt;/span&gt;&lt;span&gt;/&lt;/span&gt;&lt;span&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;grid.&lt;/span&gt;&lt;span&gt;append&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;p&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;p &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;gridplot&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;grid&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;toolbar_location&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;None&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;show&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;p&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;&lt;img alt=&quot;1&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;751&quot; height=&quot;301&quot; src=&quot;https://blog.quantylab.com/_astro/1.coPD9LGd_Z2lUsW8.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;이제 코스피 종가 데이터를 불러옵니다. 위 구글 트렌드 데이터와 같은 y축으로 그리기 위해서 종가 값을 0~100 사이로 조정하여 &lt;code dir=&quot;auto&quot;&gt;pos&lt;/code&gt; 컬럼에 추가했습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_kospi &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;read_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;./kospi_2018_2021.csv&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;converters&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;{&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;str&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_kospi[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;to_datetime&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df_kospi&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;format&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;%Y%m&lt;/span&gt;&lt;span&gt;%d&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_kospi[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;pos&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; ((df_kospi[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt; df_kospi[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;min&lt;/span&gt;&lt;span&gt;()) &lt;/span&gt;&lt;span&gt;/&lt;/span&gt;&lt;span&gt; (df_kospi[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;max&lt;/span&gt;&lt;span&gt;() &lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt; df_kospi[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;min&lt;/span&gt;&lt;span&gt;())) &lt;/span&gt;&lt;span&gt;*&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;100&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_kospi&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;













































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;index&lt;/th&gt;&lt;th&gt;date&lt;/th&gt;&lt;th&gt;close&lt;/th&gt;&lt;th&gt;pos&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;2018-01-02&lt;/td&gt;&lt;td&gt;2479.649902&lt;/td&gt;&lt;td&gt;55.316438&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;2018-01-03&lt;/td&gt;&lt;td&gt;2486.350098&lt;/td&gt;&lt;td&gt;55.679087&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;2018-01-04&lt;/td&gt;&lt;td&gt;2466.459961&lt;/td&gt;&lt;td&gt;54.602531&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;2018-01-05&lt;/td&gt;&lt;td&gt;2497.520020&lt;/td&gt;&lt;td&gt;56.283661&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;2018-01-08&lt;/td&gt;&lt;td&gt;2513.280029&lt;/td&gt;&lt;td&gt;57.136674&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;981&lt;/td&gt;&lt;td&gt;2021-12-24&lt;/td&gt;&lt;td&gt;3012.429932&lt;/td&gt;&lt;td&gt;84.153237&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;982&lt;/td&gt;&lt;td&gt;2021-12-27&lt;/td&gt;&lt;td&gt;2999.550049&lt;/td&gt;&lt;td&gt;83.456111&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;983&lt;/td&gt;&lt;td&gt;2021-12-28&lt;/td&gt;&lt;td&gt;3020.239990&lt;/td&gt;&lt;td&gt;84.575958&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;984&lt;/td&gt;&lt;td&gt;2021-12-29&lt;/td&gt;&lt;td&gt;2993.290039&lt;/td&gt;&lt;td&gt;83.117288&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;985&lt;/td&gt;&lt;td&gt;2021-12-30&lt;/td&gt;&lt;td&gt;2977.649902&lt;/td&gt;&lt;td&gt;82.270763&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;이제 코스피 종가 데이터도 차트에 추가로 그려봅니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; math &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pi&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; bokeh.plotting &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; figure, show&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; bokeh.models &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; DatetimeTickFormatter&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; bokeh.models &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; Legend&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;grid &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;p &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;figure&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;title&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Google Trend (kospi) and KOSPI Position&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;plot_width&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;800&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;plot_height&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;200&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;tools&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;crosshair&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;a1 &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; p.&lt;/span&gt;&lt;span&gt;line&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;interest&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;line_color&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;black&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;a2 &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; p.&lt;/span&gt;&lt;span&gt;line&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df_kospi&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; df_kospi&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;pos&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;line_color&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;red&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;p.xaxis.formatter &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;DatetimeTickFormatter&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;months&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;%Y-%m-&lt;/span&gt;&lt;span&gt;%d&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;p.xaxis.major_label_orientation &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pi&lt;/span&gt;&lt;span&gt;/&lt;/span&gt;&lt;span&gt;4&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;legend &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;Legend&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;items&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;G. Trend&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;a1&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;KOSPI Pos.&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;a2&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;],&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;location&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;center&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;p.&lt;/span&gt;&lt;span&gt;add_layout&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;legend&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;right&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;grid.&lt;/span&gt;&lt;span&gt;append&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;p&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;p &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;gridplot&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;grid&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;toolbar_location&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;None&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;show&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;p&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;&lt;img alt=&quot;2&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1201&quot; height=&quot;301&quot; src=&quot;https://blog.quantylab.com/_astro/2.Dvwh_g7W_H2dzC.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;눈으로 보기에는 “kospi” 검색어가 급증할 때 코스피 지수가 폭락한 경우가 많았음이 보입니다. 공포 심리에 의해 뉴스 등을 찾아보기 위해 검색이 급증하고 실제로 코스피 지수도 요동치는 경우가 있습니다. 물론 상관성은 높지 않아 보이지만 검색 급증이 있으면 하나의 작은 위험 신호로 고려하는 것도 나쁘지 않을 것입니다. 조심해서 나쁠 것은 없습니다.&lt;/p&gt;
&lt;p&gt;다음과 같이 상관 계수를 뽑아 보면 그렇게 상관성은 높게 나오지 않습니다. 시계열 전체에서의 상관성 보다는 검색 급증 시그널 정도만 잘 포착하는 것이 의미있어 보입니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; scipy.stats &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pearsonr&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;_df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df.&lt;/span&gt;&lt;span&gt;merge&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df_kospi&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;how&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;outer&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;on&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;sort_values&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;by&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;_df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; _df.&lt;/span&gt;&lt;span&gt;ffill&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;_df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; _df.&lt;/span&gt;&lt;span&gt;bfill&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;pearsonr&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;_df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;pos&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;interest&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;(0.14169129281665557, 8.844934622779502e-07)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;</content:encoded><category>금융데이터분석</category><category>구글검색트렌드</category><category>코스피</category><category>상관관계</category></item><item><title>원자재 지수와 주가의 상관관계 분석</title><link>https://blog.quantylab.com/blog/2022-01-29-analysis_gsci/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2022-01-29-analysis_gsci/</guid><pubDate>Sat, 29 Jan 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;이번 포스트에서는 대표적인 원자재 지수인 S&amp;#x26;P GSCI와 주식 종목 주가와의 상관관계를 분석해봅니다. 다음 코드 블록은 종목코드 데이터, 원자재 지수 데이터를 불러오는 부분입니다. 데이터는 &lt;a href=&quot;https://cafe.naver.com/quantylab&quot;&gt;퀀티랩 네이버 카페&lt;/a&gt;의 &lt;code dir=&quot;auto&quot;&gt;금융데이터&lt;/code&gt; 메뉴에서 공유드립니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;종목코드: &lt;a href=&quot;https://cafe.naver.com/quantylab/124&quot;&gt;https://cafe.naver.com/quantylab/124&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;GSCI: &lt;a href=&quot;https://cafe.naver.com/quantylab/125&quot;&gt;https://cafe.naver.com/quantylab/125&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;종목 일봉차트: &lt;a href=&quot;https://cafe.naver.com/quantylab/123&quot;&gt;https://cafe.naver.com/quantylab/123&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;이번 포스트에서는 대표적인 원자재 지수인 S&amp;#x26;P GSCI와 주식 종목 주가와의 상관관계를 분석해봅니다. 다음 코드 블록은 종목코드 데이터, 원자재 지수 데이터를 불러오는 부분입니다. 데이터는 &lt;a href=&quot;https://cafe.naver.com/quantylab&quot;&gt;퀀티랩 네이버 카페&lt;/a&gt;의 &lt;code dir=&quot;auto&quot;&gt;금융데이터&lt;/code&gt; 메뉴에서 공유드립니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# 종목코드 데이터 준비&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; json&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;with&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;open&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;../../../data/stockcodes_20220128.json&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;encoding&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;utf-8&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;as&lt;/span&gt;&lt;span&gt; f:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;stockcodes &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; json.&lt;/span&gt;&lt;span&gt;load&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;f&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;stockcodes&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;[[‘082740’, ‘HSD엔진’],
[‘001390’, ‘KG케미칼’],
[‘011070’, ‘LG이노텍’],
[‘002360’, ‘SH에너지화학’],
[‘001740’, ‘SK네트웍스’],
[‘071970’, ‘STX중공업’],
[‘024070’, ‘WISCOM’],
[‘011420’, ‘갤럭시아에스엠’],
[‘267290’, ‘경동도시가스’],
[‘002240’, ‘고려제강’],
[‘001290’, ‘상상인증권’],
[‘014530’, ‘극동유화’],
[‘214330’, ‘금호에이치티’],
[‘013700’, ‘까뮤이앤씨’],
[‘090350’, ‘노루페인트’],
[‘005250’, ‘녹십자홀딩스’],
[‘004440’, ‘삼일씨엔에스’],
[‘014160’, ‘대영포장’],
[‘003090’, ‘대웅’],
[‘003220’, ‘대원제약’],
[‘002880’, ‘대유에이텍’],
[‘001620’, ‘케이비아이동국실업’],
[‘023450’, ‘동남합성’],
[‘004140’, ‘동방’],
[‘000640’, ‘동아쏘시오홀딩스’],
[‘225330’, ‘씨엠에스에듀’],
[‘101240’, ‘씨큐브’],
[‘047920’, ‘HLB제약’],
[‘013990’, ‘아가방컴퍼니’],
[‘052710’, ‘아모텍’],
…]&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# 원자재 데이터 준비&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pandas &lt;/span&gt;&lt;span&gt;as&lt;/span&gt;&lt;span&gt; pd&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_gsci &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;read_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;../../../data/gsci_20220128.csv&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;converters&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;{&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;str&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_gsci&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;





























































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;date&lt;/th&gt;&lt;th&gt;close&lt;/th&gt;&lt;th&gt;diff&lt;/th&gt;&lt;th&gt;diffratio&lt;/th&gt;&lt;th&gt;high&lt;/th&gt;&lt;th&gt;low&lt;/th&gt;&lt;th&gt;open&lt;/th&gt;&lt;th&gt;volume&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;20150102&lt;/td&gt;&lt;td&gt;414.9583&lt;/td&gt;&lt;td&gt;-3.177835&lt;/td&gt;&lt;td&gt;-0.0076&lt;/td&gt;&lt;td&gt;421.5643&lt;/td&gt;&lt;td&gt;412.5496&lt;/td&gt;&lt;td&gt;418.1225&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20150105&lt;/td&gt;&lt;td&gt;404.6091&lt;/td&gt;&lt;td&gt;-10.332034&lt;/td&gt;&lt;td&gt;-0.0249&lt;/td&gt;&lt;td&gt;414.9583&lt;/td&gt;&lt;td&gt;403.7641&lt;/td&gt;&lt;td&gt;414.9583&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20150106&lt;/td&gt;&lt;td&gt;397.9523&lt;/td&gt;&lt;td&gt;-6.676373&lt;/td&gt;&lt;td&gt;-0.0165&lt;/td&gt;&lt;td&gt;406.4719&lt;/td&gt;&lt;td&gt;396.1576&lt;/td&gt;&lt;td&gt;404.6091&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20150107&lt;/td&gt;&lt;td&gt;396.6795&lt;/td&gt;&lt;td&gt;-1.273449&lt;/td&gt;&lt;td&gt;-0.0032&lt;/td&gt;&lt;td&gt;400.6534&lt;/td&gt;&lt;td&gt;392.2534&lt;/td&gt;&lt;td&gt;397.9523&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20150108&lt;/td&gt;&lt;td&gt;397.1010&lt;/td&gt;&lt;td&gt;0.436331&lt;/td&gt;&lt;td&gt;0.0011&lt;/td&gt;&lt;td&gt;399.5170&lt;/td&gt;&lt;td&gt;393.1882&lt;/td&gt;&lt;td&gt;397.2257&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20220121&lt;/td&gt;&lt;td&gt;608.8819&lt;/td&gt;&lt;td&gt;-2.568090&lt;/td&gt;&lt;td&gt;-0.0042&lt;/td&gt;&lt;td&gt;611.4234&lt;/td&gt;&lt;td&gt;599.3347&lt;/td&gt;&lt;td&gt;611.4234&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20220124&lt;/td&gt;&lt;td&gt;601.5777&lt;/td&gt;&lt;td&gt;-7.306612&lt;/td&gt;&lt;td&gt;-0.0120&lt;/td&gt;&lt;td&gt;612.6561&lt;/td&gt;&lt;td&gt;595.1512&lt;/td&gt;&lt;td&gt;608.8819&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20220125&lt;/td&gt;&lt;td&gt;611.0378&lt;/td&gt;&lt;td&gt;9.445007&lt;/td&gt;&lt;td&gt;0.0157&lt;/td&gt;&lt;td&gt;611.3097&lt;/td&gt;&lt;td&gt;601.1267&lt;/td&gt;&lt;td&gt;601.5777&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20220126&lt;/td&gt;&lt;td&gt;619.5484&lt;/td&gt;&lt;td&gt;8.493661&lt;/td&gt;&lt;td&gt;0.0139&lt;/td&gt;&lt;td&gt;621.5063&lt;/td&gt;&lt;td&gt;608.4988&lt;/td&gt;&lt;td&gt;611.0378&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20220127&lt;/td&gt;&lt;td&gt;616.7431&lt;/td&gt;&lt;td&gt;-2.787889&lt;/td&gt;&lt;td&gt;-0.0045&lt;/td&gt;&lt;td&gt;623.2471&lt;/td&gt;&lt;td&gt;613.9215&lt;/td&gt;&lt;td&gt;619.5484&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;다음은 종목 일봉 차트와 원자재 지수의 상관관계를 구합니다. 여기서 사용한 상관분석 방법은 피어슨 상관분석 입니다. 피어슨은 상관계수가 &lt;code dir=&quot;auto&quot;&gt;-1&lt;/code&gt;에서 &lt;code dir=&quot;auto&quot;&gt;1&lt;/code&gt; 사이의 값으로, 1에 가까울수록 정관계, -1에 가까울수록 역관계임을 의미합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# 종목 데이터 준비&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# 종목과 원자재 상관관계 저장&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; scipy.stats &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pearsonr&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; tqdm &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; tqdm&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_corr &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;DataFrame&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; code, name &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;tqdm&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;stockcodes&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: code, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: name}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;df_stockcandles_day &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;read_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;f&lt;/span&gt;&lt;span&gt;&apos;../../../data/stockcandles_day_20220128/stockcandles_day_&lt;/span&gt;&lt;span&gt;{code}&lt;/span&gt;&lt;span&gt;_&lt;/span&gt;&lt;span&gt;{name}&lt;/span&gt;&lt;span&gt;_20220128.csv&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;converters&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;{&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;str&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;start_date &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_stockcandles_day.iloc[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;end_date &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_stockcandles_day.iloc[&lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_df_gsci &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_gsci[(df_gsci[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;&gt;=&lt;/span&gt;&lt;span&gt; start_date) &lt;/span&gt;&lt;span&gt;&amp;#x26;&lt;/span&gt;&lt;span&gt; (df_gsci[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;&amp;#x3C;=&lt;/span&gt;&lt;span&gt; end_date)]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;merge&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df_stockcandles_day&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _df_gsci&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;how&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;left&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;on&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;suffixes&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;_stock&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;_commodity&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; _df.&lt;/span&gt;&lt;span&gt;dropna&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;len&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;_df&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;&amp;#x3C;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;20&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;continue&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;corr, p &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;pearsonr&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;_df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close_stock&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close_commodity&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; p &lt;/span&gt;&lt;span&gt;&amp;#x3C;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;0.05&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;data[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;gsci&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; corr&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;else&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;data[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;gsci&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;df_corr &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_corr.&lt;/span&gt;&lt;span&gt;append&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;data&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ignore_index&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;True&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;columns &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_corr.columns.&lt;/span&gt;&lt;span&gt;tolist&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;columns.&lt;/span&gt;&lt;span&gt;remove&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;columns.&lt;/span&gt;&lt;span&gt;remove&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;columns &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;+&lt;/span&gt;&lt;span&gt; columns&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_corr &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_corr[columns]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_corr&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;

































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;code&lt;/th&gt;&lt;th&gt;name&lt;/th&gt;&lt;th&gt;gsci&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;082740&lt;/td&gt;&lt;td&gt;HSD엔진&lt;/td&gt;&lt;td&gt;0.697773&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;001390&lt;/td&gt;&lt;td&gt;KG케미칼&lt;/td&gt;&lt;td&gt;0.771450&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;011070&lt;/td&gt;&lt;td&gt;LG이노텍&lt;/td&gt;&lt;td&gt;0.650439&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;002360&lt;/td&gt;&lt;td&gt;SH에너지화학&lt;/td&gt;&lt;td&gt;-0.084560&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;001740&lt;/td&gt;&lt;td&gt;SK네트웍스&lt;/td&gt;&lt;td&gt;-0.138996&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;298870&lt;/td&gt;&lt;td&gt;케이티비네트워크&lt;/td&gt;&lt;td&gt;-0.954783&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;400840&lt;/td&gt;&lt;td&gt;하이제7호스팩&lt;/td&gt;&lt;td&gt;0.000000&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;397880&lt;/td&gt;&lt;td&gt;교보11호스팩&lt;/td&gt;&lt;td&gt;0.000000&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;396770&lt;/td&gt;&lt;td&gt;엔에이치스팩22호&lt;/td&gt;&lt;td&gt;-0.438219&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;400560&lt;/td&gt;&lt;td&gt;하나금융20호스팩&lt;/td&gt;&lt;td&gt;0.000000&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;이렇게 종목 일봉 차트와 GSCI의 상관계수를 구하고 다음과 같이 후처리합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# NaN 제거&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_corr2 &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_corr.&lt;/span&gt;&lt;span&gt;dropna&lt;/span&gt;&lt;span&gt;().&lt;/span&gt;&lt;span&gt;copy&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# 데이터 저장&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_corr2.&lt;/span&gt;&lt;span&gt;to_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;data/corr.csv&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;index&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;False&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# 데이터 불러오기&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;str_columns &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_corr2 &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;read_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;data/corr.csv&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;converters&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;{k: &lt;/span&gt;&lt;span&gt;lambda&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;x&lt;/span&gt;&lt;span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;str&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;x&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; k &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; str_columns}&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;먼저 NaN을 제거하고 데이터를 저장합니다. 이 데이터도 퀀티랩 네이버 카페에 올려 놓겠습니다.&lt;/p&gt;
&lt;p&gt;다음과 같이 스팩과 리츠 종목은 제거하고 상관관계가 높은 종목을 확인합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# 스팩, 리츠 제외&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_corr3 &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_corr2[&lt;/span&gt;&lt;span&gt;~&lt;/span&gt;&lt;span&gt;(df_corr2[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].str.&lt;/span&gt;&lt;span&gt;endswith&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;스팩&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;|&lt;/span&gt;&lt;span&gt; df_corr2[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].str.&lt;/span&gt;&lt;span&gt;endswith&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;리츠&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;))]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;먼저 정관계로 상관관계가 높은 종목을 랭킹하여 가시화합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# 상관관계 높은 종목 가시화&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; quantylab.common &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; viz&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; idx, row &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; df_corr3.&lt;/span&gt;&lt;span&gt;sort_values&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;by&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;gsci&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ascending&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;False&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;head&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;n&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;5&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;iterrows&lt;/span&gt;&lt;span&gt;():&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;df_stockcandles_day &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;read_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;../../../data/stockcandles_day_20220128/stockcandles_day_&lt;/span&gt;&lt;span&gt;{}&lt;/span&gt;&lt;span&gt;_&lt;/span&gt;&lt;span&gt;{}&lt;/span&gt;&lt;span&gt;_20220128.csv&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;format&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;converters&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;{&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;str&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;start_date &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_stockcandles_day.iloc[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;end_date &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_stockcandles_day.iloc[&lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_df_gsci &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_gsci[(df_gsci[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;&gt;=&lt;/span&gt;&lt;span&gt; start_date) &lt;/span&gt;&lt;span&gt;&amp;#x26;&lt;/span&gt;&lt;span&gt; (df_gsci[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;&amp;#x3C;=&lt;/span&gt;&lt;span&gt; end_date)]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;merge&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df_stockcandles_day&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _df_gsci&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;how&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;left&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;on&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;suffixes&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;_stock&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;_commodity&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; _df.&lt;/span&gt;&lt;span&gt;dropna&lt;/span&gt;&lt;span&gt;().&lt;/span&gt;&lt;span&gt;copy&lt;/span&gt;&lt;span&gt;().&lt;/span&gt;&lt;span&gt;reset_index&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;drop&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;True&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;print&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;{}&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;{}&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;{}&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;format&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;max_commodity&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;max_corr&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;viz.&lt;/span&gt;&lt;span&gt;show_notebook&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;viz.&lt;/span&gt;&lt;span&gt;get_multchart&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;_df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close_stock&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close_commodity&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;label1&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;label2&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;max_commodity&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;&lt;img alt=&quot;1&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1705&quot; height=&quot;451&quot; src=&quot;https://blog.quantylab.com/_astro/1.DXCGcS8S_ZMcdaT.webp&quot;&gt;
&lt;img alt=&quot;2&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1705&quot; height=&quot;451&quot; src=&quot;https://blog.quantylab.com/_astro/2.BcYwcIQB_ZclL75.webp&quot;&gt;
&lt;img alt=&quot;3&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1705&quot; height=&quot;451&quot; src=&quot;https://blog.quantylab.com/_astro/3.Du2e8bNK_2khaHA.webp&quot;&gt;
&lt;img alt=&quot;4&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1705&quot; height=&quot;451&quot; src=&quot;https://blog.quantylab.com/_astro/4.CqxYulAI_ZM6sg.webp&quot;&gt;
&lt;img alt=&quot;5&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1705&quot; height=&quot;451&quot; src=&quot;https://blog.quantylab.com/_astro/5.zyvGas1h_1WEede.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;주로 소형 제조업 위주로 랭킹되는 것을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;다음으로 역관계로 상관관계가 높은 종목을 랭킹하여 가시화합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# 역 상관관계 높은 종목 가시화&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; quantylab.common &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; viz&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; idx, row &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; df_corr3.&lt;/span&gt;&lt;span&gt;sort_values&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;by&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;gsci&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ascending&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;True&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;head&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;n&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;5&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;iterrows&lt;/span&gt;&lt;span&gt;():&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;df_stockcandles_day &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;read_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;../../../data/stockcandles_day_20220128/stockcandles_day_&lt;/span&gt;&lt;span&gt;{}&lt;/span&gt;&lt;span&gt;_&lt;/span&gt;&lt;span&gt;{}&lt;/span&gt;&lt;span&gt;_20220128.csv&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;format&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;converters&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;{&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;str&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;start_date &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_stockcandles_day.iloc[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;end_date &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_stockcandles_day.iloc[&lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_df_gsci &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_gsci[(df_gsci[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;&gt;=&lt;/span&gt;&lt;span&gt; start_date) &lt;/span&gt;&lt;span&gt;&amp;#x26;&lt;/span&gt;&lt;span&gt; (df_gsci[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;&amp;#x3C;=&lt;/span&gt;&lt;span&gt; end_date)]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;merge&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df_stockcandles_day&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _df_gsci&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;how&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;left&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;on&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;suffixes&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;_stock&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;_commodity&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; _df.&lt;/span&gt;&lt;span&gt;dropna&lt;/span&gt;&lt;span&gt;().&lt;/span&gt;&lt;span&gt;copy&lt;/span&gt;&lt;span&gt;().&lt;/span&gt;&lt;span&gt;reset_index&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;drop&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;True&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;print&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;{}&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;{}&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;{}&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;format&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;max_commodity&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;max_corr&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;viz.&lt;/span&gt;&lt;span&gt;show_notebook&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;viz.&lt;/span&gt;&lt;span&gt;get_multchart&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;_df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close_stock&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _df&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;close_commodity&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;label1&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;label2&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;row&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;max_commodity&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;&lt;img alt=&quot;6&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1705&quot; height=&quot;451&quot; src=&quot;https://blog.quantylab.com/_astro/6.Ba8qzIzA_Z2k7Q5G.webp&quot;&gt;
&lt;img alt=&quot;7&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1705&quot; height=&quot;451&quot; src=&quot;https://blog.quantylab.com/_astro/7.D1kEILZ-_26JDSk.webp&quot;&gt;
&lt;img alt=&quot;8&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1705&quot; height=&quot;451&quot; src=&quot;https://blog.quantylab.com/_astro/8.DgPDCY5F_AncoT.webp&quot;&gt;
&lt;img alt=&quot;9&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1705&quot; height=&quot;451&quot; src=&quot;https://blog.quantylab.com/_astro/9.DtD6arrJ_Z2aSuV5.webp&quot;&gt;
&lt;img alt=&quot;10&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1705&quot; height=&quot;451&quot; src=&quot;https://blog.quantylab.com/_astro/10.sAJyrxrt_1tfGl4.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;주로 연구 위주의 중소형주가 상위랭킹되는 것을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;데이터 받아가셔서 다양하게 분석해 보시기 바랍니다.&lt;/p&gt;</content:encoded><category>금융데이터분석</category><category>원자재</category><category>gsci</category><category>상관관계</category></item><item><title>공매도 데이터 분석하기</title><link>https://blog.quantylab.com/blog/2022-01-19-analysis_short/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2022-01-19-analysis_short/</guid><pubDate>Wed, 19 Jan 2022 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;이번 포스트에서는 파이썬으로 공매도 데이터를 분석해 봅니다. 공매도 데이터 수집에 대해서는 &lt;a href=&quot;http://blog.quantylab.com/2021-11-05_krx_short.html&quot;&gt;이 포스트&lt;/a&gt;를 확인해 주세요.&lt;/p&gt;
&lt;p&gt;공매도 거래, 공매도 잔고, 종목 정보 데이터를 가져옵니다. 이 부분은 개인적으로 사용하는 데이터베이스를 활용하므로 &lt;a href=&quot;https://cafe.naver.com/quantylab/115&quot;&gt;퀀티랩 카페&lt;/a&gt;에서 CSV 파일을 다운받아 사용하시기 바랍니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pandas &lt;/span&gt;&lt;span&gt;as&lt;/span&gt;&lt;span&gt; pd&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; quantylab.common.db.mongodb &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; MongoDBClient&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;coll &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; MongoDBClient.&lt;/span&gt;&lt;span&gt;get_coll&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;short&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;cursor &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; coll.&lt;/span&gt;&lt;span&gt;find&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;{&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: {&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;$gte&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;20210601&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;$lte&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;20220114&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;}}&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;_id&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;dt_update&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date_update&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;sort&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_short &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;DataFrame&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;list&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;cursor&lt;/span&gt;&lt;span&gt;))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;coll &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; MongoDBClient.&lt;/span&gt;&lt;span&gt;get_coll&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;shortbalance&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;cursor &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; coll.&lt;/span&gt;&lt;span&gt;find&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;{&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: {&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;$gte&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;20210601&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;$lte&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;20220114&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;}}&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;_id&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;dt_update&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date_update&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;sort&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_shortbalance &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;DataFrame&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;list&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;cursor&lt;/span&gt;&lt;span&gt;))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;coll &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; MongoDBClient.&lt;/span&gt;&lt;span&gt;get_coll&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;stockcodes&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;cursor &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; coll.&lt;/span&gt;&lt;span&gt;find&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;{}&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;_id&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_stockcodes &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;DataFrame&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;list&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;cursor&lt;/span&gt;&lt;span&gt;))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;위에서 준비한 세 DataFrame을 합칩니다. 이 합친 데이터를 CSV 파일로 저장해 둡니다. 이 CSV 데이터를 카페에 올려 놓았습니다. 카페 가입하셔서 다운받으시고 질문도 해주시면 감사하겠습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;merge&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df_short&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; df_shortbalance&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bal_rto&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bal_amt&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bal_qty&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;on&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;],&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;how&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;left&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;merge&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; df_stockcodes&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;on&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;how&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;left&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df[&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;+&lt;/span&gt;&lt;span&gt; df.columns.&lt;/span&gt;&lt;span&gt;tolisZt&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df.&lt;/span&gt;&lt;span&gt;to_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;20220113_analysis_short.csv&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;index&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;False&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;CSV 파일을 다운받으셨다면 다음 부분부터 직접 해보실 수 있습니다. 다음 코드는 CSV 파일을 불러오는 부분입니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pandas &lt;/span&gt;&lt;span&gt;as&lt;/span&gt;&lt;span&gt; pd&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;str_columns &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;read_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;20220113_analysis_short.csv&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;converters&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;{k: &lt;/span&gt;&lt;span&gt;lambda&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;x&lt;/span&gt;&lt;span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;str&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;x&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; k &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; str_columns}&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;code, date를 숫자로 읽는 것을 방지하기 위해서 converters 인자를 넣어줍니다. 그리고 다음 코드에서처럼 date로 정렬하고 % 단위를 떼고 NaN 값이 포함된 행을 버립니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df.&lt;/span&gt;&lt;span&gt;sort_values&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;by&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# % 단위 떼기&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;short_ratio&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;/=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;100&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bal_rto&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;/=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;100&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df.&lt;/span&gt;&lt;span&gt;dropna&lt;/span&gt;&lt;span&gt;().&lt;/span&gt;&lt;span&gt;copy&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;

















































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;name&lt;/th&gt;&lt;th&gt;code&lt;/th&gt;&lt;th&gt;date&lt;/th&gt;&lt;th&gt;avg_price&lt;/th&gt;&lt;th&gt;avg_price_ratio&lt;/th&gt;&lt;th&gt;close&lt;/th&gt;&lt;th&gt;diff&lt;/th&gt;&lt;th&gt;diffratio&lt;/th&gt;&lt;th&gt;short_amount&lt;/th&gt;&lt;th&gt;short_ratio&lt;/th&gt;&lt;th&gt;short_volume&lt;/th&gt;&lt;th&gt;volume&lt;/th&gt;&lt;th&gt;bal_rto&lt;/th&gt;&lt;th&gt;bal_amt&lt;/th&gt;&lt;th&gt;bal_qty&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;LX홀딩스&lt;/td&gt;&lt;td&gt;383800&lt;/td&gt;&lt;td&gt;20210601&lt;/td&gt;&lt;td&gt;11078&lt;/td&gt;&lt;td&gt;-78&lt;/td&gt;&lt;td&gt;11000&lt;/td&gt;&lt;td&gt;50&lt;/td&gt;&lt;td&gt;0.46&lt;/td&gt;&lt;td&gt;26214&lt;/td&gt;&lt;td&gt;0.012591000000000001&lt;/td&gt;&lt;td&gt;23662&lt;/td&gt;&lt;td&gt;1879288&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;34639000.0&lt;/td&gt;&lt;td&gt;3149.0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;DB금융투자&lt;/td&gt;&lt;td&gt;016610&lt;/td&gt;&lt;td&gt;20210601&lt;/td&gt;&lt;td&gt;7215&lt;/td&gt;&lt;td&gt;5&lt;/td&gt;&lt;td&gt;7220&lt;/td&gt;&lt;td&gt;50&lt;/td&gt;&lt;td&gt;0.7&lt;/td&gt;&lt;td&gt;412&lt;/td&gt;&lt;td&gt;0.003169&lt;/td&gt;&lt;td&gt;571&lt;/td&gt;&lt;td&gt;180173&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;CJ제일제당&lt;/td&gt;&lt;td&gt;097950&lt;/td&gt;&lt;td&gt;20210601&lt;/td&gt;&lt;td&gt;484327&lt;/td&gt;&lt;td&gt;1173&lt;/td&gt;&lt;td&gt;485500&lt;/td&gt;&lt;td&gt;-3000&lt;/td&gt;&lt;td&gt;-0.61&lt;/td&gt;&lt;td&gt;122535&lt;/td&gt;&lt;td&gt;0.0437&lt;/td&gt;&lt;td&gt;2530&lt;/td&gt;&lt;td&gt;57895&lt;/td&gt;&lt;td&gt;0.0029&lt;/td&gt;&lt;td&gt;21517360000.0&lt;/td&gt;&lt;td&gt;44320.0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;CJ씨푸드&lt;/td&gt;&lt;td&gt;011150&lt;/td&gt;&lt;td&gt;20210601&lt;/td&gt;&lt;td&gt;4819&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;4820&lt;/td&gt;&lt;td&gt;105&lt;/td&gt;&lt;td&gt;2.23&lt;/td&gt;&lt;td&gt;22&lt;/td&gt;&lt;td&gt;3.8e-05&lt;/td&gt;&lt;td&gt;45&lt;/td&gt;&lt;td&gt;1188132&lt;/td&gt;&lt;td&gt;0.0083&lt;/td&gt;&lt;td&gt;1435482760.0&lt;/td&gt;&lt;td&gt;297818.0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;BGF리테일&lt;/td&gt;&lt;td&gt;282330&lt;/td&gt;&lt;td&gt;20210601&lt;/td&gt;&lt;td&gt;183995&lt;/td&gt;&lt;td&gt;5&lt;/td&gt;&lt;td&gt;184000&lt;/td&gt;&lt;td&gt;2500&lt;/td&gt;&lt;td&gt;1.38&lt;/td&gt;&lt;td&gt;64950&lt;/td&gt;&lt;td&gt;0.089838&lt;/td&gt;&lt;td&gt;3530&lt;/td&gt;&lt;td&gt;39293&lt;/td&gt;&lt;td&gt;0.0007000000000000001&lt;/td&gt;&lt;td&gt;2272032000.0&lt;/td&gt;&lt;td&gt;12348.0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;엠씨넥스&lt;/td&gt;&lt;td&gt;097520&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;56312&lt;/td&gt;&lt;td&gt;-12&lt;/td&gt;&lt;td&gt;56300&lt;/td&gt;&lt;td&gt;3800&lt;/td&gt;&lt;td&gt;7.24&lt;/td&gt;&lt;td&gt;141&lt;/td&gt;&lt;td&gt;1.9e-05&lt;/td&gt;&lt;td&gt;25&lt;/td&gt;&lt;td&gt;1321720&lt;/td&gt;&lt;td&gt;0.0029&lt;/td&gt;&lt;td&gt;2909752900.0&lt;/td&gt;&lt;td&gt;51683.0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;더블유게임즈&lt;/td&gt;&lt;td&gt;192080&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;53966&lt;/td&gt;&lt;td&gt;234&lt;/td&gt;&lt;td&gt;54200&lt;/td&gt;&lt;td&gt;-400&lt;/td&gt;&lt;td&gt;-0.73&lt;/td&gt;&lt;td&gt;47851&lt;/td&gt;&lt;td&gt;0.10421200000000001&lt;/td&gt;&lt;td&gt;8867&lt;/td&gt;&lt;td&gt;85086&lt;/td&gt;&lt;td&gt;0.0139&lt;/td&gt;&lt;td&gt;13883763600.0&lt;/td&gt;&lt;td&gt;256158.0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;PI첨단소재&lt;/td&gt;&lt;td&gt;178920&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;52734&lt;/td&gt;&lt;td&gt;366&lt;/td&gt;&lt;td&gt;53100&lt;/td&gt;&lt;td&gt;1000&lt;/td&gt;&lt;td&gt;1.92&lt;/td&gt;&lt;td&gt;34556&lt;/td&gt;&lt;td&gt;0.044195000000000005&lt;/td&gt;&lt;td&gt;6553&lt;/td&gt;&lt;td&gt;148275&lt;/td&gt;&lt;td&gt;0.0086&lt;/td&gt;&lt;td&gt;13446300600.0&lt;/td&gt;&lt;td&gt;253226.0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;포스코케미칼&lt;/td&gt;&lt;td&gt;003670&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;129380&lt;/td&gt;&lt;td&gt;620&lt;/td&gt;&lt;td&gt;130000&lt;/td&gt;&lt;td&gt;-2000&lt;/td&gt;&lt;td&gt;-1.52&lt;/td&gt;&lt;td&gt;94033&lt;/td&gt;&lt;td&gt;0.043436&lt;/td&gt;&lt;td&gt;7268&lt;/td&gt;&lt;td&gt;167325&lt;/td&gt;&lt;td&gt;0.0235&lt;/td&gt;&lt;td&gt;236509260000.0&lt;/td&gt;&lt;td&gt;1819302.0&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;LG이노텍&lt;/td&gt;&lt;td&gt;011070&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;381022&lt;/td&gt;&lt;td&gt;3478&lt;/td&gt;&lt;td&gt;384500&lt;/td&gt;&lt;td&gt;32000&lt;/td&gt;&lt;td&gt;9.08&lt;/td&gt;&lt;td&gt;3552349&lt;/td&gt;&lt;td&gt;0.05383&lt;/td&gt;&lt;td&gt;93232&lt;/td&gt;&lt;td&gt;1731987&lt;/td&gt;&lt;td&gt;0.005600000000000001&lt;/td&gt;&lt;td&gt;50517917000.0&lt;/td&gt;&lt;td&gt;131386.0&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;이 데이터에서 종목별로 상환 규모를 확인하고 공매도 거래량, 공매도 잔고, 상환 규모의 5일 이동평균을 구합니다. 이 과정은 몇 분 정도 걸릴 수 있습니다. 그래서 tqdm으로 진행율을 확인합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; tqdm &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; tqdm&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; k, g &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;tqdm&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df.&lt;/span&gt;&lt;span&gt;groupby&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# 상환 규모 확인&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# 당일 short_volume - (당일 bal_qty - 전일 bal_qty)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;df.loc[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; k, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bal_qty_diff&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; g[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bal_qty&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;diff&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;df.loc[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; k, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;repay_volume&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; (df.loc[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; k, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;short_volume&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt; df.loc[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; k, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bal_qty_diff&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]).&lt;/span&gt;&lt;span&gt;clip&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;df.loc[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; k, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;repay_ratio&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df.loc[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; k, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;repay_volume&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;/&lt;/span&gt;&lt;span&gt; df.loc[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; k, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;volume&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# 이동평균&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;df.loc[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; k, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;short_ratio_ma5&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; g[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;short_ratio&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;fillna&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;rolling&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;5&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;mean&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;df.loc[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; k, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bal_rto_ma5&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; g[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bal_rto&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;fillna&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;rolling&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;5&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;mean&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;df.loc[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; k, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;repay_ratio_ma5&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df.loc[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; k, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;repay_ratio&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] .&lt;/span&gt;&lt;span&gt;fillna&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;rolling&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;5&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;mean&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이렇게 구한 repay_ratio_ma5로 내림차순 정렬을 해보면 다음과 같은 결과를 얻을 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;_df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df[df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;date&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;==&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;20220114&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;sort_values&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;by&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;repay_ratio_ma5&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ascending&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;False&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;_df&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;

























































































































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;name&lt;/th&gt;&lt;th&gt;code&lt;/th&gt;&lt;th&gt;date&lt;/th&gt;&lt;th&gt;avg_price&lt;/th&gt;&lt;th&gt;avg_price_ratio&lt;/th&gt;&lt;th&gt;close&lt;/th&gt;&lt;th&gt;diff&lt;/th&gt;&lt;th&gt;diffratio&lt;/th&gt;&lt;th&gt;short_amount&lt;/th&gt;&lt;th&gt;short_ratio&lt;/th&gt;&lt;th&gt;short_volume&lt;/th&gt;&lt;th&gt;volume&lt;/th&gt;&lt;th&gt;bal_rto&lt;/th&gt;&lt;th&gt;bal_amt&lt;/th&gt;&lt;th&gt;bal_qty&lt;/th&gt;&lt;th&gt;bal_qty_diff&lt;/th&gt;&lt;th&gt;repay_volume&lt;/th&gt;&lt;th&gt;repay_ratio&lt;/th&gt;&lt;th&gt;short_ratio_ma5&lt;/th&gt;&lt;th&gt;bal_rto_ma5&lt;/th&gt;&lt;th&gt;repay_ratio_ma5&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;BGF리테일&lt;/td&gt;&lt;td&gt;282330&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;145501&lt;/td&gt;&lt;td&gt;-1501&lt;/td&gt;&lt;td&gt;144000&lt;/td&gt;&lt;td&gt;-2000&lt;/td&gt;&lt;td&gt;-1.37&lt;/td&gt;&lt;td&gt;188743&lt;/td&gt;&lt;td&gt;0.31445&lt;/td&gt;&lt;td&gt;12972&lt;/td&gt;&lt;td&gt;41253&lt;/td&gt;&lt;td&gt;0.0013&lt;/td&gt;&lt;td&gt;3342384000.0&lt;/td&gt;&lt;td&gt;23211.0&lt;/td&gt;&lt;td&gt;4353.0&lt;/td&gt;&lt;td&gt;8619.0&lt;/td&gt;&lt;td&gt;0.20893025961748238&lt;/td&gt;&lt;td&gt;0.24250639999999998&lt;/td&gt;&lt;td&gt;0.0013000000000000002&lt;/td&gt;&lt;td&gt;0.2374309360178176&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;세방전지&lt;/td&gt;&lt;td&gt;004490&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;69346&lt;/td&gt;&lt;td&gt;-146&lt;/td&gt;&lt;td&gt;69200&lt;/td&gt;&lt;td&gt;-1800&lt;/td&gt;&lt;td&gt;-2.54&lt;/td&gt;&lt;td&gt;22322&lt;/td&gt;&lt;td&gt;0.094635&lt;/td&gt;&lt;td&gt;3219&lt;/td&gt;&lt;td&gt;34015&lt;/td&gt;&lt;td&gt;0.0191&lt;/td&gt;&lt;td&gt;18506225200.0&lt;/td&gt;&lt;td&gt;267431.0&lt;/td&gt;&lt;td&gt;-6377.0&lt;/td&gt;&lt;td&gt;9596.0&lt;/td&gt;&lt;td&gt;0.2821108334558283&lt;/td&gt;&lt;td&gt;0.1048104&lt;/td&gt;&lt;td&gt;0.02026&lt;/td&gt;&lt;td&gt;0.22422523200232863&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;호텔신라&lt;/td&gt;&lt;td&gt;008770&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;77304&lt;/td&gt;&lt;td&gt;96&lt;/td&gt;&lt;td&gt;77400&lt;/td&gt;&lt;td&gt;-1100&lt;/td&gt;&lt;td&gt;-1.4&lt;/td&gt;&lt;td&gt;594543&lt;/td&gt;&lt;td&gt;0.222531&lt;/td&gt;&lt;td&gt;76910&lt;/td&gt;&lt;td&gt;345615&lt;/td&gt;&lt;td&gt;0.0717&lt;/td&gt;&lt;td&gt;217719311400.0&lt;/td&gt;&lt;td&gt;2812911.0&lt;/td&gt;&lt;td&gt;83286.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.271113&lt;/td&gt;&lt;td&gt;0.06978000000000001&lt;/td&gt;&lt;td&gt;0.2142213088295697&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;금호석유화학&lt;/td&gt;&lt;td&gt;011780&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;174115&lt;/td&gt;&lt;td&gt;-115&lt;/td&gt;&lt;td&gt;174000&lt;/td&gt;&lt;td&gt;2500&lt;/td&gt;&lt;td&gt;1.46&lt;/td&gt;&lt;td&gt;293854&lt;/td&gt;&lt;td&gt;0.075005&lt;/td&gt;&lt;td&gt;16877&lt;/td&gt;&lt;td&gt;225011&lt;/td&gt;&lt;td&gt;0.05&lt;/td&gt;&lt;td&gt;263459838000.0&lt;/td&gt;&lt;td&gt;1514137.0&lt;/td&gt;&lt;td&gt;-44184.0&lt;/td&gt;&lt;td&gt;61061.0&lt;/td&gt;&lt;td&gt;0.2713689552955189&lt;/td&gt;&lt;td&gt;0.0773396&lt;/td&gt;&lt;td&gt;0.0519&lt;/td&gt;&lt;td&gt;0.20765174156183894&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;효성첨단소재&lt;/td&gt;&lt;td&gt;298050&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;532588&lt;/td&gt;&lt;td&gt;412&lt;/td&gt;&lt;td&gt;533000&lt;/td&gt;&lt;td&gt;-8000&lt;/td&gt;&lt;td&gt;-1.48&lt;/td&gt;&lt;td&gt;314067&lt;/td&gt;&lt;td&gt;0.159077&lt;/td&gt;&lt;td&gt;5897&lt;/td&gt;&lt;td&gt;37070&lt;/td&gt;&lt;td&gt;0.0147&lt;/td&gt;&lt;td&gt;35143888000.0&lt;/td&gt;&lt;td&gt;65936.0&lt;/td&gt;&lt;td&gt;15093.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.1540592&lt;/td&gt;&lt;td&gt;0.01316&lt;/td&gt;&lt;td&gt;0.18448044554531187&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;콤텍시스템&lt;/td&gt;&lt;td&gt;031820&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;957&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;957&lt;/td&gt;&lt;td&gt;-16&lt;/td&gt;&lt;td&gt;-1.64&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;9e-06&lt;/td&gt;&lt;td&gt;8&lt;/td&gt;&lt;td&gt;937184&lt;/td&gt;&lt;td&gt;0.0011&lt;/td&gt;&lt;td&gt;123620475.0&lt;/td&gt;&lt;td&gt;129175.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;8.0&lt;/td&gt;&lt;td&gt;8.536210605388056e-06&lt;/td&gt;&lt;td&gt;4.259999999999999e-05&lt;/td&gt;&lt;td&gt;0.0010999999999999998&lt;/td&gt;&lt;td&gt;4.258825517099485e-05&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;TCC스틸&lt;/td&gt;&lt;td&gt;002710&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;12950&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;12950&lt;/td&gt;&lt;td&gt;800&lt;/td&gt;&lt;td&gt;6.58&lt;/td&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;5084832&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;2.0&lt;/td&gt;&lt;td&gt;3.933266625131371e-07&lt;/td&gt;&lt;td&gt;3.48e-05&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;3.473958840739652e-05&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;미래산업&lt;/td&gt;&lt;td&gt;025560&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;13650&lt;/td&gt;&lt;td&gt;100&lt;/td&gt;&lt;td&gt;13750&lt;/td&gt;&lt;td&gt;-350&lt;/td&gt;&lt;td&gt;-2.48&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;2.5e-05&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;39706&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;1.0&lt;/td&gt;&lt;td&gt;2.518511056263537e-05&lt;/td&gt;&lt;td&gt;2.46e-05&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;2.4705969543888606e-05&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;이스타코&lt;/td&gt;&lt;td&gt;015020&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;3105&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;3105&lt;/td&gt;&lt;td&gt;-110&lt;/td&gt;&lt;td&gt;-3.42&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;5.999999999999999e-06&lt;/td&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;721686&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;4.0&lt;/td&gt;&lt;td&gt;5.542576688476706e-06&lt;/td&gt;&lt;td&gt;2.3000000000000024e-05&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;2.2816870909533658e-05&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;오리엔트바이오&lt;/td&gt;&lt;td&gt;002630&lt;/td&gt;&lt;td&gt;20220114&lt;/td&gt;&lt;td&gt;1315&lt;/td&gt;&lt;td&gt;5&lt;/td&gt;&lt;td&gt;1320&lt;/td&gt;&lt;td&gt;20&lt;/td&gt;&lt;td&gt;1.54&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;2479455&lt;/td&gt;&lt;td&gt;0.0013&lt;/td&gt;&lt;td&gt;198262680.0&lt;/td&gt;&lt;td&gt;150199.0&lt;/td&gt;&lt;td&gt;0.0&lt;/td&gt;&lt;td&gt;1.0&lt;/td&gt;&lt;td&gt;4.033144380519106e-07&lt;/td&gt;&lt;td&gt;5.200000000000005e-06&lt;/td&gt;&lt;td&gt;0.0013&lt;/td&gt;&lt;td&gt;5.125393445035716e-06&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;이 종목들 중에서 공매도 상환율이 높은 상위 5개 종목을 살펴보겠습니다.&lt;/p&gt;
&lt;div&gt;&lt;h3 id=&quot;bgf리테일&quot;&gt;BGF리테일&lt;/h3&gt;&lt;/div&gt;
&lt;p&gt;&lt;img alt=&quot;1&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1735&quot; height=&quot;686&quot; src=&quot;https://blog.quantylab.com/_astro/1.ybuIDB2S_ZTViWz.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;최근 공매도 거래가 높은데 공매도 잔고는 크게 늘지 않고 유지되고 있습니다. 즉, 공매도 상환율도 높은 상황입니다. 공매도자들의 판단이 엇갈리고 있다고 보이는 지점입니다.&lt;/p&gt;
&lt;div&gt;&lt;h3 id=&quot;세방전지&quot;&gt;세방전지&lt;/h3&gt;&lt;/div&gt;
&lt;p&gt;&lt;img alt=&quot;2&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1735&quot; height=&quot;685&quot; src=&quot;https://blog.quantylab.com/_astro/2.CqLRb1FR_Z1BL2UQ.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;공매도 거래는 꾸준히 있는데 공매도 잔고가 떨어지고 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;h3 id=&quot;호텔신라&quot;&gt;호텔신라&lt;/h3&gt;&lt;/div&gt;
&lt;p&gt;&lt;img alt=&quot;3&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1735&quot; height=&quot;686&quot; src=&quot;https://blog.quantylab.com/_astro/3.Cg0H5XCI_18rNB.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;11월에 어닝쇼크로 공매도 잔고가 급격하게 늘었습니다. 이후 공매도 거래는 많은데 공매도 잔고는 조금씩 오르는 모습입니다.&lt;/p&gt;
&lt;div&gt;&lt;h3 id=&quot;금호석유화학&quot;&gt;금호석유화학&lt;/h3&gt;&lt;/div&gt;
&lt;p&gt;&lt;img alt=&quot;4&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1735&quot; height=&quot;685&quot; src=&quot;https://blog.quantylab.com/_astro/4.BzBIJXlL_Z1SaxJM.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;공매도 잔고가 꾸준히 늘다가 최근 하락 전환하는 모습입니다.&lt;/p&gt;
&lt;div&gt;&lt;h3 id=&quot;효성첨단소재&quot;&gt;효성첨단소재&lt;/h3&gt;&lt;/div&gt;
&lt;p&gt;&lt;img alt=&quot;5&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1735&quot; height=&quot;686&quot; src=&quot;https://blog.quantylab.com/_astro/5.Dd91EkEz_ZdNCF1.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;최근 공매도 거래가 상당한 상황입니다.&lt;/p&gt;</content:encoded><category>금융데이터분석</category><category>공매도</category></item><item><title>대신증권 크레온에서 투자자별 매매동향 수집하기</title><link>https://blog.quantylab.com/blog/2021-11-24-creon_investor/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-11-24-creon_investor/</guid><pubDate>Wed, 24 Nov 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;이번 포스트에서는 크레온 플러스 API를 이용하여 개인, 기관, 외국인의 매매동향 데이터를 수집하는 방법을 다루겠습니다.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://github.com/quantylab/systrader&quot;&gt;퀀티랩 SysTrader&lt;/a&gt; 패키지를 다운받아 설치하시면 다음과 같이 쉽게 기능을 사용할 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; quantylab.systrader.creon &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; Creon&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;c &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;Creon&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; c.&lt;/span&gt;&lt;span&gt;get_investorbuysell&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;005930&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;n&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;60&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;지금부터는 SysTrader 설치 없이 위 기능을 직접 구현해 보실 수 있도록 풀어서 설명하겠습니다.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.youtube.com/channel/UC5bVyL7gs85fPhxwCnbhcAw&quot;&gt;퀀티랩 YouTube 채널&lt;/a&gt;의 &lt;a href=&quot;https://youtu.be/L3i8ZVlO8nQ&quot;&gt;이 영상&lt;/a&gt;을 보셔도 됩니다.&lt;/p&gt;
&lt;p&gt;투자자별 매매동향 데이터는 크레온의
&lt;a href=&quot;https://money2.creontrade.com/e5/mboard/ptype_basic/HTS_Plus_Helper/DW_Basic_Read_Page.aspx?boardseq=284&amp;#x26;seq=242&amp;#x26;page=1&amp;#x26;searchString=CpSvr7254&amp;#x26;p=8841&amp;#x26;v=8643&amp;#x26;m=9505&quot;&gt;매매입체분석 CpSysDib.CpSvr7254&lt;/a&gt; 모듈을 사용해서 가져올 수 있습니다.&lt;/p&gt;
&lt;p&gt;크레온 플러스 API 사용을 위해서는 &lt;code dir=&quot;auto&quot;&gt;win32com&lt;/code&gt; 패키지가 필요한데 &lt;code dir=&quot;auto&quot;&gt;pip install pywinauto&lt;/code&gt;로 설치할 수 있습니다.&lt;/p&gt;
&lt;p&gt;먼저 &lt;code dir=&quot;auto&quot;&gt;win32com.client&lt;/code&gt;를 임포트하여 &lt;code dir=&quot;auto&quot;&gt;CpSysDib.CpSvr7254&lt;/code&gt; 모듈을 Dispatch 합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; win32com.client&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;obj &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; win32com.client.&lt;/span&gt;&lt;span&gt;Dispatch&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;CpSysDib.CpSvr7254&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이제 파라미터를 입력해야 합니다. 문서를 보면 다양한 파라미터들이 있는데 여기서는 하나의 예시를 들겠습니다. &lt;a href=&quot;https://money2.creontrade.com/e5/mboard/ptype_basic/HTS_Plus_Helper/DW_Basic_Read_Page.aspx?boardseq=284&amp;#x26;seq=242&amp;#x26;page=1&amp;#x26;searchString=CpSvr7254&amp;#x26;p=8841&amp;#x26;v=8643&amp;#x26;m=9505&quot;&gt;이 문서&lt;/a&gt;에서 확인하시어 아래 예제처럼 원하시는 값으로 입력해 주시면 됩니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;obj.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;A005930&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)  &lt;/span&gt;&lt;span&gt;# 종목코드&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;obj.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;6&lt;/span&gt;&lt;span&gt;)  &lt;/span&gt;&lt;span&gt;# 기간선택구분 - 6:일별&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;obj.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;4&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ord&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;))  &lt;/span&gt;&lt;span&gt;# 매매비중구분 - &apos;0&apos;:순매수&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;obj.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;5&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;)  &lt;/span&gt;&lt;span&gt;# 투자자 - 0:전체&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;obj.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;6&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ord&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;))  &lt;/span&gt;&lt;span&gt;# 데이터 구분 - &apos;1&apos;:순매수량&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이렇게 삼성전자에 대해 투자자들의 일별 매매동향을 가져오도록 파라미터를 채웠습니다. 이제 요청을 다음과 같이 보내면 됩니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;obj.&lt;/span&gt;&lt;span&gt;BlockRequest&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이제 요청 결과를 가져올 수 있는데, 먼저 결과 데이터 개수를 확인해 보겠습니다. 이건 &lt;code dir=&quot;auto&quot;&gt;GetHeaderValue(type)&lt;/code&gt; 메소드로 가져올 수 있는데 &lt;code dir=&quot;auto&quot;&gt;type&lt;/code&gt;은 모듈마다 달라서 문서를 확인해야 합니다. 이 모듈에서 결과의 데이터 개수에 대한 &lt;code dir=&quot;auto&quot;&gt;type&lt;/code&gt; 값은 1 입니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;cnt &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;아마 cnt는 17개로 나올 것입니다. 이건 이 모듈이 한번 조회할 때 최대 17개까지만 반환해주기 때문입니다. 더 많은 과거 데이터를 원할 경우 연속조회 하면 됩니다. 이건 뒤에서 확인하겠습니다.&lt;/p&gt;
&lt;p&gt;먼저 현재 요청 결과를 dict로 구성해 보겠습니다. 결과는 &lt;code dir=&quot;auto&quot;&gt;GetDataValue(type, index)&lt;/code&gt; 메소드로 가져옵니다. &lt;code dir=&quot;auto&quot;&gt;type&lt;/code&gt;은 문서를 확인하면 되고 &lt;code dir=&quot;auto&quot;&gt;index&lt;/code&gt;는 17개 아이템에 대한 인덱스 입니다.&lt;/p&gt;
&lt;p&gt;이렇게 결과를 &lt;code dir=&quot;auto&quot;&gt;dict&lt;/code&gt; 형태로 만들 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;keys &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;일자&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;개인&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;외국인&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;기관계&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;금융투자&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;보험&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;투신&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;은행&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;기타금융&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;연기금 등&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;기타법인&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;기타외인&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;사모펀드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;국가지자체&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;종가&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;대비&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;대비율&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;거래량&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;확정치여부&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; i &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;range&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;cnt&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;item &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {k: obj.&lt;/span&gt;&lt;span&gt;GetDataValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;j&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; i&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; j, k &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;enumerate&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;keys&lt;/span&gt;&lt;span&gt;)}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;data.&lt;/span&gt;&lt;span&gt;append&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;item&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이제 연속조회로 더 많은 데이터를 가져와 보겠습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; obj.Continue:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;obj.&lt;/span&gt;&lt;span&gt;BlockRequest&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;그리고 위와 똑같이 &lt;code dir=&quot;auto&quot;&gt;dict&lt;/code&gt; 형태로 만들어서 &lt;code dir=&quot;auto&quot;&gt;data&lt;/code&gt;에 추가하면 됩니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;cnt &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; i &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;range&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;cnt&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;item &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {k: obj.&lt;/span&gt;&lt;span&gt;GetDataValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;j&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; i&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; j, k &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;enumerate&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;keys&lt;/span&gt;&lt;span&gt;)}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;data.&lt;/span&gt;&lt;span&gt;append&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;item&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이 데이터를 pandas DataFrame으로 변환하여 출력해보면 다음처럼 테이블로 결과를 볼 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pandas &lt;/span&gt;&lt;span&gt;as&lt;/span&gt;&lt;span&gt; pd&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;DataFrame&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;data&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;







































































































































































































































































































































































































































































































































































































































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;index&lt;/th&gt;&lt;th&gt;일자&lt;/th&gt;&lt;th&gt;개인&lt;/th&gt;&lt;th&gt;외국인&lt;/th&gt;&lt;th&gt;기관계&lt;/th&gt;&lt;th&gt;금융투자&lt;/th&gt;&lt;th&gt;보험&lt;/th&gt;&lt;th&gt;투신&lt;/th&gt;&lt;th&gt;은행&lt;/th&gt;&lt;th&gt;기타금융&lt;/th&gt;&lt;th&gt;연기금 등&lt;/th&gt;&lt;th&gt;기타법인&lt;/th&gt;&lt;th&gt;기타외인&lt;/th&gt;&lt;th&gt;사모펀드&lt;/th&gt;&lt;th&gt;국가지자체&lt;/th&gt;&lt;th&gt;종가&lt;/th&gt;&lt;th&gt;대비&lt;/th&gt;&lt;th&gt;대비율&lt;/th&gt;&lt;th&gt;거래량&lt;/th&gt;&lt;th&gt;확정치여부&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;20211122&lt;/td&gt;&lt;td&gt;-8689002&lt;/td&gt;&lt;td&gt;5766721&lt;/td&gt;&lt;td&gt;3033799&lt;/td&gt;&lt;td&gt;1879919&lt;/td&gt;&lt;td&gt;20352&lt;/td&gt;&lt;td&gt;738060&lt;/td&gt;&lt;td&gt;-36395&lt;/td&gt;&lt;td&gt;27387&lt;/td&gt;&lt;td&gt;85824&lt;/td&gt;&lt;td&gt;-82117&lt;/td&gt;&lt;td&gt;-29401&lt;/td&gt;&lt;td&gt;318652&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;74900&lt;/td&gt;&lt;td&gt;3700&lt;/td&gt;&lt;td&gt;5.20&lt;/td&gt;&lt;td&gt;27239836&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;20211119&lt;/td&gt;&lt;td&gt;-742078&lt;/td&gt;&lt;td&gt;313970&lt;/td&gt;&lt;td&gt;432827&lt;/td&gt;&lt;td&gt;283202&lt;/td&gt;&lt;td&gt;12079&lt;/td&gt;&lt;td&gt;-23332&lt;/td&gt;&lt;td&gt;-3478&lt;/td&gt;&lt;td&gt;-24859&lt;/td&gt;&lt;td&gt;179418&lt;/td&gt;&lt;td&gt;-8721&lt;/td&gt;&lt;td&gt;4002&lt;/td&gt;&lt;td&gt;9797&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;71200&lt;/td&gt;&lt;td&gt;1000&lt;/td&gt;&lt;td&gt;1.42&lt;/td&gt;&lt;td&gt;11954728&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;20211118&lt;/td&gt;&lt;td&gt;1314434&lt;/td&gt;&lt;td&gt;-738137&lt;/td&gt;&lt;td&gt;-576566&lt;/td&gt;&lt;td&gt;-103191&lt;/td&gt;&lt;td&gt;-3195&lt;/td&gt;&lt;td&gt;-10927&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;-456299&lt;/td&gt;&lt;td&gt;-5413&lt;/td&gt;&lt;td&gt;5682&lt;/td&gt;&lt;td&gt;-2955&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70200&lt;/td&gt;&lt;td&gt;-500&lt;/td&gt;&lt;td&gt;-0.71&lt;/td&gt;&lt;td&gt;10144957&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;20211117&lt;/td&gt;&lt;td&gt;1234537&lt;/td&gt;&lt;td&gt;1519353&lt;/td&gt;&lt;td&gt;-2816912&lt;/td&gt;&lt;td&gt;-2557894&lt;/td&gt;&lt;td&gt;27969&lt;/td&gt;&lt;td&gt;122759&lt;/td&gt;&lt;td&gt;105367&lt;/td&gt;&lt;td&gt;-114917&lt;/td&gt;&lt;td&gt;-491388&lt;/td&gt;&lt;td&gt;57393&lt;/td&gt;&lt;td&gt;5629&lt;/td&gt;&lt;td&gt;91192&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70700&lt;/td&gt;&lt;td&gt;-600&lt;/td&gt;&lt;td&gt;-0.84&lt;/td&gt;&lt;td&gt;11027606&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;20211116&lt;/td&gt;&lt;td&gt;-753052&lt;/td&gt;&lt;td&gt;1025989&lt;/td&gt;&lt;td&gt;-202007&lt;/td&gt;&lt;td&gt;148871&lt;/td&gt;&lt;td&gt;-48992&lt;/td&gt;&lt;td&gt;122148&lt;/td&gt;&lt;td&gt;46961&lt;/td&gt;&lt;td&gt;-116&lt;/td&gt;&lt;td&gt;-551871&lt;/td&gt;&lt;td&gt;-73698&lt;/td&gt;&lt;td&gt;2768&lt;/td&gt;&lt;td&gt;80992&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;71300&lt;/td&gt;&lt;td&gt;-100&lt;/td&gt;&lt;td&gt;-0.14&lt;/td&gt;&lt;td&gt;10919239&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;5&lt;/td&gt;&lt;td&gt;20211115&lt;/td&gt;&lt;td&gt;-3174454&lt;/td&gt;&lt;td&gt;976207&lt;/td&gt;&lt;td&gt;2301384&lt;/td&gt;&lt;td&gt;1708103&lt;/td&gt;&lt;td&gt;27375&lt;/td&gt;&lt;td&gt;63674&lt;/td&gt;&lt;td&gt;-6560&lt;/td&gt;&lt;td&gt;2705&lt;/td&gt;&lt;td&gt;369771&lt;/td&gt;&lt;td&gt;-86615&lt;/td&gt;&lt;td&gt;-16522&lt;/td&gt;&lt;td&gt;136316&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;71400&lt;/td&gt;&lt;td&gt;800&lt;/td&gt;&lt;td&gt;1.13&lt;/td&gt;&lt;td&gt;12420710&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;6&lt;/td&gt;&lt;td&gt;20211112&lt;/td&gt;&lt;td&gt;-2411322&lt;/td&gt;&lt;td&gt;384228&lt;/td&gt;&lt;td&gt;2046949&lt;/td&gt;&lt;td&gt;2015464&lt;/td&gt;&lt;td&gt;-10560&lt;/td&gt;&lt;td&gt;196819&lt;/td&gt;&lt;td&gt;-761&lt;/td&gt;&lt;td&gt;405&lt;/td&gt;&lt;td&gt;-152781&lt;/td&gt;&lt;td&gt;-16190&lt;/td&gt;&lt;td&gt;-3665&lt;/td&gt;&lt;td&gt;-1637&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70600&lt;/td&gt;&lt;td&gt;700&lt;/td&gt;&lt;td&gt;1.00&lt;/td&gt;&lt;td&gt;10087450&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;7&lt;/td&gt;&lt;td&gt;20211111&lt;/td&gt;&lt;td&gt;2266214&lt;/td&gt;&lt;td&gt;-2179760&lt;/td&gt;&lt;td&gt;-116698&lt;/td&gt;&lt;td&gt;655621&lt;/td&gt;&lt;td&gt;67711&lt;/td&gt;&lt;td&gt;-133062&lt;/td&gt;&lt;td&gt;2502&lt;/td&gt;&lt;td&gt;-234&lt;/td&gt;&lt;td&gt;-389250&lt;/td&gt;&lt;td&gt;27906&lt;/td&gt;&lt;td&gt;2338&lt;/td&gt;&lt;td&gt;-319986&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;69900&lt;/td&gt;&lt;td&gt;-300&lt;/td&gt;&lt;td&gt;-0.43&lt;/td&gt;&lt;td&gt;11489122&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;8&lt;/td&gt;&lt;td&gt;20211110&lt;/td&gt;&lt;td&gt;-722793&lt;/td&gt;&lt;td&gt;1435001&lt;/td&gt;&lt;td&gt;-724133&lt;/td&gt;&lt;td&gt;-268435&lt;/td&gt;&lt;td&gt;-14154&lt;/td&gt;&lt;td&gt;32610&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;-5246&lt;/td&gt;&lt;td&gt;-475829&lt;/td&gt;&lt;td&gt;9024&lt;/td&gt;&lt;td&gt;2901&lt;/td&gt;&lt;td&gt;6921&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70200&lt;/td&gt;&lt;td&gt;-300&lt;/td&gt;&lt;td&gt;-0.43&lt;/td&gt;&lt;td&gt;9422009&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;9&lt;/td&gt;&lt;td&gt;20211109&lt;/td&gt;&lt;td&gt;-454505&lt;/td&gt;&lt;td&gt;-725539&lt;/td&gt;&lt;td&gt;1193368&lt;/td&gt;&lt;td&gt;1695062&lt;/td&gt;&lt;td&gt;-18889&lt;/td&gt;&lt;td&gt;-35616&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;1624&lt;/td&gt;&lt;td&gt;-478674&lt;/td&gt;&lt;td&gt;-10796&lt;/td&gt;&lt;td&gt;-2528&lt;/td&gt;&lt;td&gt;29861&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70500&lt;/td&gt;&lt;td&gt;-100&lt;/td&gt;&lt;td&gt;-0.14&lt;/td&gt;&lt;td&gt;11159589&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;10&lt;/td&gt;&lt;td&gt;20211108&lt;/td&gt;&lt;td&gt;714776&lt;/td&gt;&lt;td&gt;-628399&lt;/td&gt;&lt;td&gt;-89168&lt;/td&gt;&lt;td&gt;233239&lt;/td&gt;&lt;td&gt;23127&lt;/td&gt;&lt;td&gt;38912&lt;/td&gt;&lt;td&gt;7130&lt;/td&gt;&lt;td&gt;103&lt;/td&gt;&lt;td&gt;-384412&lt;/td&gt;&lt;td&gt;855&lt;/td&gt;&lt;td&gt;1936&lt;/td&gt;&lt;td&gt;-7267&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70600&lt;/td&gt;&lt;td&gt;400&lt;/td&gt;&lt;td&gt;0.57&lt;/td&gt;&lt;td&gt;11121981&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;11&lt;/td&gt;&lt;td&gt;20211105&lt;/td&gt;&lt;td&gt;2087811&lt;/td&gt;&lt;td&gt;-1174569&lt;/td&gt;&lt;td&gt;-905068&lt;/td&gt;&lt;td&gt;-452144&lt;/td&gt;&lt;td&gt;158763&lt;/td&gt;&lt;td&gt;28084&lt;/td&gt;&lt;td&gt;2288&lt;/td&gt;&lt;td&gt;-682&lt;/td&gt;&lt;td&gt;-633973&lt;/td&gt;&lt;td&gt;-11957&lt;/td&gt;&lt;td&gt;3783&lt;/td&gt;&lt;td&gt;-7404&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70200&lt;/td&gt;&lt;td&gt;-400&lt;/td&gt;&lt;td&gt;-0.57&lt;/td&gt;&lt;td&gt;12667743&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;12&lt;/td&gt;&lt;td&gt;20211104&lt;/td&gt;&lt;td&gt;-1743969&lt;/td&gt;&lt;td&gt;-80764&lt;/td&gt;&lt;td&gt;1947030&lt;/td&gt;&lt;td&gt;1874492&lt;/td&gt;&lt;td&gt;201770&lt;/td&gt;&lt;td&gt;-16178&lt;/td&gt;&lt;td&gt;3000&lt;/td&gt;&lt;td&gt;-196&lt;/td&gt;&lt;td&gt;-190245&lt;/td&gt;&lt;td&gt;-119787&lt;/td&gt;&lt;td&gt;-2510&lt;/td&gt;&lt;td&gt;74387&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70600&lt;/td&gt;&lt;td&gt;200&lt;/td&gt;&lt;td&gt;0.28&lt;/td&gt;&lt;td&gt;11818987&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;13&lt;/td&gt;&lt;td&gt;20211103&lt;/td&gt;&lt;td&gt;3748000&lt;/td&gt;&lt;td&gt;-1032459&lt;/td&gt;&lt;td&gt;-2789497&lt;/td&gt;&lt;td&gt;-2145003&lt;/td&gt;&lt;td&gt;-97809&lt;/td&gt;&lt;td&gt;-8839&lt;/td&gt;&lt;td&gt;3000&lt;/td&gt;&lt;td&gt;4247&lt;/td&gt;&lt;td&gt;-300074&lt;/td&gt;&lt;td&gt;72239&lt;/td&gt;&lt;td&gt;1717&lt;/td&gt;&lt;td&gt;-245019&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70400&lt;/td&gt;&lt;td&gt;-1100&lt;/td&gt;&lt;td&gt;-1.54&lt;/td&gt;&lt;td&gt;12770428&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;14&lt;/td&gt;&lt;td&gt;20211102&lt;/td&gt;&lt;td&gt;-5644694&lt;/td&gt;&lt;td&gt;2043624&lt;/td&gt;&lt;td&gt;3621076&lt;/td&gt;&lt;td&gt;3253414&lt;/td&gt;&lt;td&gt;-151433&lt;/td&gt;&lt;td&gt;150916&lt;/td&gt;&lt;td&gt;223&lt;/td&gt;&lt;td&gt;348&lt;/td&gt;&lt;td&gt;113959&lt;/td&gt;&lt;td&gt;-2851&lt;/td&gt;&lt;td&gt;-17155&lt;/td&gt;&lt;td&gt;253649&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;71500&lt;/td&gt;&lt;td&gt;1600&lt;/td&gt;&lt;td&gt;2.29&lt;/td&gt;&lt;td&gt;16812570&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;15&lt;/td&gt;&lt;td&gt;20211101&lt;/td&gt;&lt;td&gt;-1367521&lt;/td&gt;&lt;td&gt;-1651736&lt;/td&gt;&lt;td&gt;3003169&lt;/td&gt;&lt;td&gt;2827678&lt;/td&gt;&lt;td&gt;65072&lt;/td&gt;&lt;td&gt;38774&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;-7314&lt;/td&gt;&lt;td&gt;-75387&lt;/td&gt;&lt;td&gt;13386&lt;/td&gt;&lt;td&gt;2702&lt;/td&gt;&lt;td&gt;154344&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;69900&lt;/td&gt;&lt;td&gt;100&lt;/td&gt;&lt;td&gt;0.14&lt;/td&gt;&lt;td&gt;11503729&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;16&lt;/td&gt;&lt;td&gt;20211029&lt;/td&gt;&lt;td&gt;4050479&lt;/td&gt;&lt;td&gt;-1812320&lt;/td&gt;&lt;td&gt;-2365662&lt;/td&gt;&lt;td&gt;-1496831&lt;/td&gt;&lt;td&gt;66131&lt;/td&gt;&lt;td&gt;124596&lt;/td&gt;&lt;td&gt;18242&lt;/td&gt;&lt;td&gt;5201&lt;/td&gt;&lt;td&gt;-1103470&lt;/td&gt;&lt;td&gt;111608&lt;/td&gt;&lt;td&gt;15895&lt;/td&gt;&lt;td&gt;20469&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;69800&lt;/td&gt;&lt;td&gt;-900&lt;/td&gt;&lt;td&gt;-1.27&lt;/td&gt;&lt;td&gt;17016151&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;17&lt;/td&gt;&lt;td&gt;20211028&lt;/td&gt;&lt;td&gt;899791&lt;/td&gt;&lt;td&gt;-2432885&lt;/td&gt;&lt;td&gt;1281744&lt;/td&gt;&lt;td&gt;98960&lt;/td&gt;&lt;td&gt;17371&lt;/td&gt;&lt;td&gt;446463&lt;/td&gt;&lt;td&gt;-5311&lt;/td&gt;&lt;td&gt;2738&lt;/td&gt;&lt;td&gt;200349&lt;/td&gt;&lt;td&gt;253867&lt;/td&gt;&lt;td&gt;-2517&lt;/td&gt;&lt;td&gt;521174&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70700&lt;/td&gt;&lt;td&gt;600&lt;/td&gt;&lt;td&gt;0.86&lt;/td&gt;&lt;td&gt;20644902&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;18&lt;/td&gt;&lt;td&gt;20211027&lt;/td&gt;&lt;td&gt;3080455&lt;/td&gt;&lt;td&gt;-2124585&lt;/td&gt;&lt;td&gt;-1005822&lt;/td&gt;&lt;td&gt;-622428&lt;/td&gt;&lt;td&gt;-28520&lt;/td&gt;&lt;td&gt;-4796&lt;/td&gt;&lt;td&gt;3894&lt;/td&gt;&lt;td&gt;-436&lt;/td&gt;&lt;td&gt;-354458&lt;/td&gt;&lt;td&gt;34143&lt;/td&gt;&lt;td&gt;15809&lt;/td&gt;&lt;td&gt;922&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70100&lt;/td&gt;&lt;td&gt;-1000&lt;/td&gt;&lt;td&gt;-1.41&lt;/td&gt;&lt;td&gt;10295316&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;19&lt;/td&gt;&lt;td&gt;20211026&lt;/td&gt;&lt;td&gt;-1247398&lt;/td&gt;&lt;td&gt;-551563&lt;/td&gt;&lt;td&gt;1812123&lt;/td&gt;&lt;td&gt;1501865&lt;/td&gt;&lt;td&gt;-3643&lt;/td&gt;&lt;td&gt;78012&lt;/td&gt;&lt;td&gt;7236&lt;/td&gt;&lt;td&gt;757&lt;/td&gt;&lt;td&gt;96060&lt;/td&gt;&lt;td&gt;-16422&lt;/td&gt;&lt;td&gt;3260&lt;/td&gt;&lt;td&gt;131836&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;71100&lt;/td&gt;&lt;td&gt;900&lt;/td&gt;&lt;td&gt;1.28&lt;/td&gt;&lt;td&gt;10528252&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20&lt;/td&gt;&lt;td&gt;20211025&lt;/td&gt;&lt;td&gt;582794&lt;/td&gt;&lt;td&gt;-1599446&lt;/td&gt;&lt;td&gt;988462&lt;/td&gt;&lt;td&gt;1110489&lt;/td&gt;&lt;td&gt;17838&lt;/td&gt;&lt;td&gt;8699&lt;/td&gt;&lt;td&gt;-1410&lt;/td&gt;&lt;td&gt;547&lt;/td&gt;&lt;td&gt;-182522&lt;/td&gt;&lt;td&gt;30985&lt;/td&gt;&lt;td&gt;-2795&lt;/td&gt;&lt;td&gt;34821&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70200&lt;/td&gt;&lt;td&gt;-200&lt;/td&gt;&lt;td&gt;-0.28&lt;/td&gt;&lt;td&gt;10029621&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;21&lt;/td&gt;&lt;td&gt;20211022&lt;/td&gt;&lt;td&gt;-644269&lt;/td&gt;&lt;td&gt;-128538&lt;/td&gt;&lt;td&gt;762404&lt;/td&gt;&lt;td&gt;1215268&lt;/td&gt;&lt;td&gt;2445&lt;/td&gt;&lt;td&gt;-40105&lt;/td&gt;&lt;td&gt;-682&lt;/td&gt;&lt;td&gt;-167&lt;/td&gt;&lt;td&gt;-452150&lt;/td&gt;&lt;td&gt;12542&lt;/td&gt;&lt;td&gt;-2139&lt;/td&gt;&lt;td&gt;37795&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70400&lt;/td&gt;&lt;td&gt;200&lt;/td&gt;&lt;td&gt;0.28&lt;/td&gt;&lt;td&gt;8395448&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;22&lt;/td&gt;&lt;td&gt;20211021&lt;/td&gt;&lt;td&gt;203876&lt;/td&gt;&lt;td&gt;109754&lt;/td&gt;&lt;td&gt;-197734&lt;/td&gt;&lt;td&gt;242202&lt;/td&gt;&lt;td&gt;-125548&lt;/td&gt;&lt;td&gt;-30478&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;-13079&lt;/td&gt;&lt;td&gt;-275758&lt;/td&gt;&lt;td&gt;-116542&lt;/td&gt;&lt;td&gt;646&lt;/td&gt;&lt;td&gt;4927&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70200&lt;/td&gt;&lt;td&gt;-100&lt;/td&gt;&lt;td&gt;-0.14&lt;/td&gt;&lt;td&gt;10891094&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;23&lt;/td&gt;&lt;td&gt;20211020&lt;/td&gt;&lt;td&gt;556532&lt;/td&gt;&lt;td&gt;256311&lt;/td&gt;&lt;td&gt;-829527&lt;/td&gt;&lt;td&gt;-125516&lt;/td&gt;&lt;td&gt;-131592&lt;/td&gt;&lt;td&gt;-86437&lt;/td&gt;&lt;td&gt;200&lt;/td&gt;&lt;td&gt;-558&lt;/td&gt;&lt;td&gt;-486593&lt;/td&gt;&lt;td&gt;8664&lt;/td&gt;&lt;td&gt;8020&lt;/td&gt;&lt;td&gt;969&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70300&lt;/td&gt;&lt;td&gt;-300&lt;/td&gt;&lt;td&gt;-0.42&lt;/td&gt;&lt;td&gt;10151638&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;24&lt;/td&gt;&lt;td&gt;20211019&lt;/td&gt;&lt;td&gt;-504814&lt;/td&gt;&lt;td&gt;-431790&lt;/td&gt;&lt;td&gt;910091&lt;/td&gt;&lt;td&gt;1429098&lt;/td&gt;&lt;td&gt;16262&lt;/td&gt;&lt;td&gt;-61830&lt;/td&gt;&lt;td&gt;1361&lt;/td&gt;&lt;td&gt;167&lt;/td&gt;&lt;td&gt;-432527&lt;/td&gt;&lt;td&gt;33963&lt;/td&gt;&lt;td&gt;-7450&lt;/td&gt;&lt;td&gt;-42440&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70600&lt;/td&gt;&lt;td&gt;400&lt;/td&gt;&lt;td&gt;0.57&lt;/td&gt;&lt;td&gt;9507991&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;25&lt;/td&gt;&lt;td&gt;20211018&lt;/td&gt;&lt;td&gt;771890&lt;/td&gt;&lt;td&gt;1303614&lt;/td&gt;&lt;td&gt;-2117009&lt;/td&gt;&lt;td&gt;-1564134&lt;/td&gt;&lt;td&gt;-42320&lt;/td&gt;&lt;td&gt;-17082&lt;/td&gt;&lt;td&gt;-329&lt;/td&gt;&lt;td&gt;833&lt;/td&gt;&lt;td&gt;-477196&lt;/td&gt;&lt;td&gt;30584&lt;/td&gt;&lt;td&gt;10921&lt;/td&gt;&lt;td&gt;-16781&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70200&lt;/td&gt;&lt;td&gt;100&lt;/td&gt;&lt;td&gt;0.14&lt;/td&gt;&lt;td&gt;13486391&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;26&lt;/td&gt;&lt;td&gt;20211015&lt;/td&gt;&lt;td&gt;822742&lt;/td&gt;&lt;td&gt;-1376104&lt;/td&gt;&lt;td&gt;456288&lt;/td&gt;&lt;td&gt;626433&lt;/td&gt;&lt;td&gt;-60458&lt;/td&gt;&lt;td&gt;99645&lt;/td&gt;&lt;td&gt;21339&lt;/td&gt;&lt;td&gt;242&lt;/td&gt;&lt;td&gt;-312400&lt;/td&gt;&lt;td&gt;84238&lt;/td&gt;&lt;td&gt;12836&lt;/td&gt;&lt;td&gt;81487&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;70100&lt;/td&gt;&lt;td&gt;700&lt;/td&gt;&lt;td&gt;1.01&lt;/td&gt;&lt;td&gt;18051612&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;27&lt;/td&gt;&lt;td&gt;20211014&lt;/td&gt;&lt;td&gt;2011163&lt;/td&gt;&lt;td&gt;-3787173&lt;/td&gt;&lt;td&gt;1696662&lt;/td&gt;&lt;td&gt;1993635&lt;/td&gt;&lt;td&gt;-93476&lt;/td&gt;&lt;td&gt;76957&lt;/td&gt;&lt;td&gt;-20&lt;/td&gt;&lt;td&gt;10524&lt;/td&gt;&lt;td&gt;-236463&lt;/td&gt;&lt;td&gt;62704&lt;/td&gt;&lt;td&gt;16644&lt;/td&gt;&lt;td&gt;-54495&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;69400&lt;/td&gt;&lt;td&gt;600&lt;/td&gt;&lt;td&gt;0.87&lt;/td&gt;&lt;td&gt;19520641&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;28&lt;/td&gt;&lt;td&gt;20211013&lt;/td&gt;&lt;td&gt;2224620&lt;/td&gt;&lt;td&gt;-5271845&lt;/td&gt;&lt;td&gt;2725596&lt;/td&gt;&lt;td&gt;2539887&lt;/td&gt;&lt;td&gt;-100166&lt;/td&gt;&lt;td&gt;33871&lt;/td&gt;&lt;td&gt;16584&lt;/td&gt;&lt;td&gt;-7544&lt;/td&gt;&lt;td&gt;20055&lt;/td&gt;&lt;td&gt;311767&lt;/td&gt;&lt;td&gt;9862&lt;/td&gt;&lt;td&gt;222909&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;68800&lt;/td&gt;&lt;td&gt;-200&lt;/td&gt;&lt;td&gt;-0.29&lt;/td&gt;&lt;td&gt;24172015&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;29&lt;/td&gt;&lt;td&gt;20211012&lt;/td&gt;&lt;td&gt;12155071&lt;/td&gt;&lt;td&gt;-11004329&lt;/td&gt;&lt;td&gt;-1421202&lt;/td&gt;&lt;td&gt;-907809&lt;/td&gt;&lt;td&gt;-230050&lt;/td&gt;&lt;td&gt;-178155&lt;/td&gt;&lt;td&gt;15394&lt;/td&gt;&lt;td&gt;-60991&lt;/td&gt;&lt;td&gt;12399&lt;/td&gt;&lt;td&gt;248713&lt;/td&gt;&lt;td&gt;21747&lt;/td&gt;&lt;td&gt;-71990&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;69000&lt;/td&gt;&lt;td&gt;-2500&lt;/td&gt;&lt;td&gt;-3.50&lt;/td&gt;&lt;td&gt;31001484&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;30&lt;/td&gt;&lt;td&gt;20211008&lt;/td&gt;&lt;td&gt;2612855&lt;/td&gt;&lt;td&gt;319900&lt;/td&gt;&lt;td&gt;-2923031&lt;/td&gt;&lt;td&gt;-1565044&lt;/td&gt;&lt;td&gt;-88549&lt;/td&gt;&lt;td&gt;42805&lt;/td&gt;&lt;td&gt;3341&lt;/td&gt;&lt;td&gt;-8642&lt;/td&gt;&lt;td&gt;-1269657&lt;/td&gt;&lt;td&gt;-10175&lt;/td&gt;&lt;td&gt;451&lt;/td&gt;&lt;td&gt;-37285&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;71500&lt;/td&gt;&lt;td&gt;-100&lt;/td&gt;&lt;td&gt;-0.14&lt;/td&gt;&lt;td&gt;14043287&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;31&lt;/td&gt;&lt;td&gt;20211007&lt;/td&gt;&lt;td&gt;1266151&lt;/td&gt;&lt;td&gt;-2661506&lt;/td&gt;&lt;td&gt;1391358&lt;/td&gt;&lt;td&gt;1821608&lt;/td&gt;&lt;td&gt;-90182&lt;/td&gt;&lt;td&gt;69692&lt;/td&gt;&lt;td&gt;-1689&lt;/td&gt;&lt;td&gt;5770&lt;/td&gt;&lt;td&gt;-407085&lt;/td&gt;&lt;td&gt;-2507&lt;/td&gt;&lt;td&gt;6504&lt;/td&gt;&lt;td&gt;-6756&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;71600&lt;/td&gt;&lt;td&gt;300&lt;/td&gt;&lt;td&gt;0.42&lt;/td&gt;&lt;td&gt;13683532&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;32&lt;/td&gt;&lt;td&gt;20211006&lt;/td&gt;&lt;td&gt;1374960&lt;/td&gt;&lt;td&gt;-1070439&lt;/td&gt;&lt;td&gt;-342467&lt;/td&gt;&lt;td&gt;244117&lt;/td&gt;&lt;td&gt;-24935&lt;/td&gt;&lt;td&gt;102550&lt;/td&gt;&lt;td&gt;1669&lt;/td&gt;&lt;td&gt;924&lt;/td&gt;&lt;td&gt;-599759&lt;/td&gt;&lt;td&gt;41544&lt;/td&gt;&lt;td&gt;-3598&lt;/td&gt;&lt;td&gt;-67033&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;71300&lt;/td&gt;&lt;td&gt;-900&lt;/td&gt;&lt;td&gt;-1.25&lt;/td&gt;&lt;td&gt;18956962&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;33&lt;/td&gt;&lt;td&gt;20211005&lt;/td&gt;&lt;td&gt;1783237&lt;/td&gt;&lt;td&gt;-3025584&lt;/td&gt;&lt;td&gt;1255911&lt;/td&gt;&lt;td&gt;1173732&lt;/td&gt;&lt;td&gt;-5740&lt;/td&gt;&lt;td&gt;62289&lt;/td&gt;&lt;td&gt;-47544&lt;/td&gt;&lt;td&gt;-9339&lt;/td&gt;&lt;td&gt;104473&lt;/td&gt;&lt;td&gt;-18889&lt;/td&gt;&lt;td&gt;5325&lt;/td&gt;&lt;td&gt;-21960&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;72200&lt;/td&gt;&lt;td&gt;-1000&lt;/td&gt;&lt;td&gt;-1.37&lt;/td&gt;&lt;td&gt;24013921&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</content:encoded><category>퀀티랩</category><category>대신증권</category><category>크레온</category><category>투자자</category><category>매매동향</category><category>수급</category></item><item><title>KRX에서 공매도 데이터 수집하기</title><link>https://blog.quantylab.com/blog/2021-11-05_krx_short/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-11-05_krx_short/</guid><pubDate>Fri, 05 Nov 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;이번 포스트에서는 KRX에서 &lt;code dir=&quot;auto&quot;&gt;개별종목 공매도 거래&lt;/code&gt; 및 &lt;code dir=&quot;auto&quot;&gt;개별종목 공매도 잔고&lt;/code&gt; 데이터를 파이썬으로 수집하는 방법을 다룹니다.&lt;/p&gt;
&lt;p&gt;필요한 파이썬 라이브러리는 다음과 같습니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;pip install requests&lt;/li&gt;
&lt;li&gt;pip install numpy&lt;/li&gt;
&lt;li&gt;pip install pandas&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;먼저 &lt;a href=&quot;http://data.krx.co.kr/contents/MDC/MAIN/main/index.cmd&quot;&gt;KRX 정보데이터시스템&lt;/a&gt;에서 다음 두 메뉴를 확인해 주세요.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code dir=&quot;auto&quot;&gt;통계&lt;/code&gt; / &lt;code dir=&quot;auto&quot;&gt;공매도 통계&lt;/code&gt; / &lt;code dir=&quot;auto&quot;&gt;공매도 거래&lt;/code&gt; / &lt;code dir=&quot;auto&quot;&gt;개별종목 공매도 거래&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code dir=&quot;auto&quot;&gt;통계&lt;/code&gt; / &lt;code dir=&quot;auto&quot;&gt;공매도 통계&lt;/code&gt; / &lt;code dir=&quot;auto&quot;&gt;공매도 잔고&lt;/code&gt; / &lt;code dir=&quot;auto&quot;&gt;개별종목 공매도 잔고&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;&lt;h3 id=&quot;개별종목-공매도-거래-데이터-수집하기&quot;&gt;개별종목 공매도 거래 데이터 수집하기&lt;/h3&gt;&lt;/div&gt;
&lt;p&gt;먼저 &lt;code dir=&quot;auto&quot;&gt;개별종목 공매도 거래&lt;/code&gt; 데이터를 받아오겠습니다. 크롬이나 웨일 브라우저에서 &lt;code dir=&quot;auto&quot;&gt;F12&lt;/code&gt; 키를 눌러 개발자 도구를 열어줍니다. 그리고 다음과 같이 &lt;code dir=&quot;auto&quot;&gt;Network&lt;/code&gt; 탭에서 &lt;code dir=&quot;auto&quot;&gt;Fetch/XHR&lt;/code&gt; 하위 탭을 확인합니다. 그리고 &lt;code dir=&quot;auto&quot;&gt;조회&lt;/code&gt; 버튼을 다시 누르면 아래에 &lt;code dir=&quot;auto&quot;&gt;getJsonData.cmd&lt;/code&gt; 내역이 뜨고 여기서 요청 정보를 확인할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;1&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1920&quot; height=&quot;1080&quot; src=&quot;https://blog.quantylab.com/_astro/1.DkCln2zG_201ekt.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;여기서 Request URL, Request Headers, Form Data를 확인합니다. 다음과 같이 확인한 정보로 요청 준비를 합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;url &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;http://data.krx.co.kr/comm/bldAttendant/getJsonData.cmd&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;headers &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Accept&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;application/json, text/javascript, */*; q=0.01&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Accept-Encoding&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;gzip, deflate&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Accept-Language&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;ko-KR,ko;q=0.9,en-US;q=0.8,en;q=0.7&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Connection&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;keep-alive&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Content-Type&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;application/x-www-form-urlencoded; charset=UTF-8&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Host&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;data.krx.co.kr&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Origin&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;http://data.krx.co.kr&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Referer&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;http://data.krx.co.kr/contents/MDC/MDI/mdiLoader/index.cmd?menuId=MDC0203&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;User-Agent&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.118 Whale/2.11.126.23 Safari/537.36&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;X-Requested-With&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;XMLHttpRequest&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bld&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;dbms/MDC/STAT/srt/MDCSTAT30101&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;searchType&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;mktId&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;STK&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;secugrpId&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;STMFRTSCIFDRFS&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;secugrpId&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;SRSW&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;secugrpId&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;BC&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;inqCond&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;STMFRTSCIFDRFSSRSWBC&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;trdDd&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;20211105&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;share&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;money&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;csvxls_isNo&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;false&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이렇게 준비한 url, headers, data로 requests 요청을 보냅니다. Request Method를 보면 POST를 확인할 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; requests&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;res &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; requests.&lt;/span&gt;&lt;span&gt;post&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;url&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;headers&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;headers&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;data&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;data&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;res&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;Output: &amp;#x3C;Response [200]&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;Status Code가 200으로 요청이 성공했음을 확인했습니다. 다음으로 받아온 데이터를 DataFrame으로 저장합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; json&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;short_list &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; json.&lt;/span&gt;&lt;span&gt;loads&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;res.text&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;OutBlock_1&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; pandas &lt;/span&gt;&lt;span&gt;as&lt;/span&gt;&lt;span&gt; pd&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;DataFrame&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;short_list&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df.columns &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;종목코드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;종목명&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;증권구분&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;공매도거래량&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;공매도거래량업틱룰&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;공매도거래량업틱룰예외&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;거래량&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;거래량비중&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;공매도거래대금&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;공매도거래대금업틱룰&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;공매도거래대금업틱룰예외&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;거래대금&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;거래대금비중&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;





































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;index&lt;/th&gt;&lt;th&gt;종목코드&lt;/th&gt;&lt;th&gt;종목명&lt;/th&gt;&lt;th&gt;증권구분&lt;/th&gt;&lt;th&gt;공매도거래량&lt;/th&gt;&lt;th&gt;공매도거래량업틱룰&lt;/th&gt;&lt;th&gt;공매도거래량업틱룰예외&lt;/th&gt;&lt;th&gt;거래량&lt;/th&gt;&lt;th&gt;거래량비중&lt;/th&gt;&lt;th&gt;공매도거래대금&lt;/th&gt;&lt;th&gt;공매도거래대금업틱룰&lt;/th&gt;&lt;th&gt;공매도거래대금업틱룰예외&lt;/th&gt;&lt;th&gt;거래대금&lt;/th&gt;&lt;th&gt;거래대금비중&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;095570&lt;/td&gt;&lt;td&gt;AJ네트웍스&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;59,739&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;335,609,280&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;006840&lt;/td&gt;&lt;td&gt;AK홀딩스&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;20,225&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;508,366,000&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;027410&lt;/td&gt;&lt;td&gt;BGF&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;147,290&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;147,290&lt;/td&gt;&lt;td&gt;8,276,904&lt;/td&gt;&lt;td&gt;1.78&lt;/td&gt;&lt;td&gt;959,076,130&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;959,076,130&lt;/td&gt;&lt;td&gt;54,013,149,770&lt;/td&gt;&lt;td&gt;1.78&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;282330&lt;/td&gt;&lt;td&gt;BGF리테일&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;1,480&lt;/td&gt;&lt;td&gt;1,402&lt;/td&gt;&lt;td&gt;78&lt;/td&gt;&lt;td&gt;22,489&lt;/td&gt;&lt;td&gt;6.58&lt;/td&gt;&lt;td&gt;244,731,000&lt;/td&gt;&lt;td&gt;231,828,500&lt;/td&gt;&lt;td&gt;12,902,500&lt;/td&gt;&lt;td&gt;3,734,658,000&lt;/td&gt;&lt;td&gt;6.55&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;138930&lt;/td&gt;&lt;td&gt;BNK금융지주&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;54,962&lt;/td&gt;&lt;td&gt;54,962&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;2,228,770&lt;/td&gt;&lt;td&gt;2.47&lt;/td&gt;&lt;td&gt;463,644,520&lt;/td&gt;&lt;td&gt;463,644,520&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;18,819,972,080&lt;/td&gt;&lt;td&gt;2.46&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1028&lt;/td&gt;&lt;td&gt;069260&lt;/td&gt;&lt;td&gt;휴켐스&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;72,498&lt;/td&gt;&lt;td&gt;72,073&lt;/td&gt;&lt;td&gt;425&lt;/td&gt;&lt;td&gt;1,137,325&lt;/td&gt;&lt;td&gt;6.37&lt;/td&gt;&lt;td&gt;1,919,680,550&lt;/td&gt;&lt;td&gt;1,908,522,050&lt;/td&gt;&lt;td&gt;11,158,500&lt;/td&gt;&lt;td&gt;30,290,522,850&lt;/td&gt;&lt;td&gt;6.34&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1029&lt;/td&gt;&lt;td&gt;000540&lt;/td&gt;&lt;td&gt;흥국화재&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;83,281&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;318,332,140&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1030&lt;/td&gt;&lt;td&gt;000547&lt;/td&gt;&lt;td&gt;흥국화재2우B&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;192&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;5,323,000&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1031&lt;/td&gt;&lt;td&gt;000545&lt;/td&gt;&lt;td&gt;흥국화재우&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;988&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;8,514,770&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1032&lt;/td&gt;&lt;td&gt;003280&lt;/td&gt;&lt;td&gt;흥아해운&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;1,114,059&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;3,560,429,545&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;&lt;code dir=&quot;auto&quot;&gt;거래량비중&lt;/code&gt;으로 내림차순 정렬을 해보면 공매도 비중이 높은 종목 순위를 확인할 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df.&lt;/span&gt;&lt;span&gt;sort_values&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;거래량비중&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ascending&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;False&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;





































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;index&lt;/th&gt;&lt;th&gt;종목코드&lt;/th&gt;&lt;th&gt;종목명&lt;/th&gt;&lt;th&gt;증권구분&lt;/th&gt;&lt;th&gt;공매도거래량&lt;/th&gt;&lt;th&gt;공매도거래량업틱룰&lt;/th&gt;&lt;th&gt;공매도거래량업틱룰예외&lt;/th&gt;&lt;th&gt;거래량&lt;/th&gt;&lt;th&gt;거래량비중&lt;/th&gt;&lt;th&gt;공매도거래대금&lt;/th&gt;&lt;th&gt;공매도거래대금업틱룰&lt;/th&gt;&lt;th&gt;공매도거래대금업틱룰예외&lt;/th&gt;&lt;th&gt;거래대금&lt;/th&gt;&lt;th&gt;거래대금비중&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;51&lt;/td&gt;&lt;td&gt;294870&lt;/td&gt;&lt;td&gt;HDC현대산업개발&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;54,935&lt;/td&gt;&lt;td&gt;54,935&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;562,433&lt;/td&gt;&lt;td&gt;9.77&lt;/td&gt;&lt;td&gt;1,353,057,750&lt;/td&gt;&lt;td&gt;1,353,057,750&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;13,880,230,400&lt;/td&gt;&lt;td&gt;9.75&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1004&lt;/td&gt;&lt;td&gt;008770&lt;/td&gt;&lt;td&gt;호텔신라&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;66,040&lt;/td&gt;&lt;td&gt;56,388&lt;/td&gt;&lt;td&gt;9,652&lt;/td&gt;&lt;td&gt;684,458&lt;/td&gt;&lt;td&gt;9.65&lt;/td&gt;&lt;td&gt;5,269,414,800&lt;/td&gt;&lt;td&gt;4,501,247,500&lt;/td&gt;&lt;td&gt;768,167,300&lt;/td&gt;&lt;td&gt;54,557,366,500&lt;/td&gt;&lt;td&gt;9.66&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;800&lt;/td&gt;&lt;td&gt;039490&lt;/td&gt;&lt;td&gt;키움증권&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;4,561&lt;/td&gt;&lt;td&gt;4,071&lt;/td&gt;&lt;td&gt;490&lt;/td&gt;&lt;td&gt;47,299&lt;/td&gt;&lt;td&gt;9.64&lt;/td&gt;&lt;td&gt;484,180,000&lt;/td&gt;&lt;td&gt;432,296,500&lt;/td&gt;&lt;td&gt;51,883,500&lt;/td&gt;&lt;td&gt;5,018,881,500&lt;/td&gt;&lt;td&gt;9.65&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;813&lt;/td&gt;&lt;td&gt;003240&lt;/td&gt;&lt;td&gt;태광산업&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;67&lt;/td&gt;&lt;td&gt;67&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;697&lt;/td&gt;&lt;td&gt;9.61&lt;/td&gt;&lt;td&gt;66,460,000&lt;/td&gt;&lt;td&gt;66,460,000&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;692,149,000&lt;/td&gt;&lt;td&gt;9.60&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;940&lt;/td&gt;&lt;td&gt;180640&lt;/td&gt;&lt;td&gt;한진칼&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;5,587&lt;/td&gt;&lt;td&gt;4,961&lt;/td&gt;&lt;td&gt;626&lt;/td&gt;&lt;td&gt;58,832&lt;/td&gt;&lt;td&gt;9.50&lt;/td&gt;&lt;td&gt;315,127,600&lt;/td&gt;&lt;td&gt;279,921,100&lt;/td&gt;&lt;td&gt;35,206,500&lt;/td&gt;&lt;td&gt;3,317,193,800&lt;/td&gt;&lt;td&gt;9.50&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;433&lt;/td&gt;&lt;td&gt;007210&lt;/td&gt;&lt;td&gt;벽산&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;3,489,885&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;8,060&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;8,060&lt;/td&gt;&lt;td&gt;14,442,649,335&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;434&lt;/td&gt;&lt;td&gt;002760&lt;/td&gt;&lt;td&gt;보락&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;230,608&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;490,745,865&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;436&lt;/td&gt;&lt;td&gt;000890&lt;/td&gt;&lt;td&gt;보해양조&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;1,282,073&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;1,233,822,775&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;438&lt;/td&gt;&lt;td&gt;001270&lt;/td&gt;&lt;td&gt;부국증권&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;6,828&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;166,036,950&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1032&lt;/td&gt;&lt;td&gt;003280&lt;/td&gt;&lt;td&gt;흥아해운&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;1,114,059&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;3,560,429,545&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;그런데 조금 이상합니다. 거래량비중이 생각보다 적고 9.XX 값이 상위에 랭크됩니다. 이는 데이터 형식이 문자열(str)로 되어 있을 때 자주 겪는 문제입니다. 다음과 같이 거래량비중 컬럼의 데이터 형식을 float로 변경합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;거래량비중&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;거래량비중&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;astype&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;float&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;다시 정렬 결과를 확인하면 다음과 같이 제대로된 랭킹이 된 것을 확인할 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df.&lt;/span&gt;&lt;span&gt;sort_values&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;거래량비중&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ascending&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;False&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;





































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;index&lt;/th&gt;&lt;th&gt;종목코드&lt;/th&gt;&lt;th&gt;종목명&lt;/th&gt;&lt;th&gt;증권구분&lt;/th&gt;&lt;th&gt;공매도거래량&lt;/th&gt;&lt;th&gt;공매도거래량업틱룰&lt;/th&gt;&lt;th&gt;공매도거래량업틱룰예외&lt;/th&gt;&lt;th&gt;거래량&lt;/th&gt;&lt;th&gt;거래량비중&lt;/th&gt;&lt;th&gt;공매도거래대금&lt;/th&gt;&lt;th&gt;공매도거래대금업틱룰&lt;/th&gt;&lt;th&gt;공매도거래대금업틱룰예외&lt;/th&gt;&lt;th&gt;거래대금&lt;/th&gt;&lt;th&gt;거래대금비중&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;539&lt;/td&gt;&lt;td&gt;068270&lt;/td&gt;&lt;td&gt;셀트리온&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;150,827&lt;/td&gt;&lt;td&gt;133,030&lt;/td&gt;&lt;td&gt;17,797&lt;/td&gt;&lt;td&gt;488,779&lt;/td&gt;&lt;td&gt;30.86&lt;/td&gt;&lt;td&gt;31,363,423,000&lt;/td&gt;&lt;td&gt;27,715,592,500&lt;/td&gt;&lt;td&gt;3,647,830,500&lt;/td&gt;&lt;td&gt;101,280,970,500&lt;/td&gt;&lt;td&gt;30.97&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1024&lt;/td&gt;&lt;td&gt;081660&lt;/td&gt;&lt;td&gt;휠라홀딩스&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;161,370&lt;/td&gt;&lt;td&gt;160,878&lt;/td&gt;&lt;td&gt;492&lt;/td&gt;&lt;td&gt;665,890&lt;/td&gt;&lt;td&gt;24.23&lt;/td&gt;&lt;td&gt;5,958,633,450&lt;/td&gt;&lt;td&gt;5,940,402,900&lt;/td&gt;&lt;td&gt;18,230,550&lt;/td&gt;&lt;td&gt;24,692,808,600&lt;/td&gt;&lt;td&gt;24.13&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;673&lt;/td&gt;&lt;td&gt;214320&lt;/td&gt;&lt;td&gt;이노션&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;6,994&lt;/td&gt;&lt;td&gt;6,856&lt;/td&gt;&lt;td&gt;138&lt;/td&gt;&lt;td&gt;30,810&lt;/td&gt;&lt;td&gt;22.70&lt;/td&gt;&lt;td&gt;403,284,700&lt;/td&gt;&lt;td&gt;395,322,100&lt;/td&gt;&lt;td&gt;7,962,600&lt;/td&gt;&lt;td&gt;1,776,867,000&lt;/td&gt;&lt;td&gt;22.70&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;382&lt;/td&gt;&lt;td&gt;011170&lt;/td&gt;&lt;td&gt;롯데케미칼&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;45,956&lt;/td&gt;&lt;td&gt;34,176&lt;/td&gt;&lt;td&gt;11,780&lt;/td&gt;&lt;td&gt;206,116&lt;/td&gt;&lt;td&gt;22.30&lt;/td&gt;&lt;td&gt;10,110,596,000&lt;/td&gt;&lt;td&gt;7,520,623,000&lt;/td&gt;&lt;td&gt;2,589,973,000&lt;/td&gt;&lt;td&gt;45,414,691,500&lt;/td&gt;&lt;td&gt;22.26&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;240&lt;/td&gt;&lt;td&gt;002350&lt;/td&gt;&lt;td&gt;넥센타이어&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;27,712&lt;/td&gt;&lt;td&gt;25,176&lt;/td&gt;&lt;td&gt;2,536&lt;/td&gt;&lt;td&gt;125,204&lt;/td&gt;&lt;td&gt;22.13&lt;/td&gt;&lt;td&gt;208,348,430&lt;/td&gt;&lt;td&gt;189,322,060&lt;/td&gt;&lt;td&gt;19,026,370&lt;/td&gt;&lt;td&gt;941,065,640&lt;/td&gt;&lt;td&gt;22.14&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;433&lt;/td&gt;&lt;td&gt;007210&lt;/td&gt;&lt;td&gt;벽산&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;3,489,885&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;8,060&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;8,060&lt;/td&gt;&lt;td&gt;14,442,649,335&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;434&lt;/td&gt;&lt;td&gt;002760&lt;/td&gt;&lt;td&gt;보락&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;230,608&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;490,745,865&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;436&lt;/td&gt;&lt;td&gt;000890&lt;/td&gt;&lt;td&gt;보해양조&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;1,282,073&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;1,233,822,775&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;438&lt;/td&gt;&lt;td&gt;001270&lt;/td&gt;&lt;td&gt;부국증권&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;6,828&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;166,036,950&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1032&lt;/td&gt;&lt;td&gt;003280&lt;/td&gt;&lt;td&gt;흥아해운&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;1,114,059&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;3,560,429,545&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;div&gt;&lt;h3 id=&quot;개별종목-공매도-잔고-데이터-수집하기&quot;&gt;개별종목 공매도 잔고 데이터 수집하기&lt;/h3&gt;&lt;/div&gt;
&lt;p&gt;이제 &lt;code dir=&quot;auto&quot;&gt;개별종목 공매도 잔고&lt;/code&gt; 데이터를 받아 보겠습니다. 비슷하게 요청 준비를 합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;url &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;http://data.krx.co.kr/comm/bldAttendant/getJsonData.cmd&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;headers &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Accept&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;application/json, text/javascript, */*; q=0.01&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Accept-Language&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;ko-KR,ko;q=0.9,en-US;q=0.8,en;q=0.7&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Content-Type&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;application/x-www-form-urlencoded; charset=UTF-8&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Origin&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;http://data.krx.co.kr&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Referer&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;http://data.krx.co.kr/contents/MDC/MDI/mdiLoader/index.cmd?menuId=MDC0201&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bld&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;dbms/MDC/STAT/srt/MDCSTAT30501&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;searchType&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;mktTpCd&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;trdDd&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;20211102&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;share&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;money&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;csvxls_isNo&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;false&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;res &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; requests.&lt;/span&gt;&lt;span&gt;post&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;url&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;headers&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;headers&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;data&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;data&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;res&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;Output: &amp;#x3C;Response [200]&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;다음과 같이 받아온 데이터를 DataFrame으로 변환합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_shortbalance &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;DataFrame&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;json.&lt;/span&gt;&lt;span&gt;loads&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;res.text&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;OutBlock_1&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_shortbalance&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;





























































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;index&lt;/th&gt;&lt;th&gt;ISU_CD&lt;/th&gt;&lt;th&gt;ISU_ABBRV&lt;/th&gt;&lt;th&gt;BAL_QTY&lt;/th&gt;&lt;th&gt;LIST_SHRS&lt;/th&gt;&lt;th&gt;BAL_AMT&lt;/th&gt;&lt;th&gt;MKTCAP&lt;/th&gt;&lt;th&gt;BAL_RTO&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;095570&lt;/td&gt;&lt;td&gt;AJ네트웍스&lt;/td&gt;&lt;td&gt;34,255&lt;/td&gt;&lt;td&gt;46,822,295&lt;/td&gt;&lt;td&gt;190,115,250&lt;/td&gt;&lt;td&gt;259,863,737,250&lt;/td&gt;&lt;td&gt;0.07&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;006840&lt;/td&gt;&lt;td&gt;AK홀딩스&lt;/td&gt;&lt;td&gt;4,593&lt;/td&gt;&lt;td&gt;13,247,561&lt;/td&gt;&lt;td&gt;121,484,850&lt;/td&gt;&lt;td&gt;350,397,988,450&lt;/td&gt;&lt;td&gt;0.03&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;027410&lt;/td&gt;&lt;td&gt;BGF&lt;/td&gt;&lt;td&gt;48,440&lt;/td&gt;&lt;td&gt;95,716,791&lt;/td&gt;&lt;td&gt;279,014,400&lt;/td&gt;&lt;td&gt;551,328,716,160&lt;/td&gt;&lt;td&gt;0.05&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;282330&lt;/td&gt;&lt;td&gt;BGF리테일&lt;/td&gt;&lt;td&gt;5,016&lt;/td&gt;&lt;td&gt;17,283,906&lt;/td&gt;&lt;td&gt;825,132,000&lt;/td&gt;&lt;td&gt;2,843,202,537,000&lt;/td&gt;&lt;td&gt;0.03&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;138930&lt;/td&gt;&lt;td&gt;BNK금융지주&lt;/td&gt;&lt;td&gt;524,715&lt;/td&gt;&lt;td&gt;325,935,246&lt;/td&gt;&lt;td&gt;4,601,750,550&lt;/td&gt;&lt;td&gt;2,858,452,107,420&lt;/td&gt;&lt;td&gt;0.16&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;934&lt;/td&gt;&lt;td&gt;069260&lt;/td&gt;&lt;td&gt;휴켐스&lt;/td&gt;&lt;td&gt;953,658&lt;/td&gt;&lt;td&gt;40,878,588&lt;/td&gt;&lt;td&gt;26,320,960,800&lt;/td&gt;&lt;td&gt;1,128,249,028,800&lt;/td&gt;&lt;td&gt;2.33&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;935&lt;/td&gt;&lt;td&gt;000540&lt;/td&gt;&lt;td&gt;흥국화재&lt;/td&gt;&lt;td&gt;33,301&lt;/td&gt;&lt;td&gt;64,242,645&lt;/td&gt;&lt;td&gt;129,540,890&lt;/td&gt;&lt;td&gt;249,903,889,050&lt;/td&gt;&lt;td&gt;0.05&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;936&lt;/td&gt;&lt;td&gt;000547&lt;/td&gt;&lt;td&gt;흥국화재2우B&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;153,600&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;4,331,520,000&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;937&lt;/td&gt;&lt;td&gt;000545&lt;/td&gt;&lt;td&gt;흥국화재우&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;768,000&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;6,673,920,000&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;938&lt;/td&gt;&lt;td&gt;003280&lt;/td&gt;&lt;td&gt;흥아해운&lt;/td&gt;&lt;td&gt;84,187&lt;/td&gt;&lt;td&gt;240,424,899&lt;/td&gt;&lt;td&gt;311,070,965&lt;/td&gt;&lt;td&gt;888,370,001,805&lt;/td&gt;&lt;td&gt;0.04&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_shortbalance.columns &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;종목코드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;종목명&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;공매도잔고수량&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;상장주식수&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;공매도잔고금액&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;시가총액&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;비중&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_shortbalance&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;





























































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;index&lt;/th&gt;&lt;th&gt;종목코드&lt;/th&gt;&lt;th&gt;종목명&lt;/th&gt;&lt;th&gt;공매도잔고수량&lt;/th&gt;&lt;th&gt;상장주식수&lt;/th&gt;&lt;th&gt;공매도잔고금액&lt;/th&gt;&lt;th&gt;시가총액&lt;/th&gt;&lt;th&gt;비중&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;095570&lt;/td&gt;&lt;td&gt;AJ네트웍스&lt;/td&gt;&lt;td&gt;34,255&lt;/td&gt;&lt;td&gt;46,822,295&lt;/td&gt;&lt;td&gt;190,115,250&lt;/td&gt;&lt;td&gt;259,863,737,250&lt;/td&gt;&lt;td&gt;0.07&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;1&lt;/td&gt;&lt;td&gt;006840&lt;/td&gt;&lt;td&gt;AK홀딩스&lt;/td&gt;&lt;td&gt;4,593&lt;/td&gt;&lt;td&gt;13,247,561&lt;/td&gt;&lt;td&gt;121,484,850&lt;/td&gt;&lt;td&gt;350,397,988,450&lt;/td&gt;&lt;td&gt;0.03&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2&lt;/td&gt;&lt;td&gt;027410&lt;/td&gt;&lt;td&gt;BGF&lt;/td&gt;&lt;td&gt;48,440&lt;/td&gt;&lt;td&gt;95,716,791&lt;/td&gt;&lt;td&gt;279,014,400&lt;/td&gt;&lt;td&gt;551,328,716,160&lt;/td&gt;&lt;td&gt;0.05&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;3&lt;/td&gt;&lt;td&gt;282330&lt;/td&gt;&lt;td&gt;BGF리테일&lt;/td&gt;&lt;td&gt;5,016&lt;/td&gt;&lt;td&gt;17,283,906&lt;/td&gt;&lt;td&gt;825,132,000&lt;/td&gt;&lt;td&gt;2,843,202,537,000&lt;/td&gt;&lt;td&gt;0.03&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;4&lt;/td&gt;&lt;td&gt;138930&lt;/td&gt;&lt;td&gt;BNK금융지주&lt;/td&gt;&lt;td&gt;524,715&lt;/td&gt;&lt;td&gt;325,935,246&lt;/td&gt;&lt;td&gt;4,601,750,550&lt;/td&gt;&lt;td&gt;2,858,452,107,420&lt;/td&gt;&lt;td&gt;0.16&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;934&lt;/td&gt;&lt;td&gt;069260&lt;/td&gt;&lt;td&gt;휴켐스&lt;/td&gt;&lt;td&gt;953,658&lt;/td&gt;&lt;td&gt;40,878,588&lt;/td&gt;&lt;td&gt;26,320,960,800&lt;/td&gt;&lt;td&gt;1,128,249,028,800&lt;/td&gt;&lt;td&gt;2.33&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;935&lt;/td&gt;&lt;td&gt;000540&lt;/td&gt;&lt;td&gt;흥국화재&lt;/td&gt;&lt;td&gt;33,301&lt;/td&gt;&lt;td&gt;64,242,645&lt;/td&gt;&lt;td&gt;129,540,890&lt;/td&gt;&lt;td&gt;249,903,889,050&lt;/td&gt;&lt;td&gt;0.05&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;936&lt;/td&gt;&lt;td&gt;000547&lt;/td&gt;&lt;td&gt;흥국화재2우B&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;153,600&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;4,331,520,000&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;937&lt;/td&gt;&lt;td&gt;000545&lt;/td&gt;&lt;td&gt;흥국화재우&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;768,000&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;6,673,920,000&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;938&lt;/td&gt;&lt;td&gt;003280&lt;/td&gt;&lt;td&gt;흥아해운&lt;/td&gt;&lt;td&gt;84,187&lt;/td&gt;&lt;td&gt;240,424,899&lt;/td&gt;&lt;td&gt;311,070,965&lt;/td&gt;&lt;td&gt;888,370,001,805&lt;/td&gt;&lt;td&gt;0.04&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;이번에는 &lt;code dir=&quot;auto&quot;&gt;비중&lt;/code&gt; 컬럼으로 내림차순 정렬을 해봅니다. 마찬가지로 문자열 정렬 문제가 있을 수 있으므로 이 컬럼을 float으로 변환하고 정렬합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_shortbalance[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;비중&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df_shortbalance[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;비중&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;].&lt;/span&gt;&lt;span&gt;astype&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;float&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_shortbalance.&lt;/span&gt;&lt;span&gt;sort_values&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;비중&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ascending&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;False&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;





























































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;index&lt;/th&gt;&lt;th&gt;종목코드&lt;/th&gt;&lt;th&gt;종목명&lt;/th&gt;&lt;th&gt;공매도잔고수량&lt;/th&gt;&lt;th&gt;상장주식수&lt;/th&gt;&lt;th&gt;공매도잔고금액&lt;/th&gt;&lt;th&gt;시가총액&lt;/th&gt;&lt;th&gt;비중&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;78&lt;/td&gt;&lt;td&gt;034220&lt;/td&gt;&lt;td&gt;LG디스플레이&lt;/td&gt;&lt;td&gt;28,935,291&lt;/td&gt;&lt;td&gt;357,815,700&lt;/td&gt;&lt;td&gt;568,578,468,150&lt;/td&gt;&lt;td&gt;7,031,078,505,000&lt;/td&gt;&lt;td&gt;8.09&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;339&lt;/td&gt;&lt;td&gt;032350&lt;/td&gt;&lt;td&gt;롯데관광개발&lt;/td&gt;&lt;td&gt;4,726,867&lt;/td&gt;&lt;td&gt;69,275,662&lt;/td&gt;&lt;td&gt;94,300,996,650&lt;/td&gt;&lt;td&gt;1,382,049,456,900&lt;/td&gt;&lt;td&gt;6.82&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;910&lt;/td&gt;&lt;td&gt;008770&lt;/td&gt;&lt;td&gt;호텔신라&lt;/td&gt;&lt;td&gt;2,462,557&lt;/td&gt;&lt;td&gt;39,248,121&lt;/td&gt;&lt;td&gt;198,974,605,600&lt;/td&gt;&lt;td&gt;3,171,248,176,800&lt;/td&gt;&lt;td&gt;6.27&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;46&lt;/td&gt;&lt;td&gt;011200&lt;/td&gt;&lt;td&gt;HMM&lt;/td&gt;&lt;td&gt;20,968,085&lt;/td&gt;&lt;td&gt;405,392,487&lt;/td&gt;&lt;td&gt;574,525,529,000&lt;/td&gt;&lt;td&gt;11,107,754,143,800&lt;/td&gt;&lt;td&gt;5.17&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;523&lt;/td&gt;&lt;td&gt;019170&lt;/td&gt;&lt;td&gt;신풍제약&lt;/td&gt;&lt;td&gt;2,499,527&lt;/td&gt;&lt;td&gt;52,984,990&lt;/td&gt;&lt;td&gt;128,225,735,100&lt;/td&gt;&lt;td&gt;2,718,129,987,000&lt;/td&gt;&lt;td&gt;4.72&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;313&lt;/td&gt;&lt;td&gt;030720&lt;/td&gt;&lt;td&gt;동원수산&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;4,653,805&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;45,886,517,300&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;315&lt;/td&gt;&lt;td&gt;014825&lt;/td&gt;&lt;td&gt;동원시스템즈우&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;265,358&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;8,809,885,600&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;644&lt;/td&gt;&lt;td&gt;000230&lt;/td&gt;&lt;td&gt;일동홀딩스&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;11,540,400&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;156,949,440,000&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;316&lt;/td&gt;&lt;td&gt;163560&lt;/td&gt;&lt;td&gt;동일고무벨트&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;13,900,000&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;116,760,000,000&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;261&lt;/td&gt;&lt;td&gt;006340&lt;/td&gt;&lt;td&gt;대원전선&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;71,016,967&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;142,033,934,000&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;div&gt;&lt;h3 id=&quot;공매도-거래와-공매도-잔고-데이터-합치기&quot;&gt;공매도 거래와 공매도 잔고 데이터 합치기&lt;/h3&gt;&lt;/div&gt;
&lt;p&gt;이제 두 데이터를 합쳐서 확인해 보겠습니다. df는 공매도 거래 데이터이고 df_shortbalance는 공매도 잔고 데이터입니다. 이들 둘을 pandas &lt;code dir=&quot;auto&quot;&gt;merge()&lt;/code&gt; 메소드로 합치겠습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;_df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df.&lt;/span&gt;&lt;span&gt;merge&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;df_shortbalance&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;how&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;outer&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;on&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;종목코드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;suffixes&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;_dup&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이 데이터로 다양한 분석을 해볼 수 있겠습니다. 여기서는 공매도 잔고는 많으면서 공매도 거래는 적은 순으로 정렬해 봅니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;_df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;score&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; _df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;비중&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;/&lt;/span&gt;&lt;span&gt; (_df[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;거래량비중&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;+&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;_df.&lt;/span&gt;&lt;span&gt;sort_values&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;score&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;ascending&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;False&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;


































































































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;index&lt;/th&gt;&lt;th&gt;종목코드&lt;/th&gt;&lt;th&gt;종목명&lt;/th&gt;&lt;th&gt;증권구분&lt;/th&gt;&lt;th&gt;공매도거래량&lt;/th&gt;&lt;th&gt;공매도거래량업틱룰&lt;/th&gt;&lt;th&gt;공매도거래량업틱룰예외&lt;/th&gt;&lt;th&gt;거래량&lt;/th&gt;&lt;th&gt;거래량비중&lt;/th&gt;&lt;th&gt;공매도거래대금&lt;/th&gt;&lt;th&gt;공매도거래대금업틱룰&lt;/th&gt;&lt;th&gt;공매도거래대금업틱룰예외&lt;/th&gt;&lt;th&gt;거래대금&lt;/th&gt;&lt;th&gt;거래대금비중&lt;/th&gt;&lt;th&gt;종목명_dup&lt;/th&gt;&lt;th&gt;공매도잔고수량&lt;/th&gt;&lt;th&gt;상장주식수&lt;/th&gt;&lt;th&gt;공매도잔고금액&lt;/th&gt;&lt;th&gt;시가총액&lt;/th&gt;&lt;th&gt;비중&lt;/th&gt;&lt;th&gt;score&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;97&lt;/td&gt;&lt;td&gt;034220&lt;/td&gt;&lt;td&gt;LG디스플레이&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;4,420&lt;/td&gt;&lt;td&gt;2,290&lt;/td&gt;&lt;td&gt;2,130&lt;/td&gt;&lt;td&gt;1,949,194&lt;/td&gt;&lt;td&gt;0.23&lt;/td&gt;&lt;td&gt;89,668,950&lt;/td&gt;&lt;td&gt;46,585,150&lt;/td&gt;&lt;td&gt;43,083,800&lt;/td&gt;&lt;td&gt;39,626,663,800&lt;/td&gt;&lt;td&gt;0.23&lt;/td&gt;&lt;td&gt;LG디스플레이&lt;/td&gt;&lt;td&gt;28,935,291&lt;/td&gt;&lt;td&gt;357,815,700&lt;/td&gt;&lt;td&gt;568,578,468,150&lt;/td&gt;&lt;td&gt;7,031,078,505,000&lt;/td&gt;&lt;td&gt;8.09&lt;/td&gt;&lt;td&gt;6.577236&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;620&lt;/td&gt;&lt;td&gt;097520&lt;/td&gt;&lt;td&gt;엠씨넥스&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;30&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;30&lt;/td&gt;&lt;td&gt;83,676&lt;/td&gt;&lt;td&gt;0.04&lt;/td&gt;&lt;td&gt;1,333,050&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;1,333,050&lt;/td&gt;&lt;td&gt;3,713,085,850&lt;/td&gt;&lt;td&gt;0.04&lt;/td&gt;&lt;td&gt;엠씨넥스&lt;/td&gt;&lt;td&gt;435,409&lt;/td&gt;&lt;td&gt;17,963,282&lt;/td&gt;&lt;td&gt;19,332,159,600&lt;/td&gt;&lt;td&gt;797,569,720,800&lt;/td&gt;&lt;td&gt;2.42&lt;/td&gt;&lt;td&gt;2.326923&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;370&lt;/td&gt;&lt;td&gt;032350&lt;/td&gt;&lt;td&gt;롯데관광개발&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;17,567&lt;/td&gt;&lt;td&gt;16,928&lt;/td&gt;&lt;td&gt;639&lt;/td&gt;&lt;td&gt;882,332&lt;/td&gt;&lt;td&gt;1.99&lt;/td&gt;&lt;td&gt;324,702,700&lt;/td&gt;&lt;td&gt;312,941,650&lt;/td&gt;&lt;td&gt;11,761,050&lt;/td&gt;&lt;td&gt;16,281,919,250&lt;/td&gt;&lt;td&gt;1.99&lt;/td&gt;&lt;td&gt;롯데관광개발&lt;/td&gt;&lt;td&gt;4,726,867&lt;/td&gt;&lt;td&gt;69,275,662&lt;/td&gt;&lt;td&gt;94,300,996,650&lt;/td&gt;&lt;td&gt;1,382,049,456,900&lt;/td&gt;&lt;td&gt;6.82&lt;/td&gt;&lt;td&gt;2.280936&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;699&lt;/td&gt;&lt;td&gt;006490&lt;/td&gt;&lt;td&gt;인스코비&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;675&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;675&lt;/td&gt;&lt;td&gt;1,384,422&lt;/td&gt;&lt;td&gt;0.05&lt;/td&gt;&lt;td&gt;2,285,320&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;2,285,320&lt;/td&gt;&lt;td&gt;4,702,224,255&lt;/td&gt;&lt;td&gt;0.05&lt;/td&gt;&lt;td&gt;인스코비&lt;/td&gt;&lt;td&gt;1,824,640&lt;/td&gt;&lt;td&gt;109,848,100&lt;/td&gt;&lt;td&gt;6,541,334,400&lt;/td&gt;&lt;td&gt;393,805,438,500&lt;/td&gt;&lt;td&gt;1.66&lt;/td&gt;&lt;td&gt;1.580952&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;578&lt;/td&gt;&lt;td&gt;003620&lt;/td&gt;&lt;td&gt;쌍용차&lt;/td&gt;&lt;td&gt;주권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;쌍용차&lt;/td&gt;&lt;td&gt;2,180,965&lt;/td&gt;&lt;td&gt;149,840,002&lt;/td&gt;&lt;td&gt;6,041,273,050&lt;/td&gt;&lt;td&gt;415,056,805,540&lt;/td&gt;&lt;td&gt;1.46&lt;/td&gt;&lt;td&gt;1.460000&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;td&gt;…&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;983&lt;/td&gt;&lt;td&gt;75701B93&lt;/td&gt;&lt;td&gt;현대유퍼스트부동산25호 A&lt;/td&gt;&lt;td&gt;수익증권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;984&lt;/td&gt;&lt;td&gt;75702B93&lt;/td&gt;&lt;td&gt;현대유퍼스트부동산25호 C-i&lt;/td&gt;&lt;td&gt;수익증권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;985&lt;/td&gt;&lt;td&gt;75701BA7&lt;/td&gt;&lt;td&gt;현대유퍼스트부동산30호[파생형] A&lt;/td&gt;&lt;td&gt;수익증권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;986&lt;/td&gt;&lt;td&gt;75702BA7&lt;/td&gt;&lt;td&gt;현대유퍼스트부동산30호[파생형] C-i&lt;/td&gt;&lt;td&gt;수익증권&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;NaN&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;공매도 잔고가 많다는 것은 다시 상환해야 할 물량이 많다는 것이고 동시에 공매도 거래 비중이 적다면 주가가 바닥에 가까워 졌다고 추측해 볼 여지가 있습니다. 주식 거래에서 확실한 것은 없습니다. 다양한 금융데이터 분석을 통해 성공적인 투자에 한걸음씩 다가가는 것이 중요하다고 봅니다.&lt;/p&gt;</content:encoded><category>금융데이터수집</category><category>krx</category><category>공매도</category></item><item><title>퀀티랩 종목분석 기능 소개 (feat. 삼성전자 종목분석)</title><link>https://blog.quantylab.com/blog/2021-09-25-quantylab_new_functions/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-09-25-quantylab_new_functions/</guid><pubDate>Sat, 25 Sep 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;이번 포스트에서는 &lt;a href=&quot;http://quantylab.com/stock/005930&quot;&gt;퀀티랩 종목분석&lt;/a&gt;에서 제공하는 데이터들을 소개하고자 합니다.&lt;/p&gt;
&lt;p&gt;현재 퀀티랩 종목분석에서는 회사 기본정보, 퀀티랩 모델로 판단한 종목랭킹 추이, 일봉차트, MACD, RSI, 재무제표, PER, PBR, ROE, 공매도, 투자 주체별 수급 분석, 일봉수급점수를 제공합니다.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://quantylab.com/stock/005930&quot;&gt;삼성전자&lt;/a&gt; 종목분석 페이지를 예로 각 항목을 살펴보겠습니다.&lt;/p&gt;
&lt;p&gt;우선 삼성전자의 기본정보를 보여줍니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;기본정보&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;679&quot; height=&quot;424&quot; src=&quot;https://blog.quantylab.com/_astro/1.709bLEj5_Z2u836Q.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;코스피인지 코스닥인지, 업종과 주요제품은 무엇인지 등을 보여줍니다.&lt;/p&gt;
&lt;p&gt;QL 모델(퀀티랩 중장기 모델)의 종목랭킹 변화를 확인할 수 있습니다. 8월초 주가 급락에 따라 순위가 하락했다가 최근 다시 상위권으로 회복한 모습입니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;퀀티랩모델&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;693&quot; height=&quot;426&quot; src=&quot;https://blog.quantylab.com/_astro/2.DKGolKPk_jYY7T.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;기술적분석에서는 일봉 차트와 이동평균선, 볼린저밴드를 함께 보여주고 그 아래에 MACD, RSI 차트도 보여줍니다. MACD 상으로는 주가 급락 이후 8월 중순쯤 MACD 신호를 돌파하면서 매수타이밍으로 판단할 수 있고 RSI 상으로도 비슷한 시점을 과냉 상태로 볼 수 있어서 매수를 고려해볼 수 있습니다. 다만 기술적분석만으로 투자에 임하는 것은 매우 위험함을 말씀드립니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;기술적분석&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;693&quot; height=&quot;941&quot; src=&quot;https://blog.quantylab.com/_astro/3.C45EevGz_Z1T8HDw.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;기본적분석은 재무제표와 PER, PBR, ROE 지표를 주로 봅니다.&lt;/p&gt;
&lt;p&gt;재무제표의 재무상태표, 손익계산서, 현금흐름표에서 주요 계정들을 뽑아서 다음과 같이 차트로 보여줍니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;재무제표&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;681&quot; height=&quot;1463&quot; src=&quot;https://blog.quantylab.com/_astro/4.BRnNcBA0_37Vcb.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;삼성전자의 재무 상태는 매우 좋습니다. 300조에 육박하는 자본을 가지고 있다는 것에 놀라울 따름입니다. 당기순이익을 보면 성장이 약간 둔화된 듯 보여서 아쉬움은 있습니다. 현금흐름도 아주 안정적입니다. 재무제표 보는 법에 대해서는 &lt;a href=&quot;http://blog.quantylab.com/2021-01-17-financial_statement.html&quot;&gt;이 포스트&lt;/a&gt;를 참고해 주세요.&lt;/p&gt;
&lt;p&gt;수익성, 안정성, 성장성 지표로 주로 사용되는 PER, PBR, ROE를 차트로 보여줍니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;지표&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;681&quot; height=&quot;706&quot; src=&quot;https://blog.quantylab.com/_astro/5.DRm0B5MQ_Z1moH36.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;성장주들에 비한다면야 PER도 그렇게 높지 않고 물리적인 자산이 많은걸 감안해도 PBR은 상당히 낮아서 상승여력은 충분해 보입니다.&lt;/p&gt;
&lt;p&gt;그리고 수급분석에서는 공매도 현황과 기관/외국인/개인들의 순매수/순매도량을 보여주고 일봉에서 계산한 수급 점수인 일봉수급점수를 보여줍니다.&lt;/p&gt;
&lt;p&gt;다음은 공매도 현황을 보여줍니다. 공매도는 주식을 빌려서 파는 행위를 말합니다. 공매도자는 주가가 하락하면 수익이 생깁니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;공매도&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;681&quot; height=&quot;488&quot; src=&quot;https://blog.quantylab.com/_astro/6.CRw43AN9_Z2tAivB.webp&quot;&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;공매도 잔고(위 차트)는 주식을 빌려서 판 후에 아직 갚지 않은 주식수 입니다.&lt;/li&gt;
&lt;li&gt;공매도량(아래 차트)은 빌려서 판 주식 수 입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;삼성전자의 경우 공매도가 많은 상황은 아닌 것으로 보입니다.&lt;/p&gt;
&lt;p&gt;다음 차트는 투자 주체(기관/외국인/개인)들의 순매수/순매도량은 보여줍니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;투자자&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;681&quot; height=&quot;863&quot; src=&quot;https://blog.quantylab.com/_astro/7.DG3ngEEU_Z2tP0G5.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;삼성전자를 외국인이 8월초에 대량 매도하고 그걸 개인이 대부분 받은 것을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;다음은 일봉수급점수 차트입니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;일봉수급점수&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;681&quot; height=&quot;338&quot; src=&quot;https://blog.quantylab.com/_astro/8.MWt4qFAi_1qXXbj.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;일봉수급점수는 240일, 120일, 60일, 20일, 10일, 5일 동안의 거래 강도를 나타냅니다. 1에 가까울수록 매수세가, -1에 가까울수록 매도세가 강했음을 의미합니다.&lt;/p&gt;
&lt;p&gt;삼성전자의 일봉수급점수는 매도세가 약간 강한 상태로 유지 중입니다.&lt;/p&gt;
&lt;p&gt;그럼 여기까지 퀀티랩 종목분석 기능소개를 마치겠습니다.&lt;/p&gt;
&lt;p&gt;앞으로도 유익한 데이터를 많이 생성해서 제공할 것이니 퀀티랩에 많은 관심 부탁드립니다.&lt;/p&gt;</content:encoded><category>퀀티랩</category><category>종목분석</category><category>기본적분석</category><category>기술적분석</category><category>수급분석</category></item><item><title>퀀티랩 Long-Term Trading (QL) 모델 개선 작업</title><link>https://blog.quantylab.com/blog/2021-09-19-ql_model_update/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-09-19-ql_model_update/</guid><pubDate>Sun, 19 Sep 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;퀀티랩 주식투자 대표 모델인 Quantylab Long-Term Trading (QL) 모델을 업데이트 했습니다. 기존 모델에 비해 다양한 시장지표 및 종목지표를 추가하고 레이블링을 조정하는 작업이었습니다.&lt;/p&gt;
&lt;p&gt;Feature 수는 412개로 326개 시장지표 자질과 86개 종목지표 자질로 구성했습니다. 각종 지표에 Moving Average 등을 적용하여 자질 수는 부풀려진 면이 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;시장지표&lt;/strong&gt;는 코스피/코스닥 지수, 해외 주식 시장 지수, 환율, 채권, 금리, 원자재, GSCI, 달러 지수, BDI, 필라델피아 반도체 지수, 미국시장 변동성 지수, MSCI 지수 등을 포함합니다. &lt;strong&gt;종목지표&lt;/strong&gt;는 종목 주가, 거래량, 시가총액, Bollinger Band, MACD, RSI, 수급, PER, PBR, ROE, 배당수익률, 기관/외국인/개인 수급, 공매도 비율, 대차잔고액 등을 포함합니다. 이들 시장지표 및 종목지표 자질들을 모아서 표준화 (Standardization) 했습니다.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;레이블링&lt;/strong&gt;은 수익성, 변동성, 거래규모 지표를 만들어 조합했습니다. 수익성 지표는 중장기 기간에서 종가의 변곡점을 찾아서 현재 종가와 다음 변곡점과의 차이를 기대 수익률로 삼았습니다. 변동성 지표는 변곡점 사이에서의 표준편차로 구했습니다. 거래규모 지표는 종목의 거래대금에 log를 취해 사용했습니다.&lt;/p&gt;
&lt;p&gt;이렇게 자질과 레이블링을 마치고 적당히 심층신경망 레이어를 구성하여 학습했습니다. 중간에 이런저런 실수로 시행착오를 겪었지만 다 생략하고 결과를 바로 공유하려 합니다.&lt;/p&gt;
&lt;p&gt;학습에는 2015~2019년 기간내의 데이터를 사용했습니다. 이렇게 학습한 모델로 2020년부터 현재까지 일단위로 종목 점수를 구하여 매수/매도를 판단해서 종가매매 백테스팅을 수행했습니다. 즉, 학습과 백테스팅 데이터가 겹쳐지지 않게하여 의미있는 백테스팅이 되도록 했습니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;백테스팅&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;631&quot; height=&quot;563&quot; src=&quot;https://blog.quantylab.com/_astro/backtest_chart.BZKkpvJb_1SpxKR.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;백테스팅 결과 2020년 부터 2021-09-17 까지의 평가 수익률은 +73.07%로 동기간 코스피 대비 30% 정도 높았습니다. QL 모델로 매수/매도를 판단한 내역은 다음과 같습니다.&lt;/p&gt;






















































































































































































































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;날짜&lt;/th&gt;&lt;th&gt;매매&lt;/th&gt;&lt;th&gt;종목명&lt;/th&gt;&lt;th&gt;단가&lt;/th&gt;&lt;th&gt;수량&lt;/th&gt;&lt;th&gt;수익률&lt;/th&gt;&lt;th&gt;평가총액&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;2021-08-19&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;현대자동차&lt;/td&gt;&lt;td&gt;206,500&lt;/td&gt;&lt;td&gt;58&lt;/td&gt;&lt;td&gt;+20.41%&lt;/td&gt;&lt;td&gt;173,831,949&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2021-05-06&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;LG전자&lt;/td&gt;&lt;td&gt;151,500&lt;/td&gt;&lt;td&gt;66&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;177,219,388&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2021-05-06&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;SK케미칼&lt;/td&gt;&lt;td&gt;256,000&lt;/td&gt;&lt;td&gt;39&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;177,220,888&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2021-05-06&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;LG화학&lt;/td&gt;&lt;td&gt;938,000&lt;/td&gt;&lt;td&gt;10&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;177,222,386&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2021-05-06&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;포스코&lt;/td&gt;&lt;td&gt;395,500&lt;/td&gt;&lt;td&gt;51&lt;/td&gt;&lt;td&gt;+103.87%&lt;/td&gt;&lt;td&gt;177,223,793&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2021-03-23&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;현대모비스&lt;/td&gt;&lt;td&gt;286,500&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;td&gt;+40.79%&lt;/td&gt;&lt;td&gt;172,520,635&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2021-03-23&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;셀트리온&lt;/td&gt;&lt;td&gt;292,500&lt;/td&gt;&lt;td&gt;34&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;172,517,645&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2021-03-23&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;삼성전기&lt;/td&gt;&lt;td&gt;185,000&lt;/td&gt;&lt;td&gt;54&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;172,519,136&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2021-01-13&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;삼성SDI&lt;/td&gt;&lt;td&gt;754,000&lt;/td&gt;&lt;td&gt;26&lt;/td&gt;&lt;td&gt;+100.80%&lt;/td&gt;&lt;td&gt;178,728,737&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2021-01-08&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;삼성전기&lt;/td&gt;&lt;td&gt;193,000&lt;/td&gt;&lt;td&gt;112&lt;/td&gt;&lt;td&gt;+116.37%&lt;/td&gt;&lt;td&gt;179,837,188&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-11-16&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;NAVER&lt;/td&gt;&lt;td&gt;278,000&lt;/td&gt;&lt;td&gt;55&lt;/td&gt;&lt;td&gt;+53.17%&lt;/td&gt;&lt;td&gt;148,783,070&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-09-24&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;SK텔레콤&lt;/td&gt;&lt;td&gt;230,500&lt;/td&gt;&lt;td&gt;43&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;136,101,988&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-09-24&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;현대자동차&lt;/td&gt;&lt;td&gt;171,500&lt;/td&gt;&lt;td&gt;58&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;136,103,475&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-09-24&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;케이티앤지&lt;/td&gt;&lt;td&gt;80,400&lt;/td&gt;&lt;td&gt;124&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;136,104,967&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-09-24&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;셀트리온&lt;/td&gt;&lt;td&gt;245,502&lt;/td&gt;&lt;td&gt;61&lt;/td&gt;&lt;td&gt;+51.06%&lt;/td&gt;&lt;td&gt;136,106,463&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-08-03&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;LG화학&lt;/td&gt;&lt;td&gt;635,000&lt;/td&gt;&lt;td&gt;31&lt;/td&gt;&lt;td&gt;+102.23%&lt;/td&gt;&lt;td&gt;137,605,846&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-07-24&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;현대모비스&lt;/td&gt;&lt;td&gt;203,500&lt;/td&gt;&lt;td&gt;49&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;131,218,600&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-07-24&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;포스코&lt;/td&gt;&lt;td&gt;194,000&lt;/td&gt;&lt;td&gt;51&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;131,215,651&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-07-24&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;삼성SDI&lt;/td&gt;&lt;td&gt;375,500&lt;/td&gt;&lt;td&gt;26&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;131,217,135&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-07-24&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;엔씨소프트&lt;/td&gt;&lt;td&gt;802,000&lt;/td&gt;&lt;td&gt;17&lt;/td&gt;&lt;td&gt;+41.95%&lt;/td&gt;&lt;td&gt;131,220,096&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-06-29&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;SK케미칼&lt;/td&gt;&lt;td&gt;134,500&lt;/td&gt;&lt;td&gt;163&lt;/td&gt;&lt;td&gt;+120.49%&lt;/td&gt;&lt;td&gt;128,438,310&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-03-23&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;삼성전기&lt;/td&gt;&lt;td&gt;89,200&lt;/td&gt;&lt;td&gt;112&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;81,295,074&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-03-23&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;케이티앤지&lt;/td&gt;&lt;td&gt;63,600&lt;/td&gt;&lt;td&gt;108&lt;/td&gt;&lt;td&gt;-31.24%&lt;/td&gt;&lt;td&gt;81,296,573&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-03-17&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;SK케미칼&lt;/td&gt;&lt;td&gt;61,000&lt;/td&gt;&lt;td&gt;163&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;85,736,761&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-03-17&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;현대자동차&lt;/td&gt;&lt;td&gt;80,100&lt;/td&gt;&lt;td&gt;84&lt;/td&gt;&lt;td&gt;-32.12%&lt;/td&gt;&lt;td&gt;85,738,252&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-03-16&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;삼성SDI&lt;/td&gt;&lt;td&gt;253,000&lt;/td&gt;&lt;td&gt;43&lt;/td&gt;&lt;td&gt;+10.48%&lt;/td&gt;&lt;td&gt;86,948,811&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-03-16&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;포스코&lt;/td&gt;&lt;td&gt;162,000&lt;/td&gt;&lt;td&gt;42&lt;/td&gt;&lt;td&gt;-31.36%&lt;/td&gt;&lt;td&gt;86,977,640&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-03-16&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;삼성전자&lt;/td&gt;&lt;td&gt;48,900&lt;/td&gt;&lt;td&gt;204&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;86,945,828&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-03-16&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;셀트리온&lt;/td&gt;&lt;td&gt;162,522&lt;/td&gt;&lt;td&gt;61&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;86,947,324&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-03-13&lt;/td&gt;&lt;td&gt;매도&lt;/td&gt;&lt;td&gt;현대모비스&lt;/td&gt;&lt;td&gt;171,500&lt;/td&gt;&lt;td&gt;40&lt;/td&gt;&lt;td&gt;-30.71%&lt;/td&gt;&lt;td&gt;91,169,271&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-01-03&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;이마트&lt;/td&gt;&lt;td&gt;122,500&lt;/td&gt;&lt;td&gt;81&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;99,845,350&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-01-03&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;NAVER&lt;/td&gt;&lt;td&gt;181,500&lt;/td&gt;&lt;td&gt;55&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;99,846,838&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-01-03&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;케이티앤지&lt;/td&gt;&lt;td&gt;92,500&lt;/td&gt;&lt;td&gt;108&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;99,848,336&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-01-03&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;삼성SDI&lt;/td&gt;&lt;td&gt;229,000&lt;/td&gt;&lt;td&gt;43&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;99,849,834&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-01-03&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;엔씨소프트&lt;/td&gt;&lt;td&gt;565,000&lt;/td&gt;&lt;td&gt;17&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;99,851,311&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-01-02&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;LG화학&lt;/td&gt;&lt;td&gt;314,000&lt;/td&gt;&lt;td&gt;31&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;99,994,081&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-01-02&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;현대모비스&lt;/td&gt;&lt;td&gt;247,500&lt;/td&gt;&lt;td&gt;40&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;99,995,541&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-01-02&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;현대자동차&lt;/td&gt;&lt;td&gt;118,000&lt;/td&gt;&lt;td&gt;84&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;99,997,026&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-01-02&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;LG생활건강&lt;/td&gt;&lt;td&gt;1,266,000&lt;/td&gt;&lt;td&gt;7&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;99,992,752&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;2020-01-02&lt;/td&gt;&lt;td&gt;매수&lt;/td&gt;&lt;td&gt;포스코&lt;/td&gt;&lt;td&gt;236,000&lt;/td&gt;&lt;td&gt;42&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;99,998,513&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;&lt;a href=&quot;http://quantylab.com/backtest/&quot;&gt;퀀티랩&lt;/a&gt;에서 매일 올라오는 QL 모델의 매매내역과 보유종목을 확인해 보세요.&lt;/p&gt;</content:encoded><category>딥러닝</category><category>중장기</category><category>주식투자</category><category>모델</category><category>Long-Term</category></item><item><title>[2021-08-13] 공매도 상위 종목 살펴보기</title><link>https://blog.quantylab.com/blog/2021-08-15-short/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-08-15-short/</guid><pubDate>Sun, 15 Aug 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;공매도는 주식을 빌려서 파는 행위를 말합니다. 주가가 하락한다는 쪽에 베팅하는 것입니다. 이러한 베팅을 숏(Short) 포지션 취한다고 합니다. 주가가 하락할 것이라고 예상하고 주식을 빌려서 현재 가격에 매도하고 주가가 떨어졌을 때 다시 매수해서 빌린 주식을 갚는 것입니다.&lt;/p&gt;
&lt;p&gt;공매도는 2020년 3월에 주가 급락을 막기 위해 금지됐었습니다. 그렇게 1년 2개월간 금지된 공매도가 2021년 5월에 재개됐습니다. 공매도는 개인투자자들이 하기 어렵고 그만큼 개인투자자들의 공매도에 대한 부정적인 인식이 강합니다.&lt;/p&gt;
&lt;p&gt;공매도가 많다고 해서 주가가 꼭 하락한다는 보장은 없지만 공매도의 현황을 파악해 놓는 것은 중요하다고 생각합니다. 공매도의 추세가 증가하면 가급적 매수를 자제하는 것이 좋다고 생각합니다. 다만 공매도가 많다가 줄어드는 추세이고 대차잔고가 많은 상태면 주가가 바닥권이라는 예측을 해볼 수도 있습니다. 대차잔고는 주식을 빌리고 아직 갚지 않은 주식 수를 의미합니다. 즉, 대차잔고만큼 앞으로 매수가 이뤄질 것이란 의미입니다.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://quantylab.com/stocktable_short/&quot;&gt;퀀티랩 종목지표/공매도&lt;/a&gt; 메뉴에서 종목별 공매도 현황을 표로 확인할 수 있습니다.&lt;/p&gt;
&lt;p&gt;이 포스트에서는 2021-08-13 기준으로 공매도율, 대차잔고율, 대차잔고액 순위를 살펴보겠습니다.&lt;/p&gt;
&lt;div&gt;&lt;h4 id=&quot;공매도율-top-20&quot;&gt;공매도율 Top 20&lt;/h4&gt;&lt;/div&gt;


































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;종목명&lt;/th&gt;&lt;th&gt;주가&lt;/th&gt;&lt;th&gt;등락율(%)&lt;/th&gt;&lt;th&gt;공매도액(만원)&lt;/th&gt;&lt;th&gt;공매도율(%)&lt;/th&gt;&lt;th&gt;대차잔고액(만원)&lt;/th&gt;&lt;th&gt;대차잔고율(%)&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;티씨케이&lt;/td&gt;&lt;td&gt;173,400&lt;/td&gt;&lt;td&gt;-1.64&lt;/td&gt;&lt;td&gt;137,556&lt;/td&gt;&lt;td&gt;25.57&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;넷마블&lt;/td&gt;&lt;td&gt;127,000&lt;/td&gt;&lt;td&gt;-3.79&lt;/td&gt;&lt;td&gt;1,398,730&lt;/td&gt;&lt;td&gt;25.51&lt;/td&gt;&lt;td&gt;9,808,533&lt;/td&gt;&lt;td&gt;0.85&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;하림지주&lt;/td&gt;&lt;td&gt;9,580&lt;/td&gt;&lt;td&gt;-1.54&lt;/td&gt;&lt;td&gt;65,510&lt;/td&gt;&lt;td&gt;22.83&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;SK머티리얼즈&lt;/td&gt;&lt;td&gt;432,000&lt;/td&gt;&lt;td&gt;-1.5&lt;/td&gt;&lt;td&gt;508,959&lt;/td&gt;&lt;td&gt;21.26&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;휴온스&lt;/td&gt;&lt;td&gt;61,400&lt;/td&gt;&lt;td&gt;-1.76&lt;/td&gt;&lt;td&gt;76,527&lt;/td&gt;&lt;td&gt;19.85&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;금호석유화학&lt;/td&gt;&lt;td&gt;192,500&lt;/td&gt;&lt;td&gt;-2.53&lt;/td&gt;&lt;td&gt;1,408,193&lt;/td&gt;&lt;td&gt;18.88&lt;/td&gt;&lt;td&gt;14,948,029&lt;/td&gt;&lt;td&gt;2.48&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;엔씨소프트&lt;/td&gt;&lt;td&gt;786,000&lt;/td&gt;&lt;td&gt;-2.48&lt;/td&gt;&lt;td&gt;1,563,723&lt;/td&gt;&lt;td&gt;18.7&lt;/td&gt;&lt;td&gt;7,751,709&lt;/td&gt;&lt;td&gt;0.43&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;리노공업&lt;/td&gt;&lt;td&gt;172,400&lt;/td&gt;&lt;td&gt;0.17&lt;/td&gt;&lt;td&gt;151,018&lt;/td&gt;&lt;td&gt;18.69&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;CJ대한통운&lt;/td&gt;&lt;td&gt;165,500&lt;/td&gt;&lt;td&gt;-2.07&lt;/td&gt;&lt;td&gt;189,097&lt;/td&gt;&lt;td&gt;18.43&lt;/td&gt;&lt;td&gt;845,591&lt;/td&gt;&lt;td&gt;0.22&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;GS리테일&lt;/td&gt;&lt;td&gt;33,200&lt;/td&gt;&lt;td&gt;-1.92&lt;/td&gt;&lt;td&gt;443,432&lt;/td&gt;&lt;td&gt;18.12&lt;/td&gt;&lt;td&gt;711,763&lt;/td&gt;&lt;td&gt;0.2&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;고영&lt;/td&gt;&lt;td&gt;23,450&lt;/td&gt;&lt;td&gt;-2.09&lt;/td&gt;&lt;td&gt;84,659&lt;/td&gt;&lt;td&gt;17.43&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;주성엔지니어링&lt;/td&gt;&lt;td&gt;13,050&lt;/td&gt;&lt;td&gt;-1.14&lt;/td&gt;&lt;td&gt;326,588&lt;/td&gt;&lt;td&gt;17.19&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;SK텔레콤&lt;/td&gt;&lt;td&gt;306,000&lt;/td&gt;&lt;td&gt;-2.08&lt;/td&gt;&lt;td&gt;1,344,422&lt;/td&gt;&lt;td&gt;17.12&lt;/td&gt;&lt;td&gt;8,681,719&lt;/td&gt;&lt;td&gt;0.4&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;동국제약&lt;/td&gt;&lt;td&gt;24,700&lt;/td&gt;&lt;td&gt;-1.79&lt;/td&gt;&lt;td&gt;71,298&lt;/td&gt;&lt;td&gt;17.11&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;팬오션&lt;/td&gt;&lt;td&gt;7,410&lt;/td&gt;&lt;td&gt;-4.39&lt;/td&gt;&lt;td&gt;1,044,217&lt;/td&gt;&lt;td&gt;16.94&lt;/td&gt;&lt;td&gt;4,016,525&lt;/td&gt;&lt;td&gt;1.03&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;하나투어&lt;/td&gt;&lt;td&gt;75,600&lt;/td&gt;&lt;td&gt;-2.45&lt;/td&gt;&lt;td&gt;265,633&lt;/td&gt;&lt;td&gt;16.83&lt;/td&gt;&lt;td&gt;1,204,780&lt;/td&gt;&lt;td&gt;1.09&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;S-Oil&lt;/td&gt;&lt;td&gt;93,800&lt;/td&gt;&lt;td&gt;-1.37&lt;/td&gt;&lt;td&gt;360,719&lt;/td&gt;&lt;td&gt;16.51&lt;/td&gt;&lt;td&gt;2,908,925&lt;/td&gt;&lt;td&gt;0.28&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;제일기획&lt;/td&gt;&lt;td&gt;23,200&lt;/td&gt;&lt;td&gt;-0.22&lt;/td&gt;&lt;td&gt;108,406&lt;/td&gt;&lt;td&gt;15.71&lt;/td&gt;&lt;td&gt;429,828&lt;/td&gt;&lt;td&gt;0.16&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;이오테크닉스&lt;/td&gt;&lt;td&gt;112,700&lt;/td&gt;&lt;td&gt;-3.1&lt;/td&gt;&lt;td&gt;153,843&lt;/td&gt;&lt;td&gt;15.5&lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;td&gt; &lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;한화솔루션&lt;/td&gt;&lt;td&gt;38,700&lt;/td&gt;&lt;td&gt;-2.27&lt;/td&gt;&lt;td&gt;564,867&lt;/td&gt;&lt;td&gt;15.41&lt;/td&gt;&lt;td&gt;12,955,934&lt;/td&gt;&lt;td&gt;1.7&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;div&gt;&lt;h4 id=&quot;대차잔고율-top-20&quot;&gt;대차잔고율 Top 20&lt;/h4&gt;&lt;/div&gt;


































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;종목명&lt;/th&gt;&lt;th&gt;주가&lt;/th&gt;&lt;th&gt;등락율(%)&lt;/th&gt;&lt;th&gt;공매도액(만원)&lt;/th&gt;&lt;th&gt;공매도율(%)&lt;/th&gt;&lt;th&gt;대차잔고액(만원)&lt;/th&gt;&lt;th&gt;대차잔고율(%)&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;롯데관광개발&lt;/td&gt;&lt;td&gt;18,900&lt;/td&gt;&lt;td&gt;-2.07&lt;/td&gt;&lt;td&gt;56,884&lt;/td&gt;&lt;td&gt;6.66&lt;/td&gt;&lt;td&gt;9,874,871&lt;/td&gt;&lt;td&gt;7.25&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;LG디스플레이&lt;/td&gt;&lt;td&gt;20,800&lt;/td&gt;&lt;td&gt;-3.48&lt;/td&gt;&lt;td&gt;971,078&lt;/td&gt;&lt;td&gt;11.97&lt;/td&gt;&lt;td&gt;50,027,642&lt;/td&gt;&lt;td&gt;6.31&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;신풍제약&lt;/td&gt;&lt;td&gt;66,800&lt;/td&gt;&lt;td&gt;-6.96&lt;/td&gt;&lt;td&gt;867,669&lt;/td&gt;&lt;td&gt;3.59&lt;/td&gt;&lt;td&gt;14,668,319&lt;/td&gt;&lt;td&gt;4.31&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;HMM&lt;/td&gt;&lt;td&gt;39,150&lt;/td&gt;&lt;td&gt;-3.69&lt;/td&gt;&lt;td&gt;100,346&lt;/td&gt;&lt;td&gt;0.45&lt;/td&gt;&lt;td&gt;64,919,667&lt;/td&gt;&lt;td&gt;4.13&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;엠씨넥스&lt;/td&gt;&lt;td&gt;45,500&lt;/td&gt;&lt;td&gt;-1.62&lt;/td&gt;&lt;td&gt;27&lt;/td&gt;&lt;td&gt;0.00&lt;/td&gt;&lt;td&gt;3,234,984&lt;/td&gt;&lt;td&gt;3.81&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;삼성중공업&lt;/td&gt;&lt;td&gt;6,170&lt;/td&gt;&lt;td&gt;-2.68&lt;/td&gt;&lt;td&gt;179,177&lt;/td&gt;&lt;td&gt;5.73&lt;/td&gt;&lt;td&gt;15,810,589&lt;/td&gt;&lt;td&gt;3.73&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;OCI&lt;/td&gt;&lt;td&gt;107,000&lt;/td&gt;&lt;td&gt;-3.60&lt;/td&gt;&lt;td&gt;178,287&lt;/td&gt;&lt;td&gt;2.69&lt;/td&gt;&lt;td&gt;8,522,111&lt;/td&gt;&lt;td&gt;3.18&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;셀트리온&lt;/td&gt;&lt;td&gt;275,500&lt;/td&gt;&lt;td&gt;-2.13&lt;/td&gt;&lt;td&gt;960,199&lt;/td&gt;&lt;td&gt;4.45&lt;/td&gt;&lt;td&gt;112,924,125&lt;/td&gt;&lt;td&gt;3.03&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;부광약품&lt;/td&gt;&lt;td&gt;20,400&lt;/td&gt;&lt;td&gt;-2.86&lt;/td&gt;&lt;td&gt;65,716&lt;/td&gt;&lt;td&gt;3.80&lt;/td&gt;&lt;td&gt;4,234,188&lt;/td&gt;&lt;td&gt;2.84&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;일양약품&lt;/td&gt;&lt;td&gt;34,150&lt;/td&gt;&lt;td&gt;-1.73&lt;/td&gt;&lt;td&gt;31,317&lt;/td&gt;&lt;td&gt;7.04&lt;/td&gt;&lt;td&gt;1,721,090&lt;/td&gt;&lt;td&gt;2.58&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;호텔신라&lt;/td&gt;&lt;td&gt;90,000&lt;/td&gt;&lt;td&gt;-2.39&lt;/td&gt;&lt;td&gt;313,553&lt;/td&gt;&lt;td&gt;6.93&lt;/td&gt;&lt;td&gt;9,290,901&lt;/td&gt;&lt;td&gt;2.57&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;금호석유화학&lt;/td&gt;&lt;td&gt;192,500&lt;/td&gt;&lt;td&gt;-2.53&lt;/td&gt;&lt;td&gt;1,408,193&lt;/td&gt;&lt;td&gt;18.88&lt;/td&gt;&lt;td&gt;14,948,029&lt;/td&gt;&lt;td&gt;2.48&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;두산퓨얼셀&lt;/td&gt;&lt;td&gt;48,400&lt;/td&gt;&lt;td&gt;-2.22&lt;/td&gt;&lt;td&gt;38,571&lt;/td&gt;&lt;td&gt;1.53&lt;/td&gt;&lt;td&gt;8,021,749&lt;/td&gt;&lt;td&gt;2.43&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;한전기술&lt;/td&gt;&lt;td&gt;48,150&lt;/td&gt;&lt;td&gt;-3.89&lt;/td&gt;&lt;td&gt;42,456&lt;/td&gt;&lt;td&gt;2.39&lt;/td&gt;&lt;td&gt;3,857,609&lt;/td&gt;&lt;td&gt;1.99&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;GKL&lt;/td&gt;&lt;td&gt;15,700&lt;/td&gt;&lt;td&gt;-1.26&lt;/td&gt;&lt;td&gt;43,621&lt;/td&gt;&lt;td&gt;8.02&lt;/td&gt;&lt;td&gt;1,931,880&lt;/td&gt;&lt;td&gt;1.93&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;삼양식품&lt;/td&gt;&lt;td&gt;87,800&lt;/td&gt;&lt;td&gt;-0.79&lt;/td&gt;&lt;td&gt;19,858&lt;/td&gt;&lt;td&gt;6.28&lt;/td&gt;&lt;td&gt;1,279,720&lt;/td&gt;&lt;td&gt;1.90&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;인스코비&lt;/td&gt;&lt;td&gt;4,325&lt;/td&gt;&lt;td&gt;14.57&lt;/td&gt;&lt;td&gt;880&lt;/td&gt;&lt;td&gt;0.01&lt;/td&gt;&lt;td&gt;686,171&lt;/td&gt;&lt;td&gt;1.79&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;씨에스윈드&lt;/td&gt;&lt;td&gt;80,100&lt;/td&gt;&lt;td&gt;-2.44&lt;/td&gt;&lt;td&gt;300,555&lt;/td&gt;&lt;td&gt;8.81&lt;/td&gt;&lt;td&gt;5,912,298&lt;/td&gt;&lt;td&gt;1.77&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;CJ CGV&lt;/td&gt;&lt;td&gt;28,750&lt;/td&gt;&lt;td&gt;-2.87&lt;/td&gt;&lt;td&gt;46,465&lt;/td&gt;&lt;td&gt;2.57&lt;/td&gt;&lt;td&gt;1,942,759&lt;/td&gt;&lt;td&gt;1.72&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;한화솔루션&lt;/td&gt;&lt;td&gt;38,700&lt;/td&gt;&lt;td&gt;-2.27&lt;/td&gt;&lt;td&gt;564,867&lt;/td&gt;&lt;td&gt;15.41&lt;/td&gt;&lt;td&gt;12,955,934&lt;/td&gt;&lt;td&gt;1.70&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;div&gt;&lt;h4 id=&quot;대차잔고액-top-20&quot;&gt;대차잔고액 Top 20&lt;/h4&gt;&lt;/div&gt;


































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;종목명&lt;/th&gt;&lt;th&gt;주가&lt;/th&gt;&lt;th&gt;등락율(%)&lt;/th&gt;&lt;th&gt;공매도액(만원)&lt;/th&gt;&lt;th&gt;공매도율(%)&lt;/th&gt;&lt;th&gt;대차잔고액(만원)&lt;/th&gt;&lt;th&gt;대차잔고율(%)&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;셀트리온&lt;/td&gt;&lt;td&gt;275,500&lt;/td&gt;&lt;td&gt;-2.13&lt;/td&gt;&lt;td&gt;960,199&lt;/td&gt;&lt;td&gt;4.45&lt;/td&gt;&lt;td&gt;112,924,125&lt;/td&gt;&lt;td&gt;3.03&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;HMM&lt;/td&gt;&lt;td&gt;39,150&lt;/td&gt;&lt;td&gt;-3.69&lt;/td&gt;&lt;td&gt;100,346&lt;/td&gt;&lt;td&gt;0.45&lt;/td&gt;&lt;td&gt;64,919,667&lt;/td&gt;&lt;td&gt;4.13&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;LG디스플레이&lt;/td&gt;&lt;td&gt;20,800&lt;/td&gt;&lt;td&gt;-3.48&lt;/td&gt;&lt;td&gt;971,078&lt;/td&gt;&lt;td&gt;11.97&lt;/td&gt;&lt;td&gt;50,027,642&lt;/td&gt;&lt;td&gt;6.31&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;현대자동차&lt;/td&gt;&lt;td&gt;217,000&lt;/td&gt;&lt;td&gt;-0.91&lt;/td&gt;&lt;td&gt;654,372&lt;/td&gt;&lt;td&gt;3.51&lt;/td&gt;&lt;td&gt;32,678,479&lt;/td&gt;&lt;td&gt;0.70&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;삼성바이오로직스&lt;/td&gt;&lt;td&gt;983,000&lt;/td&gt;&lt;td&gt;1.13&lt;/td&gt;&lt;td&gt;683,405&lt;/td&gt;&lt;td&gt;4.81&lt;/td&gt;&lt;td&gt;20,547,059&lt;/td&gt;&lt;td&gt;0.33&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;아모레퍼시픽&lt;/td&gt;&lt;td&gt;220,500&lt;/td&gt;&lt;td&gt;-1.78&lt;/td&gt;&lt;td&gt;388,536&lt;/td&gt;&lt;td&gt;10.83&lt;/td&gt;&lt;td&gt;17,527,987&lt;/td&gt;&lt;td&gt;1.32&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;삼성중공업&lt;/td&gt;&lt;td&gt;6,170&lt;/td&gt;&lt;td&gt;-2.68&lt;/td&gt;&lt;td&gt;179,177&lt;/td&gt;&lt;td&gt;5.73&lt;/td&gt;&lt;td&gt;15,810,589&lt;/td&gt;&lt;td&gt;3.73&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;금호석유화학&lt;/td&gt;&lt;td&gt;192,500&lt;/td&gt;&lt;td&gt;-2.53&lt;/td&gt;&lt;td&gt;1,408,193&lt;/td&gt;&lt;td&gt;18.88&lt;/td&gt;&lt;td&gt;14,948,029&lt;/td&gt;&lt;td&gt;2.48&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;LG생활건강&lt;/td&gt;&lt;td&gt;1,444,000&lt;/td&gt;&lt;td&gt;1.62&lt;/td&gt;&lt;td&gt;498,012&lt;/td&gt;&lt;td&gt;7.06&lt;/td&gt;&lt;td&gt;14,773,656&lt;/td&gt;&lt;td&gt;0.66&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;신풍제약&lt;/td&gt;&lt;td&gt;66,800&lt;/td&gt;&lt;td&gt;-6.96&lt;/td&gt;&lt;td&gt;867,669&lt;/td&gt;&lt;td&gt;3.59&lt;/td&gt;&lt;td&gt;14,668,319&lt;/td&gt;&lt;td&gt;4.31&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;SK이노베이션&lt;/td&gt;&lt;td&gt;248,500&lt;/td&gt;&lt;td&gt;2.69&lt;/td&gt;&lt;td&gt;1,440,198&lt;/td&gt;&lt;td&gt;5.32&lt;/td&gt;&lt;td&gt;14,506,495&lt;/td&gt;&lt;td&gt;0.65&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;LG화학&lt;/td&gt;&lt;td&gt;896,000&lt;/td&gt;&lt;td&gt;2.05&lt;/td&gt;&lt;td&gt;1,345,033&lt;/td&gt;&lt;td&gt;3.79&lt;/td&gt;&lt;td&gt;14,318,371&lt;/td&gt;&lt;td&gt;0.24&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;한화솔루션&lt;/td&gt;&lt;td&gt;38,700&lt;/td&gt;&lt;td&gt;-2.27&lt;/td&gt;&lt;td&gt;564,867&lt;/td&gt;&lt;td&gt;15.41&lt;/td&gt;&lt;td&gt;12,955,934&lt;/td&gt;&lt;td&gt;1.70&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;카카오&lt;/td&gt;&lt;td&gt;146,000&lt;/td&gt;&lt;td&gt;-1.02&lt;/td&gt;&lt;td&gt;2,591,342&lt;/td&gt;&lt;td&gt;8.29&lt;/td&gt;&lt;td&gt;12,739,610&lt;/td&gt;&lt;td&gt;0.20&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;포스코케미칼&lt;/td&gt;&lt;td&gt;155,000&lt;/td&gt;&lt;td&gt;1.31&lt;/td&gt;&lt;td&gt;1,070,661&lt;/td&gt;&lt;td&gt;14.55&lt;/td&gt;&lt;td&gt;12,592,228&lt;/td&gt;&lt;td&gt;1.05&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;한국조선해양&lt;/td&gt;&lt;td&gt;119,000&lt;/td&gt;&lt;td&gt;-0.83&lt;/td&gt;&lt;td&gt;93,640&lt;/td&gt;&lt;td&gt;2.25&lt;/td&gt;&lt;td&gt;10,713,972&lt;/td&gt;&lt;td&gt;1.22&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;롯데관광개발&lt;/td&gt;&lt;td&gt;18,900&lt;/td&gt;&lt;td&gt;-2.07&lt;/td&gt;&lt;td&gt;56,884&lt;/td&gt;&lt;td&gt;6.66&lt;/td&gt;&lt;td&gt;9,874,871&lt;/td&gt;&lt;td&gt;7.25&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;두산중공업&lt;/td&gt;&lt;td&gt;20,800&lt;/td&gt;&lt;td&gt;-4.15&lt;/td&gt;&lt;td&gt;215,178&lt;/td&gt;&lt;td&gt;1.67&lt;/td&gt;&lt;td&gt;9,809,839&lt;/td&gt;&lt;td&gt;0.89&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;넷마블&lt;/td&gt;&lt;td&gt;127,000&lt;/td&gt;&lt;td&gt;-3.79&lt;/td&gt;&lt;td&gt;1,398,730&lt;/td&gt;&lt;td&gt;25.51&lt;/td&gt;&lt;td&gt;9,808,533&lt;/td&gt;&lt;td&gt;0.85&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;삼성전자&lt;/td&gt;&lt;td&gt;74,400&lt;/td&gt;&lt;td&gt;-3.38&lt;/td&gt;&lt;td&gt;13,590,049&lt;/td&gt;&lt;td&gt;3.00&lt;/td&gt;&lt;td&gt;9,771,279&lt;/td&gt;&lt;td&gt;0.02&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;여기서 대차잔고액은 높은데 공매도율은 낮은 종목으로는 HMM이 있습니다. HMM의 공매도 흐름을 살펴보면 다음과 같습니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;HMM 공매도&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;800&quot; height=&quot;470&quot; src=&quot;https://blog.quantylab.com/_astro/short.BNgtSj8F_Z1B62X7.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;7월달을 보면 공매도율이 무려 25% 가까이 있었다는 것을 알 수 있습니다. 이 공매도 물량을 언제 상환할 지는 모르겠지만 최근 공매도율은 낮아진 것으로 보입니다.&lt;/p&gt;
&lt;p&gt;여기에 &lt;a href=&quot;http://quantylab.com/marketindex/&quot;&gt;BDI&lt;/a&gt; 역시 높은 상황이라 HMM이 다시 올라갈 여지도 있어 보입니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;BDI&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;410&quot; height=&quot;216&quot; src=&quot;https://blog.quantylab.com/_astro/bdi.C7MG6zsu_Z12fd6.webp&quot;&gt;&lt;/p&gt;</content:encoded><category>공매도</category><category>대차잔고</category><category>숏커버링</category></item><item><title>주요 MSCI 지수 차트 한꺼번에 보기</title><link>https://blog.quantylab.com/blog/2021-08-07-msci/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-08-07-msci/</guid><pubDate>Sat, 07 Aug 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;MSCI 지수는 모건스탠리캐피탈인터내셔널(MSCI)에서 발표하는 선진국/신흥국, 지역, 국가 기준의 주식 종합 지수입니다. MSCI 지수는 많은 펀드들이 추종하고 있어서 주식투자에 있어서 매우 중요한 지수입니다.&lt;/p&gt;
&lt;p&gt;한국의 코스피, 미국의 S&amp;#x26;P 500, 일본의 닛케이, 중국의 상해종합지수, 홍콩의 항셍지수 등 각 국가별로 주식 종합 지수가 존재합니다. 그럼 “왜 굳이 MSCI 지수가 필요하지?”라는 의문이 생길 수 있습니다. 각 국가에서 주식종합지수를 만드는 방법이 다르기 때문에 획일화된 방법으로 각 국가의 지수를 만들어야할 필요가 생겼습니다. 이에 모건스탠리캐피탈인터내셔널(MSCI)에서 이 역할을 수행하는 것입니다.&lt;/p&gt;
&lt;p&gt;MSCI는 국가별 뿐만 아니라 지역(아시아, 아메리카, 유럽 등) 별로 또는 선진국/신흥국 별로 주식종합지수를 만들기도 합니다.&lt;/p&gt;
&lt;p&gt;매우 다양한 MSCI 지수들 중에서 한국 주식 투자에 주로 참고해야 할 주요 MSCI 지수들의 차트를 퀀티랩에서 한꺼번에 볼 수 있습니다. &lt;a href=&quot;http://quantylab.com/msci/&quot;&gt;시장지표 / MSCI&lt;/a&gt; 메뉴에서 다은과 같은 차트들을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;MSCI&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1674&quot; height=&quot;744&quot; src=&quot;https://blog.quantylab.com/_astro/1.Dq3wE1oI_Z296OyL.webp&quot;&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.msci.com/developed-markets&quot;&gt;MSCI WORLD&lt;/a&gt;는 23개 선진 국가 주식 시장을 대상으로 합니다.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.msci.com/acwi&quot;&gt;MSCI WCWI&lt;/a&gt;는 23개 선진 국가와 27개 신흥 국가 주식 시장을 대상으로 합니다.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://www.msci.com/our-solutions/index/emerging-markets&quot;&gt;MSCI EM&lt;/a&gt;은 26개 신흥 국가 주식 시장을 대상으로 합니다.&lt;/li&gt;
&lt;li&gt;그 외는 각 국가별 지수 입니다.&lt;/li&gt;
&lt;/ul&gt;
&lt;blockquote&gt;
&lt;p&gt;각 지수에 포함된 국가 수, 종목, 비중 등은 변경될 수 있습니다.&lt;/p&gt;
&lt;/blockquote&gt;</content:encoded><category>MSCI</category><category>모건스탠리</category><category>선진국</category><category>신흥국</category><category>SOX</category><category>필라델피아반도체</category><category>BDI</category><category>발틱운임</category></item><item><title>한국/미국 금리 차트 보기</title><link>https://blog.quantylab.com/blog/2021-07-31-marketcharts_interest/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-07-31-marketcharts_interest/</guid><pubDate>Sat, 31 Jul 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;앞서 퀀티랩에서 해외증시, 환율, 원자재 차트를 볼 수 있다고 소개 드렸는데, 중요한 지표인 금리가 빠져 있었습니다. 이제 한국과 미국 금리 차트도 퀀티랩에서 확인할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://quantylab.com/interest/&quot;&gt;시장지표 / 금리&lt;/a&gt; 메뉴에서 금리 관련 차트들을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;금리&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1253&quot; height=&quot;264&quot; src=&quot;https://blog.quantylab.com/_astro/1.CEQ8syWZ_Z1tIgb.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;현재는 &lt;code dir=&quot;auto&quot;&gt;한국 기준 금리&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;미국 기준 금리&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;미국 10년물 국채 금리&lt;/code&gt;를 볼 수 있는데 앞으로 한국 국채 금리를 포함해 다양한 금리 데이터도 추가될 예정입니다.&lt;/p&gt;
&lt;p&gt;추가되었으면 하는 데이터가 있다면 메일, 카페 등의 채널을 통해 요청해 주시면 최대한 서비스에 반영하도록 하겠습니다.&lt;/p&gt;</content:encoded><category>한국 기준 금리</category><category>미국 기준 금리</category></item><item><title>해외증시, 환율, 원자재 차트 한눈에 보기</title><link>https://blog.quantylab.com/blog/2021-06-13-marketcharts/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-06-13-marketcharts/</guid><pubDate>Sun, 13 Jun 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;퀀티랩에서 해외증시, 환율, 원자재 차트들을 볼 수 있습니다. 이러한 시장 지표들의 추세를 잘 확인하면 주식 투자에 큰 도움이 될 것입니다.&lt;/p&gt;
&lt;p&gt;퀀티랩의 &lt;code dir=&quot;auto&quot;&gt;시장지표&lt;/code&gt; 메뉴를 누르면 나오는 &lt;a href=&quot;http://quantylab.com/fmarkets/&quot;&gt;해외증시&lt;/a&gt;, &lt;a href=&quot;http://quantylab.com/fx/&quot;&gt;환율&lt;/a&gt;, &lt;a href=&quot;http://quantylab.com/commodities/&quot;&gt;원자재&lt;/a&gt; 하위 메뉴로 차트들을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://quantylab.com/fmarkets/&quot;&gt;해외증시&lt;/a&gt;는 &lt;code dir=&quot;auto&quot;&gt;변동성지수 VIX&lt;/code&gt;와 &lt;code dir=&quot;auto&quot;&gt;다우산업&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;나스닥종합&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;S&amp;#x26;P 500&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;니케이 225&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;상해종합&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;항셍&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;영국 FTSE 100&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;프랑스 CAC 40&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;독일 DAX 30&lt;/code&gt;을 볼 수 있습니다. &lt;code dir=&quot;auto&quot;&gt;VIX&lt;/code&gt;는 S&amp;#x26;P 500 지수 옵션의 30일 뒤의 기대 변동성을 입니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;해외증시&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1674&quot; height=&quot;744&quot; src=&quot;https://blog.quantylab.com/_astro/fmarkets.Bwo0b6mv_ZjOBmy.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://quantylab.com/fx/&quot;&gt;환율&lt;/a&gt; 페이지에서는 &lt;code dir=&quot;auto&quot;&gt;미달러&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;유로&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;엔&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;위안&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;홍콩달러&lt;/code&gt; 환율을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;환율&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1674&quot; height=&quot;504&quot; src=&quot;https://blog.quantylab.com/_astro/fx.nWZIy8pn_Z1vTe33.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://quantylab.com/commodities/&quot;&gt;원자재&lt;/a&gt; 페이지에서는 대표적인 원자재지수인 &lt;code dir=&quot;auto&quot;&gt;GSCI&lt;/code&gt;를 비롯해 다양한 원자재 선물의 차트들을 한눈에 보여줍니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;원자재&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;1674&quot; height=&quot;1704&quot; src=&quot;https://blog.quantylab.com/_astro/commodities.DdtMUZt2_1tNvEL.webp&quot;&gt;&lt;/p&gt;</content:encoded><category>해외증시</category><category>환율</category><category>원자재</category><category>foreign market</category><category>fx</category><category>commodity</category></item><item><title>대신증권 크레온 API로 매수/매도 주문 넣고 확인하기</title><link>https://blog.quantylab.com/blog/2021-06-06-creon_order/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-06-06-creon_order/</guid><pubDate>Sun, 06 Jun 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;이번 포스트에서는 대신증권 크레온 API로 주식 주문을 내고 실시간으로 체결을 확인하고 주문 내역을 조회하는 방법을 다룹니다.&lt;/p&gt;
&lt;div&gt;&lt;h3 id=&quot;매수매도-주문-내기&quot;&gt;매수/매도 주문 내기&lt;/h3&gt;&lt;/div&gt;
&lt;p&gt;먼저 매수 또는 매도 주문을 내는 방법을 알아보겠습니다. 주문은 크레온 API의 &lt;a href=&quot;https://money2.creontrade.com/e5/mboard/ptype_basic/HTS_Plus_Helper/DW_Basic_Read_Page.aspx?boardseq=284&amp;#x26;seq=159&amp;#x26;page=1&amp;#x26;searchString=CpTd0311&amp;#x26;p=8841&amp;#x26;v=8643&amp;#x26;m=9505&quot;&gt;CpTrade.CpTd0311&lt;/a&gt; 모듈을 사용하면 됩니다.&lt;/p&gt;
&lt;p&gt;다음과 같이 &lt;code dir=&quot;auto&quot;&gt;order()&lt;/code&gt; 함수를 선언하고, &lt;code dir=&quot;auto&quot;&gt;action&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;code&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;amount&lt;/code&gt;를 매수/매도 구분, 주문할 종목 코드, 주식 수로 각각 입력 받도록 했습니다. 물론 더 다양한 입력을 받을 수 있게 이 함수를 수정할 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; win32com.client&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;class&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;Creon&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;__init__&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.orderevent_handler &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;None&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;order&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;action&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;amount&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;not&lt;/span&gt;&lt;span&gt; code.&lt;/span&gt;&lt;span&gt;startswith&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;A&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;code &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;A&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;+&lt;/span&gt;&lt;span&gt; code&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;account_no, account_gflags &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;init_trade&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd0311.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; action&lt;/span&gt;&lt;span&gt;)  &lt;/span&gt;&lt;span&gt;# 1: 매도, 2: 매수&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd0311.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; account_no&lt;/span&gt;&lt;span&gt;)  &lt;/span&gt;&lt;span&gt;# 계좌번호&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd0311.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; account_gflags&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;])  &lt;/span&gt;&lt;span&gt;# 상품구분&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd0311.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;3&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; code&lt;/span&gt;&lt;span&gt;)  &lt;/span&gt;&lt;span&gt;# 종목코드&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd0311.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;4&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; amount&lt;/span&gt;&lt;span&gt;)  &lt;/span&gt;&lt;span&gt;# 매수수량&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd0311.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;8&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;03&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)  &lt;/span&gt;&lt;span&gt;# 시장가&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;result &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd0311.&lt;/span&gt;&lt;span&gt;BlockRequest&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; result &lt;/span&gt;&lt;span&gt;!=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;print&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;order request failed.&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;file&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;sys.stderr&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;status &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd0311.&lt;/span&gt;&lt;span&gt;GetDibStatus&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;msg &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd0311.&lt;/span&gt;&lt;span&gt;GetDibMsg1&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; status &lt;/span&gt;&lt;span&gt;!=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;print&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;order failed. &lt;/span&gt;&lt;span&gt;{}&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;format&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;msg&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;file&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;sys.stderr&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;buy&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;amount&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;return&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;order&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; code&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; amount&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;sell&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;amount&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;return&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;order&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; code&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; amount&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;&lt;code dir=&quot;auto&quot;&gt;매수&lt;/code&gt;할 때는 &lt;code dir=&quot;auto&quot;&gt;buy()&lt;/code&gt; 함수를 호출해서 &lt;code dir=&quot;auto&quot;&gt;action&lt;/code&gt;을 &lt;code dir=&quot;auto&quot;&gt;2&lt;/code&gt;로 지정하고, 매도할 때는 &lt;code dir=&quot;auto&quot;&gt;sell()&lt;/code&gt; 함수를 호출해서 &lt;code dir=&quot;auto&quot;&gt;action&lt;/code&gt;을 &lt;code dir=&quot;auto&quot;&gt;1&lt;/code&gt;로 지정하도록 했습니다.&lt;/p&gt;
&lt;p&gt;여기서는 시장가로 매수/매도를 하도록 했는데 지정가, 최유리지정가, 최우선지정가 등으로 변경할 수 있습니다. 이 부분은 &lt;a href=&quot;https://money2.creontrade.com/e5/mboard/ptype_basic/HTS_Plus_Helper/DW_Basic_Read_Page.aspx?boardseq=284&amp;#x26;seq=159&amp;#x26;page=1&amp;#x26;searchString=CpTd0311&amp;#x26;p=8841&amp;#x26;v=8643&amp;#x26;m=9505&quot;&gt;CpTrade.CpTd0311&lt;/a&gt; 문서에서 &lt;code dir=&quot;auto&quot;&gt;SetInputValue&lt;/code&gt;의 &lt;code dir=&quot;auto&quot;&gt;8 - (string) 주문호가구분코드&lt;/code&gt; 항목을 함고하시기 바랍니다.&lt;/p&gt;
&lt;p&gt;이렇게 매수 또는 매도 주문을 넣고 체결 되었을 때 다음과 같이 이벤트를 받을 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;class&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;Creon&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;subscribe_orderevent&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;cb&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;obj &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; win32com.client.&lt;/span&gt;&lt;span&gt;Dispatch&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;Dscbo1.CpConclusion&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;handler &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; win32com.client.&lt;/span&gt;&lt;span&gt;WithEvents&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;obj&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; OrderEventHandler&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;handler.&lt;/span&gt;&lt;span&gt;set_attrs&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;obj&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; cb&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.orderevent_handler &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; obj&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;obj.&lt;/span&gt;&lt;span&gt;Subscribe&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;unsubscribe_orderevent&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.orderevent_handler &lt;/span&gt;&lt;span&gt;is&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;not&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;None&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.orderevent_handler.&lt;/span&gt;&lt;span&gt;Unsubscribe&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.orderevent_handler &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;None&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;class&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;OrderEventHandler&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;EventHandler&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;OnReceived&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;item &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;계좌명&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;체결수량&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;3&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;체결가격&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;4&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;주문번호&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;5&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;원주문번호&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;6&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;계좌번호&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;7&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;상품관리구분코드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;8&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;종목코드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;9&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;매매구분코드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;12&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;체결구분코드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;14&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;체결구분코드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;14&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;체결구분코드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;14&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;현금신용대용구분코드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;17&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;cb&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;item&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;&lt;code dir=&quot;auto&quot;&gt;subscribe_orderevent()&lt;/code&gt; 함수를 호출해서 체결 이벤트를 실시간으로 받아올 수 있습니다. 매수/매도 주문이 체결되면 지정된 콜백 함수 &lt;code dir=&quot;auto&quot;&gt;cb&lt;/code&gt;로 체결 정보를 전송합니다. 이를 위해서 &lt;code dir=&quot;auto&quot;&gt;OrderEventHandler&lt;/code&gt; 클래스를 선언했고, 이 클래스의 &lt;code dir=&quot;auto&quot;&gt;OnReceived()&lt;/code&gt; 함수에서 체결 정보를 &lt;code dir=&quot;auto&quot;&gt;cb&lt;/code&gt;에 전송합니다.&lt;/p&gt;
&lt;p&gt;다음과 같이 지금까지 주문한 내역을 확인할 수도 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;class&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;Creon&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;__init__&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;account_no=&lt;/span&gt;&lt;span&gt;&apos;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd5341 &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; win32com.client.&lt;/span&gt;&lt;span&gt;Dispatch&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;CpTrade.CpTd5341&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;get_trade_history&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;account_no, account_gflags &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;init_trade&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd5341.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; account_no&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd5341.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; account_gflags&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;])  &lt;/span&gt;&lt;span&gt;# 상품구분&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_fields &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;3&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;4&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;5&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;6&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;7&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;8&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;9&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;10&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;11&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;12&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;13&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;14&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;16&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;17&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;18&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;19&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;22&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;24&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_keys &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;상품관리구분코드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;주문번호&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;원주문번호&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;종목코드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;종목이름&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;주문내용&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;주문호가구분코드내용&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;주문수량&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;주문단가&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;총체결수량&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;체결수량&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;체결단가&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;확인수량&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;정정취소구분내용 &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;거부사유내용&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;채권매수일&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;거래세과세구분내용&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;현금신용대용구분내용&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;주문입력매체코드내용&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;정정취소가능수량&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;매매구분&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;result &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;request&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj_CpTrade_CpTd5341&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;dict&lt;/span&gt;&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;zip&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;_fields&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _keys&lt;/span&gt;&lt;span&gt;))&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;cntidx&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;6&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;return&lt;/span&gt;&lt;span&gt; result&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;주문 이후에 &lt;code dir=&quot;auto&quot;&gt;get_trade_history()&lt;/code&gt; 함수를 호출하면 다음과 같이 매수/매도 주문에 대한 정보들을 받아올 수 있습니다. 여기서는 삼성전자를 10주씩 &lt;code dir=&quot;auto&quot;&gt;매수-&gt;매도-&gt;매수&lt;/code&gt;한 다음 &lt;code dir=&quot;auto&quot;&gt;get_trade_history()&lt;/code&gt; 함수를 호출한 결과 입니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;{&apos;data&apos;: [{&apos;상품관리구분코드&apos;: &apos;10&apos;, &apos;주문번호&apos;: 6095, &apos;원주문번호&apos;: 0, &apos;종목코드&apos;: &apos;A005930&apos;, &apos;종목이름&apos;: &apos;삼성전자&apos;, &apos;주문내용&apos;: &apos;정규장현금매수&apos;, &apos;주문호가구분코드내용&apos;: &apos;시장가&apos;, &apos;주문수량&apos;: 10, &apos;주문단가&apos;: 0, &apos;총체결수량&apos;: 10, &apos;체결수량&apos;: 10, &apos;체결단가&apos;: 82430, &apos;확인수량&apos;: 0, &apos;정정취소구분내용 &apos;: &apos;정상주문&apos;, &apos;거부사유내용&apos;: &apos;&apos;, &apos;채권매수일&apos;: &apos;&apos;, &apos;거래세과세구분내용&apos;: &apos;&apos;, &apos;현금신용대용구분내용&apos;: &apos;&apos;, &apos;주문입력매체코드내용&apos;: &apos;C8&apos;, &apos;정정취소가능수량&apos;: 0, &apos;매매구분&apos;: &apos;매수&apos;}, {&apos;상품관리구분코드&apos;: &apos;10&apos;, &apos;주문번호&apos;: 6099, &apos;원주문번호&apos;: 0, &apos;종목코드&apos;: &apos;A005930&apos;, &apos;종목이름&apos;: &apos;삼성전자&apos;, &apos;주문내용&apos;: &apos;정규장현금매도&apos;, &apos;주문호가구분코드내용&apos;: &apos;시장가&apos;, &apos;주문수량&apos;: 10, &apos;주문단가&apos;: 0, &apos;총체결수량&apos;: 10, &apos;체결수량&apos;: 10, &apos;체결단가&apos;: 82500, &apos;확인수량&apos;: 0, &apos;정정취소구분내용 &apos;: &apos;정상주문&apos;, &apos;거부사유내용&apos;: &apos;&apos;, &apos;채권매수일&apos;: &apos;&apos;, &apos;거래세과세구분내용&apos;: &apos;&apos;, &apos;현금신용대용구분내용&apos;: &apos;&apos;, &apos;주문입력매체코드내용&apos;: &apos;C8&apos;, &apos;정정취소가능수량&apos;: 0, &apos;매매구분&apos;: &apos;매도&apos;}, {&apos;상품관리구분코드&apos;: &apos;10&apos;, &apos;주문번호&apos;: 6121, &apos;원주문번호&apos;: 0, &apos;종목코드&apos;: &apos;A005930&apos;, &apos;종목이름&apos;: &apos;삼성전자&apos;, &apos;주문내용&apos;: &apos;정규장현금매수&apos;, &apos;주문호가구분코드내용&apos;: &apos;시장가&apos;, &apos;주문수량&apos;: 10, &apos;주문단가&apos;: 0, &apos;총체결수량&apos;: 10, &apos;체결수량&apos;: 10, &apos;체결단가&apos;: 82500, &apos;확인수량&apos;: 0, &apos;정정취소구분내용 &apos;: &apos;정상주문&apos;, &apos;거부사유내용&apos;: &apos;&apos;, &apos;채권매수일&apos;: &apos;&apos;, &apos;거래세과세구분내용&apos;: &apos;&apos;, &apos;현금신용대용구분내용&apos;: &apos;&apos;, &apos;주문입력매체코드내용&apos;: &apos;C8&apos;, &apos;정정취소가능수량&apos;: 0, &apos;매매구분&apos;: &apos;매수&apos;}]}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;퀀티랩 systrader 프로젝트에서 전반적인 시스템 트레이딩 코드를 공개하고 있습니다. 앞으로 시스템 트레이딩에 필요한 주요 기능들을 &lt;a href=&quot;https://github.com/quantylab/systrader/blob/master/quantylab/systrader/creon/_creon.py&quot;&gt;퀀티랩 Github systrader 리포지토리&lt;/a&gt;에서 오픈소스로 개발해 나갈 예정입니다.&lt;/p&gt;
&lt;p&gt;SysTrader의 주요 TODO 태스크는 다음과 같습니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;주요 시스템 트레이딩 기능 구현&lt;/li&gt;
&lt;li&gt;딥러닝 모델 기반 자동 매매&lt;/li&gt;
&lt;li&gt;PyQt5 기반의 GUI 개발&lt;/li&gt;
&lt;li&gt;매매 현황 리포팅&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;관심 있으신 모든 분들께서 이 프로젝트에 참여해 주시면 감사하겠습니다. SysTrader는 모든 개미들을 위한 견고한 시스템 트레이딩 솔루션이 되는 것을 목표로 합니다.&lt;/p&gt;</content:encoded><category>python</category><category>creon</category><category>크레온</category><category>realtime</category><category>실시간</category><category>주문</category><category>매수</category><category>매도</category></item><item><title>2021년 신규 상장 공모주</title><link>https://blog.quantylab.com/blog/2021-05-04-ipo_2021/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-05-04-ipo_2021/</guid><pubDate>Tue, 04 May 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;2021년은 많은 대어급 기업들의 IPO(기업공개, initial public offering)가 예정되어 있습니다. 며칠 전 있었던 &lt;code dir=&quot;auto&quot;&gt;SK아이이테크놀로지&lt;/code&gt;의 청약은 엄청난 흥행으로 마쳤습니다. 확정 공모가는 105,000원이고 청약 경쟁률은 288:1에 달했습니다.&lt;/p&gt;
&lt;p&gt;이번 포스트에서는 2021년에 공모일정이 나와있고 앞으로 공모가 예정되어 있는 기업들을 알아보겠습니다.&lt;/p&gt;
&lt;p&gt;다음 표는 공모일정이 나와있는 기업들 입니다. &lt;a href=&quot;http://quantylab.com/stock/302440&quot;&gt;SK바이오사이언스&lt;/a&gt;와 &lt;code dir=&quot;auto&quot;&gt;SK아이이테크놀로지&lt;/code&gt;가 엄청난 흥행으로 공모를 마친 바 있습니다.&lt;/p&gt;
















































































































































































































































































































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;종목명&lt;/th&gt;&lt;th&gt;신규상장일&lt;/th&gt;&lt;th&gt;공모시작&lt;/th&gt;&lt;th&gt;공모종료&lt;/th&gt;&lt;th&gt;희망공모가&lt;/th&gt;&lt;th&gt;확정공모가&lt;/th&gt;&lt;th&gt;청약경쟁률&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;아모센스&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210615&lt;/td&gt;&lt;td&gt;20210616&lt;/td&gt;&lt;td&gt;13,300~16,300&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;엘비루셈&lt;/td&gt;&lt;td&gt;20210611&lt;/td&gt;&lt;td&gt;20210602&lt;/td&gt;&lt;td&gt;20210603&lt;/td&gt;&lt;td&gt;12,000~14,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;에이디엠코리아&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210525&lt;/td&gt;&lt;td&gt;20210526&lt;/td&gt;&lt;td&gt;2,900~3,300&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;제주맥주&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210513&lt;/td&gt;&lt;td&gt;20210514&lt;/td&gt;&lt;td&gt;2,600~2,900&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;진시스템&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210513&lt;/td&gt;&lt;td&gt;20210514&lt;/td&gt;&lt;td&gt;16,000~20,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;삼영에스앤씨&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210511&lt;/td&gt;&lt;td&gt;20210512&lt;/td&gt;&lt;td&gt;7,800~10,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;NH스팩19호(유가)&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210511&lt;/td&gt;&lt;td&gt;20210512&lt;/td&gt;&lt;td&gt;2,000~2,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;삼성스팩4호&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210511&lt;/td&gt;&lt;td&gt;20210512&lt;/td&gt;&lt;td&gt;2,000~2,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;샘씨엔에스&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210510&lt;/td&gt;&lt;td&gt;20210511&lt;/td&gt;&lt;td&gt;5,000~5,700&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;라온테크&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210510&lt;/td&gt;&lt;td&gt;20210511&lt;/td&gt;&lt;td&gt;12,800~15,800&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;씨앤씨인터내셔널&lt;/td&gt;&lt;td&gt;20210517&lt;/td&gt;&lt;td&gt;20210506&lt;/td&gt;&lt;td&gt;20210507&lt;/td&gt;&lt;td&gt;35,000~47,500&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;에이치피오&lt;/td&gt;&lt;td&gt;20210514&lt;/td&gt;&lt;td&gt;20210503&lt;/td&gt;&lt;td&gt;20210504&lt;/td&gt;&lt;td&gt;22,200~25,400&lt;/td&gt;&lt;td&gt;22,200&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;하이스팩6호&lt;/td&gt;&lt;td&gt;20210510&lt;/td&gt;&lt;td&gt;20210428&lt;/td&gt;&lt;td&gt;20210429&lt;/td&gt;&lt;td&gt;2,000~2,000&lt;/td&gt;&lt;td&gt;2,000&lt;/td&gt;&lt;td&gt;7.63:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;SK아이이테크놀로지(유가)&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;20210511&lt;/td&gt;&lt;td&gt;20210428&lt;/td&gt;&lt;td&gt;20210429&lt;/td&gt;&lt;td&gt;78,000~105,000&lt;/td&gt;&lt;td&gt;105,000&lt;/td&gt;&lt;td&gt;288.17:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;쿠콘&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210419&lt;/td&gt;&lt;td&gt;20210420&lt;/td&gt;&lt;td&gt;31,000~40,000&lt;/td&gt;&lt;td&gt;45,000&lt;/td&gt;&lt;td&gt;1596.32:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;해성티피씨&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210412&lt;/td&gt;&lt;td&gt;20210413&lt;/td&gt;&lt;td&gt;9,500~11,500&lt;/td&gt;&lt;td&gt;13,000&lt;/td&gt;&lt;td&gt;2053.27:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;이삭엔지니어링&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210412&lt;/td&gt;&lt;td&gt;20210413&lt;/td&gt;&lt;td&gt;9,500~11,500&lt;/td&gt;&lt;td&gt;11,500&lt;/td&gt;&lt;td&gt;2262.09:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;유진스팩6호&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210330&lt;/td&gt;&lt;td&gt;20210331&lt;/td&gt;&lt;td&gt;2,000~2,000&lt;/td&gt;&lt;td&gt;2,000&lt;/td&gt;&lt;td&gt;236.23:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;유안타스팩8호&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210325&lt;/td&gt;&lt;td&gt;20210326&lt;/td&gt;&lt;td&gt;2,000~2,000&lt;/td&gt;&lt;td&gt;2,000&lt;/td&gt;&lt;td&gt;84.91:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;엔시스&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210322&lt;/td&gt;&lt;td&gt;20210323&lt;/td&gt;&lt;td&gt;13,000~16,500&lt;/td&gt;&lt;td&gt;19,000&lt;/td&gt;&lt;td&gt;2573.60:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;자이언트스텝&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210315&lt;/td&gt;&lt;td&gt;20210316&lt;/td&gt;&lt;td&gt;9,000~11,000&lt;/td&gt;&lt;td&gt;11,000&lt;/td&gt;&lt;td&gt;2342:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;제노코&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210315&lt;/td&gt;&lt;td&gt;20210316&lt;/td&gt;&lt;td&gt;27,000~33,000&lt;/td&gt;&lt;td&gt;36,000&lt;/td&gt;&lt;td&gt;2095.45:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;라이프시맨틱스&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210311&lt;/td&gt;&lt;td&gt;20210312&lt;/td&gt;&lt;td&gt;9,000~12,500&lt;/td&gt;&lt;td&gt;12,500&lt;/td&gt;&lt;td&gt;1774.57:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/302440&quot;&gt;&lt;strong&gt;SK바이오사이언스(유가)&lt;/strong&gt;&lt;/a&gt;&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210309&lt;/td&gt;&lt;td&gt;20210310&lt;/td&gt;&lt;td&gt;49,000~65,000&lt;/td&gt;&lt;td&gt;65,000&lt;/td&gt;&lt;td&gt;335.36:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;바이오다인&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210308&lt;/td&gt;&lt;td&gt;20210309&lt;/td&gt;&lt;td&gt;22,500~28,700&lt;/td&gt;&lt;td&gt;30,000&lt;/td&gt;&lt;td&gt;48.36:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;디비금융스팩9호&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210305&lt;/td&gt;&lt;td&gt;20210308&lt;/td&gt;&lt;td&gt;2,000~2,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;8.56:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;네오이뮨텍&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210304&lt;/td&gt;&lt;td&gt;20210305&lt;/td&gt;&lt;td&gt;5,400~6,400&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;664.65:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;프레스티지바이오로직스&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210302&lt;/td&gt;&lt;td&gt;20210303&lt;/td&gt;&lt;td&gt;8,700~12,400&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;126.06:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;싸이버원&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210302&lt;/td&gt;&lt;td&gt;20210303&lt;/td&gt;&lt;td&gt;7,600~8,300&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;1880.43:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;나노씨엠에스&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210225&lt;/td&gt;&lt;td&gt;20210226&lt;/td&gt;&lt;td&gt;14,500~18,500&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;1243.48:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;하나머스트스팩7호&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210223&lt;/td&gt;&lt;td&gt;20210224&lt;/td&gt;&lt;td&gt;2,000~2,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;237.46:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;IBKS스팩15호&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210218&lt;/td&gt;&lt;td&gt;20210219&lt;/td&gt;&lt;td&gt;2,000~2,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;101.73:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;뷰노&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210216&lt;/td&gt;&lt;td&gt;20210217&lt;/td&gt;&lt;td&gt;15,000~19,500&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;1102.7:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;씨이랩&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210215&lt;/td&gt;&lt;td&gt;20210216&lt;/td&gt;&lt;td&gt;23,000~31,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;195.53:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;유일에너테크&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210215&lt;/td&gt;&lt;td&gt;20210216&lt;/td&gt;&lt;td&gt;11,000~14,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;683.55:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;오로스테크놀로지&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210215&lt;/td&gt;&lt;td&gt;20210216&lt;/td&gt;&lt;td&gt;17,000~21,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;1033.82:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;피엔에이치테크&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210203&lt;/td&gt;&lt;td&gt;20210204&lt;/td&gt;&lt;td&gt;14,000~17,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;1528.76:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;하나금융스팩17호&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210129&lt;/td&gt;&lt;td&gt;20210201&lt;/td&gt;&lt;td&gt;2,000~2,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;168.68:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;아이퀘스트&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210127&lt;/td&gt;&lt;td&gt;20210128&lt;/td&gt;&lt;td&gt;9,200~10,600&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;2853.34:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;프레스티지바이오파마(유가)&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210125&lt;/td&gt;&lt;td&gt;20210126&lt;/td&gt;&lt;td&gt;25,000~32,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;237.13:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;와이더플래닛&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210125&lt;/td&gt;&lt;td&gt;20210126&lt;/td&gt;&lt;td&gt;12,000~15,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;1357.98:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;레인보우로보틱스&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210125&lt;/td&gt;&lt;td&gt;20210126&lt;/td&gt;&lt;td&gt;7,000~9,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;1201.26:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;신한스팩7호&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210125&lt;/td&gt;&lt;td&gt;20210126&lt;/td&gt;&lt;td&gt;2,000~2,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;7.45:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;솔루엠(유가)&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210121&lt;/td&gt;&lt;td&gt;20210122&lt;/td&gt;&lt;td&gt;13,700~15,500&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;1147.76:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;핑거&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210121&lt;/td&gt;&lt;td&gt;20210122&lt;/td&gt;&lt;td&gt;13,000~15,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;939.39:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;씨앤투스성진&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210119&lt;/td&gt;&lt;td&gt;20210120&lt;/td&gt;&lt;td&gt;26,000~32,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;674.04:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;모비릭스&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210119&lt;/td&gt;&lt;td&gt;20210120&lt;/td&gt;&lt;td&gt;10,500~14,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;1485.51:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;선진뷰티사이언스&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210118&lt;/td&gt;&lt;td&gt;20210119&lt;/td&gt;&lt;td&gt;10,100~11,500&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;1987.74:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;엔비티&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210112&lt;/td&gt;&lt;td&gt;20210113&lt;/td&gt;&lt;td&gt;13,200~17,600&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;4397.67:1&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;한국스팩9호&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;20210112&lt;/td&gt;&lt;td&gt;20210113&lt;/td&gt;&lt;td&gt;2,000~2,000&lt;/td&gt;&lt;td&gt;&lt;/td&gt;&lt;td&gt;46.54:1&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;&lt;code dir=&quot;auto&quot;&gt;SK바이오사이언스&lt;/code&gt;의 경우 따상에 성공하고 이후 주가가 큰폭으로 하락했다가 일부 회복한 상태입니다. 이번 &lt;code dir=&quot;auto&quot;&gt;SK아이이테크놀로지&lt;/code&gt;도 따상할 것이란 예측이 많은 상황입니다.&lt;/p&gt;
&lt;p&gt;기업공개가 예정된 종목들도 이렇게 많이 있습니다. 이들 중에서 특히 &lt;code dir=&quot;auto&quot;&gt;크래프톤&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;카카오벵크&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;한컴라이프케어&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;아주스틸&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;카카오페이&lt;/code&gt;에 관심이 갑니다.&lt;/p&gt;





































































































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;기업명&lt;/th&gt;&lt;th&gt;청구일&lt;/th&gt;&lt;th&gt;당기순이익(백만)&lt;/th&gt;&lt;th&gt;매출액(백만)&lt;/th&gt;&lt;th&gt;자본금(백만)&lt;/th&gt;&lt;th&gt;주업종&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;에스앤디&lt;/td&gt;&lt;td&gt;20210430&lt;/td&gt;&lt;td&gt;7,359&lt;/td&gt;&lt;td&gt;56,537&lt;/td&gt;&lt;td&gt;1,518&lt;/td&gt;&lt;td&gt;기타 식품 제조업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;비트나인&lt;/td&gt;&lt;td&gt;20210428&lt;/td&gt;&lt;td&gt;-10,226&lt;/td&gt;&lt;td&gt;11,576&lt;/td&gt;&lt;td&gt;4,110&lt;/td&gt;&lt;td&gt;응용소프트웨어 개발 및소프트웨어&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;에이비온&lt;/td&gt;&lt;td&gt;20210428&lt;/td&gt;&lt;td&gt;-10,476&lt;/td&gt;&lt;td&gt;1,994&lt;/td&gt;&lt;td&gt;7,168&lt;/td&gt;&lt;td&gt;자연과학 및 공학 연구개발업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;라이콤&lt;/td&gt;&lt;td&gt;20210427&lt;/td&gt;&lt;td&gt;3,475&lt;/td&gt;&lt;td&gt;30,604&lt;/td&gt;&lt;td&gt;1,469&lt;/td&gt;&lt;td&gt;통신 및 방송 장비 제조업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;차백신연구소&lt;/td&gt;&lt;td&gt;20210426&lt;/td&gt;&lt;td&gt;-6,240&lt;/td&gt;&lt;td&gt;78&lt;/td&gt;&lt;td&gt;11,194&lt;/td&gt;&lt;td&gt;의약품 제조업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;카카오페이(유가)&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;20210426&lt;/td&gt;&lt;td&gt;-25,051&lt;/td&gt;&lt;td&gt;284,371&lt;/td&gt;&lt;td&gt;56,683&lt;/td&gt;&lt;td&gt;기타 금융업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;리파인&lt;/td&gt;&lt;td&gt;20210423&lt;/td&gt;&lt;td&gt;16,067&lt;/td&gt;&lt;td&gt;54,164&lt;/td&gt;&lt;td&gt;1,300&lt;/td&gt;&lt;td&gt;부동산 중개, 자문 및 감정평가업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;바이오플러스&lt;/td&gt;&lt;td&gt;20210423&lt;/td&gt;&lt;td&gt;9,703&lt;/td&gt;&lt;td&gt;24,367&lt;/td&gt;&lt;td&gt;6,239&lt;/td&gt;&lt;td&gt;기초 의약물질 및 생물학적 제제&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;실리콘투&lt;/td&gt;&lt;td&gt;20210423&lt;/td&gt;&lt;td&gt;5,716&lt;/td&gt;&lt;td&gt;99,398&lt;/td&gt;&lt;td&gt;4,214&lt;/td&gt;&lt;td&gt;상품 종합 도매업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;와이엠텍&lt;/td&gt;&lt;td&gt;20210423&lt;/td&gt;&lt;td&gt;3,866&lt;/td&gt;&lt;td&gt;17,037&lt;/td&gt;&lt;td&gt;2,387&lt;/td&gt;&lt;td&gt;전동기, 발전기 및 전기 변환 ·&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;엠로&lt;/td&gt;&lt;td&gt;20210423&lt;/td&gt;&lt;td&gt;3,389&lt;/td&gt;&lt;td&gt;40,302&lt;/td&gt;&lt;td&gt;2,687&lt;/td&gt;&lt;td&gt;소프트웨어 개발 및 공급업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;아주스틸(유가)&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;20210422&lt;/td&gt;&lt;td&gt;11,709&lt;/td&gt;&lt;td&gt;569,794&lt;/td&gt;&lt;td&gt;11,226&lt;/td&gt;&lt;td&gt;1차 철강 제조업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;한컴라이프케어(유가)&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;20210416&lt;/td&gt;&lt;td&gt;27,690&lt;/td&gt;&lt;td&gt;151,842&lt;/td&gt;&lt;td&gt;3,937&lt;/td&gt;&lt;td&gt;기타 의료용 기기 제조업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;원티드랩&lt;/td&gt;&lt;td&gt;20210416&lt;/td&gt;&lt;td&gt;-9,174&lt;/td&gt;&lt;td&gt;14,648&lt;/td&gt;&lt;td&gt;1,988&lt;/td&gt;&lt;td&gt;소프트웨어 개발 및 공급업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;카카오뱅크(유가)&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;20210415&lt;/td&gt;&lt;td&gt;113,636&lt;/td&gt;&lt;td&gt;804,157&lt;/td&gt;&lt;td&gt;2,048,251&lt;/td&gt;&lt;td&gt;은행 및 저축기관&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;브레인즈컴퍼니&lt;/td&gt;&lt;td&gt;20210415&lt;/td&gt;&lt;td&gt;3,734&lt;/td&gt;&lt;td&gt;14,829&lt;/td&gt;&lt;td&gt;1,742&lt;/td&gt;&lt;td&gt;시스템 소프트웨어 개발 및 공급업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;엑셀세라퓨틱스&lt;/td&gt;&lt;td&gt;20210413&lt;/td&gt;&lt;td&gt;-10,124&lt;/td&gt;&lt;td&gt;540&lt;/td&gt;&lt;td&gt;4,368&lt;/td&gt;&lt;td&gt;의료용품 및 기타 의약 관련제품&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;바이젠셀&lt;/td&gt;&lt;td&gt;20210409&lt;/td&gt;&lt;td&gt;-10,455&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;3,772&lt;/td&gt;&lt;td&gt;의약품 제조업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;&lt;strong&gt;크래프톤(유가)&lt;/strong&gt;&lt;/td&gt;&lt;td&gt;20210408&lt;/td&gt;&lt;td&gt;556,267&lt;/td&gt;&lt;td&gt;1,670,427&lt;/td&gt;&lt;td&gt;4,278&lt;/td&gt;&lt;td&gt;소프트웨어 개발 및 공급업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;일진하이솔루스(구.일진복합소재)(유가)&lt;/td&gt;&lt;td&gt;20210407&lt;/td&gt;&lt;td&gt;15,579&lt;/td&gt;&lt;td&gt;113,525&lt;/td&gt;&lt;td&gt;14,525&lt;/td&gt;&lt;td&gt;기타 운송장비 제조업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;큐라클&lt;/td&gt;&lt;td&gt;20210401&lt;/td&gt;&lt;td&gt;-28,610&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;5,657&lt;/td&gt;&lt;td&gt;자연과학 및 공학 연구개발업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;플래티어&lt;/td&gt;&lt;td&gt;20210331&lt;/td&gt;&lt;td&gt;2,685&lt;/td&gt;&lt;td&gt;39,376&lt;/td&gt;&lt;td&gt;3,207&lt;/td&gt;&lt;td&gt;소프트웨어 개발 및 공급업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;에브리봇&lt;/td&gt;&lt;td&gt;20210330&lt;/td&gt;&lt;td&gt;-902&lt;/td&gt;&lt;td&gt;49,165&lt;/td&gt;&lt;td&gt;2,614&lt;/td&gt;&lt;td&gt;가정용 기기 제조업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;오에스피&lt;/td&gt;&lt;td&gt;20210322&lt;/td&gt;&lt;td&gt;3,313&lt;/td&gt;&lt;td&gt;15,567&lt;/td&gt;&lt;td&gt;3,458&lt;/td&gt;&lt;td&gt;동물용 사료 및 조제식품 제조업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;맥스트&lt;/td&gt;&lt;td&gt;20210309&lt;/td&gt;&lt;td&gt;-8,921&lt;/td&gt;&lt;td&gt;1,983&lt;/td&gt;&lt;td&gt;3,751&lt;/td&gt;&lt;td&gt;소프트웨어 개발 및 공급업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;루켄테크놀러지스&lt;/td&gt;&lt;td&gt;20210204&lt;/td&gt;&lt;td&gt;-1,491&lt;/td&gt;&lt;td&gt;32,667&lt;/td&gt;&lt;td&gt;5,494&lt;/td&gt;&lt;td&gt;기타 전기장비 제조업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;셀비온&lt;/td&gt;&lt;td&gt;20210204&lt;/td&gt;&lt;td&gt;-3,518&lt;/td&gt;&lt;td&gt;350&lt;/td&gt;&lt;td&gt;4,434&lt;/td&gt;&lt;td&gt;의약품 제조업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;에스디바이오센서(유가)&lt;/td&gt;&lt;td&gt;20210126&lt;/td&gt;&lt;td&gt;1,399&lt;/td&gt;&lt;td&gt;73,728&lt;/td&gt;&lt;td&gt;46,659&lt;/td&gt;&lt;td&gt;의료용 기기 제조업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;레몬헬스케어&lt;/td&gt;&lt;td&gt;20201228&lt;/td&gt;&lt;td&gt;-22,365&lt;/td&gt;&lt;td&gt;2,042&lt;/td&gt;&lt;td&gt;4,458&lt;/td&gt;&lt;td&gt;소프트웨어 개발 및 공급업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;딥노이드&lt;/td&gt;&lt;td&gt;20201214&lt;/td&gt;&lt;td&gt;-8,606&lt;/td&gt;&lt;td&gt;235&lt;/td&gt;&lt;td&gt;2,156&lt;/td&gt;&lt;td&gt;소프트웨어 개발 및 공급업&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;디앤디파마텍&lt;/td&gt;&lt;td&gt;20201013&lt;/td&gt;&lt;td&gt;-6,421&lt;/td&gt;&lt;td&gt;0&lt;/td&gt;&lt;td&gt;4,018&lt;/td&gt;&lt;td&gt;자연과학 및 공학 연구개발업&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;특히 &lt;code dir=&quot;auto&quot;&gt;크래프톤&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;카카오뱅크&lt;/code&gt;의 경우 각각 5,500억, 1,100억의 당기순이익을 기록하고 있는 만큼 현재도 이익이 높은 회사라 청약 공모 시 엄청난 경쟁이 예상됩니다. 남아있는 IPO들 잘 챙겨서 수익 얻으시길 응원합니다.&lt;/p&gt;</content:encoded><category>상장</category><category>공모주</category></item><item><title>대신증권 크레온 API로 실시간 주가 데이터 받기</title><link>https://blog.quantylab.com/blog/2021-04-23-creon_realtime/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-04-23-creon_realtime/</guid><pubDate>Fri, 23 Apr 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;이번 포스트에서는 대신증권 크레온 API를 이용한 실시간 주가를 획득하는 방법을 다룹니다. 여느 때와 같이 언어는 파이썬으로 진행합니다.&lt;/p&gt;
&lt;p&gt;크레온 API는 문서화가 비교적 잘되어 있고 사용성이 좋습니다. [증권사 API 장단점 비교][/htsapi.html] 포스트에서 주요 증권사 API의 장단점을 비교해 놓았으니 참고하시기 바랍니다.&lt;/p&gt;
&lt;p&gt;실시간 주가를 얻어오기 위한 모듈은 &lt;code dir=&quot;auto&quot;&gt;Dscbo1.StockCur&lt;/code&gt;이며 이에 대한 문서는 &lt;a href=&quot;https://money2.creontrade.com/e5/mboard/ptype_basic/HTS_Plus_Helper/DW_Basic_Read_Page.aspx?boardseq=285&amp;#x26;seq=16&amp;#x26;page=3&amp;#x26;searchString=%EC%8B%A4%EC%8B%9C%EA%B0%84&amp;#x26;p=&amp;#x26;v=&amp;#x26;m=&quot;&gt;여기&lt;/a&gt;에서 확인할 수 있습니다.&lt;/p&gt;
&lt;p&gt;실시간 데이터는 Publish/Subscribe 방식으로 데이터를 획득합니다. 크레온에서 실시간 주가 데이터를 발행(Publish)하고 사용자는 실시간 주가를 원하는 종목을 구독(Subscribe)합니다. 사용자는 크레온이 발행한 데이터를 콜백(callback)을 통해 받습니다.&lt;/p&gt;
&lt;p&gt;그럼 파이썬으로 실시간 주가 데이터를 구독하는 함수와 데이터를 획득하는 콜백 함수를 구현해 보겠습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; win32com.client&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;class&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;Creon&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;__init__&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.stockcur_handlers &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {}  &lt;/span&gt;&lt;span&gt;# 주식/업종/ELW시세 subscribe event handlers&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;subscribe_stockcur&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;cb&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;not&lt;/span&gt;&lt;span&gt; code.&lt;/span&gt;&lt;span&gt;startswith&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;A&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;code &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;A&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;+&lt;/span&gt;&lt;span&gt; code&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; code &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.stockcur_handlers:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;return&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;obj &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; win32com.client.&lt;/span&gt;&lt;span&gt;Dispatch&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;DsCbo1.StockCur&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;obj.&lt;/span&gt;&lt;span&gt;SetInputValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; code&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;handler &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; win32com.client.&lt;/span&gt;&lt;span&gt;WithEvents&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;obj&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; StockCurEventHandler&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;handler.&lt;/span&gt;&lt;span&gt;set_attrs&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;obj&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; cb&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.stockcur_handlers[code] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; obj&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;obj.&lt;/span&gt;&lt;span&gt;Subscribe&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;unsubscribe_stockcur&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;code=&lt;/span&gt;&lt;span&gt;None&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;lst_code &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; code &lt;/span&gt;&lt;span&gt;is&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;not&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;None&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;not&lt;/span&gt;&lt;span&gt; code.&lt;/span&gt;&lt;span&gt;startswith&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;A&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;                &lt;/span&gt;&lt;/span&gt;&lt;span&gt;code &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;A&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;+&lt;/span&gt;&lt;span&gt; code&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; code &lt;/span&gt;&lt;span&gt;not&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.stockcur_handlers:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;                &lt;/span&gt;&lt;span&gt;return&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;lst_code.&lt;/span&gt;&lt;span&gt;append&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;else&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;lst_code &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;list&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.stockcur_handlers.&lt;/span&gt;&lt;span&gt;keys&lt;/span&gt;&lt;span&gt;()).&lt;/span&gt;&lt;span&gt;copy&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; code &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; lst_code:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;obj &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.stockcur_handlers[code]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;obj.&lt;/span&gt;&lt;span&gt;Unsubscribe&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;del&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.stockcur_handlers[code]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;class&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;StockCurEventHandler&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;set_attrs&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;obj&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;cb&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; obj&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.cb &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; cb&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;OnReceived&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;item &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;diffratio&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;2&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;timestamp&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;3&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;price_open&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;4&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;price_high&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;5&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;price_low&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;6&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bid_sell&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;7&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bid_buy&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;8&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;cum_volume&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;9&lt;/span&gt;&lt;span&gt;),  &lt;/span&gt;&lt;span&gt;# 주, 거래소지수: 천주&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;cum_trans&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;10&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;price&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;13&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;contract_type&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;14&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;cum_sellamount&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;15&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;buy_sellamount&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;16&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;contract_amount&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;17&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;second&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;18&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;price_type&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;chr&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;19&lt;/span&gt;&lt;span&gt;)),  &lt;/span&gt;&lt;span&gt;# 1: 동시호가시간 예상체결가, 2: 장중 체결가&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;market_flag&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;chr&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;20&lt;/span&gt;&lt;span&gt;)),  &lt;/span&gt;&lt;span&gt;# &apos;1&apos;: 장전예상체결, &apos;2&apos;: 장중, &apos;4&apos;: 장후시간외, &apos;5&apos;: 장후예상체결&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;premarket_volume&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;21&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;diffsign&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;chr&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;22&lt;/span&gt;&lt;span&gt;)),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;LP보유수량&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;23&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;LP보유수량대비&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;24&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;LP보유율&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;25&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;체결상태(호가방식)&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;26&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;누적매도체결수량(호가방식)&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;27&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;누적매수체결수량(호가방식)&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.obj.&lt;/span&gt;&lt;span&gt;GetHeaderValue&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;28&lt;/span&gt;&lt;span&gt;),&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;cb&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;item&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이렇게 &lt;code dir=&quot;auto&quot;&gt;Creon&lt;/code&gt; 클래스에 실시간 주가를 구독하는 함수인 &lt;code dir=&quot;auto&quot;&gt;subscribe_stockcur&lt;/code&gt;와 구독을 취소하는 &lt;code dir=&quot;auto&quot;&gt;unsubscribe_stockcur&lt;/code&gt; 함수를 구현했습니다. &lt;code dir=&quot;auto&quot;&gt;subscribe_stockcur&lt;/code&gt; 함수에서 발행되는 주가 데이터를 처리하기 위한 &lt;code dir=&quot;auto&quot;&gt;StockCurEventHandler&lt;/code&gt; 클래스를 이어서 정의하였습니다.&lt;/p&gt;
&lt;p&gt;&lt;code dir=&quot;auto&quot;&gt;subscribe_stockcur&lt;/code&gt; 함수에서 구독하는 종목마다 &lt;code dir=&quot;auto&quot;&gt;StockCurEventHandler&lt;/code&gt;를 할당해 주었습니다. 크레온이 주식 데이터를 발행하면 &lt;code dir=&quot;auto&quot;&gt;StockCurEventHandler&lt;/code&gt;의 &lt;code dir=&quot;auto&quot;&gt;OnReceived&lt;/code&gt; 함수가 호출됩니다.&lt;/p&gt;
&lt;p&gt;여기서 필요한 데이터를 획득할 수 있습니다. 여기서는 이렇게 획득한 데이터를 &lt;code dir=&quot;auto&quot;&gt;StockCurEventHandler&lt;/code&gt; 객체를 생성할 때 인자로 넘겨준 &lt;code dir=&quot;auto&quot;&gt;cb&lt;/code&gt; 함수로 전달하고 있습니다.&lt;/p&gt;
&lt;p&gt;다음과 같이 종목명과 가격을 출력하는 간단한 &lt;code dir=&quot;auto&quot;&gt;cb&lt;/code&gt; 함수를 선언하고 NAVER와 미래에셋증권 두 종목의 실시간 주가를 구독해 보았습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;from&lt;/span&gt;&lt;span&gt; quantylab.systrader.creon &lt;/span&gt;&lt;span&gt;import&lt;/span&gt;&lt;span&gt; Creon&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;c &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;Creon&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;cb&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;item&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;print&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;item&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; item&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;price&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;])&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;c.&lt;/span&gt;&lt;span&gt;subscribe_stockcur&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;035420&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; cb&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;c.&lt;/span&gt;&lt;span&gt;subscribe_stockcur&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;006800&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; cb&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;# ...&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;c.&lt;/span&gt;&lt;span&gt;unsubscribe_stockcur&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;그러면 이런식으로 종목명과 주가가 출력되는 것을 볼 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;NAVER 389500&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;미래에셋증권 9990&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;미래에셋증권 10000&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;NAVER 390000&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;NAVER 389500&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;NAVER 389500&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;미래에셋증권 9990&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;NAVER 389500&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;NAVER 389500&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;미래에셋증권 9990&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;미래에셋증권 9990&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;미래에셋증권 9990&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;미래에셋증권 10000&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;미래에셋증권 9990&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;NAVER 390000&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;NAVER 389500&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;NAVER 389500&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;미래에셋증권 9990&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;퀀티랩 systrader 프로젝트에서 실시간 주가 확인 외에도 다양한 크레온 API 기능을 연결하고 있습니다. &lt;a href=&quot;https://github.com/quantylab/systrader/blob/master/quantylab/systrader/creon/_creon.py&quot;&gt;퀀티랩 Github systrader 리포지토리&lt;/a&gt;에서 전체 코드를 확인할 수 있습니다. 문의는 이 리포지토리 이슈로 또는 &lt;a href=&quot;https://cafe.naver.com/quantylab&quot;&gt;네이버 카페&lt;/a&gt;로 주세요.&lt;/p&gt;</content:encoded><category>python</category><category>creon</category><category>크레온</category><category>realtime</category><category>실시간</category><category>주가</category></item><item><title>파이썬으로 DART에서 재무제표 수집하기</title><link>https://blog.quantylab.com/blog/2021-03-28-dart_fs/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-03-28-dart_fs/</guid><pubDate>Sun, 28 Mar 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;이번 포스트에서는 전자공시시스템(DART)에서 제공하는 재무제표를 파이썬으로 다운로드하고 파싱하는 방법을 다룹니다.&lt;/p&gt;
&lt;p&gt;DART에서 재무제표를 얻어오는 방법은 다양한데 여기서는 두 가지 방법을 다룹니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://opendart.fss.or.kr/guide/main.do?apiGrpCd=DS003&quot;&gt;DART Open API 상장기업 재무정보&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://opendart.fss.or.kr/disclosureinfo/fnltt/dwld/main.do&quot;&gt;DART Open API 재무정보 일괄 다운로드&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div&gt;&lt;h3 id=&quot;dart-open-api-상장기업-재무정보&quot;&gt;DART Open API 상장기업 재무정보&lt;/h3&gt;&lt;/div&gt;
&lt;p&gt;첫 번째로 &lt;a href=&quot;https://opendart.fss.or.kr/guide/detail.do?apiGrpCd=DS003&amp;#x26;apiId=2019016&quot;&gt;단일회사 주요계정 API&lt;/a&gt;를 활용한 방법입니다.&lt;/p&gt;
&lt;p&gt;DART Open API를 사용하려면 인증키가 필요합니다. 인증키 획득 방법은 &lt;a href=&quot;https://blog.quantylab.com/2020-10-09-dart.html&quot;&gt;이 포스트&lt;/a&gt;에서 확인하세요.&lt;/p&gt;
&lt;p&gt;다음은 단일회사 주요계정 API를 호출하여 재무제표 정보를 획득하는 함수 입니다. &lt;code dir=&quot;auto&quot;&gt;인증키&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;회사 고유번호&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;사업연도&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;보고서 코드&lt;/code&gt;를 입력하여 재무제표를 받아올 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;def&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;get_fs&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;crtfc_key&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;corp_code&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;bsns_year&lt;/span&gt;&lt;span&gt;, &lt;/span&gt;&lt;span&gt;reprt_code&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# 단일회사 주요계정&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# crtfc_key  API 인증키  STRING(40)  Y  발급받은 인증키(40자리)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# corp_code  고유번호  STRING(8)  Y  공시대상회사의 고유번호(8자리)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# ※ 개발가이드 &gt; 공시정보 &gt; 고유번호 API조회 가능&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# bsns_year  사업연도  STRING(1)  Y  사업연도(4자리)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# ※ 2015년 이후 부터 정보제공&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# reprt_code  보고서 코드  STRING(5)  Y  1분기보고서 : 11013&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# 반기보고서 : 11012&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# 3분기보고서 : 11014&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;# 사업보고서 : 11011&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;api &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;https://opendart.fss.or.kr/api/fnlttSinglAcnt.json&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;params &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;crtfc_key&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: crtfc_key,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;corp_code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: corp_code,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;bsns_year&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;: bsns_year,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;}&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;data &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;[]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;reprt_name &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;REPRT_NAMES&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;get&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;reprt_code&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&quot;&quot;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;params[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;reprt_code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; reprt_code&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;res &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;_request&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;api&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;params&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;params&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; res &lt;/span&gt;&lt;span&gt;is&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;None&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;return&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;None&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; res.status_code &lt;/span&gt;&lt;span&gt;!=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;200&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;return&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;None&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;item &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; json.&lt;/span&gt;&lt;span&gt;loads&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;res.text&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; item.&lt;/span&gt;&lt;span&gt;get&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;status&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&apos;&lt;/span&gt;&lt;span&gt;) &lt;/span&gt;&lt;span&gt;!=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;000&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;return&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;None&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; _item &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; item.&lt;/span&gt;&lt;span&gt;get&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;list&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_item[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;corp_code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; corp_code&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_item[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;reprt_code&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; reprt_code&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_item[&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;reprt_name&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;] &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; reprt_name&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;data.&lt;/span&gt;&lt;span&gt;append&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;_item&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;return&lt;/span&gt;&lt;span&gt; data&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;&lt;code dir=&quot;auto&quot;&gt;get_fs(crtfc_key, &apos;00266961&apos;, 2015, &apos;11011&apos;)&lt;/code&gt;와 같이 호출하면 다음과 같은 결과를 받아올 수 있습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;[{&apos;account_nm&apos;: &apos;자산총계&apos;, &apos;bfefrmtrm_amount&apos;: &apos;9,881,190,909,324&apos;, &apos;bfefrmtrm_dt&apos;: &apos;2018.12.31 현재&apos;, &apos;bfefrmtrm_nm&apos;: &apos;제 20 기&apos;, &apos;bsns_year&apos;: &apos;2020&apos;, &apos;corp_code&apos;: &apos;00266961&apos;, &apos;frmtrm_amount&apos;: &apos;12,299,527,120,786&apos;, &apos;frmtrm_dt&apos;: &apos;2019.12.31 현재&apos;, &apos;frmtrm_nm&apos;: &apos;제 21 기&apos;, ...}, {&apos;account_nm&apos;: &apos;부채총계&apos;, &apos;bfefrmtrm_amount&apos;: &apos;3,932,050,396,031&apos;, &apos;bfefrmtrm_dt&apos;: &apos;2018.12.31 현재&apos;, &apos;bfefrmtrm_nm&apos;: &apos;제 20 기&apos;, &apos;bsns_year&apos;: &apos;2020&apos;, &apos;corp_code&apos;: &apos;00266961&apos;, &apos;frmtrm_amount&apos;: &apos;5,795,601,052,206&apos;, &apos;frmtrm_dt&apos;: &apos;2019.12.31 현재&apos;, &apos;frmtrm_nm&apos;: &apos;제 21 기&apos;, ...}, ...]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;div&gt;&lt;h3 id=&quot;dart-open-api-재무정보-일괄-다운로드&quot;&gt;DART Open API 재무정보 일괄 다운로드&lt;/h3&gt;&lt;/div&gt;
&lt;p&gt;두 번째는 재무정보 일괄 다운로드로 한꺼번에 전체 기업의 재무제표 데이터를 받아오는 방법입니다. Open DART 사이트에서 &lt;code dir=&quot;auto&quot;&gt;공시정보 활용마당 / 재무정보 일괄다운로드&lt;/code&gt;를 클릭하면 다음과 같은 테이블을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;재무정보 일괄다운로드&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;900&quot; height=&quot;392&quot; src=&quot;https://blog.quantylab.com/_astro/1.DpHSQrhK_oi8Ie.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;여기서 다운로드 하면 해당 연도와 분기의 네 종류의 재무제표를 압축파일로 다운 받을 수 있습니다. 여기서는 다운로드, 압축해제를 포함하여 파이썬에서 재무제표를 읽어오는 방법을 다룹니다.&lt;/p&gt;
&lt;p&gt;다음은 &lt;a href=&quot;https://selenium-python.readthedocs.io/api.html&quot;&gt;Selenium&lt;/a&gt;으로 &lt;code dir=&quot;auto&quot;&gt;다운로드&lt;/code&gt; 버튼을 클릭하여 파일을 다운로드하고 압축을 해제하는 코드입니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;options &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; webdriver.&lt;/span&gt;&lt;span&gt;ChromeOptions&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;options.&lt;/span&gt;&lt;span&gt;add_experimental_option&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;prefs&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; {&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;download.default_directory&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;self&lt;/span&gt;&lt;span&gt;.job_base,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;download.prompt_for_download&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;False&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;download.directory_upgrade&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;True&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;safebrowsing.enabled&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;: &lt;/span&gt;&lt;span&gt;True&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;}&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;options.&lt;/span&gt;&lt;span&gt;add_argument&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;disable-infobars&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;options.&lt;/span&gt;&lt;span&gt;add_argument&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;--disable-extensions&lt;/span&gt;&lt;span&gt;&quot;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;browser &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; webdriver.&lt;/span&gt;&lt;span&gt;Chrome&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;executable_path&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;os.path.&lt;/span&gt;&lt;span&gt;join&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;settings.QUANTYLAB_BASE&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;drivers/chromedriver&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;chrome_options&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;options&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;try&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;browser.&lt;/span&gt;&lt;span&gt;get&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;https://opendart.fss.or.kr/disclosureinfo/fnltt/dwld/main.do&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;elem &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; browser.&lt;/span&gt;&lt;span&gt;find_element_by_css_selector&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;table.tb01&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; elem_a &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; elem.&lt;/span&gt;&lt;span&gt;find_elements_by_link_text&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;다운로드&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;filename &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; re.&lt;/span&gt;&lt;span&gt;findall&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;r&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;*&lt;/span&gt;&lt;span&gt;\(&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;*&lt;/span&gt;&lt;span&gt;\&apos;&lt;/span&gt;&lt;span&gt;(.&lt;/span&gt;&lt;span&gt;+&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;\&apos;\)&lt;/span&gt;&lt;span&gt;.&lt;/span&gt;&lt;span&gt;*&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; elem_a.&lt;/span&gt;&lt;span&gt;get_attribute&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;onclick&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;))&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;span&gt;0&lt;/span&gt;&lt;span&gt;]&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;# 파일 다운로드&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;elem_a.&lt;/span&gt;&lt;span&gt;click&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;time.&lt;/span&gt;&lt;span&gt;sleep&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;10&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;# 압축파일 로드&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;filepath &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; os.path.&lt;/span&gt;&lt;span&gt;join&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;base&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; filename&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;z &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; zipfile.&lt;/span&gt;&lt;span&gt;ZipFile&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;filepath&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;        &lt;/span&gt;&lt;span&gt;for&lt;/span&gt;&lt;span&gt; info &lt;/span&gt;&lt;span&gt;in&lt;/span&gt;&lt;span&gt; z.&lt;/span&gt;&lt;span&gt;infolist&lt;/span&gt;&lt;span&gt;():&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;# 한글 파일명 인코딩 수정&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_filename &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; info.filename.&lt;/span&gt;&lt;span&gt;encode&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;cp437&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;).&lt;/span&gt;&lt;span&gt;decode&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;euc-kr&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;_filepath &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; os.path.&lt;/span&gt;&lt;span&gt;join&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;base&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; _filename&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;if&lt;/span&gt;&lt;span&gt; os.path.&lt;/span&gt;&lt;span&gt;exists&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;_filepath&lt;/span&gt;&lt;span&gt;):&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;                &lt;/span&gt;&lt;span&gt;continue&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;info.filename &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; _filename&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;            &lt;/span&gt;&lt;span&gt;# 압축해제&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;            &lt;/span&gt;&lt;/span&gt;&lt;span&gt;z.&lt;/span&gt;&lt;span&gt;extract&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;info&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; base&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;        &lt;/span&gt;&lt;/span&gt;&lt;span&gt;z.&lt;/span&gt;&lt;span&gt;close&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;except&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;Exception&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;as&lt;/span&gt;&lt;span&gt; e:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;    &lt;/span&gt;&lt;span&gt;print&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;str&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;e&lt;/span&gt;&lt;span&gt;))&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;finally&lt;/span&gt;&lt;span&gt;:&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;browser.&lt;/span&gt;&lt;span&gt;quit&lt;/span&gt;&lt;span&gt;()&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이렇게 압축해제까지 하면 &lt;code dir=&quot;auto&quot;&gt;2020_1분기보고서_04_현금흐름표_20210211.txt&lt;/code&gt;과 같은 파일들이 생성되어 있을 것입니다.&lt;/p&gt;
&lt;p&gt;이 텍스트 파일은 다음과 같이 pandas로 쉽게 &lt;code dir=&quot;auto&quot;&gt;DataFrame&lt;/code&gt;으로 읽어올 수 있습니다. 다만 &lt;code dir=&quot;auto&quot;&gt;sep&lt;/code&gt;과 &lt;code dir=&quot;auto&quot;&gt;encoding&lt;/code&gt;을 다음과 같이 적절하게 정해주는 것이 중요합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; pd.&lt;/span&gt;&lt;span&gt;read_csv&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;filepath&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;sep&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;\t&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;encoding&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;cp949&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;여기서 &lt;code dir=&quot;auto&quot;&gt;당기&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;당기 1분기&lt;/code&gt;, &lt;code dir=&quot;auto&quot;&gt;당기 반기&lt;/code&gt; 등의 다양한 컬럼이 생기는데 저는 이들을 &lt;code dir=&quot;auto&quot;&gt;당기&lt;/code&gt;로 통합하여 정리했습니다.&lt;/p&gt;
&lt;p&gt;다음은 &lt;code dir=&quot;auto&quot;&gt;포괄손익계산서&lt;/code&gt;의 일부 항목을 나타낸 것입니다.&lt;/p&gt;





























&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;항목명&lt;/th&gt;&lt;th&gt;결산기준일&lt;/th&gt;&lt;th&gt;보고서종류&lt;/th&gt;&lt;th&gt;당기&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;영업수익&lt;/td&gt;&lt;td&gt;2018-12-31&lt;/td&gt;&lt;td&gt;사업보고서&lt;/td&gt;&lt;td&gt;5,586,904,533,355&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;영업이익(손실)&lt;/td&gt;&lt;td&gt;2018-12-31&lt;/td&gt;&lt;td&gt;사업보고서&lt;/td&gt;&lt;td&gt;942,532,561,543&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;당기순이익(손실)&lt;/td&gt;&lt;td&gt;2018-12-31&lt;/td&gt;&lt;td&gt;사업보고서&lt;/td&gt;&lt;td&gt;627,901,873,332&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;그런데 재무제표를 볼 때 항목의 흐름을 보는 것이 중요합니다. 예를 들어 영업 이익이 꾸준히 증가하고 있는지를 보고 싶은 것입니다.&lt;/p&gt;
&lt;p&gt;그래서 동일 항목에 대해서 결산기준일 순서대로 &lt;code dir=&quot;auto&quot;&gt;DataFrame&lt;/code&gt;을 재구성하고자 합니다. 이를 위해 &lt;code dir=&quot;auto&quot;&gt;DataFrame&lt;/code&gt;의 &lt;code dir=&quot;auto&quot;&gt;pivot&lt;/code&gt; 함수를 사용합니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;df_pivot &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; df.&lt;/span&gt;&lt;span&gt;pivot&lt;/span&gt;&lt;span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;values&lt;/span&gt;&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;value&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;index&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;항목명&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;columns&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;결산기준일&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;동일 항목이지만 항목명이 다르게 적혀있는 경우가 있어서 이를 맞춰주는 처리를 했습니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;그럼 다음과 같이 동일 항목의 값을 분기 순서대로 볼 수 있습니다.&lt;/p&gt;

































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;항목명&lt;/th&gt;&lt;th&gt;2015-12-31&lt;/th&gt;&lt;th&gt;2016-03-31&lt;/th&gt;&lt;th&gt;2016-06-30&lt;/th&gt;&lt;th&gt;2016-09-30&lt;/th&gt;&lt;th&gt;2016-12-31&lt;/th&gt;&lt;th&gt;2017-03-31&lt;/th&gt;&lt;th&gt;2017-06-30&lt;/th&gt;&lt;th&gt;2017-09-30&lt;/th&gt;&lt;th&gt;2017-12-31&lt;/th&gt;&lt;th&gt;2018-03-31&lt;/th&gt;&lt;th&gt;2018-06-30&lt;/th&gt;&lt;th&gt;2018-09-30&lt;/th&gt;&lt;th&gt;2018-12-31&lt;/th&gt;&lt;th&gt;2019-03-31&lt;/th&gt;&lt;th&gt;2019-06-30&lt;/th&gt;&lt;th&gt;2019-09-30&lt;/th&gt;&lt;th&gt;2019-12-31&lt;/th&gt;&lt;th&gt;2020-03-31&lt;/th&gt;&lt;th&gt;2020-06-30&lt;/th&gt;&lt;th&gt;2020-09-30&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;매출액&lt;/td&gt;&lt;td&gt;3,251,157,100,000&lt;/td&gt;&lt;td&gt;937,280,220,152&lt;/td&gt;&lt;td&gt;987,281,364,295&lt;/td&gt;&lt;td&gt;1,013,075,223,770&lt;/td&gt;&lt;td&gt;4,022,629,619,982&lt;/td&gt;&lt;td&gt;1,082,247,281,196&lt;/td&gt;&lt;td&gt;1,129,631,366,847&lt;/td&gt;&lt;td&gt;1,200,676,275,220&lt;/td&gt;&lt;td&gt;4,678,468,928,032&lt;/td&gt;&lt;td&gt;1,309,059,864,248&lt;/td&gt;&lt;td&gt;1,363,615,953,332&lt;/td&gt;&lt;td&gt;1,397,713,834,674&lt;/td&gt;&lt;td&gt;5,586,904,533,355&lt;/td&gt;&lt;td&gt;1,510,861,770,282&lt;/td&gt;&lt;td&gt;1,630,275,004,395&lt;/td&gt;&lt;td&gt;1,664,815,000,078&lt;/td&gt;&lt;td&gt;6,593,400,065,244&lt;/td&gt;&lt;td&gt;1,732,064,462,097&lt;/td&gt;&lt;td&gt;1,902,467,957,491&lt;/td&gt;&lt;td&gt;1,360,779,374,259&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;영업이익&lt;/td&gt;&lt;td&gt;762,203,849,000&lt;/td&gt;&lt;td&gt;256,827,536,675&lt;/td&gt;&lt;td&gt;272,663,961,847&lt;/td&gt;&lt;td&gt;282,298,051,525&lt;/td&gt;&lt;td&gt;1,102,040,475,792&lt;/td&gt;&lt;td&gt;290,797,289,304&lt;/td&gt;&lt;td&gt;285,213,522,180&lt;/td&gt;&lt;td&gt;312,084,238,444&lt;/td&gt;&lt;td&gt;1,179,187,806,331&lt;/td&gt;&lt;td&gt;256,980,563,870&lt;/td&gt;&lt;td&gt;250,583,189,279&lt;/td&gt;&lt;td&gt;221,718,402,565&lt;/td&gt;&lt;td&gt;942,532,561,543&lt;/td&gt;&lt;td&gt;206,244,504,954&lt;/td&gt;&lt;td&gt;128,334,709,480&lt;/td&gt;&lt;td&gt;202,086,039,366&lt;/td&gt;&lt;td&gt;710,070,173,513&lt;/td&gt;&lt;td&gt;221,495,078,328&lt;/td&gt;&lt;td&gt;230,597,573,115&lt;/td&gt;&lt;td&gt;291,726,798,004&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;당기순이익&lt;/td&gt;&lt;td&gt;516,986,279,000&lt;/td&gt;&lt;td&gt;165,036,146,535&lt;/td&gt;&lt;td&gt;213,223,506,226&lt;/td&gt;&lt;td&gt;198,000,157,034&lt;/td&gt;&lt;td&gt;759,072,951,187&lt;/td&gt;&lt;td&gt;210,876,050,870&lt;/td&gt;&lt;td&gt;171,420,229,303&lt;/td&gt;&lt;td&gt;215,798,264,368&lt;/td&gt;&lt;td&gt;770,101,670,207&lt;/td&gt;&lt;td&gt;153,751,654,038&lt;/td&gt;&lt;td&gt;281,758,577,701&lt;/td&gt;&lt;td&gt;68,386,763,908&lt;/td&gt;&lt;td&gt;627,901,873,332&lt;/td&gt;&lt;td&gt;87,585,903,290&lt;/td&gt;&lt;td&gt;27,756,852,975&lt;/td&gt;&lt;td&gt;85,268,053,088&lt;/td&gt;&lt;td&gt;396,821,062,465&lt;/td&gt;&lt;td&gt;134,874,581,865&lt;/td&gt;&lt;td&gt;90,682,203,810&lt;/td&gt;&lt;td&gt;235,342,965,699&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;</content:encoded><category>python</category><category>dart</category><category>재무제표</category></item><item><title>퀀티랩 단타 모델 - 딥러닝으로 내일의 주가 방향을 예측하는게 가능할까?</title><link>https://blog.quantylab.com/blog/2021-03-05-daytrading_model/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-03-05-daytrading_model/</guid><pubDate>Fri, 05 Mar 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;기존의 퀀티랩 모델은 중/장기 투자를 목적으로 하는 딥러닝 모델입니다. 이 포스트에서는 데이트레이딩(일명 단타)를 위한 모델 구축에 대해 다룹니다.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;이 글은 기계학습에 대한 기초 지식을 요합니다.&lt;/p&gt;
&lt;p&gt;단타를 독려하는 것이 아니니 오해 없으셨으면 좋겠습니다.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;우선 데이트레이딩에 대해 알아봅시다. 데이트레이딩에 대한 정의는 제각각이지만 대부분 다음 원칙을 가지고 있습니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;하루 안에서 모든 거래를 마친다. (오버나잇 하지 않는다.)&lt;/li&gt;
&lt;li&gt;종목을 발굴한다.&lt;/li&gt;
&lt;li&gt;현금을 많은 비중으로 둔다. (Ex. 90% 현금 보유)&lt;/li&gt;
&lt;li&gt;목표 수익률, 손절 라인을 설정한다. (1~2%의 낮은 손익률로 잡는다.)&lt;/li&gt;
&lt;li&gt;미수는 자제한다.&lt;/li&gt;
&lt;li&gt;장이 안좋을땐 관망한다.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;데이트레이딩은 많은 지표들을 보고 종목을 발굴하고 하루동안 수십, 수백번의 매매를 하면서 수익을 내기위해 노력합니다. 매매를 위해 기술적 분석이 주로 사용되는데 기술적 분석 기법은 너무나도 다양해서 나열하기도 어렵습니다.&lt;/p&gt;
&lt;p&gt;단타에서 주요 결정 사항 중 하나인 “어떤 종목을 노릴 것인가?”를 해결하기 위한 딥러닝 모델을 구축했습니다. 모델은 파이썬으로 구축했으며 사용한 프레임워크, 라이브러리는 다음과 같습니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;TensorFlow 2.4 (with Keras)&lt;/li&gt;
&lt;li&gt;Scikit-learn 0.22.1&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;학습데이터는 약 100개의 자질과 2.5M개의 인스턴스로 구성했습니다. 지도학습(Supervised Learning)으로 레이블(label)은 다음 거래일의 등락률의 sigmoid로 정했습니다. 그 수식은 다음과 같습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;y &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;sigmoid&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;next_close &lt;/span&gt;&lt;span&gt;/&lt;/span&gt;&lt;span&gt; today_close &lt;/span&gt;&lt;span&gt;-&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;자질들은 자세히 다루기 어렵지만 크게 다음 종류의 자질군으로 구성됩니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;종목 주가&lt;/li&gt;
&lt;li&gt;종목의 기본적 분석 지표&lt;/li&gt;
&lt;li&gt;종목의 기술적 분석 지표&lt;/li&gt;
&lt;li&gt;국내 주식 시장 지수&lt;/li&gt;
&lt;li&gt;해외 주식 시장 지수&lt;/li&gt;
&lt;li&gt;주요국 환율&lt;/li&gt;
&lt;li&gt;원자재 가격&lt;/li&gt;
&lt;li&gt;… (기타 등등)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;자질 값들의 스케일(Scale)이 달라서 Standardization 했습니다. 세 가지 스케일러(Scaler)를 시도해 봤는데 그 중에서 Robust Scaler를 채택했습니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.MinMaxScaler.html#sklearn.preprocessing.MinMaxScaler&quot;&gt;MinMaxScaler&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.StandardScaler.html&quot;&gt;StandardScaler&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.RobustScaler.html#sklearn.preprocessing.RobustScaler&quot;&gt;RobustScaler&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;신경망 아키텍처는 기본적인 Dense(Fully Connected) Layer를 다음과 같이 쌓았습니다.&lt;/p&gt;
&lt;div&gt;&lt;figure&gt;&lt;figcaption&gt;&lt;/figcaption&gt;&lt;pre&gt;&lt;code&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;model &lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt; tf.keras.models.&lt;/span&gt;&lt;span&gt;Sequential&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;[&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;tf.keras.layers.&lt;/span&gt;&lt;span&gt;Dense&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;256&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;activation&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;linear&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;tf.keras.layers.&lt;/span&gt;&lt;span&gt;Dense&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;128&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;activation&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;linear&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;tf.keras.layers.&lt;/span&gt;&lt;span&gt;Dense&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;64&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;activation&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;linear&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;&lt;span&gt;    &lt;/span&gt;&lt;/span&gt;&lt;span&gt;tf.keras.layers.&lt;/span&gt;&lt;span&gt;Dense&lt;/span&gt;&lt;span&gt;(&lt;/span&gt;&lt;span&gt;1&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt;activation&lt;/span&gt;&lt;span&gt;=&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;sigmoid&lt;/span&gt;&lt;span&gt;&apos;&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;span&gt;,&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;span&gt;]&lt;/span&gt;&lt;span&gt;)&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;&lt;/div&gt;
&lt;p&gt;이렇게 마지막 레이어의 활성화 함수(Activation Function)을 Sigmoid로 정해서 0과 1사이의 값으로 Prediction 하도록 했습니다. 직관적으로는 Prediction 값이 0.5 이상(초과)이면 내일 오늘보다 주가가 오를 것이라 판단하는 것이고 0.5 이하(미만)이면 주가가 내릴 것이라 판단하는 것입니다.&lt;/p&gt;
&lt;p&gt;이렇게 학습한 모델로 테스팅 데이터를 넣어서 내일의 주가 방향을 얼마나 잘 맞추는지 알아보았습니다. 테스팅 데이터는 20210101~20210305 동안의 인스턴스이며 당연히 학습 데이터에 없는 인스턴스들 입니다.&lt;/p&gt;
&lt;p&gt;Prediction 값을 &lt;code dir=&quot;auto&quot;&gt;score&lt;/code&gt;라고 하겠습니다. &lt;code dir=&quot;auto&quot;&gt;score&lt;/code&gt;가 0.5, 0.6, 0.7, 0.8, 0.9 이상일 때의 Accuracy를 다음과 같이 확인했습니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;score 0.5 이상: 313,319개 인스턴스에서 정확도 57.99%&lt;/li&gt;
&lt;li&gt;score 0.6 이상: 51,390개 인스턴스에서 정확도 68.81%&lt;/li&gt;
&lt;li&gt;score 0.7 이상: 10,962개 인스턴스에서 정확도 84.22%&lt;/li&gt;
&lt;li&gt;score 0.8 이상: 3,864개 인스턴스에서 정확도 89.73%&lt;/li&gt;
&lt;li&gt;score 0.9 이상: 113개 인스턴스에서 정확도 49.56%&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img alt=&quot;1&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;395&quot; height=&quot;263&quot; src=&quot;https://blog.quantylab.com/_astro/1.DheUW-QO_Zc3YRH.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;Score가 마냥 높다고 정확도가 높아지는 것은 아니였습니다. 0.8 까지는 높아지다가 0.9 이상에서는 정확도가 오히려 급격하게 감소했습니다. 정확도가 가장 높은 범위를 찾아봤습니다.&lt;/p&gt;
&lt;p&gt;Score 0.83 이상 0.835 미만의 295개 인스턴스에서 정확도 94.58%를 얻을 수 있었습니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;2&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;395&quot; height=&quot;263&quot; src=&quot;https://blog.quantylab.com/_astro/2.Ct8vFHXX_3JyyR.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;여기에 포함된 Score Top 50 종목들은 다음과 같습니다.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;동전주, 거래대금이 적은 종목은 제외(Filter Out)했습니다.&lt;/p&gt;
&lt;/blockquote&gt;










































































































































































































































































































































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;date&lt;/th&gt;&lt;th&gt;name&lt;/th&gt;&lt;th&gt;close&lt;/th&gt;&lt;th&gt;score&lt;/th&gt;&lt;th&gt;diffratio_nextday&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/100090&quot;&gt;삼강엠앤티&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,320&lt;/td&gt;&lt;td&gt;0.8350&lt;/td&gt;&lt;td&gt;&lt;span&gt;-0.43%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200324&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/017940&quot;&gt;E1&lt;/a&gt;&lt;/td&gt;&lt;td&gt;23,650&lt;/td&gt;&lt;td&gt;0.8350&lt;/td&gt;&lt;td&gt;&lt;span&gt;8.03%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/079980&quot;&gt;휴비스&lt;/a&gt;&lt;/td&gt;&lt;td&gt;3,625&lt;/td&gt;&lt;td&gt;0.8350&lt;/td&gt;&lt;td&gt;&lt;span&gt;1.10%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/003650&quot;&gt;미창석유공업&lt;/a&gt;&lt;/td&gt;&lt;td&gt;47,850&lt;/td&gt;&lt;td&gt;0.8349&lt;/td&gt;&lt;td&gt;&lt;span&gt;1.78%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200409&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/005180&quot;&gt;빙그레&lt;/a&gt;&lt;/td&gt;&lt;td&gt;54,200&lt;/td&gt;&lt;td&gt;0.8349&lt;/td&gt;&lt;td&gt;&lt;span&gt;-0.55%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200323&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/170920&quot;&gt;엘티씨&lt;/a&gt;&lt;/td&gt;&lt;td&gt;5,130&lt;/td&gt;&lt;td&gt;0.8349&lt;/td&gt;&lt;td&gt;&lt;span&gt;8.38%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/094480&quot;&gt;갤럭시아머니트리&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,925&lt;/td&gt;&lt;td&gt;0.8349&lt;/td&gt;&lt;td&gt;&lt;span&gt;0.78%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/213500&quot;&gt;한솔제지&lt;/a&gt;&lt;/td&gt;&lt;td&gt;9,000&lt;/td&gt;&lt;td&gt;0.8349&lt;/td&gt;&lt;td&gt;&lt;span&gt;2.89%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/009440&quot;&gt;KC그린홀딩스&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,595&lt;/td&gt;&lt;td&gt;0.8349&lt;/td&gt;&lt;td&gt;&lt;span&gt;5.97%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/084680&quot;&gt;이월드&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,730&lt;/td&gt;&lt;td&gt;0.8348&lt;/td&gt;&lt;td&gt;&lt;span&gt;28.21%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/094940&quot;&gt;푸른기술&lt;/a&gt;&lt;/td&gt;&lt;td&gt;5,944&lt;/td&gt;&lt;td&gt;0.8347&lt;/td&gt;&lt;td&gt;&lt;span&gt;5.82%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/056700&quot;&gt;신화인터텍&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,655&lt;/td&gt;&lt;td&gt;0.8347&lt;/td&gt;&lt;td&gt;&lt;span&gt;8.76%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200619&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/059120&quot;&gt;아진엑스텍&lt;/a&gt;&lt;/td&gt;&lt;td&gt;4,123&lt;/td&gt;&lt;td&gt;0.8347&lt;/td&gt;&lt;td&gt;&lt;span&gt;3.10%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/034300&quot;&gt;신세계건설&lt;/a&gt;&lt;/td&gt;&lt;td&gt;16,450&lt;/td&gt;&lt;td&gt;0.8347&lt;/td&gt;&lt;td&gt;&lt;span&gt;8.81%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/310200&quot;&gt;애니플러스&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,030&lt;/td&gt;&lt;td&gt;0.8346&lt;/td&gt;&lt;td&gt;&lt;span&gt;4.85%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200323&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/104620&quot;&gt;노랑풍선&lt;/a&gt;&lt;/td&gt;&lt;td&gt;5,720&lt;/td&gt;&lt;td&gt;0.8346&lt;/td&gt;&lt;td&gt;&lt;span&gt;5.77%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/085620&quot;&gt;미래에셋생명&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,570&lt;/td&gt;&lt;td&gt;0.8346&lt;/td&gt;&lt;td&gt;&lt;span&gt;9.14%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200323&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/179900&quot;&gt;유티아이&lt;/a&gt;&lt;/td&gt;&lt;td&gt;7,060&lt;/td&gt;&lt;td&gt;0.8346&lt;/td&gt;&lt;td&gt;&lt;span&gt;7.51%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/131100&quot;&gt;스카이이앤엠&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,505&lt;/td&gt;&lt;td&gt;0.8345&lt;/td&gt;&lt;td&gt;&lt;span&gt;1.33%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200422&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/102940&quot;&gt;코오롱생명과학&lt;/a&gt;&lt;/td&gt;&lt;td&gt;41,100&lt;/td&gt;&lt;td&gt;0.8345&lt;/td&gt;&lt;td&gt;&lt;span&gt;3.53%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200324&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/013570&quot;&gt;디와이&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,500&lt;/td&gt;&lt;td&gt;0.8344&lt;/td&gt;&lt;td&gt;&lt;span&gt;9.60%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/082740&quot;&gt;HSD엔진&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,220&lt;/td&gt;&lt;td&gt;0.8344&lt;/td&gt;&lt;td&gt;&lt;span&gt;3.60%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/000500&quot;&gt;가온전선&lt;/a&gt;&lt;/td&gt;&lt;td&gt;12,100&lt;/td&gt;&lt;td&gt;0.8343&lt;/td&gt;&lt;td&gt;&lt;span&gt;6.20%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/192440&quot;&gt;슈피겐코리아&lt;/a&gt;&lt;/td&gt;&lt;td&gt;32,300&lt;/td&gt;&lt;td&gt;0.8343&lt;/td&gt;&lt;td&gt;&lt;span&gt;-2.94%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200323&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/100130&quot;&gt;동국S&amp;#x26;C&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,195&lt;/td&gt;&lt;td&gt;0.8343&lt;/td&gt;&lt;td&gt;&lt;span&gt;10.88%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/089150&quot;&gt;케이씨티&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,210&lt;/td&gt;&lt;td&gt;0.8343&lt;/td&gt;&lt;td&gt;&lt;span&gt;7.02%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/011280&quot;&gt;태림포장&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,455&lt;/td&gt;&lt;td&gt;0.8342&lt;/td&gt;&lt;td&gt;&lt;span&gt;4.07%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/140070&quot;&gt;서플러스글로벌&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,250&lt;/td&gt;&lt;td&gt;0.8342&lt;/td&gt;&lt;td&gt;&lt;span&gt;2.00%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/044490&quot;&gt;태웅&lt;/a&gt;&lt;/td&gt;&lt;td&gt;4,220&lt;/td&gt;&lt;td&gt;0.8342&lt;/td&gt;&lt;td&gt;&lt;span&gt;-1.66%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200324&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/104620&quot;&gt;노랑풍선&lt;/a&gt;&lt;/td&gt;&lt;td&gt;6,050&lt;/td&gt;&lt;td&gt;0.8342&lt;/td&gt;&lt;td&gt;&lt;span&gt;10.74%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200323&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/081000&quot;&gt;일진다이아&lt;/a&gt;&lt;/td&gt;&lt;td&gt;11,000&lt;/td&gt;&lt;td&gt;0.8342&lt;/td&gt;&lt;td&gt;&lt;span&gt;17.27%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200324&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/020760&quot;&gt;일진디스플&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,892&lt;/td&gt;&lt;td&gt;0.8341&lt;/td&gt;&lt;td&gt;&lt;span&gt;11.89%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/067310&quot;&gt;하나마이크론&lt;/a&gt;&lt;/td&gt;&lt;td&gt;3,725&lt;/td&gt;&lt;td&gt;0.8341&lt;/td&gt;&lt;td&gt;&lt;span&gt;6.58%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/037030&quot;&gt;파워넷&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,240&lt;/td&gt;&lt;td&gt;0.8341&lt;/td&gt;&lt;td&gt;&lt;span&gt;4.69%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/064240&quot;&gt;홈캐스트&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,400&lt;/td&gt;&lt;td&gt;0.8340&lt;/td&gt;&lt;td&gt;&lt;span&gt;3.12%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/000910&quot;&gt;유니온&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,940&lt;/td&gt;&lt;td&gt;0.8340&lt;/td&gt;&lt;td&gt;&lt;span&gt;2.06%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/036120&quot;&gt;SCI평가정보&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,455&lt;/td&gt;&lt;td&gt;0.8340&lt;/td&gt;&lt;td&gt;&lt;span&gt;4.12%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/114630&quot;&gt;우노앤컴퍼니&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,515&lt;/td&gt;&lt;td&gt;0.8340&lt;/td&gt;&lt;td&gt;&lt;span&gt;29.82%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/013520&quot;&gt;화승알앤에이&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,300&lt;/td&gt;&lt;td&gt;0.8339&lt;/td&gt;&lt;td&gt;&lt;span&gt;3.08%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200324&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/095270&quot;&gt;웨이브일렉트로&lt;/a&gt;&lt;/td&gt;&lt;td&gt;8,563&lt;/td&gt;&lt;td&gt;0.8339&lt;/td&gt;&lt;td&gt;&lt;span&gt;14.56%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/226320&quot;&gt;잇츠한불&lt;/a&gt;&lt;/td&gt;&lt;td&gt;9,530&lt;/td&gt;&lt;td&gt;0.8339&lt;/td&gt;&lt;td&gt;&lt;span&gt;8.60%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/049120&quot;&gt;파인디앤씨&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,000&lt;/td&gt;&lt;td&gt;0.8338&lt;/td&gt;&lt;td&gt;&lt;span&gt;5.50%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200323&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/007860&quot;&gt;서연&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,555&lt;/td&gt;&lt;td&gt;0.8338&lt;/td&gt;&lt;td&gt;&lt;span&gt;29.90%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200323&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/010690&quot;&gt;화신&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,390&lt;/td&gt;&lt;td&gt;0.8338&lt;/td&gt;&lt;td&gt;&lt;span&gt;4.68%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/029530&quot;&gt;신도리코&lt;/a&gt;&lt;/td&gt;&lt;td&gt;21,200&lt;/td&gt;&lt;td&gt;0.8337&lt;/td&gt;&lt;td&gt;&lt;span&gt;0.94%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200323&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/060280&quot;&gt;큐렉소&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,460&lt;/td&gt;&lt;td&gt;0.8337&lt;/td&gt;&lt;td&gt;&lt;span&gt;6.71%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/005010&quot;&gt;휴스틸&lt;/a&gt;&lt;/td&gt;&lt;td&gt;4,805&lt;/td&gt;&lt;td&gt;0.8337&lt;/td&gt;&lt;td&gt;&lt;span&gt;4.06%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/036000&quot;&gt;예림당&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,750&lt;/td&gt;&lt;td&gt;0.8337&lt;/td&gt;&lt;td&gt;&lt;span&gt;9.71%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/072950&quot;&gt;빛샘전자&lt;/a&gt;&lt;/td&gt;&lt;td&gt;3,220&lt;/td&gt;&lt;td&gt;0.8337&lt;/td&gt;&lt;td&gt;&lt;span&gt;6.21%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20200325&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/045510&quot;&gt;정원엔시스&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,070&lt;/td&gt;&lt;td&gt;0.8337&lt;/td&gt;&lt;td&gt;&lt;span&gt;14.02%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;그럼 어제(20210304)의 상위 종목들 살펴보겠습니다.&lt;/p&gt;


















































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;date&lt;/th&gt;&lt;th&gt;name&lt;/th&gt;&lt;th&gt;close&lt;/th&gt;&lt;th&gt;score&lt;/th&gt;&lt;th&gt;diffratio_nextday&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;20210304&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/007570&quot;&gt;일양약품&lt;/a&gt;&lt;/td&gt;&lt;td&gt;35,000&lt;/td&gt;&lt;td&gt;0.6188&lt;/td&gt;&lt;td&gt;&lt;span&gt;-1.14%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210304&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/050960&quot;&gt;수산아이앤티&lt;/a&gt;&lt;/td&gt;&lt;td&gt;28,550&lt;/td&gt;&lt;td&gt;0.5753&lt;/td&gt;&lt;td&gt;&lt;span&gt;-5.43%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210304&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/060900&quot;&gt;대한그린파워&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,400&lt;/td&gt;&lt;td&gt;0.5532&lt;/td&gt;&lt;td&gt;&lt;span&gt;7.50%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210304&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/003780&quot;&gt;진양산업&lt;/a&gt;&lt;/td&gt;&lt;td&gt;4,365&lt;/td&gt;&lt;td&gt;0.5196&lt;/td&gt;&lt;td&gt;&lt;span&gt;0.46%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210304&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/088390&quot;&gt;이녹스&lt;/a&gt;&lt;/td&gt;&lt;td&gt;11,000&lt;/td&gt;&lt;td&gt;0.5174&lt;/td&gt;&lt;td&gt;&lt;span&gt;2.27%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210304&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/023800&quot;&gt;인지컨트롤스&lt;/a&gt;&lt;/td&gt;&lt;td&gt;18,600&lt;/td&gt;&lt;td&gt;0.5040&lt;/td&gt;&lt;td&gt;&lt;span&gt;-3.23%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210304&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/095720&quot;&gt;웅진씽크빅&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,635&lt;/td&gt;&lt;td&gt;0.4985&lt;/td&gt;&lt;td&gt;&lt;span&gt;3.04%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210304&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/091090&quot;&gt;세원셀론텍&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,995&lt;/td&gt;&lt;td&gt;0.4923&lt;/td&gt;&lt;td&gt;&lt;span&gt;-1.50%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210304&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/049080&quot;&gt;기가레인&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,825&lt;/td&gt;&lt;td&gt;0.4921&lt;/td&gt;&lt;td&gt;&lt;span&gt;-1.37%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210304&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/043200&quot;&gt;파루&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,450&lt;/td&gt;&lt;td&gt;0.4917&lt;/td&gt;&lt;td&gt;&lt;span&gt;0.69%&lt;/span&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;최근 장이 안좋아서 그런지 Score 가장 높은게 0.6 정도입니다. 그럼 오늘 날짜의 Score 상위 종목에는 어떤 종목들이 있을까요?&lt;/p&gt;







































































&lt;table&gt;&lt;thead&gt;&lt;tr&gt;&lt;th&gt;date&lt;/th&gt;&lt;th&gt;name&lt;/th&gt;&lt;th&gt;close&lt;/th&gt;&lt;th&gt;score&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td&gt;20210305&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/068050&quot;&gt;팬엔터테인먼트&lt;/a&gt;&lt;/td&gt;&lt;td&gt;7,670&lt;/td&gt;&lt;td&gt;0.8676&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210305&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/093380&quot;&gt;풍강&lt;/a&gt;&lt;/td&gt;&lt;td&gt;3,990&lt;/td&gt;&lt;td&gt;0.8056&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210305&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/000440&quot;&gt;중앙에너비스&lt;/a&gt;&lt;/td&gt;&lt;td&gt;9,200&lt;/td&gt;&lt;td&gt;0.5439&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210305&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/300080&quot;&gt;플리토&lt;/a&gt;&lt;/td&gt;&lt;td&gt;13,900&lt;/td&gt;&lt;td&gt;0.5383&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210305&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/025890&quot;&gt;한국주강&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,780&lt;/td&gt;&lt;td&gt;0.5381&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210305&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/007570&quot;&gt;일양약품&lt;/a&gt;&lt;/td&gt;&lt;td&gt;34,600&lt;/td&gt;&lt;td&gt;0.5241&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210305&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/014530&quot;&gt;극동유화&lt;/a&gt;&lt;/td&gt;&lt;td&gt;3,475&lt;/td&gt;&lt;td&gt;0.5151&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210305&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/123840&quot;&gt;한일진공&lt;/a&gt;&lt;/td&gt;&lt;td&gt;1,040&lt;/td&gt;&lt;td&gt;0.5141&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210305&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/033230&quot;&gt;인성정보&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2,315&lt;/td&gt;&lt;td&gt;0.5056&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td&gt;20210305&lt;/td&gt;&lt;td&gt;&lt;a href=&quot;http://quantylab.com/stock/200230&quot;&gt;텔콘RF제약&lt;/a&gt;&lt;/td&gt;&lt;td&gt;5,270&lt;/td&gt;&lt;td&gt;0.4999&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;
&lt;p&gt;다음 거래일에 이 종목들이 어떤 움직임을 보일지 지켜보면 재미있을 것 같습니다.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;어디까지나 투자는 본인이 결정하는 것입니다. 퀀티랩에서 제공하는 정보는 참고만 하시길 당부드립니다.&lt;/p&gt;
&lt;/blockquote&gt;</content:encoded><category>딥러닝</category><category>주식</category><category>주가예측</category><category>단타</category><category>단기트레이딩</category><category>데이트레이딩</category></item><item><title>[2021-02-26] 딥러닝 모델 종목추천</title><link>https://blog.quantylab.com/blog/2021-02-27-stockrec_20210226/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-02-27-stockrec_20210226/</guid><pubDate>Sat, 27 Feb 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;퀀티랩 AI 주식 종목 랭킹 모델을 개선했습니다. 다양한 자질을 추가했고 학습 방식도 많이 변경했습니다. 백테스팅 결과 기존의 모델에 비해 더 나은 결과를 얻을 수 있었습니다.&lt;/p&gt;
&lt;p&gt;특이 사항으로 거래 대금이 적은 종목에 약간의 패널티를 부여했습니다. 너무 거래가 적은 종목들은 피하자는 의도입니다.&lt;/p&gt;
&lt;p&gt;개선한 모델의 2021년 2월 26일자 상위 랭크 종목들은 다음과 같습니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;1&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;856&quot; height=&quot;1722&quot; src=&quot;https://blog.quantylab.com/_astro/1.BFgWJFxr_1volMy.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;이들 중에 특히 주가가 많이 내려와 있는 KT&amp;#x26;G, 한국전력이 눈에 뜁니다.&lt;/p&gt;
&lt;p&gt;매일 업데이트 되는 랭킹 결과를 &lt;a href=&quot;http://quantylab.com/&quot;&gt;퀀티랩&lt;/a&gt;에서 확인하세요. &lt;a href=&quot;http://quantylab.com/backtest/&quot;&gt;퀀티랩 AI 매매내역&lt;/a&gt; 페이지에서는 퀀티랩 AI의 수익률 차트, 현재 보유 종목, 매매 내역을 볼 수 있습니다.&lt;/p&gt;
&lt;p&gt;요증 인플레이션 우려와 함께 미국 금리 인상이 앞당겨질 수 있다는 추측이 많아서 주식 시장이 좋지 않습니다. 잘 대응하셔서 성투하세요.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;어디까지나 투자는 본인이 결정하는 것입니다. 퀀티랩에서 제공하는 정보는 참고만 하시길 당부드립니다.&lt;/p&gt;
&lt;/blockquote&gt;</content:encoded><category>딥러닝</category><category>주식</category><category>종목추천</category></item><item><title>매경, 한경 등의 경제 잡지 무료로 보기</title><link>https://blog.quantylab.com/blog/2021-02-15-fin_journals/</link><guid isPermaLink="true">https://blog.quantylab.com/blog/2021-02-15-fin_journals/</guid><pubDate>Mon, 15 Feb 2021 00:00:00 GMT</pubDate><content:encoded>&lt;p&gt;틈틈히 경제 잡지를 읽어보는 것은 투자에 큰 도움이 된다고 생각합니다. 사서 보기는 부담스러울 수 있는 이러한 경제 잡지들을 전자 잡지 형태로 무료로 볼 수 있습니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;매경 ECONOMY&lt;/li&gt;
&lt;li&gt;한경 BUSINESS&lt;/li&gt;
&lt;li&gt;MONEY&lt;/li&gt;
&lt;li&gt;이코노미조선&lt;/li&gt;
&lt;li&gt;포춘코리아&lt;/li&gt;
&lt;li&gt;머니S&lt;/li&gt;
&lt;li&gt;월간리치&lt;/li&gt;
&lt;li&gt;웰스매니지먼트&lt;/li&gt;
&lt;li&gt;이코노믹리뷰&lt;/li&gt;
&lt;li&gt;NEXT economy&lt;/li&gt;
&lt;li&gt;M이코노미&lt;/li&gt;
&lt;li&gt;MIDAS&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;지역 도서관들이 &lt;a href=&quot;http://www.moazine.com/&quot;&gt;모아진(moazin)&lt;/a&gt;이라는 전자 잡지 서비스와 계약하여 잡지들을 제공하고 있는 것 같습니다. 물론 우리들의 세금이 들어가는 것이겠지요.&lt;/p&gt;
&lt;p&gt;먼저 살고계신 지역의 도서관에 정회원으로 가입을 해야 합니다. 이를 위해서 한번은 도서관을 방문해야 할 수 있습니다.&lt;/p&gt;
&lt;p&gt;각 지역의 도서관 홈페이지마다 조금씩 다르겠지만 여기서는 서울시, 성남시, 용인시 도서관의 전자잡지 접근 방법을 다루겠습니다.&lt;/p&gt;
&lt;p&gt;서울시의 경우 &lt;a href=&quot;https://e-lib.sen.go.kr/index.php&quot;&gt;서울특별시교육청 전자도서관&lt;/a&gt;에 &lt;a href=&quot;https://e-lib.sen.go.kr/1_elearning/etc_04.html?flag=web&quot;&gt;전자잡지&lt;/a&gt; 메뉴가 있습니다. 로그인 후 이용하시면 되겠습니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;서울시도서관&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;917&quot; height=&quot;565&quot; src=&quot;https://blog.quantylab.com/_astro/2.DXx9mcK3_Z2cs6AH.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;성남시와 용인시의 경우 같은 경기도라 그런지 메뉴 구성이 같았습니다. 각 시의 도서관사업소 홈페이지에서 &lt;code dir=&quot;auto&quot;&gt;이용안내 &gt; 디지털서비스 &gt; 전자잡지&lt;/code&gt; 메뉴를 확인하시면 됩니다.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.snlib.go.kr/intro/index.do&quot;&gt;성남시 도서관사업소&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://lib.yongin.go.kr/intro/index.do&quot;&gt;용인시 도서관사업소&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img alt=&quot;용인시도서관&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;873&quot; height=&quot;650&quot; src=&quot;https://blog.quantylab.com/_astro/4.pr1dMCNq_2oW879.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;이제 PC에서는 이런식으로 모아진에서 제공하는 전자잡지를 확인할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;전자잡지PC&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;935&quot; height=&quot;651&quot; src=&quot;https://blog.quantylab.com/_astro/1.CqMkSxaF_Z2nNnpR.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;모바일에서 전자잡지를 보고싶을 경우 &lt;a href=&quot;https://play.google.com/store/apps/details?id=com.moazine.b2b.library&amp;#x26;hl=ko&quot;&gt;도서관 매거진&lt;/a&gt; 앱을 설치하면 됩니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;도서관매거진앱&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;493&quot; height=&quot;159&quot; src=&quot;https://blog.quantylab.com/_astro/5.BWLFz09e_2o1C5Y.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;이후 본인이 정회원으로 가입된 도서관을 목록에서 선택해서 로그인하면 다음과 같이 전자잡지를 모바일에서 확인할 수 있습니다.&lt;/p&gt;
&lt;p&gt;&lt;img alt=&quot;도서관매거진화면&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; fetchpriority=&quot;auto&quot; width=&quot;324&quot; height=&quot;576&quot; src=&quot;https://blog.quantylab.com/_astro/6.4KrHRlff_Zm3pkn.webp&quot;&gt;&lt;/p&gt;
&lt;p&gt;우리 세금으로 운영되는 만큼 활용하셔서 투자에 도움이 되시길 바랍니다.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;경제 분야 뿐만 아니라 시사, 과학, 문화, 예술, 패션, 라이프 등 다양한 분야의 잡지를 볼 수 있습니다.&lt;/p&gt;
&lt;/blockquote&gt;</content:encoded><category>경제</category><category>잡지</category><category>저널</category></item></channel></rss>