siat 3.8.10__py3-none-any.whl → 3.8.20__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.
- siat/risk_adjusted_return2.py +52 -8
- siat/security_trend2.py +2 -0
- siat/translate.py +1 -1
- siat/valuation.py +25 -0
- {siat-3.8.10.dist-info → siat-3.8.20.dist-info}/METADATA +1 -1
- {siat-3.8.10.dist-info → siat-3.8.20.dist-info}/RECORD +9 -9
- {siat-3.8.10.dist-info → siat-3.8.20.dist-info}/LICENSE +0 -0
- {siat-3.8.10.dist-info → siat-3.8.20.dist-info}/WHEEL +0 -0
- {siat-3.8.10.dist-info → siat-3.8.20.dist-info}/top_level.txt +0 -0
siat/risk_adjusted_return2.py
CHANGED
@@ -811,6 +811,7 @@ def compare_1ticker_mrar(ticker,start,end,rar=['sharpe','sortino','treynor','alp
|
|
811
811
|
ret_type="Annual Adj Ret%",RF=0,regression_period=365, \
|
812
812
|
attention_value='',attention_value_area='', \
|
813
813
|
attention_point='',attention_point_area='', \
|
814
|
+
band_area='', \
|
814
815
|
graph=True,loc1='best', \
|
815
816
|
axhline_value=0,axhline_label='',facecolor='whitesmoke', \
|
816
817
|
printout=False,sortby='tpw_mean',trailing=7,trend_threshhold=0.01, \
|
@@ -843,7 +844,7 @@ def compare_1ticker_mrar(ticker,start,end,rar=['sharpe','sortino','treynor','alp
|
|
843
844
|
regression_period=regression_period[0]
|
844
845
|
|
845
846
|
tname=ticker_name(ticker,ticker_type)
|
846
|
-
print("
|
847
|
+
print(" Working on different rars for",tname,"\b, please wait ......\n")
|
847
848
|
|
848
849
|
#预处理ticker_type
|
849
850
|
ticker_type=ticker_type_preprocess_mticker_mixed(ticker,ticker_type)
|
@@ -876,7 +877,14 @@ def compare_1ticker_mrar(ticker,start,end,rar=['sharpe','sortino','treynor','alp
|
|
876
877
|
if df1[c].max() > axhline_value and df1[c].min() < axhline_value:
|
877
878
|
axhline_label='零线'
|
878
879
|
|
879
|
-
|
880
|
+
cname=ectranslate(c)
|
881
|
+
df1.rename(columns={c:cname},inplace=True)
|
882
|
+
|
883
|
+
# 将band_area中的ticker替换为tname
|
884
|
+
if band_area != '':
|
885
|
+
for index, item in enumerate(band_area):
|
886
|
+
if item == c:
|
887
|
+
band_area[index] = cname
|
880
888
|
|
881
889
|
footnote1=text_lang("评估值基于","Note: RaR based on ")+ectranslate(ret_type)
|
882
890
|
if RF !=0:
|
@@ -914,6 +922,7 @@ def compare_1ticker_mrar(ticker,start,end,rar=['sharpe','sortino','treynor','alp
|
|
914
922
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
915
923
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
916
924
|
annotate=annotate,annotate_value=annotate, \
|
925
|
+
band_area=band_area, \
|
917
926
|
mark_top=mark_top,mark_bottom=mark_bottom,mark_end=mark_end, \
|
918
927
|
facecolor=facecolor,loc=loc1)
|
919
928
|
|
@@ -974,6 +983,7 @@ def compare_mticker_1rar(ticker,start,end,rar='sharpe', \
|
|
974
983
|
ret_type="Annual Adj Ret%",RF=0,regression_period=365, \
|
975
984
|
attention_value='',attention_value_area='', \
|
976
985
|
attention_point='',attention_point_area='', \
|
986
|
+
band_area='', \
|
977
987
|
graph=True,loc1='best', \
|
978
988
|
axhline_value=0,axhline_label='', \
|
979
989
|
printout=False,sortby='tpw_mean',trailing=7,trend_threshhold=0.01, \
|
@@ -1006,7 +1016,7 @@ def compare_mticker_1rar(ticker,start,end,rar='sharpe', \
|
|
1006
1016
|
RF=RF[0]
|
1007
1017
|
if isinstance(regression_period,list):
|
1008
1018
|
regression_period=regression_period[0]
|
1009
|
-
print("
|
1019
|
+
print(" Working on",rar,"ratio, please wait ......\n")
|
1010
1020
|
|
1011
1021
|
#预处理ticker_type
|
1012
1022
|
ticker_type_list=ticker_type_preprocess_mticker_mixed(ticker,ticker_type)
|
@@ -1027,7 +1037,14 @@ def compare_mticker_1rar(ticker,start,end,rar='sharpe', \
|
|
1027
1037
|
continue
|
1028
1038
|
else:
|
1029
1039
|
dft=df_tmp[[rar]]
|
1030
|
-
|
1040
|
+
tname=ticker_name(t,tt)
|
1041
|
+
dft.rename(columns={rar:tname},inplace=True)
|
1042
|
+
|
1043
|
+
# 将band_area中的ticker替换为tname
|
1044
|
+
if band_area != '':
|
1045
|
+
for index, item in enumerate(band_area):
|
1046
|
+
if item == t:
|
1047
|
+
band_area[index] = tname
|
1031
1048
|
|
1032
1049
|
if len(df)==0: #第一个
|
1033
1050
|
df=dft
|
@@ -1097,6 +1114,7 @@ def compare_mticker_1rar(ticker,start,end,rar='sharpe', \
|
|
1097
1114
|
title_txt=title_txt,data_label=False, \
|
1098
1115
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
1099
1116
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
1117
|
+
band_area=band_area, \
|
1100
1118
|
annotate=annotate,annotate_value=annotate, \
|
1101
1119
|
mark_top=mark_top,mark_bottom=mark_bottom,mark_end=mark_end, \
|
1102
1120
|
facecolor=facecolor,loc=loc1)
|
@@ -1154,6 +1172,7 @@ def compare_mticker_mrar(ticker,start,end,rar=['sharpe','alpha','sortino','treyn
|
|
1154
1172
|
ret_type="Annual Adj Ret%",RF=0,regression_period=365, \
|
1155
1173
|
attention_value='',attention_value_area='', \
|
1156
1174
|
attention_point='',attention_point_area='', \
|
1175
|
+
band_area='', \
|
1157
1176
|
graph=True,loc1='best', \
|
1158
1177
|
axhline_value=0,axhline_label='', \
|
1159
1178
|
printout=True,sortby='tpw_mean',trailing=7,trend_threshhold=0.01, \
|
@@ -1184,6 +1203,7 @@ def compare_mticker_mrar(ticker,start,end,rar=['sharpe','alpha','sortino','treyn
|
|
1184
1203
|
ret_type=ret_type,RF=RF,regression_period=regression_period, \
|
1185
1204
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
1186
1205
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
1206
|
+
band_area=band_area, \
|
1187
1207
|
graph=graph,facecolor=facecolor, \
|
1188
1208
|
axhline_value=axhline_value,axhline_label=axhline_label, \
|
1189
1209
|
printout=printout,sortby=sortby, \
|
@@ -1361,6 +1381,7 @@ def compare_1ticker_1rar_mret(ticker,start,end,rar='sharpe', \
|
|
1361
1381
|
RF=0,regression_period=365, \
|
1362
1382
|
attention_value='',attention_value_area='', \
|
1363
1383
|
attention_point='',attention_point_area='', \
|
1384
|
+
band_area='', \
|
1364
1385
|
graph=True,loc1='best', \
|
1365
1386
|
axhline_value=0,axhline_label='',facecolor='whitesmoke', \
|
1366
1387
|
printout=False,sortby='tpw_mean',trailing=7,trend_threshhold=0.01, \
|
@@ -1392,7 +1413,7 @@ def compare_1ticker_1rar_mret(ticker,start,end,rar='sharpe', \
|
|
1392
1413
|
RF=RF[0]
|
1393
1414
|
if isinstance(regression_period,list):
|
1394
1415
|
regression_period=regression_period[0]
|
1395
|
-
print(" Working on",rar,"for",ticker_name(ticker,ticker_type),"in different
|
1416
|
+
print(" Working on",rar,"ratio for",ticker_name(ticker,ticker_type),"in different return types ......\n")
|
1396
1417
|
|
1397
1418
|
df=pd.DataFrame()
|
1398
1419
|
for t in ret_type:
|
@@ -1406,8 +1427,15 @@ def compare_1ticker_1rar_mret(ticker,start,end,rar='sharpe', \
|
|
1406
1427
|
break
|
1407
1428
|
else:
|
1408
1429
|
dft=df_tmp[[rar]]
|
1430
|
+
tname=text_lang("基于","Based on ")+ectranslate(t)
|
1409
1431
|
dft.rename(columns={rar:text_lang("基于","Based on ")+ectranslate(t)},inplace=True)
|
1410
1432
|
|
1433
|
+
# 将band_area中的ticker替换为tname
|
1434
|
+
if band_area != '':
|
1435
|
+
for index, item in enumerate(band_area):
|
1436
|
+
if item == t:
|
1437
|
+
band_area[index] = tname
|
1438
|
+
|
1411
1439
|
if len(df)==0: #第一个
|
1412
1440
|
df=dft
|
1413
1441
|
else:
|
@@ -1457,6 +1485,7 @@ def compare_1ticker_1rar_mret(ticker,start,end,rar='sharpe', \
|
|
1457
1485
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
1458
1486
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
1459
1487
|
annotate=annotate,annotate_value=annotate, \
|
1488
|
+
band_area=band_area, \
|
1460
1489
|
mark_top=mark_top,mark_bottom=mark_bottom,mark_end=mark_end, \
|
1461
1490
|
facecolor=facecolor,loc=loc1)
|
1462
1491
|
|
@@ -1514,6 +1543,7 @@ def compare_1ticker_1rar_1ret_mRF(ticker,start,end,rar='sharpe', \
|
|
1514
1543
|
ret_type="Annual Adj Ret%",RF=[0,0.02,0.05],regression_period=365, \
|
1515
1544
|
attention_value='',attention_value_area='', \
|
1516
1545
|
attention_point='',attention_point_area='', \
|
1546
|
+
band_area='', \
|
1517
1547
|
graph=True,loc1='best', \
|
1518
1548
|
axhline_value=0,axhline_label='',facecolor='whitesmoke', \
|
1519
1549
|
printout=False,sortby='tpw_mean',trailing=7,trend_threshhold=0.01, \
|
@@ -1546,7 +1576,7 @@ def compare_1ticker_1rar_1ret_mRF(ticker,start,end,rar='sharpe', \
|
|
1546
1576
|
RF=[RF]
|
1547
1577
|
if isinstance(regression_period,list):
|
1548
1578
|
regression_period=regression_period[0]
|
1549
|
-
print("
|
1579
|
+
print(" Working on",rar,"ratio for",ticker_name(ticker,ticker_type),"in different RF levels ......\n")
|
1550
1580
|
|
1551
1581
|
df=pd.DataFrame()
|
1552
1582
|
for t in RF:
|
@@ -1560,7 +1590,14 @@ def compare_1ticker_1rar_1ret_mRF(ticker,start,end,rar='sharpe', \
|
|
1560
1590
|
break
|
1561
1591
|
else:
|
1562
1592
|
dft=df_tmp[[rar]]
|
1563
|
-
|
1593
|
+
tname=text_lang("RF=","RF=")+str(round(t*100,4))+'%'
|
1594
|
+
dft.rename(columns={rar:tname},inplace=True)
|
1595
|
+
|
1596
|
+
# 将band_area中的ticker替换为tname
|
1597
|
+
if band_area != '':
|
1598
|
+
for index, item in enumerate(band_area):
|
1599
|
+
if item == t:
|
1600
|
+
band_area[index] = tname
|
1564
1601
|
|
1565
1602
|
if len(df)==0: #第一个
|
1566
1603
|
df=dft
|
@@ -1605,6 +1642,7 @@ def compare_1ticker_1rar_1ret_mRF(ticker,start,end,rar='sharpe', \
|
|
1605
1642
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
1606
1643
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
1607
1644
|
annotate=annotate,annotate_value=annotate, \
|
1645
|
+
band_area=band_area, \
|
1608
1646
|
mark_top=mark_top,mark_bottom=mark_bottom,mark_end=mark_end, \
|
1609
1647
|
facecolor=facecolor,loc=loc1)
|
1610
1648
|
|
@@ -1679,6 +1717,7 @@ def compare_rar_security(ticker,start,end,rar='sharpe', \
|
|
1679
1717
|
regression_period=365, \
|
1680
1718
|
attention_value='',attention_value_area='', \
|
1681
1719
|
attention_point='',attention_point_area='', \
|
1720
|
+
band_area='', \
|
1682
1721
|
graph=True,loc1='best', \
|
1683
1722
|
axhline_value=0,axhline_label='',facecolor='whitesmoke', \
|
1684
1723
|
printout=False,sortby='tpw_mean',trailing=7,trend_threshhold=0.05, \
|
@@ -1712,6 +1751,7 @@ def compare_rar_security(ticker,start,end,rar='sharpe', \
|
|
1712
1751
|
ret_type=ret_type,RF=RF,regression_period=regression_period, \
|
1713
1752
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
1714
1753
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
1754
|
+
band_area=band_area, \
|
1715
1755
|
graph=graph,loc1=loc1, \
|
1716
1756
|
axhline_value=axhline_value,axhline_label=axhline_label, \
|
1717
1757
|
printout=printout, \
|
@@ -1722,12 +1762,13 @@ def compare_rar_security(ticker,start,end,rar='sharpe', \
|
|
1722
1762
|
ticker_type=ticker_type,facecolor=facecolor)
|
1723
1763
|
return df
|
1724
1764
|
|
1725
|
-
if rar_num >1: #多个RAR
|
1765
|
+
if rar_num >1: #多个RAR,此项的主要意图并非绘图,而是进行多指标综合推荐
|
1726
1766
|
printout=True #否则无法运行descriptive_statistics2函数
|
1727
1767
|
df=compare_mticker_mrar(ticker=ticker,start=start,end=end,rar=rar, \
|
1728
1768
|
ret_type=ret_type,RF=RF,regression_period=regression_period, \
|
1729
1769
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
1730
1770
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
1771
|
+
band_area=band_area, \
|
1731
1772
|
graph=graph,loc1=loc1, \
|
1732
1773
|
axhline_value=axhline_value,axhline_label=axhline_label, \
|
1733
1774
|
printout=printout, \
|
@@ -1753,6 +1794,7 @@ def compare_rar_security(ticker,start,end,rar='sharpe', \
|
|
1753
1794
|
ret_type=ret_type,RF=RF,regression_period=regression_period, \
|
1754
1795
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
1755
1796
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
1797
|
+
band_area=band_area, \
|
1756
1798
|
graph=graph,loc1=loc1, \
|
1757
1799
|
axhline_value=axhline_value,axhline_label=axhline_label, \
|
1758
1800
|
printout=printout,facecolor=facecolor, \
|
@@ -1776,6 +1818,7 @@ def compare_rar_security(ticker,start,end,rar='sharpe', \
|
|
1776
1818
|
ret_type=ret_type,RF=RF,regression_period=regression_period, \
|
1777
1819
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
1778
1820
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
1821
|
+
band_area=band_area, \
|
1779
1822
|
graph=graph,loc1=loc1, \
|
1780
1823
|
axhline_value=axhline_value,axhline_label=axhline_label, \
|
1781
1824
|
printout=printout, \
|
@@ -1797,6 +1840,7 @@ def compare_rar_security(ticker,start,end,rar='sharpe', \
|
|
1797
1840
|
ret_type=ret_type,RF=RF,regression_period=regression_period, \
|
1798
1841
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
1799
1842
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
1843
|
+
band_area=band_area, \
|
1800
1844
|
graph=graph,loc1=loc1, \
|
1801
1845
|
axhline_value=axhline_value,axhline_label=axhline_label, \
|
1802
1846
|
printout=printout,facecolor=facecolor, \
|
siat/security_trend2.py
CHANGED
@@ -546,6 +546,7 @@ def security_trend(ticker,indicator='Close',adjust='', \
|
|
546
546
|
ret_type=ret_type,RF=RF,regression_period=regression_period, \
|
547
547
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
548
548
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
549
|
+
band_area=band_area, \
|
549
550
|
graph=graph,axhline_value=0,axhline_label='', \
|
550
551
|
loc1=loc1, \
|
551
552
|
printout=printout, \
|
@@ -586,6 +587,7 @@ def security_trend(ticker,indicator='Close',adjust='', \
|
|
586
587
|
graph=graph,facecolor=facecolor, \
|
587
588
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
588
589
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
590
|
+
band_area=band_area, \
|
589
591
|
annotate=annotate,annotate_value=annotate_value, \
|
590
592
|
mark_top=mark_top,mark_bottom=mark_bottom,mark_end=mark_end)
|
591
593
|
return df
|
siat/translate.py
CHANGED
@@ -817,7 +817,7 @@ def codetranslate0(code):
|
|
817
817
|
['EBAY','易贝'],['eBay','易贝'],['META','元宇宙(脸书)'],['ZM','ZOOM'],
|
818
818
|
['GOOG','谷歌'],['GOOGL','谷歌'],['TWTR','X(推特)'],
|
819
819
|
['VIPS','唯品会'],['Vipshop','唯品会'],
|
820
|
-
['PDD','
|
820
|
+
['PDD','拼多多美股'],['Pinduoduo','拼多多'],
|
821
821
|
['BABA','阿里巴巴美股'],['Alibaba','阿里巴巴美股'],
|
822
822
|
['JD','京东美股'],['MPNGY','美团美股'],
|
823
823
|
['SINA','新浪网'],['BIDU','百度'],['NTES','网易'],
|
siat/valuation.py
CHANGED
@@ -944,6 +944,7 @@ def security_valuation(tickers,indicators,start,end, \
|
|
944
944
|
graph=True,facecolor='whitesmoke', \
|
945
945
|
attention_value='',attention_value_area='', \
|
946
946
|
attention_point='',attention_point_area='', \
|
947
|
+
band_area='', \
|
947
948
|
annotate=False,annotate_value=False, \
|
948
949
|
mark_top=False,mark_bottom=False,mark_end=False):
|
949
950
|
"""
|
@@ -974,6 +975,28 @@ def security_valuation(tickers,indicators,start,end, \
|
|
974
975
|
name_num=len(names1)
|
975
976
|
indicator_num=len(indicators1)
|
976
977
|
|
978
|
+
|
979
|
+
# 将band_area中的ticker替换为tname
|
980
|
+
if band_area != '':
|
981
|
+
if name_num > 1:
|
982
|
+
# 假定band_area里面的是ticker
|
983
|
+
for index, item in enumerate(band_area):
|
984
|
+
tname=ticker_name(item)
|
985
|
+
if tname in names1:
|
986
|
+
band_area[index] = tname
|
987
|
+
else:
|
988
|
+
band_area.remove(item)
|
989
|
+
|
990
|
+
if name_num == 1 and indicator_num > 1:
|
991
|
+
# 假定band_area里面的是indicator
|
992
|
+
for index, item in enumerate(band_area):
|
993
|
+
if item not in indicators1:
|
994
|
+
band_area.remove(item)
|
995
|
+
|
996
|
+
if len(band_area) != 2:
|
997
|
+
band_area=''
|
998
|
+
print(" #Warning(security_valuation): band_area does not match ticker or indicator")
|
999
|
+
|
977
1000
|
import datetime
|
978
1001
|
# 绘制一条线+均值/中位数虚线
|
979
1002
|
if name_num * indicator_num == 1:
|
@@ -1120,6 +1143,7 @@ def security_valuation(tickers,indicators,start,end, \
|
|
1120
1143
|
title_txt=titletxt,data_label=False, \
|
1121
1144
|
resample_freq='D',loc=loc1, \
|
1122
1145
|
annotate=annotate,annotate_value=annotate_value, \
|
1146
|
+
band_area=band_area, \
|
1123
1147
|
plus_sign=plus_sign, \
|
1124
1148
|
facecolor=facecolor, \
|
1125
1149
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
@@ -1167,6 +1191,7 @@ def security_valuation(tickers,indicators,start,end, \
|
|
1167
1191
|
title_txt=titletxt,data_label=False, \
|
1168
1192
|
resample_freq='D',loc=loc1,plus_sign=plus_sign, \
|
1169
1193
|
annotate=annotate,annotate_value=annotate_value, \
|
1194
|
+
band_area=band_area, \
|
1170
1195
|
facecolor=facecolor, \
|
1171
1196
|
attention_value=attention_value,attention_value_area=attention_value_area, \
|
1172
1197
|
attention_point=attention_point,attention_point_area=attention_point_area, \
|
@@ -92,7 +92,7 @@ siat/option_sina_api_test.py,sha256=dn-k_wrQnAaNKHoROvWJEc7lqlU0bwiV2Aa4usWAFGM,
|
|
92
92
|
siat/proxy_test.py,sha256=erQJrmGs2X46z8Gb1h-7GYQ0rTUcaR8dxHExWoBz2eM,2610
|
93
93
|
siat/quandl_test.py,sha256=EcPoXnLuqzPl5dKyVEZi3j3PJZFpsnU_iNPhLWC9p-A,1552
|
94
94
|
siat/risk_adjusted_return.py,sha256=6F8CpKm-HKO4wfnndri0ew-D3lDAH1fs5O9K5cphoLg,55096
|
95
|
-
siat/risk_adjusted_return2.py,sha256=
|
95
|
+
siat/risk_adjusted_return2.py,sha256=92GXCpJPVVsYpQ-X3WXaADZvCqxsuJXQN5vG5trVX9I,86296
|
96
96
|
siat/risk_adjusted_return_test.py,sha256=m_VHL5AtT74cJv5i7taTeTfnkX48y0AFJk5phawyYWg,3416
|
97
97
|
siat/risk_evaluation.py,sha256=HK6U2G85-AxjSoeARbmTuiCNwTVdPdB9Znfgvslo0Os,76455
|
98
98
|
siat/risk_evaluation_test.py,sha256=YEXM96gKzTfwN4U61AS4Rr1tV7KgUvn4rRC6f3iMw9s,3731
|
@@ -106,7 +106,7 @@ siat/security_prices.py,sha256=HoCZ7YPrQYZHgKC-LyXFeeBCTfRc3EMMEiEg52SVv2w,10907
|
|
106
106
|
siat/security_prices_test.py,sha256=OEphoJ87NPKoNow1QA8EU_5MUYrJF-qKoWKNapVfZNI,10779
|
107
107
|
siat/security_trend.py,sha256=o0vpWdrJkmODCP94X-Bvn-w7efHhj9HpUYBHtLl55D0,17240
|
108
108
|
siat/security_trend2-20240620.py,sha256=QVnEcb7AyVbO77jVqfFsJffGXrX8pgJ9xCfoAKmWBPk,24854
|
109
|
-
siat/security_trend2.py,sha256=
|
109
|
+
siat/security_trend2.py,sha256=8-Z-PWaX8fjnyAyfxEp3qXdVllgDpRISOASKEn7Zeoc,30706
|
110
110
|
siat/setup.py,sha256=up65rQGLmTBkhtaMLowjoQXYmIsnycnm4g1SYmeQS6o,1335
|
111
111
|
siat/shenwan index history test.py,sha256=JCVAzOSEldHalhSFa3pqD8JI_8_djPMQOxpkuYU-Esg,1418
|
112
112
|
siat/stock.py,sha256=W3JhjfRwqb9luNydrKyGd97uRmTsZD5FvRdqJ3DynVo,159509
|
@@ -135,17 +135,17 @@ siat/transaction_test.py,sha256=Z8g1LJCN4-mnUByXMUMoFmN0t105cbmsz2QmvSuIkbU,1858
|
|
135
135
|
siat/translate-20230125.py,sha256=NPPSXhT38s5t9fzMvl_fvi4ckSB73ThLmZetVI-xGdU,117953
|
136
136
|
siat/translate-20230206.py,sha256=-vtI125WyaJhmPotOpDAmclt_XnYVaWU9ByLWZ6FyYE,118133
|
137
137
|
siat/translate-20230215.py,sha256=TJgtPE3n8IjljmZ4Pefy8dmHoNdFF-1zpML6BhA9FKE,121657
|
138
|
-
siat/translate.py,sha256=
|
138
|
+
siat/translate.py,sha256=t4SM4QWE7mCfY5GWPJ8SSquNRFrPAKHxJbpKsCWnneU,262247
|
139
139
|
siat/translate_20240606.py,sha256=63IyHWEU3Uz9mjwyuAX3fqY4nUMdwh0ICQAgmgPXP7Y,215121
|
140
140
|
siat/translate_241003_keep.py,sha256=un7Fqe1v35MXsja5exZgjmLzrZtt66NARZIGlyFuGGU,218747
|
141
141
|
siat/universal_test.py,sha256=CDAOffW1Rvs-TcNN5giWVvHMlch1w4dp-w5SIV9jXL0,3936
|
142
|
-
siat/valuation.py,sha256=
|
142
|
+
siat/valuation.py,sha256=K7epQC_UtELjRR5cyjJp4gskSyJMxXy-jHIAS0SUEj8,51801
|
143
143
|
siat/valuation_china.py,sha256=CVp1IwIsF3Om0J29RGkyxZLt4n9Ug-ua_RKhLwL9fUQ,69624
|
144
144
|
siat/valuation_market_china_test.py,sha256=gbJ0ioauuo4koTPH6WKUkqcXiQPafnbhU5eKJ6lpdLA,1571
|
145
145
|
siat/var_model_validation.py,sha256=R0caWnuZarrRg9939hxh3vJIIpIyPfvelYmzFNZtPbo,14910
|
146
146
|
siat/yf_name.py,sha256=laNKMTZ9hdenGX3IZ7G0a2RLBKEWtUQJFY9CWuk_fp8,24058
|
147
|
-
siat-3.8.
|
148
|
-
siat-3.8.
|
149
|
-
siat-3.8.
|
150
|
-
siat-3.8.
|
151
|
-
siat-3.8.
|
147
|
+
siat-3.8.20.dist-info/LICENSE,sha256=NTEMMROY9_4U1szoKC3N2BLHcDd_o5uTgqdVH8tbApw,1071
|
148
|
+
siat-3.8.20.dist-info/METADATA,sha256=I4TQUc7XHrSbbQkDRTd2Glcb1hcYKeIyhmUBp3KxMao,8144
|
149
|
+
siat-3.8.20.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
|
150
|
+
siat-3.8.20.dist-info/top_level.txt,sha256=r1cVyL7AIKqeAmEJjNR8FMT20OmEzufDstC2gv3NvEY,5
|
151
|
+
siat-3.8.20.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|