TwoStageDeterministic : Deterministic Two-stage program.

**Description**

TwoStageDetermistic.gms: Deterministic Two-stage program. Consiglio, Nielsen and Zenios. PRACTICAL FINANCIAL OPTIMIZATION: A Library of GAMS Models, Section 6.3.1 Last modified: Apr 2008.

**Category :** GAMS FIN library

**Mainfile :** TwoStageDeterministic.gms

```
$TITLE Deterministic Two-stage program
* TwoStageDetermistic.gms: Deterministic Two-stage program.
* Consiglio, Nielsen and Zenios.
* PRACTICAL FINANCIAL OPTIMIZATION: A Library of GAMS Models, Section 6.3.1
* Last modified: Apr 2008.
SET Assets Available assets
/Stock, Put_1, Call_1, Put_2, Call_2/;
SET Assets_1(Assets) Assets available up to the end of the first period
/Stock, Put_1, Call_1/;
SET Assets_2(Assets) Assets available up to the end of the second period
/Stock, Put_2, Call_2/;
ALIAS (Assets, i );
ALIAS (Assets_1, j);
ALIAS (Assets_2, k);
PARAMETER P_1(j) Asset prices at the beginning of the first time period
/Stock = 43,
Put_1 = 0.81,
Call_1 = 4.76/;
PARAMETER P_2(i) Asset prices (values) at the beginning of the second time period
/Stock = 44,
Put_1 = 4,
Call_1 = 0,
Put_2 = 0.92,
Call_2 = 4.43/;
PARAMETER F(k) Asset prices (values) at the end of the second time period
/Stock = 48,
Put_2 = 8,
Call_2 = 0/;
POSITIVE VARIABLES
x(j) First-stage (or first-period) holdings
y(k) Second-stage (or second-period) holdings;
VARIABLE
z Objective function value;
EQUATIONS
BudgetCon Equation defining the budget contraint
ObjDef Objective function definition
MinReturnCon Equation defining the minimum return contraint
RebalanceCon Equation defining the rebalance contraint;
ObjDef .. z =E= SUM(k, F(k) * y(k));
BudgetCon .. SUM(j, P_1(j) * x(j)) =L= 10000;
MinReturnCon .. SUM(k, F(k) * y(k)) =G= 11500;
RebalanceCon .. SUM(j, P_2(j) * x(j)) =G= SUM(k, P_2(k) * y(k));
MODEL DeterministicTwoStage /ALL/;
SOLVE DeterministicTwoStage MAXIMIZING z USING LP;
DISPLAY x.l,z.l;
```