close
Warning:
Can't synchronize with repository "(default)" (/var/svn/mms does not appear to be a Subversion repository.). Look in the Trac log for more information.
- Timestamp:
-
Jul 11, 2014, 11:23:55 AM (11 years ago)
- Author:
-
josp
- Comment:
-
--
Legend:
- Unmodified
- Added
- Removed
- Modified
-
v1
|
v1
|
|
| 1 | El siguiente pseudo-código ilustra como generar un forecast basado en un escenario |
| 2 | |
| 3 | {{{ |
| 4 | #!java |
| 5 | // Preparamos los datos nuevos: |
| 6 | |
| 7 | Serie data = v::GetData(?); // Datos originales |
| 8 | |
| 9 | Serie dataE = v::GetData.Extended(?) // Datos extendidos con la regla de extensión |
| 10 | Text extRule = v::GetExtensionRule(?) // Regla de extensión |
| 11 | // Manualmente puede extenderse así: |
| 12 | Serie MMS::ExtendSerie_Rule(data, First(dataE), Last(dataE), extRule); |
| 13 | |
| 14 | // Usamos los datos extendidos para crear nuestro escenario: |
| 15 | Serie dataMod = dataE * Gaussian(1.0, 0.2, Dating(dataE)); |
| 16 | |
| 17 | Set scenarioData = { [[ |
| 18 | PutName(vName, dataMod) |
| 19 | ]] }; |
| 20 | |
| 21 | // Creamos el v-scenario: |
| 22 | |
| 23 | // Creamos un escenario a la variable con los datos que consideremos: |
| 24 | NameBlock vs = v::CreateVScenario([[ |
| 25 | Text _.name = scenarioName; |
| 26 | Text _.expression = "Serie scenarioData::"<<v::GetName(?) |
| 27 | ]]); |
| 28 | // La serie usada en la previsión será: |
| 29 | Serie v::GetData_Scenarios([[scenarioName]]); |
| 30 | Serie data >> dataMod; // los datos reales priman sobre el escenario |
| 31 | |
| 32 | // ----------------------- |
| 33 | |
| 34 | // Actualizamos el forecast |
| 35 | Real forecast::Update_Scenarios([[scenarioName]]); |
| 36 | // Hacemos esto cada vez que cambiemos la serie (o series) de "scenarioData" |
| 37 | |
| 38 | }}} |