I.                   MONOPOLY GAME

 

  1. Designing Monopoly with uniformly distributed valuations with

( Right click on a Game: 10_Monopoly_uniform_distribution_10_20_market.mgd to download it)

 

NOTE: Function editor can be accessed with mouse right click.

1.  Adding

 

a.                  Drag and drop Two  icons into a design window.

b.                  Click on the  to select it.

c.                  Double click on  to rename it to .

d.                  Open the  window by double clicking on the edge of the icon or click on to edit the condition. By default the window is empty:

 

e.                  The condition has to be a Boolean type (i.e. true or false).

 

f.                    Double click into   and right mouse click  to access Function editor .

 

 

·               Write the condition directly or with the help of Assistant editor.

·                Condition: subject_number()=1 means that a subject with number one is assigned a . A subject is assigned a consecutive number after login to the game. The first player to login is assigned number 1, the second player to login is assigned number 2. In the monopoly game we want only one seller, and the condition that “subject_number()=1” means that the first subject who connects to the game will be assigned a  .

 

·                Select Assignment 2 as a next assignment (i.e. if subject_number()=1 is false then go to Assignment2)

 

 

 

 

·                    The result is the link between  and :

·                     Double click on  and change the name to

·                    Condition for  is empty. It means that everybody else except the subject number 1 is assigned a buyer.

·                     The program checks the condition from a starting assignment which is determined with a lighter green color. By default the first assignment created has a lighter color. If you delete that assignment or you want to start from another assignment select that player and then click on .

 

 

2. Adding .

 

a.             Create  as follows:

·                                            Drag and drop a  and rename it to

·                                            Open  by double clicking on the edge of the icon or by selecting  and clicking on .

·                                             Select

·                                             For the initial value write Uniform(10,20) which means that the valuation will be drawn from uniform distribution with minimum 10 and maximum 20.

·                                             Select  in order for each subject to get a different draw.

 

 

·                     Create  with the following properties:

-  

 

-   . Seller’s marginal cost is 10 in this example.

 

 

 

b.                 Create  and  with the following properties:

·                     Select  

 

·                                            Select  in order to associate profit with each subject.

 

Profit calculation will be shown on the trading window.

 

 

3. Adding .

a.       Drag and drop  into a design window to create a market.

b.      Double click on  to rename it to . Note this is not necessary. Markets can be named by the default name.

 

c.       Open   by double clicking on the edge or by selecting  and clicking on  to choose a tick size:

 

4. Open  to update the trading conditions for each player

a. Open . The  () options are updated once an  is created in the following way:

 

b. The following conditions should be selected or written in for the .

-  . Cash allows subjects to buy items. Subjects would be able to purchase items up to the cash amount stated in the . In our case a  is not allowed to buy, and for that reason no cash is necessary.

- Select  because  is allowed only to sell the item. (The other trading options for selling are:  . It means that a seller can not set a price. The current best price at the market determines the sale’s price. A seller can only change the quantity she is willing to sell.  allows a seller to select to sell to a particular outstanding buyer not to the buyer with the best price. Similar explanation can be given for buying. )

- Choose  that a  starts with. Without a starting endowment she cannot sell items.

- Write . In our example Marginal cost is seller’s valuation. In order to access the Function editor right mouse click in the edit space and select the .

- Graph variables: Select  and  under “graph variables”: . The selected variables will be graphed for a particular market if the graph option was selected on that market.

c. In order for and  to be calculated they have to be defined under  because they are determined with any transaction change.

- click on  and select the appropriate Transaction event variables. Then write a condition for each of them:

 

 

    •  is written as price() – Marginal cost.  calculates just a profit per unit, and it always shows a profit for a current transaction. price() is a market function that can be found in the Function editor:

    •  calculates the cumulative profit taking into account all the units sold by multiplying (price() – Marginal cost) with quantity() which is also a program function. quantity() stands for the quantity transacted.

 

 

a. Open . () options are updated once an  is created in the following way:

 

Note: Only the differences from a seller conditions will be elaborated below.

b. The following conditions should be selected or written in for the .

-  . Cash allows subjects to buy items. Subjects would be able to purchase items up to the cash amount stated in the  . In our case a  needs cash in order to purchase items.

- Select  for the  because  is not allowed to change the price. She can only buy at the current best price that a seller stated.

- No  is needed.

- Write . Each subject gets a different draw. In order to access the Function editor right mouse click in the edit space and select the Valuation.

- Write  condition to prevent  to buy more than one unit.

- Graph variables: Select  and  under “graph variables”: .

 

c. In order for and  to be calculated they have to be defined under  because they are determined with any transaction change.

- click on  and select the appropriate Transaction event variables. Then write a condition for each of them:

 

 

 

5. Determining number of subjects to play the market game

a. On the right side of the design window select the number of subjects that should play this game.

b. Options:

-  means that a number of subjects for this game is not limited. Any subject connected to the game can play and all subjects will be assigned to the same session.

-  means that only 6 subjects are in one market session. When the seventh subject connects the game she is assigned to a new session that requires in total 6 subjects for the second session to be played.

 

 

  1. Designing Monopoly with known valuations with

 

( Right click on a Game: 09_Monopoly_known_valuation_market_no_update.mgd

to download it)

Note only changes to the previous game are defined.

a.                  This game assigns the first subject to login a value of 10, the next subject a value of 11,…

The following changes has to be made:

-                                                    Under valuation write:

Given that the first subject assigned to a  will have a number 2 (i.e. defined with the condition subject_number()>1) the first subject who logins will have a valuation 10.

  1. Under  change the expression for  to reflect that we did not define a variable :

 

 

  1. Designing Monopoly with known valuations with  and

 

( Right click on a Game: 09_Monopoly_known_valuation_market.mgd

to download it). This game has exactly the same characteristics as the game

09_Monopoly_known_valuation_market_no_update.mgd” except that we created

a   to define the expression: subject_numner() + 8

Note only changes to the previous game are defined.

 

a.       Create  as follows:

-                                                                Drag and drop a  and rename it to

-                                                               Open  by double clicking on the edge of the icon or by selecting  and clicking on .

-                                                                Write the expression:

So each subject gets a different draw.

 

-                                                               In this design we have 11 subjects. A seller will have valuation 10, and the buyers’ valuation will be a consecutive numbers from 10 to 20. However we cannot write condition subject_number()+8 in initial value for the variable because it depends on

 

b.                              Open  and write the  function for the valuation:

 (Access this function from Function editor:

c.                              Change the conditions for  under :

by using valuation() function that you created.

Make sure to select  next to  so that the calculation for a unit profit us used in Profit cumulative.

 

 

 

  1. Designing Monopoly with durable goods with known valuations with  and

( Right click on a Game: 13_known_valuation_durable_good_market.mgd

to download it).

Note only the changes to previous games are defined.

a. The only difference is how the Profit  current is calculated under :

·  The Profit current has to be multiplied with the proportion of the time left in the game and the duration of the game to account that delaying the purchase of the good is costly.

· Function time_left() is the program function. Mouse right click to access function editor and time_left() is one of the functions in the second column.

 

 

· Note (((Valuation()-price())/120)*time_left().

Valuation minus the price was first divided by 120 (game duration) and then multiplied by time left in the game. If we write the following expression instead (((Valuation()-price()))*(time_left()/120) we will receive zero, because division of two integers is an integer.

 

 

 

  1. Designing Monopoly with resale durable goods with known valuations with  and

( Right click on a Game: 13_Resale_known_valuation_durable_good_market.mgd

to download it).

Note only the changes to previous games are defined.

 

Only  conditions change.

 

a.  On the first page  can not only market buy but she can sell after purchasing goods. When selling  can set its own price:

b. On  page Profit current calculation differs:

 

 

·   buys a product and is able to sell a product(s).

· is_seller() function identifies if a  was a seller in a particular transaction.

·  The expression:

· if(is_seller(),(price()-Price),(( (Valuation()- price()))/120)*(time_left()))

states that if a buyer sells an item, the profit per unit will be current price  minus the  price at which  bought the item. If  purchases the item then profit is valuation minus the current price discounted by the ratio between time left in the game and duration of the game.