@frontlinesystems/rason-mcp-server 2026.5.0 → 2026.5.1

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 (195) hide show
  1. package/LICENSE +35 -35
  2. package/README.md +1 -1
  3. package/examples/EXAMPLES_REFERENCE.md +128 -128
  4. package/examples/calculation/DMNExamples/DMN Box Fun with typeDef result.json +53 -53
  5. package/examples/calculation/DMNExamples/DMN Context example.json +69 -69
  6. package/examples/calculation/DMNExamples/DMN DT with typeDef result.json +43 -43
  7. package/examples/calculation/DMNExamples/FEEL Date Time example.json +28 -28
  8. package/examples/calculation/DMNExamples/FEEL For iteration example.json +66 -66
  9. package/examples/calculation/DMNExamples/FEEL For with two indices.json +15 -15
  10. package/examples/calculation/DMNExamples/FEEL For with typeDef result.json +88 -88
  11. package/examples/calculation/DMNExamples/FEEL If Then Else example.json +25 -25
  12. package/examples/calculation/DMNExamples/FEEL List example.json +37 -37
  13. package/examples/calculation/DMNExamples/FEEL List operator.json +17 -17
  14. package/examples/calculation/DMNExamples/FEEL List with typeDef collection.json +36 -36
  15. package/examples/calculation/DMNExamples/FEEL Some or Every example.json +65 -65
  16. package/examples/calculation/DecisionTables/DT Datasource example.json +52 -52
  17. package/examples/calculation/DecisionTables/DT Date and Time examples.json +91 -91
  18. package/examples/calculation/DecisionTables/DT Expression example.json +32 -32
  19. package/examples/calculation/DecisionTables/DT Hit Policy examples.json +136 -136
  20. package/examples/calculation/DecisionTables/DT Loan Recommend model.json +81 -81
  21. package/examples/calculation/DecisionTables/DT Loan Strategy Model and Predictive CSV-XML.json +218 -218
  22. package/examples/calculation/DecisionTables/DT Loan Strategy model and Datasource.json +286 -286
  23. package/examples/calculation/DecisionTables/DT Loan Strategy model and Predictive.json +203 -203
  24. package/examples/calculation/DecisionTables/DT Loan Strategy model by scratch.json +214 -214
  25. package/examples/calculation/DecisionTables/DT Output Order example.json +39 -39
  26. package/examples/calculation/DecisionTables/DT Unique example.json +38 -38
  27. package/examples/calculation/TypeDefinitions/TypeDefCF.json +64 -64
  28. package/examples/calculation/TypeDefinitions/TypeDefDT.json +57 -57
  29. package/examples/datamining/AffinityAnalysis/AssociationRules.json +51 -51
  30. package/examples/datamining/Classification/DecisionTree.json +90 -90
  31. package/examples/datamining/Classification/DiscriminantAnalysis.json +81 -81
  32. package/examples/datamining/Classification/Ensembles/Bagging.json +66 -66
  33. package/examples/datamining/Classification/Ensembles/Boosting.json +67 -67
  34. package/examples/datamining/Classification/Ensembles/RandomTrees.json +91 -91
  35. package/examples/datamining/Classification/FindBestModel.json +86 -86
  36. package/examples/datamining/Classification/LogisticRegression.json +82 -82
  37. package/examples/datamining/Classification/NaiveBayes.json +78 -78
  38. package/examples/datamining/Classification/NearestNeighbors.json +84 -84
  39. package/examples/datamining/Classification/NeuralNetwork.json +92 -92
  40. package/examples/datamining/Clustering/Hierarchical.json +54 -54
  41. package/examples/datamining/Clustering/KMeans.json +71 -71
  42. package/examples/datamining/DataSources/DelimitedFile.json +49 -49
  43. package/examples/datamining/DataSources/JSONFile.json +49 -49
  44. package/examples/datamining/DataSources/MSAccessDatabase.json +49 -49
  45. package/examples/datamining/DataSources/MSExcelTable.json +50 -50
  46. package/examples/datamining/DataSources/MSSQLDatabase.json +49 -49
  47. package/examples/datamining/DataSources/ODATATable.json +49 -49
  48. package/examples/datamining/DataSources/ODBCDatabase.json +49 -49
  49. package/examples/datamining/FeatureSelection/LinearWrapping.json +53 -53
  50. package/examples/datamining/FeatureSelection/LogisticWrapping.json +56 -56
  51. package/examples/datamining/FeatureSelection/Univariate.json +78 -78
  52. package/examples/datamining/Regression/DecisionTree.json +82 -82
  53. package/examples/datamining/Regression/Ensembles/Bagging.json +62 -62
  54. package/examples/datamining/Regression/Ensembles/Boosting.json +62 -62
  55. package/examples/datamining/Regression/Ensembles/RandomTrees.json +78 -78
  56. package/examples/datamining/Regression/FindBestModel.json +86 -86
  57. package/examples/datamining/Regression/LinearRegression.json +124 -124
  58. package/examples/datamining/Regression/NearestNeighbors.json +77 -77
  59. package/examples/datamining/Regression/NeuralNetwork.json +82 -82
  60. package/examples/datamining/Scoring/JSONClassifier.json +62 -62
  61. package/examples/datamining/Scoring/JSONClassifierNN.json +62 -62
  62. package/examples/datamining/Scoring/JSONClusterizer.json +37 -37
  63. package/examples/datamining/Scoring/JSONForecaster.json +49 -49
  64. package/examples/datamining/Scoring/JSONLinearRegression.json +56 -56
  65. package/examples/datamining/Scoring/JSONPCA.json +41 -41
  66. package/examples/datamining/Scoring/JSONRegressor.json +56 -56
  67. package/examples/datamining/Scoring/JSONTransformer.json +38 -38
  68. package/examples/datamining/Scoring/PMMLClassifier.json +42 -42
  69. package/examples/datamining/Scoring/PMMLForecaster.json +43 -43
  70. package/examples/datamining/Scoring/PMMLRegressor.json +38 -38
  71. package/examples/datamining/Scoring/PMMLTransformer.json +38 -38
  72. package/examples/datamining/Simulation/LinearRegressionSimulation.json +117 -117
  73. package/examples/datamining/Simulation/SyntheticDataGeneration.json +108 -108
  74. package/examples/datamining/Simulation/pmml-risk-scoring.json +62 -62
  75. package/examples/datamining/Summarizer/Summarization.json +54 -54
  76. package/examples/datamining/TextMining/LatentSemanticAnalysis.json +51 -51
  77. package/examples/datamining/TextMining/TfIdf-FileData.json +65 -65
  78. package/examples/datamining/TextMining/TfIdf-InlineData.json +55 -55
  79. package/examples/datamining/TimeSeries/AddHoltWinters.json +79 -79
  80. package/examples/datamining/TimeSeries/Arima.json +74 -74
  81. package/examples/datamining/TimeSeries/DoubleExponential.json +65 -65
  82. package/examples/datamining/TimeSeries/Exponential.json +64 -64
  83. package/examples/datamining/TimeSeries/LagAnalysis.json +48 -48
  84. package/examples/datamining/TimeSeries/MovingAverage.json +65 -65
  85. package/examples/datamining/TimeSeries/MulHoltWinters.json +65 -65
  86. package/examples/datamining/TimeSeries/NoTrendHoltWinters.json +65 -65
  87. package/examples/datamining/Transformation/Binning.json +69 -69
  88. package/examples/datamining/Transformation/CanonicalVariateAnalysis.json +47 -47
  89. package/examples/datamining/Transformation/CategoryReduction.json +51 -51
  90. package/examples/datamining/Transformation/Factorization.json +50 -50
  91. package/examples/datamining/Transformation/MissingDataHandling.json +83 -83
  92. package/examples/datamining/Transformation/OneHotEncoding-DataInline.json +54 -54
  93. package/examples/datamining/Transformation/OneHotEncoding-DatainFile.json +48 -48
  94. package/examples/datamining/Transformation/PartitionTimeSeries.json +48 -48
  95. package/examples/datamining/Transformation/Partitioning-DF.json +72 -72
  96. package/examples/datamining/Transformation/Partitioning.json +46 -46
  97. package/examples/datamining/Transformation/PartitioningWithOversampling-DF.json +65 -65
  98. package/examples/datamining/Transformation/PartitioningWithOversampling.json +44 -44
  99. package/examples/datamining/Transformation/PrincipalComponentsAnalysis.json +52 -52
  100. package/examples/datamining/Transformation/Rescaling.json +67 -67
  101. package/examples/datamining/Transformation/Sampling.json +43 -43
  102. package/examples/datamining/Transformation/StratifiedSampling.json +46 -46
  103. package/examples/flow/SQLServerTransform.json +260 -260
  104. package/examples/flow/dm-calc-pipeline.json +277 -277
  105. package/examples/flow/dm-pipeline-simulation.json +113 -113
  106. package/examples/flow/opt-sim-pipeline.json +159 -159
  107. package/examples/flow/sim-dm-pipeline.json +106 -106
  108. package/examples/flow/sim-sim-pipeline.json +136 -136
  109. package/examples/index.json +4678 -4678
  110. package/examples/{Optimization → optimization}/Conic/AirlineHubConic.json +111 -111
  111. package/examples/{Optimization → optimization}/Conic/AirlineHubConic2.json +108 -108
  112. package/examples/{Optimization → optimization}/Conic/AirlineHubConic3.json +111 -111
  113. package/examples/{Optimization → optimization}/Conic/AirlineHubConic4.json +99 -99
  114. package/examples/{Optimization → optimization}/Conic/AirlineHubConic5.json +101 -101
  115. package/examples/{Optimization → optimization}/DataBinding/ProductMixCsv.json +81 -81
  116. package/examples/{Optimization → optimization}/DataBinding/ProductMixCsv4.json +96 -96
  117. package/examples/{Optimization → optimization}/DataBinding/ProductMixExcel.json +73 -73
  118. package/examples/{Optimization → optimization}/DataBinding/ProductMixExcel1.json +86 -86
  119. package/examples/{Optimization → optimization}/DataBinding/ProductMixExcel11.json +108 -108
  120. package/examples/{Optimization → optimization}/DataBinding/ProductMixExcel2.json +77 -77
  121. package/examples/{Optimization → optimization}/DataBinding/ProductMixTab.json +89 -89
  122. package/examples/{Optimization → optimization}/DataBinding/ProductMixTab1.json +73 -73
  123. package/examples/{Optimization → optimization}/DataBinding/ProductMixTab2.json +77 -77
  124. package/examples/{Optimization → optimization}/Linear/Inventory.json +199 -199
  125. package/examples/{Optimization → optimization}/Linear/Matop.json +119 -119
  126. package/examples/{Optimization → optimization}/Linear/ProductMix.json +97 -97
  127. package/examples/{Optimization → optimization}/Linear/ProductMix2.json +72 -72
  128. package/examples/{Optimization → optimization}/Linear/ProductMix3.json +49 -49
  129. package/examples/{Optimization → optimization}/Linear/ProductMix4.json +56 -56
  130. package/examples/{Optimization → optimization}/Linear/ProductMixCsv1.json +106 -106
  131. package/examples/{Optimization → optimization}/Linear/ProductMixCsv2.json +106 -106
  132. package/examples/{Optimization → optimization}/Linear/ProductMixSQL11.json +82 -82
  133. package/examples/{Optimization → optimization}/Linear/Rowop.json +126 -126
  134. package/examples/{Optimization → optimization}/NonLinear/AirlineHub.json +63 -63
  135. package/examples/{Optimization → optimization}/NonLinear/AirlineHub2.json +47 -47
  136. package/examples/{Optimization → optimization}/NonLinear/AirlineHub3.json +47 -47
  137. package/examples/{Optimization → optimization}/NonSmooth/Inventory2.json +159 -159
  138. package/examples/{Optimization → optimization}/Quadratic/PortfolioOpt.json +55 -55
  139. package/examples/{Optimization → optimization}/Quadratic/PortfolioOpt2.json +65 -65
  140. package/examples/{Optimization → optimization}/WithUncertainty/GasCompanyChance.json +78 -78
  141. package/examples/{Optimization → optimization}/WithUncertainty/GasCompanyRecourse.json +78 -78
  142. package/examples/{Optimization → optimization}/WithUncertainty/ProjectSelect.json +77 -77
  143. package/examples/{Optimization → optimization}/WithUncertainty/ProjectSelect2.json +81 -81
  144. package/examples/{Optimization → optimization}/WithUncertainty/ProjectSelect3.json +84 -84
  145. package/examples/{Optimization → optimization}/WithUncertainty/ProjectSelect4.json +74 -74
  146. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/DataFiltering/ListwithFilter.json +52 -52
  147. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/Loops/ProductMix5.json +57 -57
  148. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/Loops/compoundWhileStatement.json +35 -35
  149. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/Loops/ifThenElseStatement.json +33 -33
  150. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/Loops/nestedLoop.json +25 -25
  151. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/ParallelArray.json +47 -47
  152. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/indexedArray.json +69 -69
  153. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/nonParallelArray.json +49 -49
  154. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/sumAggregateExample.json +337 -337
  155. package/examples/rason-features/Arrays_Loops_Tables/ArrayExamples/tsp.json +61 -61
  156. package/examples/rason-features/BoxIterators/Box_Fun_Loop_Iter_Sim_RASON.json +190 -190
  157. package/examples/rason-features/BoxIterators/Box_Fun_Loop_Sim_RASON.json +75 -75
  158. package/examples/rason-features/BoxIterators/Box_Fun_Sim_RASON.json +108 -108
  159. package/examples/rason-features/BoxIterators/Box_Iter_SIM_RASON.json +68 -68
  160. package/examples/rason-features/BoxIterators/Box_Iterator_Calc_Loop.json +183 -183
  161. package/examples/rason-features/BoxIterators/Box_Iterator_with_typeDef_partial.json +79 -79
  162. package/examples/rason-features/BoxLambdaExamples/BoxFunOptimize.json +154 -154
  163. package/examples/rason-features/BoxLambdaExamples/BoxFunSimulate.json +118 -118
  164. package/examples/rason-features/BoxLambdaExamples/LambdaFunOptimize.json +142 -142
  165. package/examples/rason-features/BoxLambdaExamples/LambdaFunSimulate.json +81 -81
  166. package/examples/rason-features/ReferenceGuide/RGFirehouseLocation.json +69 -69
  167. package/examples/rason-features/ReferenceGuide/RGFirehouseLocationConic.json +113 -113
  168. package/examples/rason-features/ReferenceGuide/RGProductMixCsv1.json +107 -107
  169. package/examples/rason-features/ReferenceGuide/RGProductMixExcel11.json +117 -117
  170. package/examples/rason-features/ReferenceGuide/RGProductMixSQL11.json +108 -108
  171. package/examples/rason-features/UserGuide/UGAirlineHubCSV.json +67 -67
  172. package/examples/rason-features/UserGuide/UGForecast.json +50 -50
  173. package/examples/rason-features/UserGuide/UGProductMix1.json +48 -48
  174. package/examples/rason-features/UserGuide/UGProductMix2.json +48 -48
  175. package/examples/rason-features/UserGuide/UGProductMixTab1.json +67 -67
  176. package/examples/rason-features/UserGuide/UGProductMixTab2.json +76 -76
  177. package/examples/rason-features/UserGuide/UGProductMixTab3.json +66 -66
  178. package/examples/rason-features/UserGuide/UGProductMixTab4.json +70 -70
  179. package/examples/rason-features/UserGuide/UGProductMixTab5.json +67 -67
  180. package/examples/rason-features/UserGuide/UGProjectSelect0.json +91 -91
  181. package/examples/rason-features/UserGuide/UGProjectSelect1.json +74 -74
  182. package/examples/rason-features/UserGuide/UGProjectSelect2.json +74 -74
  183. package/examples/rason-features/UserGuide/UGYieldManagement1.json +61 -61
  184. package/examples/rason-features/UserGuide/UGYieldManagement2.json +61 -61
  185. package/examples/rason-features/UserGuide/UGYieldManagement3.json +63 -63
  186. package/examples/{Simulation → simulation}/CandyStoreSalesUsingSIP.json +147 -147
  187. package/examples/{Simulation → simulation}/CollegeFundGrowth1.json +423 -423
  188. package/examples/{Simulation → simulation}/CollegeFundGrowth1SIPModel.json +27 -27
  189. package/examples/{Simulation → simulation}/CollegeFundGrowth2.json +415 -415
  190. package/examples/{Simulation → simulation}/CollegeFundGrowthSIP.json +401 -401
  191. package/examples/{Simulation → simulation}/GBMSimulationModel.json +236 -236
  192. package/examples/{Simulation → simulation}/YieldManagement(Sim).json +69 -69
  193. package/examples/{Simulation → simulation}/YieldManagement2(Sim).json +72 -72
  194. package/out/index.cjs +38 -38
  195. package/package.json +2 -2
@@ -1,416 +1,416 @@
1
- {
2
- "comment": "This model has been generated by Psi from an Excel model in the workbook CollegeFundGrowth2(Sim).xlsx",
3
- "modelName": "CollegeFundGrowth2(Sim)",
4
- "modelDescription": "RASON example that Simulates the market's effect on the balance of a college fund savings account: Mark and Nicole want to ensure that they have enough funds to send their sons Joseph and Benjamin to college after they graduate from high school. They have opened a 529 account at their local investment bank, but are unsure how much money they should invest each year to ensure that enough funds are available when needed. Mark and Nicole are projecting that the price for a private 4 year institution will be $75,000 per year. Nicole assumed the yearly portfolio return to follow a Normal distribution with mean of 10% and standard deviation of 20%. If the balance of the portfolio is negative, Nicole assumes she will borrow money to cover the cost of tuition at an 8% interest rate.",
5
- "modelType": "simulation",
6
- "engineSettings": {
7
- "comment": "Use this section to set options related to the engine being used to solve the model, in the case of a simulation model, the Risk Solver Engine. In most cases, the default values are sufficient.",
8
- "randomGenerator": "Lecuyer",
9
- "samplingMethod": "Latin"
10
- },
11
- "uncertainVariables": {
12
- "comment": "Enter uncertain variables in this section. Each uncertain variable models the portfolio return for that year, for example, e17 models the portfolio return for year 1, e18 models the portfolio return for year 2, etc.",
13
- "e17": {
14
- "formula": "PsiNormal(0.1,0.2)"
15
- },
16
- "e18": {
17
- "formula": "PsiNormal(0.1,0.2)"
18
- },
19
- "e19": {
20
- "formula": "PsiNormal(0.1,0.2)"
21
- },
22
- "e20": {
23
- "formula": "PsiNormal(0.1,0.2)"
24
- },
25
- "e21": {
26
- "formula": "PsiNormal(0.1,0.2)"
27
- },
28
- "e22": {
29
- "formula": "PsiNormal(0.1,0.2)"
30
- },
31
- "e23": {
32
- "formula": "PsiNormal(0.1,0.2)"
33
- },
34
- "e24": {
35
- "formula": "PsiNormal(0.1,0.2)"
36
- },
37
- "e25": {
38
- "formula": "PsiNormal(0.1,0.2)"
39
- },
40
- "e26": {
41
- "formula": "PsiNormal(0.1,0.2)"
42
- },
43
- "e27": {
44
- "formula": "PsiNormal(0.1,0.2)"
45
- },
46
- "e28": {
47
- "formula": "PsiNormal(0.1,0.2)"
48
- },
49
- "e29": {
50
- "formula": "PsiNormal(0.1,0.2)"
51
- },
52
- "e30": {
53
- "formula": "PsiNormal(0.1,0.2)"
54
- },
55
- "e31": {
56
- "formula": "PsiNormal(0.1,0.2)"
57
- },
58
- "e32": {
59
- "formula": "PsiNormal(0.1,0.2)"
60
- },
61
- "e33": {
62
- "formula": "PsiNormal(0.1,0.2)"
63
- },
64
- "e34": {
65
- "formula": "PsiNormal(0.1,0.2)"
66
- },
67
- "e35": {
68
- "formula": "PsiNormal(0.1,0.2)"
69
- },
70
- "e36": {
71
- "formula": "PsiNormal(0.1,0.2)"
72
- },
73
- "e37": {
74
- "formula": "PsiNormal(0.1,0.2)"
75
- },
76
- "e38": {
77
- "formula": "PsiNormal(0.1,0.2)"
78
- },
79
- "e39": {
80
- "formula": "PsiNormal(0.1,0.2)"
81
- },
82
- "e40": {
83
- "formula": "PsiNormal(0.1,0.2)"
84
- }
85
- },
86
- "data": {
87
- "comment": "Organize constant parameters in this section.",
88
- "c17": {
89
- "comment": "Beginning 529 account balance.",
90
- "value": 0
91
- },
92
- "i17": {
93
- "value": 0.08
94
- },
95
- "d17": {
96
- "comment": "D17:D33 are the yearly deposit amounts.",
97
- "value": 10000
98
- },
99
- "d18": {
100
- "value": 10000
101
- },
102
- "d19": {
103
- "value": 10000
104
- },
105
- "d20": {
106
- "value": 10000
107
- },
108
- "d21": {
109
- "value": 10000
110
- },
111
- "d22": {
112
- "value": 10000
113
- },
114
- "d23": {
115
- "value": 10000
116
- },
117
- "d24": {
118
- "value": 10000
119
- },
120
- "d25": {
121
- "value": 10000
122
- },
123
- "d26": {
124
- "value": 10000
125
- },
126
- "d27": {
127
- "value": 10000
128
- },
129
- "d28": {
130
- "value": 10000
131
- },
132
- "d29": {
133
- "value": 10000
134
- },
135
- "d30": {
136
- "value": 10000
137
- },
138
- "d31": {
139
- "value": 10000
140
- },
141
- "d32": {
142
- "value": 10000
143
- },
144
- "d33": {
145
- "value": 10000
146
- },
147
- "d34": {
148
- "comment": "D34:D40 are the yearly withdrawal amounts. The first child, Joe, will start college in year 18 and end in year 21. The second child, Ben, will start college in year 21 and end in year 24.",
149
- "value": -75000
150
- },
151
- "d35": {
152
- "value": -75000
153
- },
154
- "d36": {
155
- "value": -75000
156
- },
157
- "d37": {
158
- "comment": "This withdrawal is double as both children will be in college this year; Joe will be a Senior and Ben will be a Freshman.",
159
- "value": -150000
160
- },
161
- "d38": {
162
- "value": -75000
163
- },
164
- "d39": {
165
- "value": -75000
166
- },
167
- "d40": {
168
- "value": -75000
169
- }
170
- },
171
- "formulas": {
172
- "comment": "F17:F40 calculate the portfolio gain or loss for each year. C18:C40 calculate the beginning account balance for each year. ",
173
- "f17": {
174
- "formula": "IF((C17+D17)<0,(C17+D17)*$I$17,(C17+D17)*E17)"
175
- },
176
- "c18": {
177
- "formula": "G17"
178
- },
179
- "f18": {
180
- "formula": "IF((C18+D18)<0,(C18+D18)*$I$17,(C18+D18)*E18)"
181
- },
182
- "c19": {
183
- "formula": "G18"
184
- },
185
- "f19": {
186
- "formula": "IF((C19+D19)<0,(C19+D19)*$I$17,(C19+D19)*E19)"
187
- },
188
- "c20": {
189
- "formula": "G19"
190
- },
191
- "f20": {
192
- "formula": "IF((C20+D20)<0,(C20+D20)*$I$17,(C20+D20)*E20)"
193
- },
194
- "c21": {
195
- "formula": "G20"
196
- },
197
- "f21": {
198
- "formula": "IF((C21+D21)<0,(C21+D21)*$I$17,(C21+D21)*E21)"
199
- },
200
- "c22": {
201
- "formula": "G21"
202
- },
203
- "f22": {
204
- "formula": "IF((C22+D22)<0,(C22+D22)*$I$17,(C22+D22)*E22)"
205
- },
206
- "c23": {
207
- "formula": "G22"
208
- },
209
- "f23": {
210
- "formula": "IF((C23+D23)<0,(C23+D23)*$I$17,(C23+D23)*E23)"
211
- },
212
- "c24": {
213
- "formula": "G23"
214
- },
215
- "f24": {
216
- "formula": "IF((C24+D24)<0,(C24+D24)*$I$17,(C24+D24)*E24)"
217
- },
218
- "c25": {
219
- "formula": "G24"
220
- },
221
- "f25": {
222
- "formula": "IF((C25+D25)<0,(C25+D25)*$I$17,(C25+D25)*E25)"
223
- },
224
- "c26": {
225
- "formula": "G25"
226
- },
227
- "f26": {
228
- "formula": "IF((C26+D26)<0,(C26+D26)*$I$17,(C26+D26)*E26)"
229
- },
230
- "c27": {
231
- "formula": "G26"
232
- },
233
- "f27": {
234
- "formula": "IF((C27+D27)<0,(C27+D27)*$I$17,(C27+D27)*E27)"
235
- },
236
- "c28": {
237
- "formula": "G27"
238
- },
239
- "f28": {
240
- "formula": "IF((C28+D28)<0,(C28+D28)*$I$17,(C28+D28)*E28)"
241
- },
242
- "c29": {
243
- "formula": "G28"
244
- },
245
- "f29": {
246
- "formula": "IF((C29+D29)<0,(C29+D29)*$I$17,(C29+D29)*E29)"
247
- },
248
- "c30": {
249
- "formula": "G29"
250
- },
251
- "f30": {
252
- "formula": "IF((C30+D30)<0,(C30+D30)*$I$17,(C30+D30)*E30)"
253
- },
254
- "c31": {
255
- "formula": "G30"
256
- },
257
- "f31": {
258
- "formula": "IF((C31+D31)<0,(C31+D31)*$I$17,(C31+D31)*E31)"
259
- },
260
- "c32": {
261
- "formula": "G31"
262
- },
263
- "f32": {
264
- "formula": "IF((C32+D32)<0,(C32+D32)*$I$17,(C32+D32)*E32)"
265
- },
266
- "c33": {
267
- "formula": "G32"
268
- },
269
- "f33": {
270
- "formula": "IF((C33+D33)<0,(C33+D33)*$I$17,(C33+D33)*E33)"
271
- },
272
- "c34": {
273
- "formula": "G33"
274
- },
275
- "f34": {
276
- "formula": "IF((C34+D34)<0,(C34+D34)*$I$17,(C34+D34)*E34)"
277
- },
278
- "c35": {
279
- "formula": "G34"
280
- },
281
- "f35": {
282
- "formula": "IF((C35+D35)<0,(C35+D35)*$I$17,(C35+D35)*E35)"
283
- },
284
- "c36": {
285
- "formula": "G35"
286
- },
287
- "f36": {
288
- "formula": "IF((C36+D36)<0,(C36+D36)*$I$17,(C36+D36)*E36)"
289
- },
290
- "c37": {
291
- "formula": "G36"
292
- },
293
- "f37": {
294
- "formula": "IF((C37+D37)<0,(C37+D37)*$I$17,(C37+D37)*E37)"
295
- },
296
- "c38": {
297
- "formula": "G37"
298
- },
299
- "f38": {
300
- "formula": "IF((C38+D38)<0,(C38+D38)*$I$17,(C38+D38)*E38)"
301
- },
302
- "c39": {
303
- "formula": "G38"
304
- },
305
- "f39": {
306
- "formula": "IF((C39+D39)<0,(C39+D39)*$I$17,(C39+D39)*E39)"
307
- },
308
- "c40": {
309
- "formula": "G39"
310
- },
311
- "f40": {
312
- "formula": "IF((C40+D40)<0,(C40+D40)*$I$17,(C40+D40)*E40)"
313
- }
314
- },
315
- "uncertainFunctions": {
316
- "comment": "G17:G40 calculate the account's ending balance for each year. The mean for each year will be included in the results. For the last year, G40, the Target(0) function is used to calculate the probability that the account will have a balance of 0 at the end of the last year. ",
317
- "g40": {
318
- "formula": "C40+D40+F40 +PsiOutput()",
319
- "trials": [],
320
- "Target(0)": [],
321
- "mean": []
322
- },
323
- "g17": {
324
- "formula": "C17+D17+F17",
325
- "mean": []
326
- },
327
- "g18": {
328
- "formula": "C18+D18+F18",
329
- "mean": []
330
- },
331
- "g19": {
332
- "formula": "C19+D19+F19",
333
- "mean": []
334
- },
335
- "g20": {
336
- "formula": "C20+D20+F20",
337
- "mean": []
338
- },
339
- "g21": {
340
- "formula": "C21+D21+F21",
341
- "mean": []
342
- },
343
- "g22": {
344
- "formula": "C22+D22+F22",
345
- "mean": []
346
- },
347
- "g23": {
348
- "formula": "C23+D23+F23",
349
- "mean": []
350
- },
351
- "g24": {
352
- "formula": "C24+D24+F24",
353
- "mean": []
354
- },
355
- "g25": {
356
- "formula": "C25+D25+F25",
357
- "mean": []
358
- },
359
- "g26": {
360
- "formula": "C26+D26+F26",
361
- "mean": []
362
- },
363
- "g27": {
364
- "formula": "C27+D27+F27",
365
- "mean": []
366
- },
367
- "g28": {
368
- "formula": "C28+D28+F28",
369
- "mean": []
370
- },
371
- "g29": {
372
- "formula": "C29+D29+F29",
373
- "mean": []
374
- },
375
- "g30": {
376
- "formula": "C30+D30+F30",
377
- "mean": []
378
- },
379
- "g31": {
380
- "formula": "C31+D31+F31",
381
- "mean": []
382
- },
383
- "g32": {
384
- "formula": "C32+D32+F32",
385
- "mean": []
386
- },
387
- "g33": {
388
- "formula": "C33+D33+F33",
389
- "mean": []
390
- },
391
- "g34": {
392
- "formula": "C34+D34+F34",
393
- "mean": []
394
- },
395
- "g35": {
396
- "formula": "C35+D35+F35",
397
- "mean": []
398
- },
399
- "g36": {
400
- "formula": "C36+D36+F36",
401
- "mean": []
402
- },
403
- "g37": {
404
- "formula": "C37+D37+F37",
405
- "mean": []
406
- },
407
- "g38": {
408
- "formula": "C38+D38+F38",
409
- "mean": []
410
- },
411
- "g39": {
412
- "formula": "C39+D39+F39",
413
- "mean": []
414
- }
415
- }
1
+ {
2
+ "comment": "This model has been generated by Psi from an Excel model in the workbook CollegeFundGrowth2(Sim).xlsx",
3
+ "modelName": "CollegeFundGrowth2(Sim)",
4
+ "modelDescription": "RASON example that Simulates the market's effect on the balance of a college fund savings account: Mark and Nicole want to ensure that they have enough funds to send their sons Joseph and Benjamin to college after they graduate from high school. They have opened a 529 account at their local investment bank, but are unsure how much money they should invest each year to ensure that enough funds are available when needed. Mark and Nicole are projecting that the price for a private 4 year institution will be $75,000 per year. Nicole assumed the yearly portfolio return to follow a Normal distribution with mean of 10% and standard deviation of 20%. If the balance of the portfolio is negative, Nicole assumes she will borrow money to cover the cost of tuition at an 8% interest rate.",
5
+ "modelType": "simulation",
6
+ "engineSettings": {
7
+ "comment": "Use this section to set options related to the engine being used to solve the model, in the case of a simulation model, the Risk Solver Engine. In most cases, the default values are sufficient.",
8
+ "randomGenerator": "Lecuyer",
9
+ "samplingMethod": "Latin"
10
+ },
11
+ "uncertainVariables": {
12
+ "comment": "Enter uncertain variables in this section. Each uncertain variable models the portfolio return for that year, for example, e17 models the portfolio return for year 1, e18 models the portfolio return for year 2, etc.",
13
+ "e17": {
14
+ "formula": "PsiNormal(0.1,0.2)"
15
+ },
16
+ "e18": {
17
+ "formula": "PsiNormal(0.1,0.2)"
18
+ },
19
+ "e19": {
20
+ "formula": "PsiNormal(0.1,0.2)"
21
+ },
22
+ "e20": {
23
+ "formula": "PsiNormal(0.1,0.2)"
24
+ },
25
+ "e21": {
26
+ "formula": "PsiNormal(0.1,0.2)"
27
+ },
28
+ "e22": {
29
+ "formula": "PsiNormal(0.1,0.2)"
30
+ },
31
+ "e23": {
32
+ "formula": "PsiNormal(0.1,0.2)"
33
+ },
34
+ "e24": {
35
+ "formula": "PsiNormal(0.1,0.2)"
36
+ },
37
+ "e25": {
38
+ "formula": "PsiNormal(0.1,0.2)"
39
+ },
40
+ "e26": {
41
+ "formula": "PsiNormal(0.1,0.2)"
42
+ },
43
+ "e27": {
44
+ "formula": "PsiNormal(0.1,0.2)"
45
+ },
46
+ "e28": {
47
+ "formula": "PsiNormal(0.1,0.2)"
48
+ },
49
+ "e29": {
50
+ "formula": "PsiNormal(0.1,0.2)"
51
+ },
52
+ "e30": {
53
+ "formula": "PsiNormal(0.1,0.2)"
54
+ },
55
+ "e31": {
56
+ "formula": "PsiNormal(0.1,0.2)"
57
+ },
58
+ "e32": {
59
+ "formula": "PsiNormal(0.1,0.2)"
60
+ },
61
+ "e33": {
62
+ "formula": "PsiNormal(0.1,0.2)"
63
+ },
64
+ "e34": {
65
+ "formula": "PsiNormal(0.1,0.2)"
66
+ },
67
+ "e35": {
68
+ "formula": "PsiNormal(0.1,0.2)"
69
+ },
70
+ "e36": {
71
+ "formula": "PsiNormal(0.1,0.2)"
72
+ },
73
+ "e37": {
74
+ "formula": "PsiNormal(0.1,0.2)"
75
+ },
76
+ "e38": {
77
+ "formula": "PsiNormal(0.1,0.2)"
78
+ },
79
+ "e39": {
80
+ "formula": "PsiNormal(0.1,0.2)"
81
+ },
82
+ "e40": {
83
+ "formula": "PsiNormal(0.1,0.2)"
84
+ }
85
+ },
86
+ "data": {
87
+ "comment": "Organize constant parameters in this section.",
88
+ "c17": {
89
+ "comment": "Beginning 529 account balance.",
90
+ "value": 0
91
+ },
92
+ "i17": {
93
+ "value": 0.08
94
+ },
95
+ "d17": {
96
+ "comment": "D17:D33 are the yearly deposit amounts.",
97
+ "value": 10000
98
+ },
99
+ "d18": {
100
+ "value": 10000
101
+ },
102
+ "d19": {
103
+ "value": 10000
104
+ },
105
+ "d20": {
106
+ "value": 10000
107
+ },
108
+ "d21": {
109
+ "value": 10000
110
+ },
111
+ "d22": {
112
+ "value": 10000
113
+ },
114
+ "d23": {
115
+ "value": 10000
116
+ },
117
+ "d24": {
118
+ "value": 10000
119
+ },
120
+ "d25": {
121
+ "value": 10000
122
+ },
123
+ "d26": {
124
+ "value": 10000
125
+ },
126
+ "d27": {
127
+ "value": 10000
128
+ },
129
+ "d28": {
130
+ "value": 10000
131
+ },
132
+ "d29": {
133
+ "value": 10000
134
+ },
135
+ "d30": {
136
+ "value": 10000
137
+ },
138
+ "d31": {
139
+ "value": 10000
140
+ },
141
+ "d32": {
142
+ "value": 10000
143
+ },
144
+ "d33": {
145
+ "value": 10000
146
+ },
147
+ "d34": {
148
+ "comment": "D34:D40 are the yearly withdrawal amounts. The first child, Joe, will start college in year 18 and end in year 21. The second child, Ben, will start college in year 21 and end in year 24.",
149
+ "value": -75000
150
+ },
151
+ "d35": {
152
+ "value": -75000
153
+ },
154
+ "d36": {
155
+ "value": -75000
156
+ },
157
+ "d37": {
158
+ "comment": "This withdrawal is double as both children will be in college this year; Joe will be a Senior and Ben will be a Freshman.",
159
+ "value": -150000
160
+ },
161
+ "d38": {
162
+ "value": -75000
163
+ },
164
+ "d39": {
165
+ "value": -75000
166
+ },
167
+ "d40": {
168
+ "value": -75000
169
+ }
170
+ },
171
+ "formulas": {
172
+ "comment": "F17:F40 calculate the portfolio gain or loss for each year. C18:C40 calculate the beginning account balance for each year. ",
173
+ "f17": {
174
+ "formula": "IF((C17+D17)<0,(C17+D17)*$I$17,(C17+D17)*E17)"
175
+ },
176
+ "c18": {
177
+ "formula": "G17"
178
+ },
179
+ "f18": {
180
+ "formula": "IF((C18+D18)<0,(C18+D18)*$I$17,(C18+D18)*E18)"
181
+ },
182
+ "c19": {
183
+ "formula": "G18"
184
+ },
185
+ "f19": {
186
+ "formula": "IF((C19+D19)<0,(C19+D19)*$I$17,(C19+D19)*E19)"
187
+ },
188
+ "c20": {
189
+ "formula": "G19"
190
+ },
191
+ "f20": {
192
+ "formula": "IF((C20+D20)<0,(C20+D20)*$I$17,(C20+D20)*E20)"
193
+ },
194
+ "c21": {
195
+ "formula": "G20"
196
+ },
197
+ "f21": {
198
+ "formula": "IF((C21+D21)<0,(C21+D21)*$I$17,(C21+D21)*E21)"
199
+ },
200
+ "c22": {
201
+ "formula": "G21"
202
+ },
203
+ "f22": {
204
+ "formula": "IF((C22+D22)<0,(C22+D22)*$I$17,(C22+D22)*E22)"
205
+ },
206
+ "c23": {
207
+ "formula": "G22"
208
+ },
209
+ "f23": {
210
+ "formula": "IF((C23+D23)<0,(C23+D23)*$I$17,(C23+D23)*E23)"
211
+ },
212
+ "c24": {
213
+ "formula": "G23"
214
+ },
215
+ "f24": {
216
+ "formula": "IF((C24+D24)<0,(C24+D24)*$I$17,(C24+D24)*E24)"
217
+ },
218
+ "c25": {
219
+ "formula": "G24"
220
+ },
221
+ "f25": {
222
+ "formula": "IF((C25+D25)<0,(C25+D25)*$I$17,(C25+D25)*E25)"
223
+ },
224
+ "c26": {
225
+ "formula": "G25"
226
+ },
227
+ "f26": {
228
+ "formula": "IF((C26+D26)<0,(C26+D26)*$I$17,(C26+D26)*E26)"
229
+ },
230
+ "c27": {
231
+ "formula": "G26"
232
+ },
233
+ "f27": {
234
+ "formula": "IF((C27+D27)<0,(C27+D27)*$I$17,(C27+D27)*E27)"
235
+ },
236
+ "c28": {
237
+ "formula": "G27"
238
+ },
239
+ "f28": {
240
+ "formula": "IF((C28+D28)<0,(C28+D28)*$I$17,(C28+D28)*E28)"
241
+ },
242
+ "c29": {
243
+ "formula": "G28"
244
+ },
245
+ "f29": {
246
+ "formula": "IF((C29+D29)<0,(C29+D29)*$I$17,(C29+D29)*E29)"
247
+ },
248
+ "c30": {
249
+ "formula": "G29"
250
+ },
251
+ "f30": {
252
+ "formula": "IF((C30+D30)<0,(C30+D30)*$I$17,(C30+D30)*E30)"
253
+ },
254
+ "c31": {
255
+ "formula": "G30"
256
+ },
257
+ "f31": {
258
+ "formula": "IF((C31+D31)<0,(C31+D31)*$I$17,(C31+D31)*E31)"
259
+ },
260
+ "c32": {
261
+ "formula": "G31"
262
+ },
263
+ "f32": {
264
+ "formula": "IF((C32+D32)<0,(C32+D32)*$I$17,(C32+D32)*E32)"
265
+ },
266
+ "c33": {
267
+ "formula": "G32"
268
+ },
269
+ "f33": {
270
+ "formula": "IF((C33+D33)<0,(C33+D33)*$I$17,(C33+D33)*E33)"
271
+ },
272
+ "c34": {
273
+ "formula": "G33"
274
+ },
275
+ "f34": {
276
+ "formula": "IF((C34+D34)<0,(C34+D34)*$I$17,(C34+D34)*E34)"
277
+ },
278
+ "c35": {
279
+ "formula": "G34"
280
+ },
281
+ "f35": {
282
+ "formula": "IF((C35+D35)<0,(C35+D35)*$I$17,(C35+D35)*E35)"
283
+ },
284
+ "c36": {
285
+ "formula": "G35"
286
+ },
287
+ "f36": {
288
+ "formula": "IF((C36+D36)<0,(C36+D36)*$I$17,(C36+D36)*E36)"
289
+ },
290
+ "c37": {
291
+ "formula": "G36"
292
+ },
293
+ "f37": {
294
+ "formula": "IF((C37+D37)<0,(C37+D37)*$I$17,(C37+D37)*E37)"
295
+ },
296
+ "c38": {
297
+ "formula": "G37"
298
+ },
299
+ "f38": {
300
+ "formula": "IF((C38+D38)<0,(C38+D38)*$I$17,(C38+D38)*E38)"
301
+ },
302
+ "c39": {
303
+ "formula": "G38"
304
+ },
305
+ "f39": {
306
+ "formula": "IF((C39+D39)<0,(C39+D39)*$I$17,(C39+D39)*E39)"
307
+ },
308
+ "c40": {
309
+ "formula": "G39"
310
+ },
311
+ "f40": {
312
+ "formula": "IF((C40+D40)<0,(C40+D40)*$I$17,(C40+D40)*E40)"
313
+ }
314
+ },
315
+ "uncertainFunctions": {
316
+ "comment": "G17:G40 calculate the account's ending balance for each year. The mean for each year will be included in the results. For the last year, G40, the Target(0) function is used to calculate the probability that the account will have a balance of 0 at the end of the last year. ",
317
+ "g40": {
318
+ "formula": "C40+D40+F40 +PsiOutput()",
319
+ "trials": [],
320
+ "Target(0)": [],
321
+ "mean": []
322
+ },
323
+ "g17": {
324
+ "formula": "C17+D17+F17",
325
+ "mean": []
326
+ },
327
+ "g18": {
328
+ "formula": "C18+D18+F18",
329
+ "mean": []
330
+ },
331
+ "g19": {
332
+ "formula": "C19+D19+F19",
333
+ "mean": []
334
+ },
335
+ "g20": {
336
+ "formula": "C20+D20+F20",
337
+ "mean": []
338
+ },
339
+ "g21": {
340
+ "formula": "C21+D21+F21",
341
+ "mean": []
342
+ },
343
+ "g22": {
344
+ "formula": "C22+D22+F22",
345
+ "mean": []
346
+ },
347
+ "g23": {
348
+ "formula": "C23+D23+F23",
349
+ "mean": []
350
+ },
351
+ "g24": {
352
+ "formula": "C24+D24+F24",
353
+ "mean": []
354
+ },
355
+ "g25": {
356
+ "formula": "C25+D25+F25",
357
+ "mean": []
358
+ },
359
+ "g26": {
360
+ "formula": "C26+D26+F26",
361
+ "mean": []
362
+ },
363
+ "g27": {
364
+ "formula": "C27+D27+F27",
365
+ "mean": []
366
+ },
367
+ "g28": {
368
+ "formula": "C28+D28+F28",
369
+ "mean": []
370
+ },
371
+ "g29": {
372
+ "formula": "C29+D29+F29",
373
+ "mean": []
374
+ },
375
+ "g30": {
376
+ "formula": "C30+D30+F30",
377
+ "mean": []
378
+ },
379
+ "g31": {
380
+ "formula": "C31+D31+F31",
381
+ "mean": []
382
+ },
383
+ "g32": {
384
+ "formula": "C32+D32+F32",
385
+ "mean": []
386
+ },
387
+ "g33": {
388
+ "formula": "C33+D33+F33",
389
+ "mean": []
390
+ },
391
+ "g34": {
392
+ "formula": "C34+D34+F34",
393
+ "mean": []
394
+ },
395
+ "g35": {
396
+ "formula": "C35+D35+F35",
397
+ "mean": []
398
+ },
399
+ "g36": {
400
+ "formula": "C36+D36+F36",
401
+ "mean": []
402
+ },
403
+ "g37": {
404
+ "formula": "C37+D37+F37",
405
+ "mean": []
406
+ },
407
+ "g38": {
408
+ "formula": "C38+D38+F38",
409
+ "mean": []
410
+ },
411
+ "g39": {
412
+ "formula": "C39+D39+F39",
413
+ "mean": []
414
+ }
415
+ }
416
416
  }