skfolio 0.5.2__py3-none-any.whl → 0.7.0__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.
- skfolio/__init__.py +5 -5
- skfolio/cluster/__init__.py +1 -1
- skfolio/cluster/_hierarchical.py +1 -1
- skfolio/datasets/__init__.py +2 -2
- skfolio/distance/__init__.py +3 -3
- skfolio/distance/_distance.py +7 -6
- skfolio/exceptions.py +2 -2
- skfolio/measures/__init__.py +23 -23
- skfolio/model_selection/__init__.py +2 -2
- skfolio/moments/__init__.py +11 -11
- skfolio/moments/covariance/__init__.py +6 -6
- skfolio/moments/covariance/_denoise_covariance.py +2 -1
- skfolio/moments/covariance/_detone_covariance.py +2 -1
- skfolio/moments/covariance/_empirical_covariance.py +2 -1
- skfolio/moments/covariance/_ew_covariance.py +2 -1
- skfolio/moments/covariance/_gerber_covariance.py +2 -1
- skfolio/moments/covariance/_implied_covariance.py +1 -1
- skfolio/moments/expected_returns/__init__.py +2 -2
- skfolio/moments/expected_returns/_empirical_mu.py +2 -1
- skfolio/moments/expected_returns/_equilibrium_mu.py +2 -1
- skfolio/moments/expected_returns/_ew_mu.py +2 -1
- skfolio/moments/expected_returns/_shrunk_mu.py +2 -1
- skfolio/optimization/__init__.py +10 -10
- skfolio/optimization/cluster/__init__.py +1 -1
- skfolio/optimization/cluster/_nco.py +3 -2
- skfolio/optimization/cluster/hierarchical/__init__.py +1 -1
- skfolio/optimization/cluster/hierarchical/_herc.py +2 -1
- skfolio/optimization/cluster/hierarchical/_hrp.py +2 -1
- skfolio/optimization/convex/__init__.py +3 -3
- skfolio/optimization/convex/_base.py +344 -31
- skfolio/optimization/convex/_distributionally_robust.py +4 -1
- skfolio/optimization/convex/_maximum_diversification.py +4 -2
- skfolio/optimization/convex/_mean_risk.py +125 -17
- skfolio/optimization/convex/_risk_budgeting.py +3 -1
- skfolio/optimization/ensemble/_stacking.py +2 -2
- skfolio/optimization/naive/__init__.py +1 -1
- skfolio/optimization/naive/_naive.py +3 -2
- skfolio/portfolio/__init__.py +1 -1
- skfolio/portfolio/_base.py +1 -0
- skfolio/portfolio/_portfolio.py +1 -0
- skfolio/pre_selection/__init__.py +1 -1
- skfolio/pre_selection/_drop_correlated.py +1 -1
- skfolio/pre_selection/_select_complete.py +6 -4
- skfolio/pre_selection/_select_k_extremes.py +1 -1
- skfolio/pre_selection/_select_non_dominated.py +1 -1
- skfolio/pre_selection/_select_non_expiring.py +6 -4
- skfolio/prior/__init__.py +3 -3
- skfolio/prior/_black_litterman.py +2 -1
- skfolio/prior/_empirical.py +2 -1
- skfolio/prior/_factor_model.py +2 -1
- skfolio/typing.py +6 -6
- skfolio/uncertainty_set/__init__.py +5 -5
- skfolio/uncertainty_set/_base.py +3 -2
- skfolio/utils/equations.py +58 -1
- skfolio/utils/stats.py +8 -8
- skfolio/utils/tools.py +10 -10
- {skfolio-0.5.2.dist-info → skfolio-0.7.0.dist-info}/METADATA +32 -29
- skfolio-0.7.0.dist-info/RECORD +95 -0
- {skfolio-0.5.2.dist-info → skfolio-0.7.0.dist-info}/WHEEL +1 -1
- skfolio-0.5.2.dist-info/RECORD +0 -95
- {skfolio-0.5.2.dist-info → skfolio-0.7.0.dist-info}/LICENSE +0 -0
- {skfolio-0.5.2.dist-info → skfolio-0.7.0.dist-info}/top_level.txt +0 -0
skfolio/utils/stats.py
CHANGED
@@ -23,20 +23,20 @@ from skfolio.utils.tools import AutoEnum
|
|
23
23
|
|
24
24
|
__all__ = [
|
25
25
|
"NBinsMethod",
|
26
|
-
"
|
27
|
-
"n_bins_knuth",
|
28
|
-
"is_cholesky_dec",
|
26
|
+
"assert_is_distance",
|
29
27
|
"assert_is_square",
|
30
28
|
"assert_is_symmetric",
|
31
|
-
"assert_is_distance",
|
32
|
-
"cov_nearest",
|
33
|
-
"cov_to_corr",
|
34
|
-
"corr_to_cov",
|
35
29
|
"commutation_matrix",
|
36
30
|
"compute_optimal_n_clusters",
|
31
|
+
"corr_to_cov",
|
32
|
+
"cov_nearest",
|
33
|
+
"cov_to_corr",
|
34
|
+
"is_cholesky_dec",
|
35
|
+
"minimize_relative_weight_deviation",
|
36
|
+
"n_bins_freedman",
|
37
|
+
"n_bins_knuth",
|
37
38
|
"rand_weights",
|
38
39
|
"rand_weights_dirichlet",
|
39
|
-
"minimize_relative_weight_deviation",
|
40
40
|
]
|
41
41
|
|
42
42
|
|
skfolio/utils/tools.py
CHANGED
@@ -21,21 +21,21 @@ import sklearn.base as skb
|
|
21
21
|
|
22
22
|
__all__ = [
|
23
23
|
"AutoEnum",
|
24
|
-
"cached_property_slots",
|
25
|
-
"cache_method",
|
26
|
-
"input_to_array",
|
27
24
|
"args_names",
|
28
|
-
"format_measure",
|
29
|
-
"optimal_rounding_decimals",
|
30
25
|
"bisection",
|
31
|
-
"
|
32
|
-
"
|
33
|
-
"
|
34
|
-
"safe_indexing",
|
26
|
+
"cache_method",
|
27
|
+
"cached_property_slots",
|
28
|
+
"check_estimator",
|
35
29
|
"deduplicate_names",
|
36
30
|
"default_asset_names",
|
37
|
-
"
|
31
|
+
"fit_and_predict",
|
32
|
+
"fit_single_estimator",
|
33
|
+
"format_measure",
|
38
34
|
"get_feature_names",
|
35
|
+
"input_to_array",
|
36
|
+
"optimal_rounding_decimals",
|
37
|
+
"safe_indexing",
|
38
|
+
"safe_split",
|
39
39
|
]
|
40
40
|
|
41
41
|
GenericAlias = type(list[int])
|
@@ -1,9 +1,9 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: skfolio
|
3
|
-
Version: 0.
|
3
|
+
Version: 0.7.0
|
4
4
|
Summary: Portfolio optimization built on top of scikit-learn
|
5
5
|
Author-email: Hugo Delatte <delatte.hugo@gmail.com>
|
6
|
-
Maintainer-email: Hugo Delatte <delatte.hugo@gmail.com>
|
6
|
+
Maintainer-email: Hugo Delatte <delatte.hugo@gmail.com>, Matteo Manzi <matteomanzi09@gmail.com>
|
7
7
|
License: BSD 3-Clause License
|
8
8
|
|
9
9
|
Copyright (c) 2007-2023 The skfolio developers.
|
@@ -56,34 +56,37 @@ Classifier: Topic :: Software Development
|
|
56
56
|
Requires-Python: >=3.10
|
57
57
|
Description-Content-Type: text/x-rst
|
58
58
|
License-File: LICENSE
|
59
|
-
Requires-Dist: numpy
|
60
|
-
Requires-Dist: scipy
|
61
|
-
Requires-Dist: pandas
|
62
|
-
Requires-Dist: cvxpy
|
63
|
-
Requires-Dist: scikit-learn
|
64
|
-
Requires-Dist: joblib
|
65
|
-
Requires-Dist: plotly
|
59
|
+
Requires-Dist: numpy>=1.23.4
|
60
|
+
Requires-Dist: scipy>=1.8.0
|
61
|
+
Requires-Dist: pandas>=1.4.1
|
62
|
+
Requires-Dist: cvxpy>=1.4.1
|
63
|
+
Requires-Dist: scikit-learn>=1.6.0
|
64
|
+
Requires-Dist: joblib>=1.3.2
|
65
|
+
Requires-Dist: plotly>=5.22.0
|
66
|
+
Provides-Extra: dev
|
67
|
+
Requires-Dist: cvxpy[SCIP]<2.0.0,>=1.6.0; extra == "dev"
|
68
|
+
Requires-Dist: pytest<9.0.0,>=8.3.4; extra == "dev"
|
69
|
+
Requires-Dist: pytest-cov<7.0.0,>=6.0.0; extra == "dev"
|
70
|
+
Requires-Dist: ruff<1.0.0,>=0.8.4; extra == "dev"
|
71
|
+
Requires-Dist: pre-commit<4.2.0,>=4.0.0; extra == "dev"
|
66
72
|
Provides-Extra: docs
|
67
|
-
Requires-Dist:
|
68
|
-
Requires-Dist:
|
69
|
-
Requires-Dist: sphinx-
|
70
|
-
Requires-Dist:
|
71
|
-
Requires-Dist:
|
72
|
-
Requires-Dist:
|
73
|
-
Requires-Dist:
|
74
|
-
Requires-Dist:
|
75
|
-
Requires-Dist:
|
76
|
-
Requires-Dist: sphinx-
|
77
|
-
Requires-Dist: sphinx-
|
78
|
-
Requires-Dist:
|
79
|
-
Requires-Dist:
|
80
|
-
Requires-Dist:
|
81
|
-
Requires-Dist: jupyterlite-
|
82
|
-
Requires-Dist:
|
83
|
-
|
84
|
-
Requires-Dist: pytest ; extra == 'tests'
|
85
|
-
Requires-Dist: pytest-cov ; extra == 'tests'
|
86
|
-
Requires-Dist: ruff ; extra == 'tests'
|
73
|
+
Requires-Dist: cvxpy[SCIP]; extra == "docs"
|
74
|
+
Requires-Dist: Sphinx; extra == "docs"
|
75
|
+
Requires-Dist: sphinx-gallery; extra == "docs"
|
76
|
+
Requires-Dist: sphinx-design; extra == "docs"
|
77
|
+
Requires-Dist: pydata-sphinx-theme==0.13.3; extra == "docs"
|
78
|
+
Requires-Dist: matplotlib; extra == "docs"
|
79
|
+
Requires-Dist: kaleido==0.2.1; extra == "docs"
|
80
|
+
Requires-Dist: sphinx-copybutton; extra == "docs"
|
81
|
+
Requires-Dist: numpydoc; extra == "docs"
|
82
|
+
Requires-Dist: sphinx-togglebutton; extra == "docs"
|
83
|
+
Requires-Dist: sphinx-favicon; extra == "docs"
|
84
|
+
Requires-Dist: sphinx-prompt; extra == "docs"
|
85
|
+
Requires-Dist: sphinxext.opengraph; extra == "docs"
|
86
|
+
Requires-Dist: sphinx-sitemap; extra == "docs"
|
87
|
+
Requires-Dist: jupyterlite-sphinx; extra == "docs"
|
88
|
+
Requires-Dist: jupyterlite-pyodide-kernel; extra == "docs"
|
89
|
+
Requires-Dist: nbformat; extra == "docs"
|
87
90
|
|
88
91
|
.. -*- mode: rst -*-
|
89
92
|
|
@@ -0,0 +1,95 @@
|
|
1
|
+
skfolio/__init__.py,sha256=FbnqIQGdiw2fg-jy2N--TnXGknEahle2zj7y47bxQkY,618
|
2
|
+
skfolio/exceptions.py,sha256=poWfE5geF121AR9QqrG781KebGneIZ028161tV0YfS0,784
|
3
|
+
skfolio/typing.py,sha256=SqYkUNbeq_go0pJaoIAFE-MNvHtHSGLzhNrhrRxkpfM,1378
|
4
|
+
skfolio/cluster/__init__.py,sha256=5yp3qkvBoN0qNDmmPahjPMegc0oQXCJ1FPxwgEqJpiY,251
|
5
|
+
skfolio/cluster/_hierarchical.py,sha256=i7ckFpKdxymzrqXZBc0AZj-Qcz65JuUoJQ7pYWfAo7E,12823
|
6
|
+
skfolio/datasets/__init__.py,sha256=0tuS8CR26EUBqBFjyxgZ2L5PgZDy3AjK3qh4GV-fB1U,481
|
7
|
+
skfolio/datasets/_base.py,sha256=ECeHHlNOb2U5hEE3kaK8yQtegcVYiuGTjMLJ3Dop0Ks,16073
|
8
|
+
skfolio/datasets/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
9
|
+
skfolio/datasets/data/factors_dataset.csv.gz,sha256=brCJlT25DJo40yg1gnUXAakNtvWZZYR_1ksFeN5JcWE,36146
|
10
|
+
skfolio/datasets/data/sp500_dataset.csv.gz,sha256=7iHKwovvsdCnOanOsiGE-ZU5RyaqDP3pohlB0awErA0,426065
|
11
|
+
skfolio/datasets/data/sp500_index.csv.gz,sha256=iUw0QxwoT4aqZKRn4Xbio8m2l8hX65qzUAbC3VXT_fI,41898
|
12
|
+
skfolio/distance/__init__.py,sha256=MnNOJOQTdt3e-MH_uXMaaogWzF7Ubymvc8I0Ks7VElU,547
|
13
|
+
skfolio/distance/_base.py,sha256=jBgRk6lZrP1woSI9541fTfxBBkp4WCTLlRPmWcmA3j4,1326
|
14
|
+
skfolio/distance/_distance.py,sha256=0x77Yf_Tukb2l8J1VmvPT3YWJxVzGQo4u5rNjjo9-1M,19097
|
15
|
+
skfolio/measures/__init__.py,sha256=b4hcaWXTzgQjF80ex3G1YJurfjLiii-ggrqJCIXsJTE,1631
|
16
|
+
skfolio/measures/_enums.py,sha256=NJcngwg9b2JMMiekwkWU9POfnDvgfUgtYtyV2VSFDVM,8934
|
17
|
+
skfolio/measures/_measures.py,sha256=Z7XHSyM9xfecDgOqm-lJQJhvZxasF018-oFS4QjC4g0,16829
|
18
|
+
skfolio/metrics/__init__.py,sha256=MomHJ5_bgjq4qUwGS2bfhNmG_ld0oQ4wK6y0Yy_Eonc,75
|
19
|
+
skfolio/metrics/_scorer.py,sha256=h1VuZk-zzn4rIChHl9FvM7RxqVT3b-jR1CEB-cr9F2s,4306
|
20
|
+
skfolio/model_selection/__init__.py,sha256=Hl90pxVZjxrEFrI8DCGmoR0CBo1rMGw1z-cR2scKyls,507
|
21
|
+
skfolio/model_selection/_combinatorial.py,sha256=uf5DzklgyLhfMKm0kWHXl2QLlUOAoiaxNb7cafrHVIg,19062
|
22
|
+
skfolio/model_selection/_validation.py,sha256=3eFYzPejjDZljc33vRehDuBQTEKCkrj-mZihMVuGA4s,10034
|
23
|
+
skfolio/model_selection/_walk_forward.py,sha256=T57HhdFGjG31mAufujHQuRK1uKfAdkiBx9eucQZ-WG0,15043
|
24
|
+
skfolio/moments/__init__.py,sha256=st8AYX3tHT2ZkqnnMNbS6CiwufvHq6Tl6nHtRVhtlq0,794
|
25
|
+
skfolio/moments/covariance/__init__.py,sha256=twNNLP44sv4-3EgET27UdJ-8wbVgF2cYmIn8DERwFTk,1068
|
26
|
+
skfolio/moments/covariance/_base.py,sha256=98o4YDFcOZ4X4hRFlrJAwWifULGzisEyRZaxFYW1qeA,3970
|
27
|
+
skfolio/moments/covariance/_denoise_covariance.py,sha256=kp90Jey_0NMHqZObhadO0FymF1TXBO6J8gvXoDbv9dE,6986
|
28
|
+
skfolio/moments/covariance/_detone_covariance.py,sha256=4hh-wvxLdNb61PJkF2_AHb5jDZogZiFRHtUoWuXywWw,6093
|
29
|
+
skfolio/moments/covariance/_empirical_covariance.py,sha256=mndfugw9Yp1Kus8rPAYcAIUcDT-6yX7By4gHhxyj6iI,3544
|
30
|
+
skfolio/moments/covariance/_ew_covariance.py,sha256=wqvErW0OfvWWSrz1-g_M5EdfA4ludAD3wbn-y3ec-gY,3716
|
31
|
+
skfolio/moments/covariance/_gerber_covariance.py,sha256=B_H02D7kWuUGaLUB9E39Kxh4f9mQESsoFJvuvKNJ0Jk,5899
|
32
|
+
skfolio/moments/covariance/_graphical_lasso_cv.py,sha256=_6WQ1sjYJRG8XDq8zb5YIPtDhpb8CmLhLBlfewBvqjM,6539
|
33
|
+
skfolio/moments/covariance/_implied_covariance.py,sha256=dD-LT7vXYs3-GGgxkQon3xCVLmA8zUuWIaExqY4vtXA,17736
|
34
|
+
skfolio/moments/covariance/_ledoit_wolf.py,sha256=iV92TpAopOAgQwa4zk7NF1rYdXkgm3uXn5ZZpbcMss0,4875
|
35
|
+
skfolio/moments/covariance/_oas.py,sha256=ru8BNz7vQU75ARCuUbtJstmR2fy2fiD9OXLDlztUm5g,3684
|
36
|
+
skfolio/moments/covariance/_shrunk_covariance.py,sha256=OOUahkiSdU3vFOb8i0iHtn8WU0AHl7o9pf8pFkG6Lv4,3095
|
37
|
+
skfolio/moments/expected_returns/__init__.py,sha256=Bi3c4bok3SyktdYeFUs3VepTrtpmDITIk9GXPhIuDc0,504
|
38
|
+
skfolio/moments/expected_returns/_base.py,sha256=xk9mzi48uCOHaMTGQBMr3FU7Ai_shxYhmGeOsVwjv9Q,871
|
39
|
+
skfolio/moments/expected_returns/_empirical_mu.py,sha256=Gg1t4pEkVXGzCTXkATc5G1riMmIcMGqvPnIl2vnYF2k,1863
|
40
|
+
skfolio/moments/expected_returns/_equilibrium_mu.py,sha256=x35nIc4aoLledFmFmKY00d5jesx8xfLU2Udh4JQIkEg,4407
|
41
|
+
skfolio/moments/expected_returns/_ew_mu.py,sha256=hMjv9XJYftQ9X7RiEQWwAGZktPPFWc0_FFDEFhqC-fI,2109
|
42
|
+
skfolio/moments/expected_returns/_shrunk_mu.py,sha256=UbLM2B3nwa2ndLR5Or1yetnj2dCAzKxqpr34JwXfvmo,8275
|
43
|
+
skfolio/optimization/__init__.py,sha256=dx5S-xSsISCXO9s64jjcDSqSsUl6TVAaIICWOc8aHK4,1021
|
44
|
+
skfolio/optimization/_base.py,sha256=LoRONJP70AwbFpdgqVS_g145pCx0JGkazjWvkQzT_iM,5748
|
45
|
+
skfolio/optimization/cluster/__init__.py,sha256=5Ek5dlLq9TqoLNHJad3EpBb35csuV-ilcoaKnc73lQc,388
|
46
|
+
skfolio/optimization/cluster/_nco.py,sha256=UQfWEdYVPU6cd-WBlp9uf44zDzpTrXDIvH82k5GOdh4,16413
|
47
|
+
skfolio/optimization/cluster/hierarchical/__init__.py,sha256=hZ6GzND_uGO3_derqt3wkOJ-jTtOs_x8Ifgo173EDxw,405
|
48
|
+
skfolio/optimization/cluster/hierarchical/_base.py,sha256=l8rJHCH_79FOPdDL2I0dmAWcVWnNkcXHtzt0U-L7BN8,16280
|
49
|
+
skfolio/optimization/cluster/hierarchical/_herc.py,sha256=fFUk-NEbP7ltjeiYQwzmVvXoVYYjd3JY_RjHoWVq0lw,20401
|
50
|
+
skfolio/optimization/cluster/hierarchical/_hrp.py,sha256=wUeTIwQxhV5yhqZ4UIr-61rgttTP7fPh91GtMaCNjPc,18158
|
51
|
+
skfolio/optimization/convex/__init__.py,sha256=mii3YiVwzAjnTMpJNK44jHevZXrfFxB-4z-3ZJP9nSc,570
|
52
|
+
skfolio/optimization/convex/_base.py,sha256=9-0aZ_nzU5F6CkxhjK-VTvyGz96xyFVuRG7lWRl_3i4,89430
|
53
|
+
skfolio/optimization/convex/_distributionally_robust.py,sha256=32jVUn2PG1agwuTSfj9QlP9GyQo_26sJcIwSqv9zy2I,17933
|
54
|
+
skfolio/optimization/convex/_maximum_diversification.py,sha256=T3-O4U6irJ7iU9IWzKWr5K4aHC8JxNyF6JW_IckVezM,19631
|
55
|
+
skfolio/optimization/convex/_mean_risk.py,sha256=77Dhe9xN6mSwgkXvXen5pySX-uHo3rOhPvpSQOd8l_Q,49509
|
56
|
+
skfolio/optimization/convex/_risk_budgeting.py,sha256=Lt13xD41PEMXjxa1yjnaIe7nEZ_bnUqeT3MLiUCfTWI,23631
|
57
|
+
skfolio/optimization/ensemble/__init__.py,sha256=8TXxcxH2_gG3C1xtgQj9OHHr0Le8lhdejtlURL6T3ZY,158
|
58
|
+
skfolio/optimization/ensemble/_base.py,sha256=GaNDQu6ivosYuwMrb-b0PhToCsNrmhSYyXkxeM8W4rU,3399
|
59
|
+
skfolio/optimization/ensemble/_stacking.py,sha256=Y79cHEOBJbtMgkKbgPKfgL6H9qYHi4VDm0JR5ugVwr4,14176
|
60
|
+
skfolio/optimization/naive/__init__.py,sha256=LNmqRIkGf4RLaOGLt2ZB7SHnBBraxxn0WbTkDQGCxd0,147
|
61
|
+
skfolio/optimization/naive/_naive.py,sha256=tQG6XqQKfWnbixjwtUiGNivGXuTPAYErkJMYl-UPYxQ,6437
|
62
|
+
skfolio/population/__init__.py,sha256=rsPPMUv95aTK7vmpPeQwF8NzFuBwk6RDo5g4HNaPzNM,80
|
63
|
+
skfolio/population/_population.py,sha256=ej45tdk_CcMlNToCsx2VUk2YRktK3k4cRczGBpjlnDE,30427
|
64
|
+
skfolio/portfolio/__init__.py,sha256=YeDSH0ZdyE-lcbDqpNw9IOltURtoM-ewAzzcec44Q5Q,586
|
65
|
+
skfolio/portfolio/_base.py,sha256=6HPFbCUve11lAhyD3KanDrlLjwzhVp6tIBy03XGBAGs,39613
|
66
|
+
skfolio/portfolio/_multi_period_portfolio.py,sha256=K2JfEwlPD9iGO58lOdk7WUbWuXZDWw2prPT5T7pOdto,24387
|
67
|
+
skfolio/portfolio/_portfolio.py,sha256=MoVuCM8rQnlzI2SvKmu1EDrNJfFFZRIyyhrZuNSdou0,32778
|
68
|
+
skfolio/pre_selection/__init__.py,sha256=gVrGZYwuQ--AZGlIZ2ddXst3n_wJluEUBXpysOH5DM0,482
|
69
|
+
skfolio/pre_selection/_drop_correlated.py,sha256=dgDl4YCHAC1lECSzuQGjI6rLoPNxvJ5bhtmwqduZH8Y,3822
|
70
|
+
skfolio/pre_selection/_select_complete.py,sha256=5xgy1c3jSXQHRIwWk1ZSuRw36WeEVIQNy55qCIl9nJY,3978
|
71
|
+
skfolio/pre_selection/_select_k_extremes.py,sha256=FSpvYN5vSGqRREFxceQiRjgGl50lJodpYJV7u-d3esQ,3065
|
72
|
+
skfolio/pre_selection/_select_non_dominated.py,sha256=q5kae1tpMrcbgKfkPQMy0RWaXknnWI0eJ5Ne-h9VKE8,5987
|
73
|
+
skfolio/pre_selection/_select_non_expiring.py,sha256=asD4xK83je4oWvB2ISu_HeRaDJjJ6pq88etr7CPkwPs,5088
|
74
|
+
skfolio/preprocessing/__init__.py,sha256=15A1bzfPsbfxxXgGP1gstf4R0E_347Wn18z5W5jH-hk,94
|
75
|
+
skfolio/preprocessing/_returns.py,sha256=6mdNi7Dun5eNK4LdqKAxP4CCZEVfAEz40HXVrOiAaLA,4561
|
76
|
+
skfolio/prior/__init__.py,sha256=ajpcpYe6qgnjoPE5Q3ofr4ckQ2WrBxUapED5VV0ShbA,446
|
77
|
+
skfolio/prior/_base.py,sha256=u9GLCKJl-Txiem5rIO-qkH3VIyem3taD6T9kMzsYPRY,1941
|
78
|
+
skfolio/prior/_black_litterman.py,sha256=rs0GKbVbDGG-Wdrfb8LVUqq4BE_j-DDLoPsC8sGQvBk,10390
|
79
|
+
skfolio/prior/_empirical.py,sha256=sJkqb60XRt_VsVWTrqDgdhfRn0MMOpmLbFeBcEUGEVs,7250
|
80
|
+
skfolio/prior/_factor_model.py,sha256=HiR6JdmusAB1RbjOGjFQgQaTCp_ctzrL5IzUCxgqGKA,11354
|
81
|
+
skfolio/uncertainty_set/__init__.py,sha256=NhGmOhrmIgAA5DwPs0y48RQb-pVrfkdRRIlPgQjPvJc,617
|
82
|
+
skfolio/uncertainty_set/_base.py,sha256=b2T0r8brV8h8gt96GcArFTEFNg3vKwN1qPmPN6QkdeU,4290
|
83
|
+
skfolio/uncertainty_set/_bootstrap.py,sha256=BRD8LhGKULkqqCBjLqU1EtCAMBkLJKEXJygQT6WsaAY,11249
|
84
|
+
skfolio/uncertainty_set/_empirical.py,sha256=ACqMVTBKibJm6E3IP4TOi3MYsxKMhiEoix5D_fp9X-w,9364
|
85
|
+
skfolio/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
86
|
+
skfolio/utils/bootstrap.py,sha256=3zY2kO_GQURKEcQMCasJOSByde9Mt2IAi3KJH0_a4mk,3550
|
87
|
+
skfolio/utils/equations.py,sha256=9XFcRB6_UuxlAR-dWwf1XPxAHO9p5DfcC-bF5onr7Ws,15539
|
88
|
+
skfolio/utils/sorting.py,sha256=lSjMvH2L-sSj-06B3MlwBrH1rtjCeGEe4hG894W7TE0,3504
|
89
|
+
skfolio/utils/stats.py,sha256=OoePNjqBNGKGJzHTqzG9-i8JXVJcx7k-qCVCE9TL-pY,16995
|
90
|
+
skfolio/utils/tools.py,sha256=m31oruGPMMTf5XYm3BruXyv1dv6I7rvhCpEVWUcusdE,20925
|
91
|
+
skfolio-0.7.0.dist-info/LICENSE,sha256=F6Gi-ZJX5BlVzYK8R9NcvAkAsKa7KO29xB1OScbrH6Q,1526
|
92
|
+
skfolio-0.7.0.dist-info/METADATA,sha256=uCACwU4Q--zy8DpkNlAANtkdrDQWTWEDBjfzpfD12U4,20109
|
93
|
+
skfolio-0.7.0.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
|
94
|
+
skfolio-0.7.0.dist-info/top_level.txt,sha256=NXEaoS9Ms7t32gxkb867nV0OKlU0KmssL7IJBVo0fJs,8
|
95
|
+
skfolio-0.7.0.dist-info/RECORD,,
|
skfolio-0.5.2.dist-info/RECORD
DELETED
@@ -1,95 +0,0 @@
|
|
1
|
-
skfolio/__init__.py,sha256=5pn5LpTz6v2j2sxGkY97cVRrSPsN3Yav9b6Uw08boEI,618
|
2
|
-
skfolio/exceptions.py,sha256=3LCxKlxgEaIMPQPCHjo1UiL7rlJnD15dNRMyBeYyKcc,784
|
3
|
-
skfolio/typing.py,sha256=yEZiCZ6UIyfYUqtfj9Kf2KA9mrjUbmxyzpH9uqVboJs,1378
|
4
|
-
skfolio/cluster/__init__.py,sha256=4g-PFB_ld9BhiQ1ZPvvAorpFbRwd_p_DkeRlulDv2Hk,251
|
5
|
-
skfolio/cluster/_hierarchical.py,sha256=16INBe5HB7ALODO3RNI8ZjOYALtMZa3U_7EP1aEIxp8,12819
|
6
|
-
skfolio/datasets/__init__.py,sha256=TKzb3wucwuaBI7V8GSiEIun-oaV0W0Mhl_XJgMjlajU,481
|
7
|
-
skfolio/datasets/_base.py,sha256=ECeHHlNOb2U5hEE3kaK8yQtegcVYiuGTjMLJ3Dop0Ks,16073
|
8
|
-
skfolio/datasets/data/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
9
|
-
skfolio/datasets/data/factors_dataset.csv.gz,sha256=brCJlT25DJo40yg1gnUXAakNtvWZZYR_1ksFeN5JcWE,36146
|
10
|
-
skfolio/datasets/data/sp500_dataset.csv.gz,sha256=7iHKwovvsdCnOanOsiGE-ZU5RyaqDP3pohlB0awErA0,426065
|
11
|
-
skfolio/datasets/data/sp500_index.csv.gz,sha256=iUw0QxwoT4aqZKRn4Xbio8m2l8hX65qzUAbC3VXT_fI,41898
|
12
|
-
skfolio/distance/__init__.py,sha256=vpdmjFlJeI0AvPV3r5tp2zooAG4N9ihCwPlaqqdVj1w,547
|
13
|
-
skfolio/distance/_base.py,sha256=jBgRk6lZrP1woSI9541fTfxBBkp4WCTLlRPmWcmA3j4,1326
|
14
|
-
skfolio/distance/_distance.py,sha256=yRyyxMXqKYOiuXdq35aQ2MfS8fp6Xh9BR_ABbUVkaGg,19034
|
15
|
-
skfolio/measures/__init__.py,sha256=9ThQikIAQcfKRLSCoMr-Z5vE2-ThtYe9B-L40b6Ewg0,1631
|
16
|
-
skfolio/measures/_enums.py,sha256=NJcngwg9b2JMMiekwkWU9POfnDvgfUgtYtyV2VSFDVM,8934
|
17
|
-
skfolio/measures/_measures.py,sha256=Z7XHSyM9xfecDgOqm-lJQJhvZxasF018-oFS4QjC4g0,16829
|
18
|
-
skfolio/metrics/__init__.py,sha256=MomHJ5_bgjq4qUwGS2bfhNmG_ld0oQ4wK6y0Yy_Eonc,75
|
19
|
-
skfolio/metrics/_scorer.py,sha256=h1VuZk-zzn4rIChHl9FvM7RxqVT3b-jR1CEB-cr9F2s,4306
|
20
|
-
skfolio/model_selection/__init__.py,sha256=8j9Z5tpbgBScjFbn8ZsCm_6rZO7RkPQ1QIF8BqYMVA8,507
|
21
|
-
skfolio/model_selection/_combinatorial.py,sha256=uf5DzklgyLhfMKm0kWHXl2QLlUOAoiaxNb7cafrHVIg,19062
|
22
|
-
skfolio/model_selection/_validation.py,sha256=3eFYzPejjDZljc33vRehDuBQTEKCkrj-mZihMVuGA4s,10034
|
23
|
-
skfolio/model_selection/_walk_forward.py,sha256=T57HhdFGjG31mAufujHQuRK1uKfAdkiBx9eucQZ-WG0,15043
|
24
|
-
skfolio/moments/__init__.py,sha256=zwxaRO4TLoPj8qrcYSofNyd3tYhbLLcZWQaErzfDdNg,794
|
25
|
-
skfolio/moments/covariance/__init__.py,sha256=maWkl5Uh0RMgfaxQ0yO-c5zhJg51vm1zrtxZrk_p0pg,1068
|
26
|
-
skfolio/moments/covariance/_base.py,sha256=98o4YDFcOZ4X4hRFlrJAwWifULGzisEyRZaxFYW1qeA,3970
|
27
|
-
skfolio/moments/covariance/_denoise_covariance.py,sha256=8NW76w8Sdok1OqcqdjM6KtzpzWYp6cnOeaTlma-i7OA,6943
|
28
|
-
skfolio/moments/covariance/_detone_covariance.py,sha256=XmIk0ZpkWwO2nu_gH9zK2s09qoNGHHyJwy0F0JZ9250,6050
|
29
|
-
skfolio/moments/covariance/_empirical_covariance.py,sha256=_7T1x4p-vdATQvQzQjQBMJhXw7Xvq1qmDvgsaRGyQvA,3501
|
30
|
-
skfolio/moments/covariance/_ew_covariance.py,sha256=jzLE4zSEfLCToNBTIG5CMy1n9EYWo1IHJPifcyLVe1g,3673
|
31
|
-
skfolio/moments/covariance/_gerber_covariance.py,sha256=3wSwZtji2cEr2rzZ6pi2knmuOSzTFpyb_4XJl_S3Yj0,5856
|
32
|
-
skfolio/moments/covariance/_graphical_lasso_cv.py,sha256=_6WQ1sjYJRG8XDq8zb5YIPtDhpb8CmLhLBlfewBvqjM,6539
|
33
|
-
skfolio/moments/covariance/_implied_covariance.py,sha256=L8odXiyNTfrnyroZUZSr8KkHv9_c3OCpdoqrtLqkonQ,17732
|
34
|
-
skfolio/moments/covariance/_ledoit_wolf.py,sha256=iV92TpAopOAgQwa4zk7NF1rYdXkgm3uXn5ZZpbcMss0,4875
|
35
|
-
skfolio/moments/covariance/_oas.py,sha256=ru8BNz7vQU75ARCuUbtJstmR2fy2fiD9OXLDlztUm5g,3684
|
36
|
-
skfolio/moments/covariance/_shrunk_covariance.py,sha256=OOUahkiSdU3vFOb8i0iHtn8WU0AHl7o9pf8pFkG6Lv4,3095
|
37
|
-
skfolio/moments/expected_returns/__init__.py,sha256=8UxgcLNGoVy-xty8S2z2kre7IE_P1cmE9tGAE08jZfE,504
|
38
|
-
skfolio/moments/expected_returns/_base.py,sha256=xk9mzi48uCOHaMTGQBMr3FU7Ai_shxYhmGeOsVwjv9Q,871
|
39
|
-
skfolio/moments/expected_returns/_empirical_mu.py,sha256=tD7v_LV6WWjox967X22i6xzhKqnipmday_wS4RhywhA,1820
|
40
|
-
skfolio/moments/expected_returns/_equilibrium_mu.py,sha256=npVmeksqdoKwYtt-QF0_58764VNzS4ruuUj9Fr343YI,4364
|
41
|
-
skfolio/moments/expected_returns/_ew_mu.py,sha256=8xVq1dnNK_Ed9b4CUT-rI2V4b5qe-oxzQ5cL0reTlBw,2066
|
42
|
-
skfolio/moments/expected_returns/_shrunk_mu.py,sha256=IJ7nj0xvNdUG2f6QaXg3grztDnu0l2nSRnTDTZgNQok,8232
|
43
|
-
skfolio/optimization/__init__.py,sha256=vXIbwWJL48zJ1jy7ZB2PPBVx7rZo0vVA8QQQuD-L6ts,1021
|
44
|
-
skfolio/optimization/_base.py,sha256=LoRONJP70AwbFpdgqVS_g145pCx0JGkazjWvkQzT_iM,5748
|
45
|
-
skfolio/optimization/cluster/__init__.py,sha256=M3xVdYhNKp4e9CB7hzb4yjTxkkNCHh7Mt_KGFFrkOgs,388
|
46
|
-
skfolio/optimization/cluster/_nco.py,sha256=J3pPd9XkrAcWaKPSW5vMdtaFpDshBvOdUudbDGQSoNI,16366
|
47
|
-
skfolio/optimization/cluster/hierarchical/__init__.py,sha256=YnfcPHvjwB6kcG4hoQqc0NqIJKaG7OjBtmXNbOxCq08,405
|
48
|
-
skfolio/optimization/cluster/hierarchical/_base.py,sha256=l8rJHCH_79FOPdDL2I0dmAWcVWnNkcXHtzt0U-L7BN8,16280
|
49
|
-
skfolio/optimization/cluster/hierarchical/_herc.py,sha256=LPtUrvyW9G60OZhMWlZH_GHZHdX8mJHksrYGB-WPRVg,20358
|
50
|
-
skfolio/optimization/cluster/hierarchical/_hrp.py,sha256=dn6EKiTJ1wkoFhPdst6vlXnSQvXSYsMtB2zaGNVPpyA,18115
|
51
|
-
skfolio/optimization/convex/__init__.py,sha256=F6BPFikTo0B-7JCKazqLGEwM3RkgTNbFm5GAGkaq9Uo,570
|
52
|
-
skfolio/optimization/convex/_base.py,sha256=P1rSw1oJAZR_BuOxJeXJrYHlkFD0AwCOaBl3mj54E8U,76413
|
53
|
-
skfolio/optimization/convex/_distributionally_robust.py,sha256=tw_UNSDfAXP02khE10hpmcdlz3DQXQD7ttDqFDSHV1E,17811
|
54
|
-
skfolio/optimization/convex/_maximum_diversification.py,sha256=IVKVbK7bh4KPkhpNWLLerl-qx9Qcmf2cIIRotP8r8nI,19500
|
55
|
-
skfolio/optimization/convex/_mean_risk.py,sha256=H4Ik6vvIETdAZnNCA4Jhk_OTirHJg26KQZ5iLsXgaHo,44176
|
56
|
-
skfolio/optimization/convex/_risk_budgeting.py,sha256=VXm6vUeB-BDEn6KhWxg1-9UmjqpFR1E04SM4NLcNuBY,23510
|
57
|
-
skfolio/optimization/ensemble/__init__.py,sha256=8TXxcxH2_gG3C1xtgQj9OHHr0Le8lhdejtlURL6T3ZY,158
|
58
|
-
skfolio/optimization/ensemble/_base.py,sha256=GaNDQu6ivosYuwMrb-b0PhToCsNrmhSYyXkxeM8W4rU,3399
|
59
|
-
skfolio/optimization/ensemble/_stacking.py,sha256=ZoICUnc_MwoXDQAR2kewCg-KIezSOIUdDV1fuf7vMyA,14168
|
60
|
-
skfolio/optimization/naive/__init__.py,sha256=Dkr55R48urC-jfYN007NTbei16N91Na_EDYLVqzhGgQ,147
|
61
|
-
skfolio/optimization/naive/_naive.py,sha256=AhEyYKEUAm-Fjn4p8SHwhp7yE9iF0tRyDZIjKYV4EeU,6390
|
62
|
-
skfolio/population/__init__.py,sha256=rsPPMUv95aTK7vmpPeQwF8NzFuBwk6RDo5g4HNaPzNM,80
|
63
|
-
skfolio/population/_population.py,sha256=ej45tdk_CcMlNToCsx2VUk2YRktK3k4cRczGBpjlnDE,30427
|
64
|
-
skfolio/portfolio/__init__.py,sha256=YYtcAPmA2zeCxFGTXegg2FXcA7py6CxOX7IMTdYuXl0,586
|
65
|
-
skfolio/portfolio/_base.py,sha256=EFLsvHoxZmDvGPOKePr6hQGXU7y7TWsALvzYP9qt0fQ,39588
|
66
|
-
skfolio/portfolio/_multi_period_portfolio.py,sha256=K2JfEwlPD9iGO58lOdk7WUbWuXZDWw2prPT5T7pOdto,24387
|
67
|
-
skfolio/portfolio/_portfolio.py,sha256=gqvCKM6ZVfwZrgixiYdahgbQ1DRNW2LkGHkXOpjleb4,32753
|
68
|
-
skfolio/pre_selection/__init__.py,sha256=_H0jziIOq0nUETFQvjBP4AtKGzdh0EGGSXaECTcUhxY,482
|
69
|
-
skfolio/pre_selection/_drop_correlated.py,sha256=EDwRVqmkU-52VXQ-u350PYgjWCI5QnB8CfR1taLWffY,3818
|
70
|
-
skfolio/pre_selection/_select_complete.py,sha256=sE9TCitUA5KbEqPssl0qsCBD-oV_5Vx-b-kdU0hsFHI,3885
|
71
|
-
skfolio/pre_selection/_select_k_extremes.py,sha256=25FGievaDqlAHAxUmyznAd3LIq_7D3ajaSVD6E7luSI,3061
|
72
|
-
skfolio/pre_selection/_select_non_dominated.py,sha256=HLGNS14vgQlg5I5zj-b1QpgCaZROd0FALQSmyXGpK7o,5983
|
73
|
-
skfolio/pre_selection/_select_non_expiring.py,sha256=RAWnuW2u7y0ibsimJp5mRM9JQFOn0hHp-mWsp0FLPbs,4995
|
74
|
-
skfolio/preprocessing/__init__.py,sha256=15A1bzfPsbfxxXgGP1gstf4R0E_347Wn18z5W5jH-hk,94
|
75
|
-
skfolio/preprocessing/_returns.py,sha256=6mdNi7Dun5eNK4LdqKAxP4CCZEVfAEz40HXVrOiAaLA,4561
|
76
|
-
skfolio/prior/__init__.py,sha256=jql8NTiWlykPKJUXTOPdqm531mP8Pul1QAR6hXTXA6c,446
|
77
|
-
skfolio/prior/_base.py,sha256=u9GLCKJl-Txiem5rIO-qkH3VIyem3taD6T9kMzsYPRY,1941
|
78
|
-
skfolio/prior/_black_litterman.py,sha256=W3HbpvkViEiD7AOgpdVmNYTlWKSGDgo9Y3BfSrbMIQ4,10347
|
79
|
-
skfolio/prior/_empirical.py,sha256=K3htSj_MGX6wNL-XxkTqFxz8WeqNzek6X4YYwKUmMC4,7207
|
80
|
-
skfolio/prior/_factor_model.py,sha256=xMWyOaJNrCM6NyDQK_-G4wCfREaThI4QvhxxGhsodII,11311
|
81
|
-
skfolio/uncertainty_set/__init__.py,sha256=LlMHtYv9G9fgtM7m4sCSToS9et57Pm2Q2gGchTVrj6c,617
|
82
|
-
skfolio/uncertainty_set/_base.py,sha256=Wk8nr-FwurfX13lJR5x2LMxWTHAO6B61A-G5yHEevDw,4243
|
83
|
-
skfolio/uncertainty_set/_bootstrap.py,sha256=BRD8LhGKULkqqCBjLqU1EtCAMBkLJKEXJygQT6WsaAY,11249
|
84
|
-
skfolio/uncertainty_set/_empirical.py,sha256=ACqMVTBKibJm6E3IP4TOi3MYsxKMhiEoix5D_fp9X-w,9364
|
85
|
-
skfolio/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
86
|
-
skfolio/utils/bootstrap.py,sha256=3zY2kO_GQURKEcQMCasJOSByde9Mt2IAi3KJH0_a4mk,3550
|
87
|
-
skfolio/utils/equations.py,sha256=MQ1w3VSM2n_j9bTIKAQA716aWKYyUqtw5yM2bU-9t-M,13745
|
88
|
-
skfolio/utils/sorting.py,sha256=lSjMvH2L-sSj-06B3MlwBrH1rtjCeGEe4hG894W7TE0,3504
|
89
|
-
skfolio/utils/stats.py,sha256=mWMpJ_XBy400kx7GlwBvR4Fwo8ValOZ9J3VDLODDaHQ,16995
|
90
|
-
skfolio/utils/tools.py,sha256=4KrmBR9jOLiI6j0hb27gsPC--OHXo4Sp1xl-6i-k9Tg,20925
|
91
|
-
skfolio-0.5.2.dist-info/LICENSE,sha256=F6Gi-ZJX5BlVzYK8R9NcvAkAsKa7KO29xB1OScbrH6Q,1526
|
92
|
-
skfolio-0.5.2.dist-info/METADATA,sha256=YCnMzyRfmhzQpJ6P6VySw-DJlYuHBdw4bkcfIrR_Gc8,19906
|
93
|
-
skfolio-0.5.2.dist-info/WHEEL,sha256=R06PA3UVYHThwHvxuRWMqaGcr-PuniXahwjmQRFMEkY,91
|
94
|
-
skfolio-0.5.2.dist-info/top_level.txt,sha256=NXEaoS9Ms7t32gxkb867nV0OKlU0KmssL7IJBVo0fJs,8
|
95
|
-
skfolio-0.5.2.dist-info/RECORD,,
|
File without changes
|
File without changes
|