MultiFactor 0.2.8__tar.gz → 0.3.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. {multifactor-0.2.8 → multifactor-0.3.0}/PKG-INFO +245 -36
  2. {multifactor-0.2.8 → multifactor-0.3.0}/README.md +244 -35
  3. {multifactor-0.2.8 → multifactor-0.3.0}/pyproject.toml +1 -1
  4. multifactor-0.3.0/src/MultiFactor/Visual.py +54 -0
  5. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/__init__.py +1 -1
  6. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/us_stockinfo.py +18 -3
  7. multifactor-0.3.0/src/MultiFactor/vcompare_idx.py +164 -0
  8. multifactor-0.3.0/src/MultiFactor/vfinance_kr.py +128 -0
  9. multifactor-0.3.0/src/MultiFactor/vheatmap_idx.py +185 -0
  10. multifactor-0.3.0/src/MultiFactor/vheatmap_kr.py +194 -0
  11. multifactor-0.3.0/src/MultiFactor/vheatmap_us.py +211 -0
  12. multifactor-0.3.0/src/MultiFactor/vmulti_idx.py +151 -0
  13. multifactor-0.3.0/src/MultiFactor/vmulti_kr.py +146 -0
  14. multifactor-0.3.0/src/MultiFactor/vmulti_us.py +158 -0
  15. multifactor-0.3.0/src/MultiFactor/vret_idx.py +161 -0
  16. multifactor-0.3.0/src/MultiFactor/vret_kr.py +171 -0
  17. multifactor-0.3.0/src/MultiFactor/vret_us.py +183 -0
  18. multifactor-0.3.0/src/MultiFactor/vtargetprice_us.py +165 -0
  19. multifactor-0.3.0/src/MultiFactor/vtreemap_us.py +193 -0
  20. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor.egg-info/PKG-INFO +245 -36
  21. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor.egg-info/SOURCES.txt +14 -0
  22. {multifactor-0.2.8 → multifactor-0.3.0}/setup.cfg +0 -0
  23. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/core.py +0 -0
  24. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/momentum.py +0 -0
  25. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/momentum_one.py +0 -0
  26. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/quality.py +0 -0
  27. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/quality_one.py +0 -0
  28. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/score.py +0 -0
  29. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/score_adj_weight.py +0 -0
  30. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/stockinfo.py +0 -0
  31. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/us_core.py +0 -0
  32. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/us_momentum.py +0 -0
  33. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/us_quality.py +0 -0
  34. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/us_value.py +0 -0
  35. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/value.py +0 -0
  36. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor/value_one.py +0 -0
  37. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor.egg-info/dependency_links.txt +0 -0
  38. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor.egg-info/requires.txt +0 -0
  39. {multifactor-0.2.8 → multifactor-0.3.0}/src/MultiFactor.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: MultiFactor
3
- Version: 0.2.8
3
+ Version: 0.3.0
4
4
  Summary: 멀티팩터 기반 주식 데이터 수집 패키지
5
5
  Author-email: HANHO <hanhoman@gmail.com>
6
6
  Classifier: Programming Language :: Python :: 3
@@ -18,33 +18,35 @@ Requires-Dist: yfinance
18
18
  # MultiFactor 📈
19
19
 
20
20
  **MultiFactor**는 국내상장주식(코스피/코스닥)뿐만 아니라 미국주식(NYSE, NASDAQ)을 대상으로 멀티팩터(Multi-Factor) 전략을 손쉽게 적용하고, 팩터별 점수 및 종합 순위를 산출해 주는 파이썬 패키지입니다.
21
- 종목별 주가와 재무 데이터 수집은 FinanceDataReader와 yfinance를 기반으로 구동됩니다.
21
+ 종목별 주가와 재무 데이터 수집은 FinanceDataReader(국내주식)와 yfinance(미국주식)를 기반으로 구동됩니다.
22
+ 또한 주식시장 및 종목 정보 취득에 유용한 시각화분석 패키지가 추가 되었습니다.
22
23
 
23
24
  <br>
24
25
 
25
26
  ## 📌 멀티팩터 전략이란?
27
+
26
28
  주식 투자에서 멀티팩터(Multi-Factor) 기법은 주가의 수익률에 영향을 미치는 여러 가지 핵심 요인(팩터)을 동시에 고려하여 종목을 고르고 포트폴리오를 운용하는 데이터에 기반한 정량적 투자 전략입니다.
27
29
 
28
30
  단순히 '저평가된 주식'만 찾거나 '상승 추세인 주식'만 사는 것이 아니라, 다양한 성공 요소를 결합하여 단일 팩터의 약점을 보완하고 보다 안정적인 초과 수익을 추구합니다. MultiFactor 라이브러리는 다음 3가지 핵심 팩터의 점수를 계산하고 이를 종합점수로 환산한 후 순위화한 결과를 제공합니다.
29
31
 
30
- | 팩터 (Factor) | 핵심 개념 | 주요 지표 |
31
- | :--- | :--- | :--- |
32
- | **모멘텀 (Momentum)** | 과거에 우수한 성과를 보인 주식이 미래에도 상승 추세를 이어갈 것이라는 가정 | 주가 상승률, 거래량 |
33
- | **밸류 (Value)** | 기업의 내재 가치 대비 저평가된 주식을 발굴 | PER, PBR |
34
- | **퀄리티 (Quality)** | 우량한 펀더멘털, 안정적인 수익성, 장기 성장 잠재력을 갖춘 기업에 집중 | 매출성장률, 영업이익성장률, ROE |
32
+ | 팩터 (Factor) | 핵심 개념 | 주요 지표 |
33
+ |:------------------ |:------------------------------------------ |:------------------- |
34
+ | **모멘텀 (Momentum)** | 과거에 우수한 성과를 보인 주식이 미래에도 상승 추세를 이어갈 것이라는 가정 | 주가 상승률, 거래량 |
35
+ | **밸류 (Value)** | 기업의 내재 가치 대비 저평가된 주식을 발굴 | PER, PBR |
36
+ | **퀄리티 (Quality)** | 우량한 펀더멘털, 안정적인 수익성, 장기 성장 잠재력을 갖춘 기업에 집중 | 매출성장률, 영업이익성장률, ROE |
35
37
 
36
38
  <br>
37
39
 
38
40
  ## ✨ 주요 기능
39
- * **국내 및 미국 주식 멀티팩터 데이터 제공:** 가치, 모멘텀, 퀄리티 지표 및 이를 합산한 종합 점수 산출
40
41
 
41
- | 구분 | 주요 기능 | 함수명 |
42
- | -------- | -------- | -------- |
43
- | 종목 정보 수집 | 지정한 시장(KR/US)의 시가총액 기준 상위 종목들의 기본 정보(종목코드, 종목명, 시가총액, 업종, 최근 종가 등)를 수집합니다. | get_stockinfo() |
44
- | 멀티팩터 종합점수 | 종목별 멀티팩터 세부 지표 점수와 종합 점수, 그리고 전체 순위를 산출합니다. | get_score() |
45
- | 투자스타일별 종합점수 | 3가지 투자 스타일(안정추구, 추세성장, 역발상 등)에 맞춰 가중치가 조정된 멀티팩터 종합 점수를 제공합니다. | get_score_adj_weight() |
46
- | 종합점수 그룹화 | 산출된 종합 점수를 바탕으로 전체 종목을 N개의 그룹으로 분류하고, 그룹별 종목명을 출력합니다.| get_Ngroup() |
42
+ * **국내 및 미국 주식 멀티팩터 데이터 제공:** 가치, 모멘텀, 퀄리티 지표 및 이를 합산한 종합 점수 산출
47
43
 
44
+ | 구분 | 주요 기능 | 함수명 |
45
+ | ----------- | -------------------------------------------------------------------------- | ---------------------- |
46
+ | 종목 정보 수집 | 지정한 시장(KR/US)의 시가총액 기준 상위 종목들의 기본 정보(종목코드, 종목명, 시가총액, 업종, 최근 종가 등)를 수집합니다. | get_stockinfo() |
47
+ | 멀티팩터 종합점수 | 종목별 멀티팩터 세부 지표 점수와 종합 점수, 그리고 전체 순위를 산출합니다. | get_score() |
48
+ | 투자스타일별 종합점수 | 3가지 투자 스타일(안정추구, 추세성장, 역발상 등)에 맞춰 가중치가 조정된 멀티팩터 종합 점수를 제공합니다. | get_score_adj_weight() |
49
+ | 종합점수 그룹화 | 산출된 종합 점수를 바탕으로 전체 종목을 N개의 그룹으로 분류하고, 그룹별 종목명을 출력합니다. | get_Ngroup() |
48
50
 
49
51
  * **투자 유형별 가중치 조절한 멀티팩터 데이터 제공 :** 투자 스타일에 맞춘 3가지 모델 제공
50
52
  * **가치성장:** 밸류 + 퀄리티 조합 ("기업의 본질적인 가치와 안정성을 중요하게 생각하며, 장기적인 관점에서 투자")
@@ -53,14 +55,16 @@ Requires-Dist: yfinance
53
55
 
54
56
  <br>
55
57
 
56
-
57
58
  ## ⚙️ 설치 방법 (Installation)
59
+
58
60
  다음 코드를 실행하여 각자의 PC(또는 실습 환경)에 MultiFactor 라이브러리를 설치합니다. 이 과정은 최초 1회만 수행하면 됩니다.
61
+
59
62
  ```python
60
63
  !pip install MultiFactor
61
64
  ```
62
65
 
63
66
  만약 기존에 설치된 라이브러리를 최신 버전으로 업데이트해야 한다면 아래의 코드를 실행합니다.
67
+
64
68
  ```python
65
69
  !pip install --upgrade MultiFactor
66
70
  ```
@@ -69,33 +73,49 @@ Requires-Dist: yfinance
69
73
 
70
74
  ## 🚀 빠른 시작 (Quick Start)
71
75
 
72
- ### 1. 패키지 불러오기
76
+ ### 1. 패키지 불러오기
77
+
73
78
  다음 코드로 멀티팩터 패키지를 불러옵니다.
79
+
74
80
  ```python
75
81
  # 국내주식
76
82
  from MultiFactor import MultiFactorKR
77
83
 
78
84
  # 미국주식
79
85
  from MultiFactor import MultiFactorUS
86
+
87
+ # 시각화 분석
88
+ from MultiFactor import Visual
80
89
  ```
81
90
 
82
91
  <br>
83
92
 
84
- ### 2. 멀티팩터 객체 생성
93
+ ### 2. 멀티팩터 객체 생성
94
+
85
95
  멀티팩터 객체 생성 시 수집 대상 종목 수(`N`)를 지정합니다. N이 커질수록 데이터 수집 시간이 길어지므로, 초기 테스트에는 5~50 사이로 지정한 후 차츰 늘려가기를 권장합니다.
96
+
86
97
  ```python
87
98
  # 국내 시가총액 상위 50개 종목
88
99
  mf_kr = MultiFactorKR(N=50)
89
-
100
+
90
101
  # 미국 시가총액 상위 50개 종목
91
102
  mf_us = MultiFactorUS(N=50)
92
103
  ```
104
+
105
+ 시각화 분석 객체는 다음 코드로 생성합니다.
106
+
107
+ ```python
108
+ visual = Visual()
109
+ ```
110
+
93
111
  <br>
94
112
 
95
- ### 3. 종목 정보 수집
113
+ ### 3. 종목 정보 수집
114
+
96
115
  멀티팩터 객체에서 지정한 종목수(N) 만큼 종목 정보 데이터를 생성합니다.
97
116
 
98
- (1) 국내주식
117
+ ① 국내주식
118
+
99
119
  ```python
100
120
  df = mf_kr.get_stockinfo()
101
121
  df[['Code', 'Name', 'Marcap']].head()
@@ -144,8 +164,8 @@ df[['Code', 'Name', 'Marcap']].head()
144
164
  </tbody>
145
165
  </table>
146
166
 
167
+ ② 미국 주식
147
168
 
148
- 2. 미국 주식
149
169
  ```python
150
170
  df = mf_us.get_stockinfo()
151
171
  df[['Code', 'Name', 'MarketCap']].head()
@@ -194,11 +214,10 @@ df[['Code', 'Name', 'MarketCap']].head()
194
214
  </tbody>
195
215
  </table>
196
216
 
197
-
198
217
  <br>
199
218
 
200
-
201
219
  ### 4. 멀티팩터 종합 점수 데이터 수집
220
+
202
221
  `get_score` 함수로 멀티팩터 종합점수 데이터를 간단하게 생성할 수 있습니다. 동일한 함수로 한국과 미국 시장 모두 분석이 가능합니다.
203
222
 
204
223
  이 데이터프레임 안에는 분석에 필요한 총 23개의 컬럼(열)이 담겨 있습니다. 컬럼은 크게 4개 유형으로 구분됩니다.
@@ -309,7 +328,6 @@ df[cols].head()
309
328
  </tbody>
310
329
  </table>
311
330
 
312
-
313
331
  (2) 미국주식
314
332
 
315
333
  ```python
@@ -321,6 +339,7 @@ cols = ['scode', 'sname', 'mom_price', 'mom_vol', 'PER', 'PBR',
321
339
 
322
340
  df[cols].head()
323
341
  ```
342
+
324
343
  <table border="1" class="dataframe">
325
344
  <thead>
326
345
  <tr style="text-align: right;">
@@ -411,6 +430,7 @@ df[cols].head()
411
430
  <b>② 종합지표 순위 예시</b>
412
431
 
413
432
  (1) 국내주식
433
+
414
434
  ```python
415
435
  mf_kr = MultiFactorKR(N=10)
416
436
  df = mf_kr.get_score()
@@ -420,6 +440,7 @@ cols = ['scode', 'sname', '모멘텀_주가', '모멘텀_거래량', '밸류_PER
420
440
 
421
441
  df[cols].head()
422
442
  ```
443
+
423
444
  <table border="1" class="dataframe">
424
445
  <thead>
425
446
  <tr style="text-align: right;">
@@ -505,8 +526,8 @@ df[cols].head()
505
526
  </tbody>
506
527
  </table>
507
528
 
508
-
509
529
  (2) 미국주식
530
+
510
531
  ```python
511
532
  mf_us = MultiFactorUS(N=10)
512
533
  df = mf_us.get_score()
@@ -516,6 +537,7 @@ cols = ['scode', 'sname', '모멘텀_주가', '모멘텀_거래량', '밸류_PER
516
537
 
517
538
  df[cols].head()
518
539
  ```
540
+
519
541
  <table border="1" class="dataframe">
520
542
  <thead>
521
543
  <tr style="text-align: right;">
@@ -614,6 +636,7 @@ df = mf_kr.get_score()
614
636
  cols = ['scode', 'sname', '종합점수', '종합순위', '종합순위_퍼센트']
615
637
  df[cols].head()
616
638
  ```
639
+
617
640
  <table border="1" class="dataframe">
618
641
  <thead>
619
642
  <tr style="text-align: right;">
@@ -669,8 +692,8 @@ df[cols].head()
669
692
  </tbody>
670
693
  </table>
671
694
 
672
-
673
695
  (2) 미국주식
696
+
674
697
  ```python
675
698
  mf_us = MultiFactorUS(N=10)
676
699
  df = mf_us.get_score()
@@ -678,6 +701,7 @@ df = mf_us.get_score()
678
701
  cols = ['scode', 'sname', '종합점수', '종합순위', '종합순위_퍼센트']
679
702
  df[cols].head()
680
703
  ```
704
+
681
705
  <table border="1" class="dataframe">
682
706
  <thead>
683
707
  <tr style="text-align: right;">
@@ -735,13 +759,14 @@ df[cols].head()
735
759
 
736
760
  <br>
737
761
 
738
- ### 5. 투자 스타일별 종합점수 출력
762
+ ### 5. 투자 스타일별 종합점수 출력
739
763
 
740
764
  3가지로 분류된 투자 유형별로 가중치를 조절한 멀티팩터 점수를 산출합니다. 국내와 미국 시장 모두 동일하게 적용 가능합니다.
741
765
 
742
766
  <b>① 가치 성장 전략 : 밸류 + 퀄리티 조합</b>
743
767
 
744
768
  (1) 국내주식
769
+
745
770
  ```python
746
771
  # 시가총액 상위 100종목
747
772
  mf_kr = MultiFactorKR(N=100)
@@ -767,7 +792,7 @@ df[['scode', 'sname', '종합점수', '종합순위']].head()
767
792
  <tr>
768
793
  <th>0</th>
769
794
  <td>028050</td>
770
- <td>삼성E&amp;A</td>
795
+ <td>삼성E&A</td>
771
796
  <td>24</td>
772
797
  <td>1</td>
773
798
  </tr>
@@ -802,8 +827,8 @@ df[['scode', 'sname', '종합점수', '종합순위']].head()
802
827
  </tbody>
803
828
  </table>
804
829
 
805
-
806
830
  (2) 미국주식
831
+
807
832
  ```python
808
833
  # 시가총액 상위 100종목
809
834
  mf_us = MultiFactorUS(N=100)
@@ -814,6 +839,7 @@ df = mf_us.get_score_adj_weight(df, weight='가치성장')
814
839
 
815
840
  df[['scode', 'sname', '종합점수', '종합순위']].head()
816
841
  ```
842
+
817
843
  <table border="1" class="dataframe">
818
844
  <thead>
819
845
  <tr style="text-align: right;">
@@ -867,8 +893,8 @@ df[['scode', 'sname', '종합점수', '종합순위']].head()
867
893
 
868
894
  <b>② 추세 성장 전략 : 모멘텀 + 퀄리티 조합</b>
869
895
 
870
-
871
896
  (1) 국내주식
897
+
872
898
  ```python
873
899
  # 시가총액 상위 100종목
874
900
  mf_kr = MultiFactorKR(N=100)
@@ -922,16 +948,15 @@ df[['scode', 'sname', '종합점수', '종합순위']].head()
922
948
  <tr>
923
949
  <th>4</th>
924
950
  <td>028050</td>
925
- <td>삼성E&amp;A</td>
951
+ <td>삼성E&A</td>
926
952
  <td>22</td>
927
953
  <td>5</td>
928
954
  </tr>
929
955
  </tbody>
930
956
  </table>
931
957
 
932
-
933
-
934
958
  (2) 미국주식
959
+
935
960
  ```python
936
961
  # 시가총액 상위 100종목
937
962
  mf_us = MultiFactorUS(N=100)
@@ -942,6 +967,7 @@ df = mf_us.get_score_adj_weight(df, weight='추세성장')
942
967
 
943
968
  df[['scode', 'sname', '종합점수', '종합순위']].head()
944
969
  ```
970
+
945
971
  <table border="1" class="dataframe">
946
972
  <thead>
947
973
  <tr style="text-align: right;">
@@ -995,8 +1021,8 @@ df[['scode', 'sname', '종합점수', '종합순위']].head()
995
1021
 
996
1022
  <b>③ 역발상 전략 : 밸류 + 모멘텀 조합</b>
997
1023
 
998
-
999
1024
  (1) 국내주식
1025
+
1000
1026
  ```python
1001
1027
  # 시가총액 상위 100종목
1002
1028
  mf_kr = MultiFactorKR(N=100)
@@ -1007,6 +1033,7 @@ df = mf_kr.get_score_adj_weight(df, weight='역발상')
1007
1033
 
1008
1034
  df[['scode', 'sname', '종합점수', '종합순위']].head()
1009
1035
  ```
1036
+
1010
1037
  <table border="1" class="dataframe">
1011
1038
  <thead>
1012
1039
  <tr style="text-align: right;">
@@ -1057,6 +1084,7 @@ df[['scode', 'sname', '종합점수', '종합순위']].head()
1057
1084
  </table>
1058
1085
 
1059
1086
  (2) 미국주식
1087
+
1060
1088
  ```python
1061
1089
  # 시가총액 상위 100종목
1062
1090
  mf_us = MultiFactorUS(N=100)
@@ -1067,6 +1095,7 @@ df = mf_us.get_score_adj_weight(df, weight='역발상')
1067
1095
 
1068
1096
  df[['scode', 'sname', '종합점수', '종합순위']].head()
1069
1097
  ```
1098
+
1070
1099
  <table border="1" class="dataframe">
1071
1100
  <thead>
1072
1101
  <tr style="text-align: right;">
@@ -1116,12 +1145,24 @@ df[['scode', 'sname', '종합점수', '종합순위']].head()
1116
1145
  </tbody>
1117
1146
  </table>
1118
1147
 
1148
+ ※ (참고) 밸류, 모멘텀, 퀄러티를 동일한 비중으로 조합하는 기본 옵션을 적용하려면 다음 코드를 수행합니다.
1149
+
1150
+ ```python
1151
+ # 기본값인 균등(동일) 배분 전략 적용 : 국내주식
1152
+ df = mf_kr.get_score_adj_weight(df, weight='균등')
1153
+
1154
+ # 기본값인 균등(동일) 배분 전략 적용 : 미국주식
1155
+ df = mf_us.get_score_adj_weight(df, weight='균등')
1156
+ ```
1157
+
1119
1158
  <br>
1120
1159
 
1121
1160
  ### 6. 종합점수별 그룹화 출력
1161
+
1122
1162
  `get_Ngroup()` 함수를 사용하면 전체 종목을 원하는 개수의 그룹으로 깔끔하게 묶어 요약할 수 있습니다.
1123
1163
 
1124
- (1) 국내주식
1164
+ ① 국내주식
1165
+
1125
1166
  ```python
1126
1167
  # 시가총액 상위 100종목
1127
1168
  mf_kr = MultiFactorKR(N=100)
@@ -1143,8 +1184,8 @@ mf_kr.get_Ngroup(df, Ngroup=10)
1143
1184
  # 10 : LG, 레인보우로보틱스, 한미반도체, POSCO홀딩스, LG에너지솔루션, 카카오, LG화학, 삼성바이오로직스, 한진칼, 포스코퓨처엠
1144
1185
  ```
1145
1186
 
1187
+ ② 미국주식
1146
1188
 
1147
- (2) 미국주식
1148
1189
  ```python
1149
1190
  # 시가총액 상위 100종목
1150
1191
  mf_us = MultiFactorUS(N=100)
@@ -1165,6 +1206,174 @@ mf_us.get_Ngroup(df, Ngroup=10)
1165
1206
  #9 : Walt Disney Company (The), Coca-Cola Company (The), RTX Corporation, Parker Hannifin, Danaher Corporation, Deere & Company, Procter & Gamble, ConocoPhillips, Accenture, Linde plc
1166
1207
  #10 : Palo Alto Networks, Qualcomm, Welltower, ExxonMobil, Home Depot (The), Walmart, Honeywell, Chevron Corporation, UnitedHealth Group, Tesla, Inc.
1167
1208
  ```
1209
+
1210
+ <br>
1211
+
1212
+ ### 7. 시각화 분석
1213
+
1214
+ 주식시장 및 개별 종목 분석에 유용한 다양한 시각화 결과를 제공합니다. 파이썬의 ipywidget 라이브러를 활용하여 차트 구성 옵션을 대화형으로 선택할 수 있도록 구성하였습니다.
1215
+
1216
+ > 💡 **안내사항**
1217
+ > - 차트 출력 시 한글이 깨지는 현상을 방지하기 위해, 환경에 맞게 한글 폰트를 설정하세요.
1218
+ > - 다수의 종목 데이터를 동시에 수집할 경우, 로컬 환경(개인 PC)에서는 `yfinance` API의 요청 제한으로 인해 IP 차단이 발생할 수 있습니다. 따라서 안정적인 데이터 수집을 위해 **구글 Colab** 환경에서의 실행을 권장합니다.
1219
+
1220
+
1221
+
1222
+
1223
+ | 함수구분 | 설명 | 함수이름 |
1224
+ | -------- | --------------------------- | ------------------ |
1225
+ | 복합 차트 | 지수별 라인 복합 차트 | vis.multi_idx |
1226
+ | 복합 차트 | 국내주식 라인 복합 차트 | vis.multi_kr |
1227
+ | 복합 차트 | 미국주식 라인 복합 차트 | vis.multi_us |
1228
+ | 지표별 수익률 | 주요 지표 기간 수익률 비교 차트 | vis.compare_idx |
1229
+ | 누적 수익률 | 지표별 누적수익률 비교 차트 | vis.ret_idx |
1230
+ | 누적 수익률 | 국내주식 누적수익률 비교 차트 | vis.ret_kr |
1231
+ | 누적 수익률 | 미국주식 누적수익률 비교 차트 | vis.ret_us |
1232
+ | 실적재무 종합 | 국내주식 실적 및 밸류 추이 | vis.finance_kr |
1233
+ | 업종종목 트리맵 | 미국주식 주요종목 주가등락율 트리맵 | vis.treemap_us |
1234
+ | 수익률 히트맵 | 지수 연월 수익률 히트맵 | vis.heatmap_idx |
1235
+ | 수익률 히트맵 | 국내주식 연월 수익률 히트맵 | vis.heatmap_kr |
1236
+ | 수익률 히트맵 | 미국주식 연월 수익률 히트맵 | vis.heatmap_us |
1237
+ | 목표가 분석 | 미국주식 목표가 대비 현재가 차이(괴리율) 순위표 | vis.targetprice_us |
1238
+
1239
+ ① (복합 차트) 지수별 라인 복합 차트
1240
+
1241
+ ```python
1242
+ vis.multi_idx()
1243
+ ```
1244
+
1245
+ ![① (복합 차트) 지수별 라인 복합 차트](<docs/images/① (복합 차트) 지수별 라인 복합 차트.png>)
1246
+
1247
+ <br>
1248
+
1249
+ ② (복합 차트) 국내주식 라인 복합 차트
1250
+
1251
+ ```python
1252
+ vis.multi_kr()
1253
+ ```
1254
+
1255
+ ![② (복합 차트) 국내주식 라인 복합 차트](<docs/images/② (복합 차트) 국내주식 라인 복합 차트.png>)
1256
+
1257
+ <br>
1258
+
1259
+ ③ (복합 차트) 미국주식 라인 복합 차트
1260
+
1261
+ ```python
1262
+ vis.multi_us()
1263
+ ```
1264
+
1265
+ ![③ (복합 차트) 미국주식 라인 복합 차트](<docs/images/③ (복합 차트) 미국주식 라인 복합 차트.png>)
1266
+
1267
+ <br>
1268
+
1269
+ ④ (지표별 수익률) 주요 지표 기간 수익률 비교 차트
1270
+
1271
+ ```python
1272
+ vis.compare_idx()
1273
+ ```
1274
+
1275
+ ![④ (지표별 수익률) 주요 지표 기간 수익률 비교 차트](<docs/images/④ (지표별 수익률) 주요 지표 기간 수익률 비교 차트.png>)
1276
+
1277
+ <br>
1278
+
1279
+ ⑤ (누적 수익률) 지표별 누적수익률 비교 차트
1280
+
1281
+ ```python
1282
+ vis.ret_idx()
1283
+ ```
1284
+
1285
+ ![⑤ (누적 수익률) 지표별 누적수익률 비교 차트](<docs/images/⑤ (누적 수익률) 지표별 누적수익률 비교 차트.png>)
1286
+
1287
+ <br>
1288
+
1289
+ ③ (누적 수익률) 국내주식 누적수익률 비교 차트
1290
+
1291
+ ```python
1292
+ vis.ret_kr()
1293
+ ```
1294
+
1295
+ ![③ (누적 수익률) 국내주식 누적수익률 비교 차트](<docs/images/③ (누적 수익률) 국내주식 누적수익률 비교 차트.png>)
1296
+
1297
+ <br>
1298
+
1299
+ ⑦ (누적 수익률) 미국주식 누적수익률 비교 차트
1300
+
1301
+ ```python
1302
+ vis.ret_us()
1303
+ ```
1304
+
1305
+ ![⑦ (누적 수익률) 미국주식 누적수익률 비교 차트](<docs/images/⑦ (누적 수익률) 미국주식 누적수익률 비교 차트.png>)
1306
+
1307
+ <br>
1308
+
1309
+ ⑧ (실적재무 종합) 국내주식 실적 및 밸류 추이
1310
+
1311
+ ```python
1312
+ vis.finance_kr()
1313
+ ```
1314
+
1315
+ ![⑧ (실적재무 종합) 국내주식 실적 및 밸류 추이0](<docs/images/⑧ (실적재무 종합) 국내주식 실적 및 밸류 추이0.png>)
1316
+ ![⑧ (실적재무 종합) 국내주식 실적 및 밸류 추이](<docs/images/⑧ (실적재무 종합) 국내주식 실적 및 밸류 추이.png>)
1317
+
1318
+ <br>
1319
+
1320
+ ⑨ (업종종목 트리맵) 미국주식 주요종목 주가등락율 트리맵
1321
+ 구글 Colab에서 수행시 다음 코드를 미리 수행하여 트리맵이 정상적으로 출력되도록 합니다.
1322
+
1323
+ ```python
1324
+ # 구글 colab에서 트리맵 렌더링 명령어
1325
+ from google.colab import output
1326
+ output.enable_custom_widget_manager()
1327
+ ```
1328
+
1329
+ 다음 코드로 미국주식 주가등락률 트리맵을 출력합니다.
1330
+
1331
+ ```python
1332
+ vis.treemap_us()
1333
+ ```
1334
+
1335
+ ![⑨ (업종종목 트리맵) 미국주식 주요종목 주가등락율 트리맵](<docs/images/⑨ (업종종목 트리맵) 미국주식 주요종목 주가등락율 트리맵.png>)
1336
+
1337
+ <br>
1338
+
1339
+ ⑩ (수익률 히트맵) 지수 연월 수익률 히트맵
1340
+
1341
+ ```python
1342
+ vis.heatmap_idx()
1343
+ ```
1344
+
1345
+ ![⑩ (수익률 히트맵) 지수 연월 수익률 히트맵](<docs/images/⑩ (수익률 히트맵) 지수 연월 수익률 히트맵.png>)
1346
+
1347
+ <br>
1348
+
1349
+ ⑪ (수익률 히트맵) 국내주식 연월 수익률 히트맵
1350
+
1351
+ ```python
1352
+ vis.heatmap_kr()
1353
+ ```
1354
+
1355
+ ![⑪ (수익률 히트맵) 국내주식 연월 수익률 히트맵](<docs/images/⑪ (수익률 히트맵) 국내주식 연월 수익률 히트맵.png>)
1356
+
1357
+ <br>
1358
+
1359
+ ⑫ (수익률 히트맵) 미국주식 연월 수익률 히트맵
1360
+
1361
+ ```python
1362
+ vis.heatmap_us()
1363
+ ```
1364
+
1365
+ ![⑫ (수익률 히트맵) 미국주식 연월 수익률 히트맵](<docs/images/⑫ (수익률 히트맵) 미국주식 연월 수익률 히트맵.png>)
1366
+
1367
+ <br>
1368
+
1369
+ ⑬ (목표가 분석) 미국주식 목표가 대비 현재가 차이(괴리율) 순위표
1370
+
1371
+ ```python
1372
+ vis.targetprice_us()
1373
+ ```
1374
+
1375
+ ![⑬ (목표가 분석) 미국주식 목표가 대비 현재가 차이(괴리율) 순위표](<docs/images/⑬ (목표가 분석) 미국주식 목표가 대비 현재가 차이(괴리율) 순위표.png>)
1376
+
1168
1377
  <br>
1169
1378
 
1170
1379
  ## ⚠️ 투자자 유의사항 (Disclaimer)