siat 3.2.17__py3-none-any.whl → 3.2.19__py3-none-any.whl
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.
@@ -0,0 +1,237 @@
|
|
1
|
+
Metadata-Version: 2.1
|
2
|
+
Name: siat
|
3
|
+
Version: 3.2.19
|
4
|
+
Summary: Securities Investment Analysis Tools (siat)
|
5
|
+
Home-page: https://pypi.org/project/siat/
|
6
|
+
Author: Prof. WANG Dehong, International Business School, Beijing Foreign Studies University
|
7
|
+
Author-email: wdehong2000@163.com
|
8
|
+
License: Copyright (C) WANG Dehong, 2024. For educational purpose only!
|
9
|
+
Description-Content-Type: text/markdown
|
10
|
+
Requires-Dist: pandas-datareader
|
11
|
+
Requires-Dist: yfinance
|
12
|
+
Requires-Dist: tqdm
|
13
|
+
Requires-Dist: plotly-express
|
14
|
+
Requires-Dist: akshare
|
15
|
+
Requires-Dist: urllib3
|
16
|
+
Requires-Dist: mplfinance
|
17
|
+
Requires-Dist: statsmodels
|
18
|
+
Requires-Dist: yahoo-earnings-calendar
|
19
|
+
Requires-Dist: yahooquery
|
20
|
+
Requires-Dist: pypinyin
|
21
|
+
Requires-Dist: seaborn
|
22
|
+
Requires-Dist: numpy
|
23
|
+
Requires-Dist: scipy
|
24
|
+
Requires-Dist: pandas
|
25
|
+
Requires-Dist: scikit-learn
|
26
|
+
Requires-Dist: baostock
|
27
|
+
Requires-Dist: pyproject.toml
|
28
|
+
Requires-Dist: pathlib
|
29
|
+
Requires-Dist: ruamel-yaml
|
30
|
+
Requires-Dist: prettytable
|
31
|
+
Requires-Dist: graphviz
|
32
|
+
Requires-Dist: luddite
|
33
|
+
Requires-Dist: pendulum
|
34
|
+
|
35
|
+
<center><font size=6 color='blue'>Welcome to the Magic World of <font color='red'> siat
|
36
|
+
|
37
|
+
# Version history
|
38
|
+
Current version: 3.2
|
39
|
+
This version unifies the architecture of stock, bond and investment fund together.
|
40
|
+
The unifcation not only makes it convenient to analyze stock, bond and investment fund in same scripts, but also make it easier to construct an investment portfolio with stock, bond and investment fund as components.Version structure: X.Y.Z
|
41
|
+
X is the major version for architecture upgrade only.
|
42
|
+
Y is the functional version for functional enhancement.
|
43
|
+
Z is the minor version just for bug fixing.
|
44
|
+
# What is siat?
|
45
|
+
siat is a Python plug-in, which stands for security investment analysis toolkit.
|
46
|
+
It is specially designed for teaching and learning purposes on security investment in universities for undergraduate and postgraduate programs.
|
47
|
+
# Quick examples of using siat
|
48
|
+
|
49
|
+
|
50
|
+
```python
|
51
|
+
from siat import *
|
52
|
+
```
|
53
|
+
|
54
|
+
Successfully imported siat version 3.2.18
|
55
|
+
|
56
|
+
|
57
|
+
## Example 1: Apple stock price for the recent month
|
58
|
+
|
59
|
+
|
60
|
+
```python
|
61
|
+
apple=security_trend("AAPL")
|
62
|
+
```
|
63
|
+
|
64
|
+
Successfully retrieved 774 records for AAPL Apple
|
65
|
+
|
66
|
+
|
67
|
+
|
68
|
+
|
69
|
+

|
70
|
+
|
71
|
+
|
72
|
+
You may expect to more information, such as price trend in a recent year (MRY), with the high/low point, current price and average price, like below:
|
73
|
+
|
74
|
+
```python
|
75
|
+
apple=security_trend("AAPL", start="MRY",
|
76
|
+
mark_top=True, mark_bottom=True, mark_end=True,
|
77
|
+
average_value=True)
|
78
|
+
```
|
79
|
+
|
80
|
+
Successfully retrieved 1023 records for AAPL Apple
|
81
|
+
|
82
|
+
|
83
|
+
|
84
|
+
|
85
|
+

|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
## Example 2: Comparing Price changes among Apple, Microsoft and NVidia
|
90
|
+
You may expect compare the price changes for the recent quarter (MRQ) for the three stocks.
|
91
|
+
Since there is a major stock split for NVidia in 2024 by 1:10, it is necessary to use adjusted prices (Adj Close) to compare these stock prices.
|
92
|
+
|
93
|
+
```python
|
94
|
+
comp=security_trend(['AAPL','MSFT','NVDA'],
|
95
|
+
start='MRQ',
|
96
|
+
indicator='Adj Close',
|
97
|
+
preprocess='scaling',
|
98
|
+
mark_top=True, mark_bottom=True,
|
99
|
+
annotate=True, annotate_value=True)
|
100
|
+
```
|
101
|
+
|
102
|
+
Searching for multiple security information for Adj Close, it may take great time ...
|
103
|
+
Looking security info for MSFT ...
|
104
|
+
Looking security info for AAPL ...
|
105
|
+
Looking security info for NVDA ...
|
106
|
+
|
107
|
+
|
108
|
+
|
109
|
+
|
110
|
+

|
111
|
+
|
112
|
+
|
113
|
+
|
114
|
+
## Example 4: Bollinger band for Apple in the recent quarter
|
115
|
+
|
116
|
+
|
117
|
+
```python
|
118
|
+
# Script security_technical only supports 4 popular technical indicators:
|
119
|
+
# MACD, Bollinger band, KDJ and RSI.
|
120
|
+
apple=security_technical("AAPL",
|
121
|
+
technical="Bollinger",
|
122
|
+
start="MRQ",
|
123
|
+
loc1="upper left", loc2="lower right")
|
124
|
+
```
|
125
|
+
|
126
|
+
Successfully retrieved 313 records for AAPL Apple
|
127
|
+
Smoothening curves ...
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
|
132
|
+

|
133
|
+
|
134
|
+
|
135
|
+
|
136
|
+
## Example 5: CCI for Apple in recent quarter
|
137
|
+
|
138
|
+
|
139
|
+
```python
|
140
|
+
# Script security_technical2 supports about 20 popular technical indicators in Dehong-style graph:
|
141
|
+
apple=security_technical2("AAPL",
|
142
|
+
technical="CCI",
|
143
|
+
start="MRM",
|
144
|
+
loc1="upper left", loc2="lower right")
|
145
|
+
```
|
146
|
+
|
147
|
+
Successfully retrieved 185 records for AAPL Apple
|
148
|
+
|
149
|
+
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+

|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
# What sorts of security product does siat support?
|
158
|
+
1. Public company profile: world-wide
|
159
|
+
2. Stock & stock market index: world-wide
|
160
|
+
3. Stock valuation: primarily in China (mainland and HK) and the U.S.
|
161
|
+
4. Stock option chain: primarily in the U.S.
|
162
|
+
5. Bond: primarily in China and the U.S.
|
163
|
+
6. Markowitz portfolio: with all the supported stocks and bonds
|
164
|
+
7. Fund: primarily in China and the U.S.
|
165
|
+
8. Futures: primarily in China and the U.S.
|
166
|
+
9. Options: primarily in China and the U.S.
|
167
|
+
10. Digital currency: world-wide (some may be restricted by data sources)
|
168
|
+
11. Balance sheet: in China (full function) and world-wide (basic function)
|
169
|
+
12. Income statement: in China mainland (full function) and world-wide (basic function)
|
170
|
+
13. Cash flow statement: in China mainland (full function) and world-wide (basic function)
|
171
|
+
14. Du Pont Identity: world-wide
|
172
|
+
15. Sector trend and valuation: primarily in China
|
173
|
+
# What sorts of analytical methodology does siat support?
|
174
|
+
1. Trend analysis
|
175
|
+
2. Panel comparation
|
176
|
+
3. Return analysis: rolling returns, holding period returns
|
177
|
+
4. Risk analysis: rolling volatility, holding period volatility, LPSD
|
178
|
+
5. Technical analysis: more than 15 indicators
|
179
|
+
6. Risk-adjusted return: sharpe, sortino, treynor, Jensen alpha
|
180
|
+
7. Portfolio optimization: four risk-adjusted returns
|
181
|
+
8. CAPM beta trend
|
182
|
+
9. Beta adjustments: simple adjustment, Scholes-Williams, Dimson
|
183
|
+
10. Beta leverage: Hamada Model
|
184
|
+
11. Fama-French three-factor model
|
185
|
+
12. Fama-French-Carhart four-factor model
|
186
|
+
13. Fama-French five-factor model
|
187
|
+
14. Future pricing
|
188
|
+
15. Option pricing: European style, American style, with/without dividends
|
189
|
+
16. VaR & ES: variance-covariance, historic simulation, Monte Carlo, multiple periods
|
190
|
+
17. Liquidity risk: Roll spread, Amihud, Pastor-Stambaugh
|
191
|
+
18. ESG: basic functions
|
192
|
+
# Do I have to download data first before using siat?
|
193
|
+
NO!
|
194
|
+
siat will search the internet data sources for all the required data during analysis.
|
195
|
+
The main data sources siat uses:
|
196
|
+
1. Yahoo Finance
|
197
|
+
2. Sina Finance
|
198
|
+
3. East Money
|
199
|
+
4. Stooq (Polish)
|
200
|
+
5. FRED
|
201
|
+
6. OECD
|
202
|
+
7. IMF
|
203
|
+
8. Shanghai Stock Exchange
|
204
|
+
9. Shenzhen Stock Exchange
|
205
|
+
10. Tokyo Stock Exchange
|
206
|
+
11. HKEX
|
207
|
+
12. Sustainalytics
|
208
|
+
|
209
|
+
Thanks the above websites for their valuable data supply!
|
210
|
+
# How to install siat?
|
211
|
+
The author strongly recommends using siat together with Jupyter Notebook or Jupyter Lab in Anaconda.
|
212
|
+
In order to install siat for the very first time, open a Jupyter Notebook, and type in the following command:
|
213
|
+
!pip install siat
|
214
|
+
|
215
|
+
If the above method does not work, something might be wrong in your Python path settings. Try to open an Anaconda Prompt in Windows or a Terminal App in Mac or Linux, and type in the following command:
|
216
|
+
pip install siat
|
217
|
+
# How to upgrade siat?
|
218
|
+
In Jupyter Notebook or Jupyter Lab:
|
219
|
+
upgrade_siat()
|
220
|
+
|
221
|
+
If you suffer from slow internet connection (often in campus classrooms with many students), try to use alternative sources, such as:
|
222
|
+
upgrade_siat(alternative="tsinghua")
|
223
|
+
upgrade_siat(alternative="alibaba")
|
224
|
+
|
225
|
+
If the above methods do not work for you, you have to goto the traditional ways to use command-line script, such as:
|
226
|
+
pip install --upgrade siat
|
227
|
+
# Are there more detailed case studies on using siat?
|
228
|
+
YES!
|
229
|
+
There are hundreds of video case studies in the author's channel (most in Chinese, some in English).
|
230
|
+
https://space.bilibili.com/284812153
|
231
|
+
Welcome to follow the channel!
|
232
|
+
# How to report a bug or look for help?
|
233
|
+
Write to the author, Prof. WANG Dehong, wdehong2000@163.com
|
234
|
+
|
235
|
+
```python
|
236
|
+
|
237
|
+
```
|
@@ -136,7 +136,7 @@ siat/valuation.py,sha256=NKfeZMdDJOW42oLVHob6eSVBXUqlN1OCnnzwyGAst8c,48855
|
|
136
136
|
siat/valuation_china.py,sha256=EkZQaVkoBjM0c4MCNbaX-bMnlG0e3FXeaWczZDnkptU,67784
|
137
137
|
siat/valuation_market_china_test.py,sha256=gbJ0ioauuo4koTPH6WKUkqcXiQPafnbhU5eKJ6lpdLA,1571
|
138
138
|
siat/var_model_validation.py,sha256=R0caWnuZarrRg9939hxh3vJIIpIyPfvelYmzFNZtPbo,14910
|
139
|
-
siat-3.2.
|
140
|
-
siat-3.2.
|
141
|
-
siat-3.2.
|
142
|
-
siat-3.2.
|
139
|
+
siat-3.2.19.dist-info/METADATA,sha256=Evo5NVjOLinr5OZqEHt0G7yYTFbYmQN-1mQdBOoGI3Q,8074
|
140
|
+
siat-3.2.19.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
|
141
|
+
siat-3.2.19.dist-info/top_level.txt,sha256=r1cVyL7AIKqeAmEJjNR8FMT20OmEzufDstC2gv3NvEY,5
|
142
|
+
siat-3.2.19.dist-info/RECORD,,
|
siat-3.2.17.dist-info/METADATA
DELETED
@@ -1,122 +0,0 @@
|
|
1
|
-
Metadata-Version: 2.1
|
2
|
-
Name: siat
|
3
|
-
Version: 3.2.17
|
4
|
-
Summary: Securities Investment Analysis Tools (siat)
|
5
|
-
Home-page: https://pypi.org/project/siat/
|
6
|
-
Author: Prof. WANG Dehong, International Business School, Beijing Foreign Studies University
|
7
|
-
Author-email: wdehong2000@163.com
|
8
|
-
License: Copyright (C) WANG Dehong, 2024. For educational purpose only!
|
9
|
-
Description-Content-Type: text/markdown
|
10
|
-
Requires-Dist: pandas-datareader
|
11
|
-
Requires-Dist: yfinance
|
12
|
-
Requires-Dist: tqdm
|
13
|
-
Requires-Dist: plotly-express
|
14
|
-
Requires-Dist: akshare
|
15
|
-
Requires-Dist: urllib3
|
16
|
-
Requires-Dist: mplfinance
|
17
|
-
Requires-Dist: statsmodels
|
18
|
-
Requires-Dist: yahoo-earnings-calendar
|
19
|
-
Requires-Dist: yahooquery
|
20
|
-
Requires-Dist: pypinyin
|
21
|
-
Requires-Dist: seaborn
|
22
|
-
Requires-Dist: numpy
|
23
|
-
Requires-Dist: scipy
|
24
|
-
Requires-Dist: pandas
|
25
|
-
Requires-Dist: scikit-learn
|
26
|
-
Requires-Dist: baostock
|
27
|
-
Requires-Dist: pyproject.toml
|
28
|
-
Requires-Dist: pathlib
|
29
|
-
Requires-Dist: ruamel-yaml
|
30
|
-
Requires-Dist: prettytable
|
31
|
-
Requires-Dist: graphviz
|
32
|
-
Requires-Dist: luddite
|
33
|
-
Requires-Dist: pendulum
|
34
|
-
|
35
|
-
*** What is siat?
|
36
|
-
siat is a Python plug-in, which stands for security investment analysis toolkit. It is specially designed for teaching and learning purposes on security investment in universities for undergraduate and postgraduate programs.
|
37
|
-
|
38
|
-
*** What sort of securities does siat support?
|
39
|
-
1. Public company profile: world-wide
|
40
|
-
2. Stock & stock market index: world-wide
|
41
|
-
3. Stock valuation: primarily in China (mainland and HK) and the U.S.
|
42
|
-
4. Stock option chain: primarily in the U.S.
|
43
|
-
5. Bond: primarily in China and the U.S.
|
44
|
-
6. Markowitz portfolio: with all the supported stocks and bonds
|
45
|
-
7. Fund: primarily in China and the U.S.
|
46
|
-
8. Futures: primarily in China and the U.S.
|
47
|
-
9. Options: primarily in China and the U.S.
|
48
|
-
10. Digital currency: world-wide (some may be restricted by data sources)
|
49
|
-
11. Balance sheet: in China (full function) and world-wide (basic function)
|
50
|
-
12. Income statement: in China mainland (full function) and world-wide (basic function)
|
51
|
-
13. Cash flow statement: in China mainland (full function) and world-wide (basic function)
|
52
|
-
14. Du Pont Identity: world-wide
|
53
|
-
15. Sector trend and valuation: primarily in China
|
54
|
-
|
55
|
-
*** What sort of analysis does siat support?
|
56
|
-
1. Trend analysis
|
57
|
-
2. Panel comparation
|
58
|
-
3. Return analysis: rolling returns, holding period returns
|
59
|
-
4. Risk analysis: rolling volatility, holding period volatility, LPSD
|
60
|
-
5. Technical analysis: more than 15 indicators
|
61
|
-
6. Risk-adjusted return: sharpe, sortino, treynor, Jensen alpha
|
62
|
-
7. Portfolio optimization: four risk-adjusted returns
|
63
|
-
8. CAPM beta trend
|
64
|
-
9. Beta adjustments: simple adjustment, Scholes-Williams, Dimson
|
65
|
-
10. Beta leverage: Hamada Model
|
66
|
-
11. Fama-French three-factor model
|
67
|
-
12. Fama-French-Carhart four-factor model
|
68
|
-
13. Fama-French five-factor model
|
69
|
-
14. Future pricing
|
70
|
-
15. Option pricing: European style, American style, with/without dividends
|
71
|
-
16. VaR & ES: variance-covariance, historic simulation, Monte Carlo, multiple periods
|
72
|
-
17. Liquidity risk: Roll spread, Amihud, Pastor-Stambaugh
|
73
|
-
18. ESG: basic function
|
74
|
-
|
75
|
-
*** Do I have to download data first before using siat?
|
76
|
-
NO!
|
77
|
-
siat will search the internet data sources for all the required data during analysis.
|
78
|
-
The main data sources siat uses:
|
79
|
-
1. Yahoo Finance
|
80
|
-
2. Sina Finance
|
81
|
-
3. East Money
|
82
|
-
4. Stooq (Polish)
|
83
|
-
5. FRED
|
84
|
-
6. OECD
|
85
|
-
7. IMF
|
86
|
-
8. Shanghai Stock Exchange
|
87
|
-
9. Shenzhen Stock Exchange
|
88
|
-
10. Tokyo Stock Exchange
|
89
|
-
11. HKEX
|
90
|
-
12. Sustainalytics
|
91
|
-
Thanks the above websites for their valuable data supply!
|
92
|
-
|
93
|
-
*** How is siat version numbered?
|
94
|
-
siat version format: X.Y.Z
|
95
|
-
X is the major version number.
|
96
|
-
If the major number X changes, it means a primary upgrade, usually there are some big changes in the architecure. However, user's habits will remain for most of the cases.
|
97
|
-
|
98
|
-
Y is the revision number.
|
99
|
-
If the revision number Y changes, it usually indicates some new functions have been compiled into the package.
|
100
|
-
|
101
|
-
Z is the build number.
|
102
|
-
A build number Z change usually reveals a new compilation over the package for the purpose of debug only.
|
103
|
-
|
104
|
-
*** When to upgrade siat?
|
105
|
-
If you have been using the existing copy very well, there is no need to follow up the newest version. However, if you do find
|
106
|
-
some bugs in using siat, most of the time it is a quick solution to upgrade siat as well as the dependent modules that siat relies on.
|
107
|
-
|
108
|
-
*** How to upgrade siat?
|
109
|
-
It is strongly recommended to use siat in Jupyter Notebook or Jupyter Lab. In Jupyter, there is an easy way to directly upgrade siat and its relevent modules together in the following command:
|
110
|
-
upgrade_siat()
|
111
|
-
|
112
|
-
If Jupyter prompts that pip command not found during the upgrade, it usually means that you need tick the checkbox
|
113
|
-
"Add Python to your path" or something like this during Anaconda installation. If you forget to tick the checkbox, you may need to remedy the situation case by case. In some of the situations, the following command may work in Anaconda Prompt, but not for all the cases:
|
114
|
-
python -m ensurepip
|
115
|
-
|
116
|
-
*** Are there detailed case studies on using siat?
|
117
|
-
YES, hundreds of video case studies in the author's channel (most in Chinese, some in English).
|
118
|
-
https://space.bilibili.com/284812153
|
119
|
-
Welcome to follow the channel!
|
120
|
-
|
121
|
-
*** How to report a bug and look for help?
|
122
|
-
Write to the author, Prof. WANG Dehong, wdehong2000@163.com
|
File without changes
|
File without changes
|