azapyGUI 0.0.1__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.
Files changed (54) hide show
  1. azapyGUI/AppSettingsPage.py +213 -0
  2. azapyGUI/AppSettingsPageMisc.py +101 -0
  3. azapyGUI/AppSettingsWindow.py +52 -0
  4. azapyGUI/BacktestComputation.py +166 -0
  5. azapyGUI/BacktestEntryWindow.py +307 -0
  6. azapyGUI/BacktestMenuPortfolioWindow.py +20 -0
  7. azapyGUI/CloneMenuPortfolioWindow.py +93 -0
  8. azapyGUI/CrossHairBCursor.py +80 -0
  9. azapyGUI/DF_Window.py +63 -0
  10. azapyGUI/DF_table.py +282 -0
  11. azapyGUI/EditMenuPortfolioWindow.py +16 -0
  12. azapyGUI/EditPortfolioWindow.py +475 -0
  13. azapyGUI/EntryClonePortfolioWindow.py +35 -0
  14. azapyGUI/EntryNameWindow.py +55 -0
  15. azapyGUI/EntryRenamePortfolioWindow.py +33 -0
  16. azapyGUI/GetMktData.py +85 -0
  17. azapyGUI/MenuApp.py +194 -0
  18. azapyGUI/MktDataFrame.py +129 -0
  19. azapyGUI/MktDataNode.py +34 -0
  20. azapyGUI/ModelParamEditWindow.py +143 -0
  21. azapyGUI/NrShares_table.py +54 -0
  22. azapyGUI/PortAnalyseWindow.py +179 -0
  23. azapyGUI/PortDataNode.py +180 -0
  24. azapyGUI/PortfolioFrame.py +197 -0
  25. azapyGUI/RebalanceMenuPortfolioWindow.py +21 -0
  26. azapyGUI/RemoveMenuPortfolioWindow.py +33 -0
  27. azapyGUI/SaveMenuPortfolioWindow.py +36 -0
  28. azapyGUI/Scrollable.py +60 -0
  29. azapyGUI/SelectOneWindow.py +65 -0
  30. azapyGUI/SymbAnalyseWindow.py +21 -0
  31. azapyGUI/SymbExtractWindow.py +129 -0
  32. azapyGUI/SymbTableEntry.py +109 -0
  33. azapyGUI/TimeSeriesViewWindow.py +480 -0
  34. azapyGUI/ViewTip.py +72 -0
  35. azapyGUI/WeightsWindow.py +352 -0
  36. azapyGUI/__init__.py +6 -0
  37. azapyGUI/azHelper.py +27 -0
  38. azapyGUI/azapyApp.py +89 -0
  39. azapyGUI/config.py +35 -0
  40. azapyGUI/configHelps.py +84 -0
  41. azapyGUI/configMSG.py +194 -0
  42. azapyGUI/configModels.py +519 -0
  43. azapyGUI/configPlot.py +70 -0
  44. azapyGUI/configSettings.py +138 -0
  45. azapyGUI/configTips.py +240 -0
  46. azapyGUI/mktDataValidation.py +42 -0
  47. azapyGUI/modelParametersValidation.py +442 -0
  48. azapyGUI/serviceMasterUserConfig.py +28 -0
  49. azapyGUI/tkHelper.py +18 -0
  50. azapyGUI-0.0.1.dist-info/LICENSE +674 -0
  51. azapyGUI-0.0.1.dist-info/METADATA +126 -0
  52. azapyGUI-0.0.1.dist-info/RECORD +54 -0
  53. azapyGUI-0.0.1.dist-info/WHEEL +5 -0
  54. azapyGUI-0.0.1.dist-info/top_level.txt +1 -0
azapyGUI/configMSG.py ADDED
@@ -0,0 +1,194 @@
1
+
2
+ _validate_portfolio_name_msg = \
3
+ "Invalid portfolio name.\nPortfolio names must contain only letters, \
4
+ digits, ., _, and - characters."
5
+
6
+ _validate_portfolio_name_exist_msg = \
7
+ "Portfolio name already in use. Please choose another name."
8
+
9
+ _validate_symbols_nr_msg = \
10
+ "Not enough portfolio components were selected. It must be >1."
11
+
12
+ _validate_symbols_name_msg = \
13
+ "Wrong entries among symbols.\nA valid symbol name contains only uppercase \
14
+ letters, digits, '.', and '^' characters."
15
+
16
+ _validate_symbols_final_msg = \
17
+ "The following symbols were dropped. \
18
+ No market data available from the provider."
19
+
20
+ _validate_portfolio_optimizer_msg = \
21
+ "No optimizer was set. Please select one."
22
+
23
+ _validate_hlength_msg = \
24
+ "hlength - history length (length of historical data) \
25
+ used in the optimization procedure). It is measured in years. A fractional \
26
+ number will be rounded to an integer number of months. hlength must be a \
27
+ positive integer >= 0.5. A typical value is around 1 \
28
+ (to be statistically significant) and usually not \
29
+ greater than 3 (beyond which the historical data may not be relevant for \
30
+ a model calibration)."
31
+
32
+ _validate_mu0_msg = \
33
+ "mu0 - risk-free rate accessible to the investor, i.e. \
34
+ the fixed rate of return (zero risk) for an investment that can be made \
35
+ at any time. Therefore, holding risker assets is justified only if the \
36
+ expected rate of return is higher than this threshold (of certainty). \
37
+ It is required in the evaluation of Sharpe type of ratios. It must be >=0.\
38
+ Most of the time a value of 0 is realistic."
39
+
40
+ _validate_mu_msg = \
41
+ "mu - targeted portfolio expected rate of return. It must be >=0. \
42
+ It is effective if its value is between max(0, muk_min) and muk_max, where \
43
+ muk_min and muk_max is the minimum and maximum expected rate of returns of \
44
+ individual portfolio components. If mu is >muk_max then the optimization \
45
+ procedure will return the single asset portfolio containing the best \
46
+ performant component of the portfolio."
47
+
48
+ _validate_aversion_msg = \
49
+ "aversion - risk-aversion coefficient lambda. It must be >0. \
50
+ A value of 0 will define the single asset portfolio containing the best \
51
+ performant component of the portfolio. On the other hand, a value \
52
+ approaching infinity will define minimum risk portfolio (same as \
53
+ rtype=MinRisk)."
54
+
55
+ _validate_ww0_msg = \
56
+ "ww0 - targeted portfolio weights. They must be >=0 with at least \
57
+ one >0. The number of weights should match the number of portfolio \
58
+ components (in alphabetical order of the components symbol name). If the \
59
+ size of ww0 is smaller than the number of portfolio components, the \
60
+ missing weights will be set to 1, and if greater, then ww0 will be \
61
+ truncated. ww0 are relative weights (the normalization will be done \
62
+ internally). Therefore, a single value of 1 will designate an equal \
63
+ weighted portfolio."
64
+
65
+ _validate_diver_msg = \
66
+ "diver - targeted diversification factor. It must be in (0, 1). \
67
+ A value of 0 implies no diversification at all - the portfolio risk is \
68
+ equal to the sum of the portfolio component risks. A value of 1 implies \
69
+ an ideal diversification where the portfolio risk is 0. Any given \
70
+ portfolio has less than 1 maximum diversification factor. If diver is set \
71
+ higher than this maximum value, the optimization returns the portfolio \
72
+ with maximum diversification (same a rtype=MaxDiverse)."
73
+
74
+ _validate_alpha_mCVaR_msg = \
75
+ "alpha - list of distinct confidence levels (percentiles). All \
76
+ components must be between (0.5, 0.99]. A typical value is between 0.975 \
77
+ and 0.85. Higher values may not be statistically relevant and lower values \
78
+ may not be impactful. The recommended size of alpha is between 1 and 3. \
79
+ More confidence levels may not refine the computation but will add to the \
80
+ computation time. A typical choice may be [0.95, 0.90]."
81
+
82
+ _validate_alpha_mSMCR_msg = \
83
+ "alpha - list of distinct confidence levels (percentiles). All \
84
+ components must be between (0.5, 0.99]. A typical value is between 0.85 \
85
+ and 0.65. Higher values may not be statistically relevant and lower values \
86
+ may not be impactful. The recommended size of alpha is between 1 and 3. \
87
+ More confidence levels may not refine the computation but will add to the \
88
+ computation time. A typical choice may be [0.85, 0.75]."
89
+
90
+ _validate_alpha_mEVaR_msg = \
91
+ "alpha - list of distinct confidence levels (percentiles). All \
92
+ components must be between (0.5, 0.99]. A typical value is between 0.80 \
93
+ and 0.60. Higher values may not be statistically relevant and lower values \
94
+ may not be impactful. The recommended size of alpha is between 1 and 3. \
95
+ More confidence levels may not refine the computation but will add to the \
96
+ computation time. A typical choice may be [0.75, 0.65]."
97
+
98
+ _validate_alpha_mBTAD_msg = \
99
+ "alpha - list of distinct rate thresholds. Although theoretically \
100
+ they may take any values, from a practical point of view, they must be in \
101
+ the range of asset return rate values. Moreover, if detrended rates are \
102
+ considered (detrended=True), then the threshold must be in range of \
103
+ absolute deviation of the asset return rate values. \
104
+ A typical value could be [-0.01, 0.0, 0.01]."
105
+
106
+ _validate_alpha_mBTSD_msg = \
107
+ "alpha - list of distinct rate thresholds. Although theoretically \
108
+ they may take any values, from a practical point of view, they must be in \
109
+ the range of asset return rate values. Moreover, if detrended rates are \
110
+ considered (detrended=True), then the threshold must be in range of \
111
+ standard deviation of the asset return rate values. \
112
+ A typical value could be [-0.01, 0.0, 0.01]."
113
+
114
+ _validate_coef_msg = \
115
+ "coef - list of weights coefficients for risk measures mixture. \
116
+ All coefficients, one for each alpha, must be >0. If the size of coef is \
117
+ smaller than the size of alpha, the missing values will be set to 1, and \
118
+ if greater, then coef will be truncated. coef are relative weights \
119
+ (the normalization will be done internally). Therefore, a single value \
120
+ of 1 will designate an equal weighted risk measures mixture."
121
+
122
+ _validate_coef_mMAD_msg = \
123
+ "coef - list of non-increasing values of MAD levels weights \
124
+ coefficients. All coefficients must be >0. All weights are relative \
125
+ (the normalization will be done internally). \
126
+ A typical value could be [1, 1, 1]."
127
+
128
+ _validate_coef_mLSD_msg = \
129
+ "coef - list of non-increasing values of MAD levels weights \
130
+ coefficients. All coefficients must be >0. All weights are relative \
131
+ (the normalization will be done internally). \
132
+ A typical value could be [1, 1, 1]."
133
+
134
+ _validate_fw_msg = \
135
+ "fw - Weights for f13612w filter. It is a list of 4 \
136
+ coefficient >=0 with at least one >0. All weights are relative \
137
+ (the normalization will be done internally). \
138
+ Typical value is [1, 1, 1, 1]."
139
+
140
+ _validate_nw_msg = \
141
+ "nw - Maximum number of selected symbols. It is an integer >=1 \
142
+ and <= number of portfolio components. A typical value is between 3 and 5."
143
+
144
+ _validate_threshold_msg = \
145
+ "threshold - Minimum number of symbols with positive momentum for a full \
146
+ capital allocation. It is an integer >=nw (maximum number of selected symbols) \
147
+ and <= number of portfolio components. A typical value is between 8 and 10."
148
+
149
+ _validate_corr_threshold_msg = \
150
+ "corr_threshold - cluster correlation threshold (i.e., a cluster contains only \
151
+ symbols with inter-correlation higher than corr_threshold). It must be >=0 \
152
+ and <1. A typical value could be 0.98."
153
+
154
+ _validate_dirichlet_alpha_msg = \
155
+ "List of Dirichlet alpha coefficients (to be used by the Dirichlet random \
156
+ number generator). All coefficients must be >0. The number of \
157
+ coefficients must be equal to the number of symbols in the portfolio. \
158
+ A list with smaller number will be pad with 1, while a larger list will \
159
+ be truncated. For example, a single value of 1 will aet a symmetric Dirichlet \
160
+ distribution (equivalent to a uniform distribution over the open \
161
+ standard (ns-1)-simplex, where ns is the \
162
+ number of portfolio components). A typical value is 1."
163
+
164
+ _validate_nr_batches_msg = \
165
+ "Number of Monte Carlo batches must be >0. The Monte Carlo simulation is \
166
+ parallelized in batches. Each batches holds mc_paths number of simulations. \
167
+ nr_baches isa small integer >0 (e.g. a multiple of number of CPU cores). \
168
+ The default value is 16."
169
+
170
+ _validate_mc_paths_msg = \
171
+ "Number of Monte Carlo simulations per batch per variance reduction mode \
172
+ must be an integer >0. The total number of simulations is given by \
173
+ n! x mc_batches x mc_paths where the first term is present only if the \
174
+ variance reduction procedure is triggered. Here n is the number of portfolio \
175
+ components and n! its factorial. For example, if n=7, nr_paths=16 and \
176
+ mc_paths=100, the total number of MC simulations is 8,064,000."
177
+
178
+ _validate_mc_seed_msg = \
179
+ "mc_seed (Monte Carlo engine seed) must be an integer."
180
+
181
+ _validate_application_settings_msg = \
182
+ "At least one market data provider must be chosen. Note: yahoo is free."
183
+
184
+ _validate_provider_key_msg = \
185
+ "No provider key was set explicitly or as environment variable."
186
+
187
+ _validate_noffset_msg = \
188
+ "Wrong value for Bday offset. Must be an integer (e.g. -3)."
189
+
190
+ _validate_fixoffset_msg = \
191
+ "Wrong value for Fixing offset. Must be an integer <=0."
192
+
193
+ _validate_capital_msg = \
194
+ "Wrong value for initial capital. Must be a real number >=10000."