proton_api 1.8.0 → 1.9.0

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 (304) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +35 -205
  3. data/lib/proton_api.rb +10 -2
  4. data/lib/proton_api/api/annuities_api.rb +2 -2
  5. data/lib/proton_api/api/business_financial_management_api.rb +2 -2
  6. data/lib/proton_api/api/cards_api.rb +56 -2
  7. data/lib/proton_api/api/financial_health_api.rb +2 -2
  8. data/lib/proton_api/api/financial_planning_api.rb +2 -2
  9. data/lib/proton_api/api/goals_api.rb +2 -2
  10. data/lib/proton_api/api/life_insurance_api.rb +2 -2
  11. data/lib/proton_api/api/personal_financial_management_api.rb +56 -2
  12. data/lib/proton_api/api/portfolio_construction_api.rb +2 -2
  13. data/lib/proton_api/api/portfolio_management_api.rb +2 -2
  14. data/lib/proton_api/api/risk_scoring_api.rb +2 -2
  15. data/lib/proton_api/api/simulations_api.rb +2 -2
  16. data/lib/proton_api/api/util_api.rb +185 -0
  17. data/lib/proton_api/api_client.rb +6 -6
  18. data/lib/proton_api/api_error.rb +2 -2
  19. data/lib/proton_api/configuration.rb +3 -3
  20. data/lib/proton_api/models/accumulation_goal_deposit_config.rb +25 -25
  21. data/lib/proton_api/models/annuity_calculator_accumulation_horizon_request.rb +138 -141
  22. data/lib/proton_api/models/annuity_calculator_annuity_amount_request.rb +129 -132
  23. data/lib/proton_api/models/annuity_calculator_decumulation_horizon_request.rb +138 -141
  24. data/lib/proton_api/models/annuity_calculator_deposit_amount_request.rb +138 -141
  25. data/lib/proton_api/models/annuity_calculator_initial_balance_request.rb +138 -141
  26. data/lib/proton_api/models/annuity_deposit_schedule.rb +33 -36
  27. data/lib/proton_api/models/answer.rb +186 -0
  28. data/lib/proton_api/models/backtest_request.rb +56 -59
  29. data/lib/proton_api/models/beneficiary_bequest_config.rb +32 -35
  30. data/lib/proton_api/models/budget_aggregation_account.rb +7 -10
  31. data/lib/proton_api/models/budget_calculator_request.rb +85 -66
  32. data/lib/proton_api/models/budget_component.rb +25 -28
  33. data/lib/proton_api/models/budget_details.rb +75 -78
  34. data/lib/proton_api/models/business_financial_health_check_request.rb +172 -166
  35. data/lib/proton_api/models/business_invoice_analysis_request.rb +79 -73
  36. data/lib/proton_api/models/calculator_deposit_schedule.rb +22 -25
  37. data/lib/proton_api/models/calculator_deposit_schedule1.rb +33 -36
  38. data/lib/proton_api/models/card_analysis_request.rb +372 -0
  39. data/lib/proton_api/models/card_limit_check_request.rb +42 -14
  40. data/lib/proton_api/models/card_transaction_authorization_request.rb +143 -80
  41. data/lib/proton_api/models/cash_analysis_request.rb +82 -63
  42. data/lib/proton_api/models/cash_flow_analysis_request.rb +104 -76
  43. data/lib/proton_api/models/children_education_config.rb +7 -10
  44. data/lib/proton_api/models/customer_analysis_request.rb +60 -54
  45. data/lib/proton_api/models/decision_tree_result_request.rb +236 -0
  46. data/lib/proton_api/models/decumulation_goal_deposit_config.rb +28 -31
  47. data/lib/proton_api/models/dimensional_risk_score_request.rb +52 -55
  48. data/lib/proton_api/models/diversification_score_request.rb +59 -62
  49. data/lib/proton_api/models/education_calculator_annual_cost_request.rb +143 -146
  50. data/lib/proton_api/models/education_calculator_deposit_amount_request.rb +170 -173
  51. data/lib/proton_api/models/education_calculator_percent_covered_request.rb +136 -139
  52. data/lib/proton_api/models/education_config.rb +44 -47
  53. data/lib/proton_api/models/emergency_fund_calculator_request.rb +182 -185
  54. data/lib/proton_api/models/event_study_request.rb +64 -67
  55. data/lib/proton_api/models/fee_analysis_request.rb +42 -34
  56. data/lib/proton_api/models/financial_health_check_request.rb +109 -112
  57. data/lib/proton_api/models/financial_picture_request.rb +53 -52
  58. data/lib/proton_api/models/financial_statement_analysis_request.rb +140 -134
  59. data/lib/proton_api/models/goal_accumulation_allocation_request.rb +271 -274
  60. data/lib/proton_api/models/goal_accumulation_recommendation_request.rb +218 -221
  61. data/lib/proton_api/models/goal_accumulation_status_request.rb +218 -221
  62. data/lib/proton_api/models/goal_config.rb +35 -38
  63. data/lib/proton_api/models/goal_decumulation_allocation_request.rb +293 -296
  64. data/lib/proton_api/models/goal_decumulation_recommendation_request.rb +242 -245
  65. data/lib/proton_api/models/goal_decumulation_status_request.rb +242 -245
  66. data/lib/proton_api/models/goal_withdrawal_config.rb +82 -85
  67. data/lib/proton_api/models/guaranteed_rate_benefit.rb +51 -54
  68. data/lib/proton_api/models/income_config.rb +37 -40
  69. data/lib/proton_api/models/life_insurance_needs_calculator_request.rb +152 -155
  70. data/lib/proton_api/models/location.rb +183 -0
  71. data/lib/proton_api/models/monte_carlo_request.rb +157 -160
  72. data/lib/proton_api/models/mortgage_calculator_down_payment_request.rb +46 -49
  73. data/lib/proton_api/models/mortgage_calculator_home_price_request.rb +46 -49
  74. data/lib/proton_api/models/mortgage_calculator_periodic_payment_request.rb +71 -74
  75. data/lib/proton_api/models/mvo_request.rb +88 -91
  76. data/lib/proton_api/models/opt_config.rb +54 -57
  77. data/lib/proton_api/models/opt_config1.rb +29 -32
  78. data/lib/proton_api/models/order_rebalance_request.rb +398 -0
  79. data/lib/proton_api/models/performance_calculator_request.rb +687 -0
  80. data/lib/proton_api/models/periods.rb +7 -10
  81. data/lib/proton_api/models/portfolio_optimization_score_request.rb +68 -71
  82. data/lib/proton_api/models/portfolio_what_if_request.rb +71 -74
  83. data/lib/proton_api/models/purchase_calculator_amount_request.rb +112 -115
  84. data/lib/proton_api/models/purchase_calculator_deposit_amount_request.rb +136 -139
  85. data/lib/proton_api/models/purchase_calculator_horizon_request.rb +100 -103
  86. data/lib/proton_api/models/ratio_targets.rb +79 -82
  87. data/lib/proton_api/models/ratio_targets1.rb +38 -41
  88. data/lib/proton_api/models/rebalancing_signal_request.rb +26 -29
  89. data/lib/proton_api/models/recommendation_config.rb +104 -107
  90. data/lib/proton_api/models/recommendation_config1.rb +100 -103
  91. data/lib/proton_api/models/recurring_transaction_analysis_request.rb +106 -76
  92. data/lib/proton_api/models/retirement_calculator_deposit_amount_request.rb +148 -151
  93. data/lib/proton_api/models/retirement_calculator_expenses_request.rb +119 -122
  94. data/lib/proton_api/models/retirement_calculator_percent_covered_request.rb +132 -135
  95. data/lib/proton_api/models/risk_allocation_request.rb +53 -56
  96. data/lib/proton_api/models/risk_score_request.rb +37 -40
  97. data/lib/proton_api/models/savings_calculator_request.rb +100 -103
  98. data/lib/proton_api/models/savings_deposit_schedule.rb +22 -25
  99. data/lib/proton_api/models/scenario_analysis_request.rb +81 -84
  100. data/lib/proton_api/models/sensitivity_analysis_request.rb +77 -80
  101. data/lib/proton_api/models/sensitivity_factor.rb +58 -61
  102. data/lib/proton_api/models/settings.rb +38 -41
  103. data/lib/proton_api/models/spending_analysis_request.rb +505 -0
  104. data/lib/proton_api/models/variable_annuity_request.rb +284 -287
  105. data/lib/proton_api/models/w_config.rb +77 -80
  106. data/lib/proton_api/models/w_config1.rb +66 -69
  107. data/lib/proton_api/version.rb +3 -3
  108. data/proton_api.gemspec +2 -2
  109. data/spec/api/annuities_api_spec.rb +2 -2
  110. data/spec/api/business_financial_management_api_spec.rb +2 -2
  111. data/spec/api/cards_api_spec.rb +14 -2
  112. data/spec/api/financial_health_api_spec.rb +2 -2
  113. data/spec/api/financial_planning_api_spec.rb +2 -2
  114. data/spec/api/goals_api_spec.rb +2 -2
  115. data/spec/api/life_insurance_api_spec.rb +2 -2
  116. data/spec/api/personal_financial_management_api_spec.rb +14 -2
  117. data/spec/api/portfolio_construction_api_spec.rb +2 -2
  118. data/spec/api/portfolio_management_api_spec.rb +2 -2
  119. data/spec/api/risk_scoring_api_spec.rb +2 -2
  120. data/spec/api/simulations_api_spec.rb +2 -2
  121. data/spec/api/util_api_spec.rb +71 -0
  122. data/spec/api_client_spec.rb +2 -2
  123. data/spec/configuration_spec.rb +5 -5
  124. data/spec/models/accumulation_goal_deposit_config_spec.rb +10 -10
  125. data/spec/models/annuity_calculator_accumulation_horizon_request_spec.rb +17 -17
  126. data/spec/models/annuity_calculator_annuity_amount_request_spec.rb +17 -17
  127. data/spec/models/annuity_calculator_decumulation_horizon_request_spec.rb +17 -17
  128. data/spec/models/annuity_calculator_deposit_amount_request_spec.rb +17 -17
  129. data/spec/models/annuity_calculator_initial_balance_request_spec.rb +17 -17
  130. data/spec/models/annuity_deposit_schedule_spec.rb +4 -4
  131. data/spec/models/answer_spec.rb +41 -0
  132. data/spec/models/backtest_request_spec.rb +10 -10
  133. data/spec/models/beneficiary_bequest_config_spec.rb +4 -4
  134. data/spec/models/budget_aggregation_account_spec.rb +2 -2
  135. data/spec/models/budget_calculator_request_spec.rb +25 -13
  136. data/spec/models/budget_component_spec.rb +4 -4
  137. data/spec/models/budget_details_spec.rb +15 -15
  138. data/spec/models/business_financial_health_check_request_spec.rb +34 -28
  139. data/spec/models/business_invoice_analysis_request_spec.rb +18 -12
  140. data/spec/models/calculator_deposit_schedule1_spec.rb +4 -4
  141. data/spec/models/calculator_deposit_schedule_spec.rb +8 -8
  142. data/spec/models/card_analysis_request_spec.rb +129 -0
  143. data/spec/models/card_limit_check_request_spec.rb +20 -2
  144. data/spec/models/card_transaction_authorization_request_spec.rb +57 -15
  145. data/spec/models/cash_analysis_request_spec.rb +25 -13
  146. data/spec/models/cash_flow_analysis_request_spec.rb +34 -16
  147. data/spec/models/children_education_config_spec.rb +2 -2
  148. data/spec/models/customer_analysis_request_spec.rb +15 -9
  149. data/spec/models/decision_tree_result_request_spec.rb +51 -0
  150. data/spec/models/decumulation_goal_deposit_config_spec.rb +10 -10
  151. data/spec/models/dimensional_risk_score_request_spec.rb +8 -8
  152. data/spec/models/diversification_score_request_spec.rb +14 -14
  153. data/spec/models/education_calculator_annual_cost_request_spec.rb +13 -13
  154. data/spec/models/education_calculator_deposit_amount_request_spec.rb +13 -13
  155. data/spec/models/education_calculator_percent_covered_request_spec.rb +12 -12
  156. data/spec/models/education_config_spec.rb +5 -5
  157. data/spec/models/emergency_fund_calculator_request_spec.rb +23 -23
  158. data/spec/models/event_study_request_spec.rb +17 -17
  159. data/spec/models/fee_analysis_request_spec.rb +12 -6
  160. data/spec/models/financial_health_check_request_spec.rb +12 -12
  161. data/spec/models/financial_picture_request_spec.rb +15 -9
  162. data/spec/models/financial_statement_analysis_request_spec.rb +39 -33
  163. data/spec/models/goal_accumulation_allocation_request_spec.rb +48 -48
  164. data/spec/models/goal_accumulation_recommendation_request_spec.rb +34 -34
  165. data/spec/models/goal_accumulation_status_request_spec.rb +34 -34
  166. data/spec/models/goal_config_spec.rb +4 -4
  167. data/spec/models/goal_decumulation_allocation_request_spec.rb +51 -51
  168. data/spec/models/goal_decumulation_recommendation_request_spec.rb +35 -35
  169. data/spec/models/goal_decumulation_status_request_spec.rb +35 -35
  170. data/spec/models/goal_withdrawal_config_spec.rb +20 -20
  171. data/spec/models/guaranteed_rate_benefit_spec.rb +5 -5
  172. data/spec/models/income_config_spec.rb +4 -4
  173. data/spec/models/life_insurance_needs_calculator_request_spec.rb +16 -16
  174. data/spec/models/location_spec.rb +41 -0
  175. data/spec/models/monte_carlo_request_spec.rb +31 -31
  176. data/spec/models/mortgage_calculator_down_payment_request_spec.rb +6 -6
  177. data/spec/models/mortgage_calculator_home_price_request_spec.rb +6 -6
  178. data/spec/models/mortgage_calculator_periodic_payment_request_spec.rb +6 -6
  179. data/spec/models/mvo_request_spec.rb +23 -23
  180. data/spec/models/opt_config1_spec.rb +10 -10
  181. data/spec/models/opt_config_spec.rb +13 -13
  182. data/spec/models/order_rebalance_request_spec.rb +123 -0
  183. data/spec/models/performance_calculator_request_spec.rb +233 -0
  184. data/spec/models/periods_spec.rb +2 -2
  185. data/spec/models/portfolio_optimization_score_request_spec.rb +16 -16
  186. data/spec/models/portfolio_what_if_request_spec.rb +16 -16
  187. data/spec/models/purchase_calculator_amount_request_spec.rb +14 -14
  188. data/spec/models/purchase_calculator_deposit_amount_request_spec.rb +16 -16
  189. data/spec/models/purchase_calculator_horizon_request_spec.rb +10 -10
  190. data/spec/models/ratio_targets1_spec.rb +4 -4
  191. data/spec/models/ratio_targets_spec.rb +8 -8
  192. data/spec/models/rebalancing_signal_request_spec.rb +6 -6
  193. data/spec/models/recommendation_config1_spec.rb +9 -9
  194. data/spec/models/recommendation_config_spec.rb +9 -9
  195. data/spec/models/recurring_transaction_analysis_request_spec.rb +33 -15
  196. data/spec/models/retirement_calculator_deposit_amount_request_spec.rb +13 -13
  197. data/spec/models/retirement_calculator_expenses_request_spec.rb +12 -12
  198. data/spec/models/retirement_calculator_percent_covered_request_spec.rb +12 -12
  199. data/spec/models/risk_allocation_request_spec.rb +15 -15
  200. data/spec/models/risk_score_request_spec.rb +8 -8
  201. data/spec/models/savings_calculator_request_spec.rb +16 -16
  202. data/spec/models/savings_deposit_schedule_spec.rb +8 -8
  203. data/spec/models/scenario_analysis_request_spec.rb +19 -19
  204. data/spec/models/sensitivity_analysis_request_spec.rb +23 -23
  205. data/spec/models/sensitivity_factor_spec.rb +6 -6
  206. data/spec/models/settings_spec.rb +13 -13
  207. data/spec/models/spending_analysis_request_spec.rb +187 -0
  208. data/spec/models/variable_annuity_request_spec.rb +40 -40
  209. data/spec/models/w_config1_spec.rb +6 -6
  210. data/spec/models/w_config_spec.rb +7 -7
  211. data/spec/spec_helper.rb +2 -2
  212. metadata +26 -94
  213. data/docs/AccumulationGoalDepositConfig.md +0 -14
  214. data/docs/AnnuitiesApi.md +0 -344
  215. data/docs/AnnuityCalculatorAccumulationHorizonRequest.md +0 -19
  216. data/docs/AnnuityCalculatorAnnuityAmountRequest.md +0 -19
  217. data/docs/AnnuityCalculatorDecumulationHorizonRequest.md +0 -19
  218. data/docs/AnnuityCalculatorDepositAmountRequest.md +0 -19
  219. data/docs/AnnuityCalculatorInitialBalanceRequest.md +0 -19
  220. data/docs/AnnuityDepositSchedule.md +0 -10
  221. data/docs/BacktestRequest.md +0 -17
  222. data/docs/BeneficiaryBequestConfig.md +0 -10
  223. data/docs/BudgetAggregationAccount.md +0 -8
  224. data/docs/BudgetCalculatorRequest.md +0 -16
  225. data/docs/BudgetComponent.md +0 -10
  226. data/docs/BudgetDetails.md +0 -17
  227. data/docs/BusinessFinancialHealthCheckRequest.md +0 -22
  228. data/docs/BusinessFinancialManagementApi.md +0 -288
  229. data/docs/BusinessInvoiceAnalysisRequest.md +0 -20
  230. data/docs/CalculatorDepositSchedule.md +0 -9
  231. data/docs/CalculatorDepositSchedule1.md +0 -10
  232. data/docs/CardLimitCheckRequest.md +0 -9
  233. data/docs/CardTransactionAuthorizationRequest.md +0 -19
  234. data/docs/CardsApi.md +0 -120
  235. data/docs/CashAnalysisRequest.md +0 -17
  236. data/docs/CashFlowAnalysisRequest.md +0 -20
  237. data/docs/ChildrenEducationConfig.md +0 -9
  238. data/docs/CustomerAnalysisRequest.md +0 -17
  239. data/docs/DecumulationGoalDepositConfig.md +0 -14
  240. data/docs/DimensionalRiskScoreRequest.md +0 -16
  241. data/docs/DiversificationScoreRequest.md +0 -19
  242. data/docs/EducationCalculatorAnnualCostRequest.md +0 -18
  243. data/docs/EducationCalculatorDepositAmountRequest.md +0 -19
  244. data/docs/EducationCalculatorPercentCoveredRequest.md +0 -18
  245. data/docs/EducationConfig.md +0 -10
  246. data/docs/EmergencyFundCalculatorRequest.md +0 -24
  247. data/docs/EventStudyRequest.md +0 -18
  248. data/docs/FeeAnalysisRequest.md +0 -13
  249. data/docs/FinancialHealthApi.md +0 -232
  250. data/docs/FinancialHealthCheckRequest.md +0 -17
  251. data/docs/FinancialPictureRequest.md +0 -16
  252. data/docs/FinancialPlanningApi.md +0 -680
  253. data/docs/FinancialStatementAnalysisRequest.md +0 -22
  254. data/docs/GoalAccumulationAllocationRequest.md +0 -33
  255. data/docs/GoalAccumulationRecommendationRequest.md +0 -28
  256. data/docs/GoalAccumulationStatusRequest.md +0 -28
  257. data/docs/GoalConfig.md +0 -9
  258. data/docs/GoalDecumulationAllocationRequest.md +0 -34
  259. data/docs/GoalDecumulationRecommendationRequest.md +0 -29
  260. data/docs/GoalDecumulationStatusRequest.md +0 -29
  261. data/docs/GoalWithdrawalConfig.md +0 -14
  262. data/docs/GoalsApi.md +0 -344
  263. data/docs/GuaranteedRateBenefit.md +0 -11
  264. data/docs/IncomeConfig.md +0 -10
  265. data/docs/LifeInsuranceApi.md +0 -64
  266. data/docs/LifeInsuranceNeedsCalculatorRequest.md +0 -22
  267. data/docs/MonteCarloRequest.md +0 -29
  268. data/docs/MortgageCalculatorDownPaymentRequest.md +0 -11
  269. data/docs/MortgageCalculatorHomePriceRequest.md +0 -11
  270. data/docs/MortgageCalculatorPeriodicPaymentRequest.md +0 -11
  271. data/docs/MvoRequest.md +0 -18
  272. data/docs/OptConfig.md +0 -14
  273. data/docs/OptConfig1.md +0 -12
  274. data/docs/Periods.md +0 -9
  275. data/docs/PersonalFinancialManagementApi.md +0 -288
  276. data/docs/PortfolioConstructionApi.md +0 -64
  277. data/docs/PortfolioManagementApi.md +0 -64
  278. data/docs/PortfolioOptimizationScoreRequest.md +0 -21
  279. data/docs/PortfolioWhatIfRequest.md +0 -21
  280. data/docs/PurchaseCalculatorAmountRequest.md +0 -16
  281. data/docs/PurchaseCalculatorDepositAmountRequest.md +0 -17
  282. data/docs/PurchaseCalculatorHorizonRequest.md +0 -15
  283. data/docs/RatioTargets.md +0 -13
  284. data/docs/RatioTargets1.md +0 -13
  285. data/docs/RebalancingSignalRequest.md +0 -13
  286. data/docs/RecommendationConfig.md +0 -15
  287. data/docs/RecommendationConfig1.md +0 -14
  288. data/docs/RecurringTransactionAnalysisRequest.md +0 -19
  289. data/docs/RetirementCalculatorDepositAmountRequest.md +0 -20
  290. data/docs/RetirementCalculatorExpensesRequest.md +0 -19
  291. data/docs/RetirementCalculatorPercentCoveredRequest.md +0 -19
  292. data/docs/RiskAllocationRequest.md +0 -14
  293. data/docs/RiskScoreRequest.md +0 -13
  294. data/docs/RiskScoringApi.md +0 -176
  295. data/docs/SavingsCalculatorRequest.md +0 -17
  296. data/docs/SavingsDepositSchedule.md +0 -11
  297. data/docs/ScenarioAnalysisRequest.md +0 -22
  298. data/docs/SensitivityAnalysisRequest.md +0 -22
  299. data/docs/SensitivityFactor.md +0 -11
  300. data/docs/Settings.md +0 -13
  301. data/docs/SimulationsApi.md +0 -400
  302. data/docs/VariableAnnuityRequest.md +0 -34
  303. data/docs/WConfig.md +0 -12
  304. data/docs/WConfig1.md +0 -12
@@ -3,10 +3,10 @@
3
3
 
4
4
  #Financial engineering module of Hydrogen Atom
5
5
 
6
- OpenAPI spec version: 1.8.0
6
+ OpenAPI spec version: 1.9.0
7
7
  Contact: info@hydrogenplatform.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.17
9
+ Swagger Codegen version: 2.4.19
10
10
 
11
11
  =end
12
12
 
@@ -14,23 +14,23 @@ require 'date'
14
14
 
15
15
  module ProtonApi
16
16
  class GoalConfig
17
- attr_accessor :goal_inflation
18
-
19
17
  attr_accessor :goal_amount
20
18
 
19
+ attr_accessor :goal_inflation
20
+
21
21
  # Attribute mapping from ruby-style variable name to JSON key.
22
22
  def self.attribute_map
23
23
  {
24
- :'goal_inflation' => :'goal_inflation',
25
- :'goal_amount' => :'goal_amount'
24
+ :'goal_amount' => :'goal_amount',
25
+ :'goal_inflation' => :'goal_inflation'
26
26
  }
27
27
  end
28
28
 
29
29
  # Attribute type mapping.
30
30
  def self.swagger_types
31
31
  {
32
- :'goal_inflation' => :'Float',
33
- :'goal_amount' => :'Float'
32
+ :'goal_amount' => :'Float',
33
+ :'goal_inflation' => :'Float'
34
34
  }
35
35
  end
36
36
 
@@ -42,50 +42,40 @@ module ProtonApi
42
42
  # convert string to symbol for hash key
43
43
  attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
44
44
 
45
+ if attributes.has_key?(:'goal_amount')
46
+ self.goal_amount = attributes[:'goal_amount']
47
+ end
48
+
45
49
  if attributes.has_key?(:'goal_inflation')
46
50
  self.goal_inflation = attributes[:'goal_inflation']
47
51
  else
48
52
  self.goal_inflation = 0.0
49
53
  end
50
-
51
- if attributes.has_key?(:'goal_amount')
52
- self.goal_amount = attributes[:'goal_amount']
53
- end
54
54
  end
55
55
 
56
56
  # Show invalid properties with the reasons. Usually used together with valid?
57
57
  # @return Array for valid properties with the reasons
58
58
  def list_invalid_properties
59
59
  invalid_properties = Array.new
60
- if !@goal_inflation.nil? && @goal_inflation < -1
61
- invalid_properties.push('invalid value for "goal_inflation", must be greater than or equal to -1.')
62
- end
63
-
64
60
  if !@goal_amount.nil? && @goal_amount < 0
65
61
  invalid_properties.push('invalid value for "goal_amount", must be greater than or equal to 0.')
66
62
  end
67
63
 
64
+ if !@goal_inflation.nil? && @goal_inflation < -1
65
+ invalid_properties.push('invalid value for "goal_inflation", must be greater than or equal to -1.')
66
+ end
67
+
68
68
  invalid_properties
69
69
  end
70
70
 
71
71
  # Check to see if the all the properties in the model are valid
72
72
  # @return true if the model is valid
73
73
  def valid?
74
- return false if !@goal_inflation.nil? && @goal_inflation < -1
75
74
  return false if !@goal_amount.nil? && @goal_amount < 0
75
+ return false if !@goal_inflation.nil? && @goal_inflation < -1
76
76
  true
77
77
  end
78
78
 
79
- # Custom attribute writer method with validation
80
- # @param [Object] goal_inflation Value to be assigned
81
- def goal_inflation=(goal_inflation)
82
- if !goal_inflation.nil? && goal_inflation < -1
83
- fail ArgumentError, 'invalid value for "goal_inflation", must be greater than or equal to -1.'
84
- end
85
-
86
- @goal_inflation = goal_inflation
87
- end
88
-
89
79
  # Custom attribute writer method with validation
90
80
  # @param [Object] goal_amount Value to be assigned
91
81
  def goal_amount=(goal_amount)
@@ -96,13 +86,23 @@ module ProtonApi
96
86
  @goal_amount = goal_amount
97
87
  end
98
88
 
89
+ # Custom attribute writer method with validation
90
+ # @param [Object] goal_inflation Value to be assigned
91
+ def goal_inflation=(goal_inflation)
92
+ if !goal_inflation.nil? && goal_inflation < -1
93
+ fail ArgumentError, 'invalid value for "goal_inflation", must be greater than or equal to -1.'
94
+ end
95
+
96
+ @goal_inflation = goal_inflation
97
+ end
98
+
99
99
  # Checks equality by comparing each attribute.
100
100
  # @param [Object] Object to be compared
101
101
  def ==(o)
102
102
  return true if self.equal?(o)
103
103
  self.class == o.class &&
104
- goal_inflation == o.goal_inflation &&
105
- goal_amount == o.goal_amount
104
+ goal_amount == o.goal_amount &&
105
+ goal_inflation == o.goal_inflation
106
106
  end
107
107
 
108
108
  # @see the `==` method
@@ -114,7 +114,7 @@ module ProtonApi
114
114
  # Calculates hash code according to all attributes.
115
115
  # @return [Fixnum] Hash code
116
116
  def hash
117
- [goal_inflation, goal_amount].hash
117
+ [goal_amount, goal_inflation].hash
118
118
  end
119
119
 
120
120
  # Builds the object from hash
@@ -136,17 +136,16 @@ module ProtonApi
136
136
 
137
137
  self
138
138
  end
139
-
140
- # Deserializes the data based on type
139
+ # Deserializes the data based on type
141
140
  # @param string type Data type
142
141
  # @param string value Value to be deserialized
143
142
  # @return [Object] Deserialized data
144
143
  def _deserialize(type, value)
145
144
  case type.to_sym
146
145
  when :DateTime
147
- DateTime.parse(value)
146
+ value
148
147
  when :Date
149
- Date.parse(value)
148
+ value
150
149
  when :String
151
150
  value.to_s
152
151
  when :Integer
@@ -178,8 +177,7 @@ module ProtonApi
178
177
  temp_model.build_from_hash(value)
179
178
  end
180
179
  end
181
-
182
- # Returns the string representation of the object
180
+ # Returns the string representation of the object
183
181
  # @return [String] String presentation of the object
184
182
  def to_s
185
183
  to_hash.to_s
@@ -202,8 +200,7 @@ module ProtonApi
202
200
  end
203
201
  hash
204
202
  end
205
-
206
- # Outputs non-array value in the form of hash
203
+ # Outputs non-array value in the form of hash
207
204
  # For object, use to_hash. Otherwise, just return the value
208
205
  # @param [Object] value Any valid value
209
206
  # @return [Hash] Returns the value in the form of hash
@@ -3,10 +3,10 @@
3
3
 
4
4
  #Financial engineering module of Hydrogen Atom
5
5
 
6
- OpenAPI spec version: 1.8.0
6
+ OpenAPI spec version: 1.9.0
7
7
  Contact: info@hydrogenplatform.com
8
8
  Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 2.4.17
9
+ Swagger Codegen version: 2.4.19
10
10
 
11
11
  =end
12
12
 
@@ -14,59 +14,59 @@ require 'date'
14
14
 
15
15
  module ProtonApi
16
16
  class GoalDecumulationAllocationRequest
17
- attr_accessor :thresh_type
18
-
19
- attr_accessor :goal_id
20
-
21
- attr_accessor :client_id
17
+ attr_accessor :recommendation_config
22
18
 
23
- attr_accessor :conf_tgt
19
+ attr_accessor :compounding_rate
24
20
 
25
21
  attr_accessor :risk_score
26
22
 
27
- attr_accessor :remove_outliers
23
+ attr_accessor :recommend_type
28
24
 
29
- attr_accessor :allocation_priority
25
+ attr_accessor :create_log
26
+
27
+ attr_accessor :n
30
28
 
31
29
  attr_accessor :a_horizon
32
30
 
33
- attr_accessor :withdrawal_config
31
+ attr_accessor :allocation_method
34
32
 
35
- attr_accessor :market_data_source
33
+ attr_accessor :allocation_priority
36
34
 
37
- attr_accessor :compounding_rate
35
+ attr_accessor :remove_outliers
38
36
 
39
37
  attr_accessor :adjust_for_compounding
40
38
 
41
- attr_accessor :opt_config
39
+ attr_accessor :goal_id
42
40
 
43
- attr_accessor :deposit_config
41
+ attr_accessor :conf_tgt
42
+
43
+ attr_accessor :trading_days_per_year
44
44
 
45
45
  attr_accessor :use_proxy_data
46
46
 
47
47
  attr_accessor :thresh
48
48
 
49
- attr_accessor :horizon_frequency
49
+ attr_accessor :withdrawal_tax
50
50
 
51
- attr_accessor :recommendation_config
51
+ attr_accessor :d_horizon
52
52
 
53
- attr_accessor :create_log
53
+ attr_accessor :client_id
54
54
 
55
- attr_accessor :withdrawal_tax
55
+ attr_accessor :opt_config
56
56
 
57
- attr_accessor :trading_days_per_year
57
+ attr_accessor :market_data_source
58
58
 
59
- attr_accessor :allocations
59
+ attr_accessor :thresh_type
60
60
 
61
- attr_accessor :n
61
+ attr_accessor :horizon_frequency
62
62
 
63
- attr_accessor :d_horizon
63
+ attr_accessor :withdrawal_config
64
64
 
65
- attr_accessor :curr_inv
65
+ attr_accessor :allocations
66
66
 
67
- attr_accessor :recommend_type
67
+ attr_accessor :curr_inv
68
68
 
69
- attr_accessor :allocation_method
69
+ attr_accessor :deposit_config
70
70
 
71
71
  class EnumAttributeValidator
72
72
  attr_reader :datatype
@@ -93,66 +93,66 @@ module ProtonApi
93
93
  # Attribute mapping from ruby-style variable name to JSON key.
94
94
  def self.attribute_map
95
95
  {
96
- :'thresh_type' => :'thresh_type',
97
- :'goal_id' => :'goal_id',
98
- :'client_id' => :'client_id',
99
- :'conf_tgt' => :'conf_tgt',
96
+ :'recommendation_config' => :'recommendation_config',
97
+ :'compounding_rate' => :'compounding_rate',
100
98
  :'risk_score' => :'risk_score',
101
- :'remove_outliers' => :'remove_outliers',
102
- :'allocation_priority' => :'allocation_priority',
99
+ :'recommend_type' => :'recommend_type',
100
+ :'create_log' => :'create_log',
101
+ :'n' => :'n',
103
102
  :'a_horizon' => :'a_horizon',
104
- :'withdrawal_config' => :'withdrawal_config',
105
- :'market_data_source' => :'market_data_source',
106
- :'compounding_rate' => :'compounding_rate',
103
+ :'allocation_method' => :'allocation_method',
104
+ :'allocation_priority' => :'allocation_priority',
105
+ :'remove_outliers' => :'remove_outliers',
107
106
  :'adjust_for_compounding' => :'adjust_for_compounding',
108
- :'opt_config' => :'opt_config',
109
- :'deposit_config' => :'deposit_config',
107
+ :'goal_id' => :'goal_id',
108
+ :'conf_tgt' => :'conf_tgt',
109
+ :'trading_days_per_year' => :'trading_days_per_year',
110
110
  :'use_proxy_data' => :'use_proxy_data',
111
111
  :'thresh' => :'thresh',
112
- :'horizon_frequency' => :'horizon_frequency',
113
- :'recommendation_config' => :'recommendation_config',
114
- :'create_log' => :'create_log',
115
112
  :'withdrawal_tax' => :'withdrawal_tax',
116
- :'trading_days_per_year' => :'trading_days_per_year',
117
- :'allocations' => :'allocations',
118
- :'n' => :'n',
119
113
  :'d_horizon' => :'d_horizon',
114
+ :'client_id' => :'client_id',
115
+ :'opt_config' => :'opt_config',
116
+ :'market_data_source' => :'market_data_source',
117
+ :'thresh_type' => :'thresh_type',
118
+ :'horizon_frequency' => :'horizon_frequency',
119
+ :'withdrawal_config' => :'withdrawal_config',
120
+ :'allocations' => :'allocations',
120
121
  :'curr_inv' => :'curr_inv',
121
- :'recommend_type' => :'recommend_type',
122
- :'allocation_method' => :'allocation_method'
122
+ :'deposit_config' => :'deposit_config'
123
123
  }
124
124
  end
125
125
 
126
126
  # Attribute type mapping.
127
127
  def self.swagger_types
128
128
  {
129
- :'thresh_type' => :'String',
130
- :'goal_id' => :'String',
131
- :'client_id' => :'String',
132
- :'conf_tgt' => :'Float',
129
+ :'recommendation_config' => :'RecommendationConfig',
130
+ :'compounding_rate' => :'Float',
133
131
  :'risk_score' => :'Float',
134
- :'remove_outliers' => :'BOOLEAN',
135
- :'allocation_priority' => :'String',
132
+ :'recommend_type' => :'String',
133
+ :'create_log' => :'BOOLEAN',
134
+ :'n' => :'Integer',
136
135
  :'a_horizon' => :'Integer',
137
- :'withdrawal_config' => :'Array<GoalWithdrawalConfig>',
138
- :'market_data_source' => :'String',
139
- :'compounding_rate' => :'Float',
136
+ :'allocation_method' => :'String',
137
+ :'allocation_priority' => :'String',
138
+ :'remove_outliers' => :'BOOLEAN',
140
139
  :'adjust_for_compounding' => :'BOOLEAN',
141
- :'opt_config' => :'OptConfig',
142
- :'deposit_config' => :'Array<DecumulationGoalDepositConfig>',
140
+ :'goal_id' => :'String',
141
+ :'conf_tgt' => :'Float',
142
+ :'trading_days_per_year' => :'Integer',
143
143
  :'use_proxy_data' => :'BOOLEAN',
144
144
  :'thresh' => :'Float',
145
- :'horizon_frequency' => :'String',
146
- :'recommendation_config' => :'RecommendationConfig',
147
- :'create_log' => :'BOOLEAN',
148
145
  :'withdrawal_tax' => :'Float',
149
- :'trading_days_per_year' => :'Integer',
150
- :'allocations' => :'Array<String>',
151
- :'n' => :'Integer',
152
146
  :'d_horizon' => :'Integer',
147
+ :'client_id' => :'String',
148
+ :'opt_config' => :'OptConfig',
149
+ :'market_data_source' => :'String',
150
+ :'thresh_type' => :'String',
151
+ :'horizon_frequency' => :'String',
152
+ :'withdrawal_config' => :'Array<GoalWithdrawalConfig>',
153
+ :'allocations' => :'Array<String>',
153
154
  :'curr_inv' => :'Float',
154
- :'recommend_type' => :'String',
155
- :'allocation_method' => :'String'
155
+ :'deposit_config' => :'Array<DecumulationGoalDepositConfig>'
156
156
  }
157
157
  end
158
158
 
@@ -164,60 +164,54 @@ module ProtonApi
164
164
  # convert string to symbol for hash key
165
165
  attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
166
166
 
167
- if attributes.has_key?(:'thresh_type')
168
- self.thresh_type = attributes[:'thresh_type']
169
- else
170
- self.thresh_type = 'perc'
171
- end
172
-
173
- if attributes.has_key?(:'goal_id')
174
- self.goal_id = attributes[:'goal_id']
175
- end
176
-
177
- if attributes.has_key?(:'client_id')
178
- self.client_id = attributes[:'client_id']
167
+ if attributes.has_key?(:'recommendation_config')
168
+ self.recommendation_config = attributes[:'recommendation_config']
179
169
  end
180
170
 
181
- if attributes.has_key?(:'conf_tgt')
182
- self.conf_tgt = attributes[:'conf_tgt']
171
+ if attributes.has_key?(:'compounding_rate')
172
+ self.compounding_rate = attributes[:'compounding_rate']
183
173
  else
184
- self.conf_tgt = 0.9
174
+ self.compounding_rate = 0.0
185
175
  end
186
176
 
187
177
  if attributes.has_key?(:'risk_score')
188
178
  self.risk_score = attributes[:'risk_score']
189
179
  end
190
180
 
191
- if attributes.has_key?(:'remove_outliers')
192
- self.remove_outliers = attributes[:'remove_outliers']
181
+ if attributes.has_key?(:'recommend_type')
182
+ self.recommend_type = attributes[:'recommend_type']
193
183
  else
194
- self.remove_outliers = true
184
+ self.recommend_type = 'horizon'
195
185
  end
196
186
 
197
- if attributes.has_key?(:'allocation_priority')
198
- self.allocation_priority = attributes[:'allocation_priority']
187
+ if attributes.has_key?(:'create_log')
188
+ self.create_log = attributes[:'create_log']
189
+ else
190
+ self.create_log = false
191
+ end
192
+
193
+ if attributes.has_key?(:'n')
194
+ self.n = attributes[:'n']
195
+ else
196
+ self.n = 1000
199
197
  end
200
198
 
201
199
  if attributes.has_key?(:'a_horizon')
202
200
  self.a_horizon = attributes[:'a_horizon']
203
201
  end
204
202
 
205
- if attributes.has_key?(:'withdrawal_config')
206
- if (value = attributes[:'withdrawal_config']).is_a?(Array)
207
- self.withdrawal_config = value
208
- end
203
+ if attributes.has_key?(:'allocation_method')
204
+ self.allocation_method = attributes[:'allocation_method']
209
205
  end
210
206
 
211
- if attributes.has_key?(:'market_data_source')
212
- self.market_data_source = attributes[:'market_data_source']
213
- else
214
- self.market_data_source = 'nucleus'
207
+ if attributes.has_key?(:'allocation_priority')
208
+ self.allocation_priority = attributes[:'allocation_priority']
215
209
  end
216
210
 
217
- if attributes.has_key?(:'compounding_rate')
218
- self.compounding_rate = attributes[:'compounding_rate']
211
+ if attributes.has_key?(:'remove_outliers')
212
+ self.remove_outliers = attributes[:'remove_outliers']
219
213
  else
220
- self.compounding_rate = 0.0
214
+ self.remove_outliers = true
221
215
  end
222
216
 
223
217
  if attributes.has_key?(:'adjust_for_compounding')
@@ -226,14 +220,20 @@ module ProtonApi
226
220
  self.adjust_for_compounding = false
227
221
  end
228
222
 
229
- if attributes.has_key?(:'opt_config')
230
- self.opt_config = attributes[:'opt_config']
223
+ if attributes.has_key?(:'goal_id')
224
+ self.goal_id = attributes[:'goal_id']
231
225
  end
232
226
 
233
- if attributes.has_key?(:'deposit_config')
234
- if (value = attributes[:'deposit_config']).is_a?(Array)
235
- self.deposit_config = value
236
- end
227
+ if attributes.has_key?(:'conf_tgt')
228
+ self.conf_tgt = attributes[:'conf_tgt']
229
+ else
230
+ self.conf_tgt = 0.9
231
+ end
232
+
233
+ if attributes.has_key?(:'trading_days_per_year')
234
+ self.trading_days_per_year = attributes[:'trading_days_per_year']
235
+ else
236
+ self.trading_days_per_year = 252
237
237
  end
238
238
 
239
239
  if attributes.has_key?(:'use_proxy_data')
@@ -246,32 +246,46 @@ module ProtonApi
246
246
  self.thresh = attributes[:'thresh']
247
247
  end
248
248
 
249
- if attributes.has_key?(:'horizon_frequency')
250
- self.horizon_frequency = attributes[:'horizon_frequency']
249
+ if attributes.has_key?(:'withdrawal_tax')
250
+ self.withdrawal_tax = attributes[:'withdrawal_tax']
251
251
  else
252
- self.horizon_frequency = 'year'
252
+ self.withdrawal_tax = 0.0
253
253
  end
254
254
 
255
- if attributes.has_key?(:'recommendation_config')
256
- self.recommendation_config = attributes[:'recommendation_config']
255
+ if attributes.has_key?(:'d_horizon')
256
+ self.d_horizon = attributes[:'d_horizon']
257
257
  end
258
258
 
259
- if attributes.has_key?(:'create_log')
260
- self.create_log = attributes[:'create_log']
259
+ if attributes.has_key?(:'client_id')
260
+ self.client_id = attributes[:'client_id']
261
+ end
262
+
263
+ if attributes.has_key?(:'opt_config')
264
+ self.opt_config = attributes[:'opt_config']
265
+ end
266
+
267
+ if attributes.has_key?(:'market_data_source')
268
+ self.market_data_source = attributes[:'market_data_source']
261
269
  else
262
- self.create_log = false
270
+ self.market_data_source = 'nucleus'
263
271
  end
264
272
 
265
- if attributes.has_key?(:'withdrawal_tax')
266
- self.withdrawal_tax = attributes[:'withdrawal_tax']
273
+ if attributes.has_key?(:'thresh_type')
274
+ self.thresh_type = attributes[:'thresh_type']
267
275
  else
268
- self.withdrawal_tax = 0.0
276
+ self.thresh_type = 'perc'
269
277
  end
270
278
 
271
- if attributes.has_key?(:'trading_days_per_year')
272
- self.trading_days_per_year = attributes[:'trading_days_per_year']
279
+ if attributes.has_key?(:'horizon_frequency')
280
+ self.horizon_frequency = attributes[:'horizon_frequency']
273
281
  else
274
- self.trading_days_per_year = 252
282
+ self.horizon_frequency = 'year'
283
+ end
284
+
285
+ if attributes.has_key?(:'withdrawal_config')
286
+ if (value = attributes[:'withdrawal_config']).is_a?(Array)
287
+ self.withdrawal_config = value
288
+ end
275
289
  end
276
290
 
277
291
  if attributes.has_key?(:'allocations')
@@ -280,28 +294,14 @@ module ProtonApi
280
294
  end
281
295
  end
282
296
 
283
- if attributes.has_key?(:'n')
284
- self.n = attributes[:'n']
285
- else
286
- self.n = 1000
287
- end
288
-
289
- if attributes.has_key?(:'d_horizon')
290
- self.d_horizon = attributes[:'d_horizon']
291
- end
292
-
293
297
  if attributes.has_key?(:'curr_inv')
294
298
  self.curr_inv = attributes[:'curr_inv']
295
299
  end
296
300
 
297
- if attributes.has_key?(:'recommend_type')
298
- self.recommend_type = attributes[:'recommend_type']
299
- else
300
- self.recommend_type = 'horizon'
301
- end
302
-
303
- if attributes.has_key?(:'allocation_method')
304
- self.allocation_method = attributes[:'allocation_method']
301
+ if attributes.has_key?(:'deposit_config')
302
+ if (value = attributes[:'deposit_config']).is_a?(Array)
303
+ self.deposit_config = value
304
+ end
305
305
  end
306
306
  end
307
307
 
@@ -309,12 +309,8 @@ module ProtonApi
309
309
  # @return Array for valid properties with the reasons
310
310
  def list_invalid_properties
311
311
  invalid_properties = Array.new
312
- if !@conf_tgt.nil? && @conf_tgt > 1
313
- invalid_properties.push('invalid value for "conf_tgt", must be smaller than or equal to 1.')
314
- end
315
-
316
- if !@conf_tgt.nil? && @conf_tgt < 0
317
- invalid_properties.push('invalid value for "conf_tgt", must be greater than or equal to 0.')
312
+ if !@compounding_rate.nil? && @compounding_rate < -1
313
+ invalid_properties.push('invalid value for "compounding_rate", must be greater than or equal to -1.')
318
314
  end
319
315
 
320
316
  if !@risk_score.nil? && @risk_score > 100
@@ -325,8 +321,12 @@ module ProtonApi
325
321
  invalid_properties.push('invalid value for "risk_score", must be greater than or equal to 0.')
326
322
  end
327
323
 
328
- if @allocation_priority.nil?
329
- invalid_properties.push('invalid value for "allocation_priority", allocation_priority cannot be nil.')
324
+ if !@n.nil? && @n > 10000
325
+ invalid_properties.push('invalid value for "n", must be smaller than or equal to 10000.')
326
+ end
327
+
328
+ if !@n.nil? && @n < 1
329
+ invalid_properties.push('invalid value for "n", must be greater than or equal to 1.')
330
330
  end
331
331
 
332
332
  if !@a_horizon.nil? && @a_horizon > 350
@@ -337,20 +337,20 @@ module ProtonApi
337
337
  invalid_properties.push('invalid value for "a_horizon", must be greater than or equal to 0.')
338
338
  end
339
339
 
340
- if !@compounding_rate.nil? && @compounding_rate < -1
341
- invalid_properties.push('invalid value for "compounding_rate", must be greater than or equal to -1.')
340
+ if @allocation_method.nil?
341
+ invalid_properties.push('invalid value for "allocation_method", allocation_method cannot be nil.')
342
342
  end
343
343
 
344
- if !@thresh.nil? && @thresh < 0
345
- invalid_properties.push('invalid value for "thresh", must be greater than or equal to 0.')
344
+ if @allocation_priority.nil?
345
+ invalid_properties.push('invalid value for "allocation_priority", allocation_priority cannot be nil.')
346
346
  end
347
347
 
348
- if !@withdrawal_tax.nil? && @withdrawal_tax > 1
349
- invalid_properties.push('invalid value for "withdrawal_tax", must be smaller than or equal to 1.')
348
+ if !@conf_tgt.nil? && @conf_tgt > 1
349
+ invalid_properties.push('invalid value for "conf_tgt", must be smaller than or equal to 1.')
350
350
  end
351
351
 
352
- if !@withdrawal_tax.nil? && @withdrawal_tax < 0
353
- invalid_properties.push('invalid value for "withdrawal_tax", must be greater than or equal to 0.')
352
+ if !@conf_tgt.nil? && @conf_tgt < 0
353
+ invalid_properties.push('invalid value for "conf_tgt", must be greater than or equal to 0.')
354
354
  end
355
355
 
356
356
  if !@trading_days_per_year.nil? && @trading_days_per_year > 365
@@ -361,12 +361,16 @@ module ProtonApi
361
361
  invalid_properties.push('invalid value for "trading_days_per_year", must be greater than or equal to 1.')
362
362
  end
363
363
 
364
- if !@n.nil? && @n > 10000
365
- invalid_properties.push('invalid value for "n", must be smaller than or equal to 10000.')
364
+ if !@thresh.nil? && @thresh < 0
365
+ invalid_properties.push('invalid value for "thresh", must be greater than or equal to 0.')
366
366
  end
367
367
 
368
- if !@n.nil? && @n < 1
369
- invalid_properties.push('invalid value for "n", must be greater than or equal to 1.')
368
+ if !@withdrawal_tax.nil? && @withdrawal_tax > 1
369
+ invalid_properties.push('invalid value for "withdrawal_tax", must be smaller than or equal to 1.')
370
+ end
371
+
372
+ if !@withdrawal_tax.nil? && @withdrawal_tax < 0
373
+ invalid_properties.push('invalid value for "withdrawal_tax", must be greater than or equal to 0.')
370
374
  end
371
375
 
372
376
  if !@d_horizon.nil? && @d_horizon > 350
@@ -381,72 +385,54 @@ module ProtonApi
381
385
  invalid_properties.push('invalid value for "curr_inv", must be greater than or equal to 0.')
382
386
  end
383
387
 
384
- if @allocation_method.nil?
385
- invalid_properties.push('invalid value for "allocation_method", allocation_method cannot be nil.')
386
- end
387
-
388
388
  invalid_properties
389
389
  end
390
390
 
391
391
  # Check to see if the all the properties in the model are valid
392
392
  # @return true if the model is valid
393
- def valid?
394
- thresh_type_validator = EnumAttributeValidator.new('String', ['amnt', 'perc'])
395
- return false unless thresh_type_validator.valid?(@thresh_type)
396
- return false if !@conf_tgt.nil? && @conf_tgt > 1
397
- return false if !@conf_tgt.nil? && @conf_tgt < 0
393
+ def valid?
394
+ return false if !@compounding_rate.nil? && @compounding_rate < -1
398
395
  return false if !@risk_score.nil? && @risk_score > 100
399
396
  return false if !@risk_score.nil? && @risk_score < 0
397
+ recommend_type_validator = EnumAttributeValidator.new('String', ['recurring', 'one-time', 'combo', 'horizon'])
398
+ return false unless recommend_type_validator.valid?(@recommend_type)
399
+ return false if !@n.nil? && @n > 10000
400
+ return false if !@n.nil? && @n < 1
401
+ return false if !@a_horizon.nil? && @a_horizon > 350
402
+ return false if !@a_horizon.nil? && @a_horizon < 0
403
+ return false if @allocation_method.nil?
404
+ allocation_method_validator = EnumAttributeValidator.new('String', ['select', 'create'])
405
+ return false unless allocation_method_validator.valid?(@allocation_method)
400
406
  return false if @allocation_priority.nil?
401
407
  allocation_priority_validator = EnumAttributeValidator.new('String', ['goal', 'risk'])
402
408
  return false unless allocation_priority_validator.valid?(@allocation_priority)
403
- return false if !@a_horizon.nil? && @a_horizon > 350
404
- return false if !@a_horizon.nil? && @a_horizon < 0
405
- market_data_source_validator = EnumAttributeValidator.new('String', ['nucleus', 'integration'])
406
- return false unless market_data_source_validator.valid?(@market_data_source)
407
- return false if !@compounding_rate.nil? && @compounding_rate < -1
409
+ return false if !@conf_tgt.nil? && @conf_tgt > 1
410
+ return false if !@conf_tgt.nil? && @conf_tgt < 0
411
+ return false if !@trading_days_per_year.nil? && @trading_days_per_year > 365
412
+ return false if !@trading_days_per_year.nil? && @trading_days_per_year < 1
408
413
  return false if !@thresh.nil? && @thresh < 0
409
- horizon_frequency_validator = EnumAttributeValidator.new('String', ['year', 'six_months', 'quarter', 'month', 'two_weeks', 'week', 'day'])
410
- return false unless horizon_frequency_validator.valid?(@horizon_frequency)
411
414
  return false if !@withdrawal_tax.nil? && @withdrawal_tax > 1
412
415
  return false if !@withdrawal_tax.nil? && @withdrawal_tax < 0
413
- return false if !@trading_days_per_year.nil? && @trading_days_per_year > 365
414
- return false if !@trading_days_per_year.nil? && @trading_days_per_year < 1
415
- return false if !@n.nil? && @n > 10000
416
- return false if !@n.nil? && @n < 1
417
416
  return false if !@d_horizon.nil? && @d_horizon > 350
418
417
  return false if !@d_horizon.nil? && @d_horizon < 0
418
+ market_data_source_validator = EnumAttributeValidator.new('String', ['nucleus', 'integration'])
419
+ return false unless market_data_source_validator.valid?(@market_data_source)
420
+ thresh_type_validator = EnumAttributeValidator.new('String', ['amnt', 'perc'])
421
+ return false unless thresh_type_validator.valid?(@thresh_type)
422
+ horizon_frequency_validator = EnumAttributeValidator.new('String', ['year', 'six_months', 'quarter', 'month', 'two_weeks', 'week', 'day'])
423
+ return false unless horizon_frequency_validator.valid?(@horizon_frequency)
419
424
  return false if !@curr_inv.nil? && @curr_inv < 0
420
- recommend_type_validator = EnumAttributeValidator.new('String', ['recurring', 'one-time', 'combo', 'horizon'])
421
- return false unless recommend_type_validator.valid?(@recommend_type)
422
- return false if @allocation_method.nil?
423
- allocation_method_validator = EnumAttributeValidator.new('String', ['select', 'create'])
424
- return false unless allocation_method_validator.valid?(@allocation_method)
425
425
  true
426
426
  end
427
427
 
428
- # Custom attribute writer method checking allowed values (enum).
429
- # @param [Object] thresh_type Object to be assigned
430
- def thresh_type=(thresh_type)
431
- validator = EnumAttributeValidator.new('String', ['amnt', 'perc'])
432
- unless validator.valid?(thresh_type)
433
- fail ArgumentError, 'invalid value for "thresh_type", must be one of #{validator.allowable_values}.'
434
- end
435
- @thresh_type = thresh_type
436
- end
437
-
438
428
  # Custom attribute writer method with validation
439
- # @param [Object] conf_tgt Value to be assigned
440
- def conf_tgt=(conf_tgt)
441
- if !conf_tgt.nil? && conf_tgt > 1
442
- fail ArgumentError, 'invalid value for "conf_tgt", must be smaller than or equal to 1.'
443
- end
444
-
445
- if !conf_tgt.nil? && conf_tgt < 0
446
- fail ArgumentError, 'invalid value for "conf_tgt", must be greater than or equal to 0.'
429
+ # @param [Object] compounding_rate Value to be assigned
430
+ def compounding_rate=(compounding_rate)
431
+ if !compounding_rate.nil? && compounding_rate < -1
432
+ fail ArgumentError, 'invalid value for "compounding_rate", must be greater than or equal to -1.'
447
433
  end
448
434
 
449
- @conf_tgt = conf_tgt
435
+ @compounding_rate = compounding_rate
450
436
  end
451
437
 
452
438
  # Custom attribute writer method with validation
@@ -464,13 +450,27 @@ module ProtonApi
464
450
  end
465
451
 
466
452
  # Custom attribute writer method checking allowed values (enum).
467
- # @param [Object] allocation_priority Object to be assigned
468
- def allocation_priority=(allocation_priority)
469
- validator = EnumAttributeValidator.new('String', ['goal', 'risk'])
470
- unless validator.valid?(allocation_priority)
471
- fail ArgumentError, 'invalid value for "allocation_priority", must be one of #{validator.allowable_values}.'
453
+ # @param [Object] recommend_type Object to be assigned
454
+ def recommend_type=(recommend_type)
455
+ validator = EnumAttributeValidator.new('String', ['recurring', 'one-time', 'combo', 'horizon'])
456
+ unless validator.valid?(recommend_type)
457
+ fail ArgumentError, 'invalid value for "recommend_type", must be one of #{validator.allowable_values}.'
472
458
  end
473
- @allocation_priority = allocation_priority
459
+ @recommend_type = recommend_type
460
+ end
461
+
462
+ # Custom attribute writer method with validation
463
+ # @param [Object] n Value to be assigned
464
+ def n=(n)
465
+ if !n.nil? && n > 10000
466
+ fail ArgumentError, 'invalid value for "n", must be smaller than or equal to 10000.'
467
+ end
468
+
469
+ if !n.nil? && n < 1
470
+ fail ArgumentError, 'invalid value for "n", must be greater than or equal to 1.'
471
+ end
472
+
473
+ @n = n
474
474
  end
475
475
 
476
476
  # Custom attribute writer method with validation
@@ -488,57 +488,37 @@ module ProtonApi
488
488
  end
489
489
 
490
490
  # Custom attribute writer method checking allowed values (enum).
491
- # @param [Object] market_data_source Object to be assigned
492
- def market_data_source=(market_data_source)
493
- validator = EnumAttributeValidator.new('String', ['nucleus', 'integration'])
494
- unless validator.valid?(market_data_source)
495
- fail ArgumentError, 'invalid value for "market_data_source", must be one of #{validator.allowable_values}.'
496
- end
497
- @market_data_source = market_data_source
498
- end
499
-
500
- # Custom attribute writer method with validation
501
- # @param [Object] compounding_rate Value to be assigned
502
- def compounding_rate=(compounding_rate)
503
- if !compounding_rate.nil? && compounding_rate < -1
504
- fail ArgumentError, 'invalid value for "compounding_rate", must be greater than or equal to -1.'
505
- end
506
-
507
- @compounding_rate = compounding_rate
508
- end
509
-
510
- # Custom attribute writer method with validation
511
- # @param [Object] thresh Value to be assigned
512
- def thresh=(thresh)
513
- if !thresh.nil? && thresh < 0
514
- fail ArgumentError, 'invalid value for "thresh", must be greater than or equal to 0.'
491
+ # @param [Object] allocation_method Object to be assigned
492
+ def allocation_method=(allocation_method)
493
+ validator = EnumAttributeValidator.new('String', ['select', 'create'])
494
+ unless validator.valid?(allocation_method)
495
+ fail ArgumentError, 'invalid value for "allocation_method", must be one of #{validator.allowable_values}.'
515
496
  end
516
-
517
- @thresh = thresh
497
+ @allocation_method = allocation_method
518
498
  end
519
499
 
520
500
  # Custom attribute writer method checking allowed values (enum).
521
- # @param [Object] horizon_frequency Object to be assigned
522
- def horizon_frequency=(horizon_frequency)
523
- validator = EnumAttributeValidator.new('String', ['year', 'six_months', 'quarter', 'month', 'two_weeks', 'week', 'day'])
524
- unless validator.valid?(horizon_frequency)
525
- fail ArgumentError, 'invalid value for "horizon_frequency", must be one of #{validator.allowable_values}.'
501
+ # @param [Object] allocation_priority Object to be assigned
502
+ def allocation_priority=(allocation_priority)
503
+ validator = EnumAttributeValidator.new('String', ['goal', 'risk'])
504
+ unless validator.valid?(allocation_priority)
505
+ fail ArgumentError, 'invalid value for "allocation_priority", must be one of #{validator.allowable_values}.'
526
506
  end
527
- @horizon_frequency = horizon_frequency
507
+ @allocation_priority = allocation_priority
528
508
  end
529
509
 
530
510
  # Custom attribute writer method with validation
531
- # @param [Object] withdrawal_tax Value to be assigned
532
- def withdrawal_tax=(withdrawal_tax)
533
- if !withdrawal_tax.nil? && withdrawal_tax > 1
534
- fail ArgumentError, 'invalid value for "withdrawal_tax", must be smaller than or equal to 1.'
511
+ # @param [Object] conf_tgt Value to be assigned
512
+ def conf_tgt=(conf_tgt)
513
+ if !conf_tgt.nil? && conf_tgt > 1
514
+ fail ArgumentError, 'invalid value for "conf_tgt", must be smaller than or equal to 1.'
535
515
  end
536
516
 
537
- if !withdrawal_tax.nil? && withdrawal_tax < 0
538
- fail ArgumentError, 'invalid value for "withdrawal_tax", must be greater than or equal to 0.'
517
+ if !conf_tgt.nil? && conf_tgt < 0
518
+ fail ArgumentError, 'invalid value for "conf_tgt", must be greater than or equal to 0.'
539
519
  end
540
520
 
541
- @withdrawal_tax = withdrawal_tax
521
+ @conf_tgt = conf_tgt
542
522
  end
543
523
 
544
524
  # Custom attribute writer method with validation
@@ -556,17 +536,27 @@ module ProtonApi
556
536
  end
557
537
 
558
538
  # Custom attribute writer method with validation
559
- # @param [Object] n Value to be assigned
560
- def n=(n)
561
- if !n.nil? && n > 10000
562
- fail ArgumentError, 'invalid value for "n", must be smaller than or equal to 10000.'
539
+ # @param [Object] thresh Value to be assigned
540
+ def thresh=(thresh)
541
+ if !thresh.nil? && thresh < 0
542
+ fail ArgumentError, 'invalid value for "thresh", must be greater than or equal to 0.'
563
543
  end
564
544
 
565
- if !n.nil? && n < 1
566
- fail ArgumentError, 'invalid value for "n", must be greater than or equal to 1.'
545
+ @thresh = thresh
546
+ end
547
+
548
+ # Custom attribute writer method with validation
549
+ # @param [Object] withdrawal_tax Value to be assigned
550
+ def withdrawal_tax=(withdrawal_tax)
551
+ if !withdrawal_tax.nil? && withdrawal_tax > 1
552
+ fail ArgumentError, 'invalid value for "withdrawal_tax", must be smaller than or equal to 1.'
567
553
  end
568
554
 
569
- @n = n
555
+ if !withdrawal_tax.nil? && withdrawal_tax < 0
556
+ fail ArgumentError, 'invalid value for "withdrawal_tax", must be greater than or equal to 0.'
557
+ end
558
+
559
+ @withdrawal_tax = withdrawal_tax
570
560
  end
571
561
 
572
562
  # Custom attribute writer method with validation
@@ -583,34 +573,44 @@ module ProtonApi
583
573
  @d_horizon = d_horizon
584
574
  end
585
575
 
586
- # Custom attribute writer method with validation
587
- # @param [Object] curr_inv Value to be assigned
588
- def curr_inv=(curr_inv)
589
- if !curr_inv.nil? && curr_inv < 0
590
- fail ArgumentError, 'invalid value for "curr_inv", must be greater than or equal to 0.'
576
+ # Custom attribute writer method checking allowed values (enum).
577
+ # @param [Object] market_data_source Object to be assigned
578
+ def market_data_source=(market_data_source)
579
+ validator = EnumAttributeValidator.new('String', ['nucleus', 'integration'])
580
+ unless validator.valid?(market_data_source)
581
+ fail ArgumentError, 'invalid value for "market_data_source", must be one of #{validator.allowable_values}.'
591
582
  end
592
-
593
- @curr_inv = curr_inv
583
+ @market_data_source = market_data_source
594
584
  end
595
585
 
596
586
  # Custom attribute writer method checking allowed values (enum).
597
- # @param [Object] recommend_type Object to be assigned
598
- def recommend_type=(recommend_type)
599
- validator = EnumAttributeValidator.new('String', ['recurring', 'one-time', 'combo', 'horizon'])
600
- unless validator.valid?(recommend_type)
601
- fail ArgumentError, 'invalid value for "recommend_type", must be one of #{validator.allowable_values}.'
587
+ # @param [Object] thresh_type Object to be assigned
588
+ def thresh_type=(thresh_type)
589
+ validator = EnumAttributeValidator.new('String', ['amnt', 'perc'])
590
+ unless validator.valid?(thresh_type)
591
+ fail ArgumentError, 'invalid value for "thresh_type", must be one of #{validator.allowable_values}.'
602
592
  end
603
- @recommend_type = recommend_type
593
+ @thresh_type = thresh_type
604
594
  end
605
595
 
606
596
  # Custom attribute writer method checking allowed values (enum).
607
- # @param [Object] allocation_method Object to be assigned
608
- def allocation_method=(allocation_method)
609
- validator = EnumAttributeValidator.new('String', ['select', 'create'])
610
- unless validator.valid?(allocation_method)
611
- fail ArgumentError, 'invalid value for "allocation_method", must be one of #{validator.allowable_values}.'
597
+ # @param [Object] horizon_frequency Object to be assigned
598
+ def horizon_frequency=(horizon_frequency)
599
+ validator = EnumAttributeValidator.new('String', ['year', 'six_months', 'quarter', 'month', 'two_weeks', 'week', 'day'])
600
+ unless validator.valid?(horizon_frequency)
601
+ fail ArgumentError, 'invalid value for "horizon_frequency", must be one of #{validator.allowable_values}.'
612
602
  end
613
- @allocation_method = allocation_method
603
+ @horizon_frequency = horizon_frequency
604
+ end
605
+
606
+ # Custom attribute writer method with validation
607
+ # @param [Object] curr_inv Value to be assigned
608
+ def curr_inv=(curr_inv)
609
+ if !curr_inv.nil? && curr_inv < 0
610
+ fail ArgumentError, 'invalid value for "curr_inv", must be greater than or equal to 0.'
611
+ end
612
+
613
+ @curr_inv = curr_inv
614
614
  end
615
615
 
616
616
  # Checks equality by comparing each attribute.
@@ -618,33 +618,33 @@ module ProtonApi
618
618
  def ==(o)
619
619
  return true if self.equal?(o)
620
620
  self.class == o.class &&
621
- thresh_type == o.thresh_type &&
622
- goal_id == o.goal_id &&
623
- client_id == o.client_id &&
624
- conf_tgt == o.conf_tgt &&
621
+ recommendation_config == o.recommendation_config &&
622
+ compounding_rate == o.compounding_rate &&
625
623
  risk_score == o.risk_score &&
626
- remove_outliers == o.remove_outliers &&
627
- allocation_priority == o.allocation_priority &&
624
+ recommend_type == o.recommend_type &&
625
+ create_log == o.create_log &&
626
+ n == o.n &&
628
627
  a_horizon == o.a_horizon &&
629
- withdrawal_config == o.withdrawal_config &&
630
- market_data_source == o.market_data_source &&
631
- compounding_rate == o.compounding_rate &&
628
+ allocation_method == o.allocation_method &&
629
+ allocation_priority == o.allocation_priority &&
630
+ remove_outliers == o.remove_outliers &&
632
631
  adjust_for_compounding == o.adjust_for_compounding &&
633
- opt_config == o.opt_config &&
634
- deposit_config == o.deposit_config &&
632
+ goal_id == o.goal_id &&
633
+ conf_tgt == o.conf_tgt &&
634
+ trading_days_per_year == o.trading_days_per_year &&
635
635
  use_proxy_data == o.use_proxy_data &&
636
636
  thresh == o.thresh &&
637
- horizon_frequency == o.horizon_frequency &&
638
- recommendation_config == o.recommendation_config &&
639
- create_log == o.create_log &&
640
637
  withdrawal_tax == o.withdrawal_tax &&
641
- trading_days_per_year == o.trading_days_per_year &&
642
- allocations == o.allocations &&
643
- n == o.n &&
644
638
  d_horizon == o.d_horizon &&
639
+ client_id == o.client_id &&
640
+ opt_config == o.opt_config &&
641
+ market_data_source == o.market_data_source &&
642
+ thresh_type == o.thresh_type &&
643
+ horizon_frequency == o.horizon_frequency &&
644
+ withdrawal_config == o.withdrawal_config &&
645
+ allocations == o.allocations &&
645
646
  curr_inv == o.curr_inv &&
646
- recommend_type == o.recommend_type &&
647
- allocation_method == o.allocation_method
647
+ deposit_config == o.deposit_config
648
648
  end
649
649
 
650
650
  # @see the `==` method
@@ -656,7 +656,7 @@ module ProtonApi
656
656
  # Calculates hash code according to all attributes.
657
657
  # @return [Fixnum] Hash code
658
658
  def hash
659
- [thresh_type, goal_id, client_id, conf_tgt, risk_score, remove_outliers, allocation_priority, a_horizon, withdrawal_config, market_data_source, compounding_rate, adjust_for_compounding, opt_config, deposit_config, use_proxy_data, thresh, horizon_frequency, recommendation_config, create_log, withdrawal_tax, trading_days_per_year, allocations, n, d_horizon, curr_inv, recommend_type, allocation_method].hash
659
+ [recommendation_config, compounding_rate, risk_score, recommend_type, create_log, n, a_horizon, allocation_method, allocation_priority, remove_outliers, adjust_for_compounding, goal_id, conf_tgt, trading_days_per_year, use_proxy_data, thresh, withdrawal_tax, d_horizon, client_id, opt_config, market_data_source, thresh_type, horizon_frequency, withdrawal_config, allocations, curr_inv, deposit_config].hash
660
660
  end
661
661
 
662
662
  # Builds the object from hash
@@ -678,17 +678,16 @@ module ProtonApi
678
678
 
679
679
  self
680
680
  end
681
-
682
- # Deserializes the data based on type
681
+ # Deserializes the data based on type
683
682
  # @param string type Data type
684
683
  # @param string value Value to be deserialized
685
684
  # @return [Object] Deserialized data
686
685
  def _deserialize(type, value)
687
686
  case type.to_sym
688
687
  when :DateTime
689
- DateTime.parse(value)
688
+ value
690
689
  when :Date
691
- Date.parse(value)
690
+ value
692
691
  when :String
693
692
  value.to_s
694
693
  when :Integer
@@ -720,8 +719,7 @@ module ProtonApi
720
719
  temp_model.build_from_hash(value)
721
720
  end
722
721
  end
723
-
724
- # Returns the string representation of the object
722
+ # Returns the string representation of the object
725
723
  # @return [String] String presentation of the object
726
724
  def to_s
727
725
  to_hash.to_s
@@ -744,8 +742,7 @@ module ProtonApi
744
742
  end
745
743
  hash
746
744
  end
747
-
748
- # Outputs non-array value in the form of hash
745
+ # Outputs non-array value in the form of hash
749
746
  # For object, use to_hash. Otherwise, just return the value
750
747
  # @param [Object] value Any valid value
751
748
  # @return [Hash] Returns the value in the form of hash