Investments
Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)
WHAT IS IT?
This model is a simple activity designed to teach compound interest. Students have a choice between investing their money with a teacher-controlled interest rate or using their money to purchase a car at a teacher defined price.
HOW TO USE IT
Quickstart Instructions:
Teacher: Follow these directions to run the HubNet activity. Optional: Zoom In (see Tools in the Menu Bar) Teacher: Open up the HubNet Control Center (see Tools in the Menu Bar). This will show you the IP Address of this computer. Everyone: Open up a HubNet Client on your machine and input the IP Address of this computer, type your user name in the user name box, and press ENTER.
Teacher: Setup the activity by selecting a cost for cars and an interest rate using the CAR-COST and INTEREST-RATE sliders and press the GO button. Everyone: Decide how to use your money by either investing, adjusting the FRACTION-TO-INVEST slider and pressing the INVEST button, or buying a car with the BUY-CAR button.
Teacher: Press the NEXT-ROUND button. Students who have invested will receive the calculated interest.
Teacher: To the activity again with the same group, press the SETUP button to return all students back to the initial conditions. To run the activity with a different group of students press the RESET button in the Control Center and follow these instructions from the beginning.
Buttons:
RESET - Returns all current users to the initial state. This should be used to restart the activity. GO - runs the activity NEXT-ROUND - Students who have invested will receive the calculated interest and all students will be given the option to invest again.
Sliders:
CAR-COST - Sets the cost of each car. INTEREST-RATE - Sets the interest rate for all investors.
Monitors:
ROUND - Indicates the number of investment rounds have already been completed.
Client Information
After logging in, if GO is pressed in NetLogo the client interface will appear for the students and the student will be assigned a turtle and 100 dollars which will be displayed in the MY MONEY monitor. The current round will be displayed in the ROUND monitor starting out with one. The money they have currently invested will appear in the INVESTMENT monitor, the return from their previous investment will be in the INVESTMENT-RETURN monitor, and the number of cars they own will be in the CARS monitor. These will all be initialized to zero.
Each round the student manages their money by either selecting a fraction to invest with the FRACTION-TO-INVEST slider and pressing the INVEST button, or buying a car with the BUY-CAR button.
THINGS TO NOTICE
There are at least two possible ways to run this model with a a group of students. One way is to tell students the number of rounds in the activity. Another way is not to tell them. If you try both ways, students may realize that it is important to figure out a strategy, and that knowing how the market behaves is helpful for choosing a strategy. Other activity options are to change the cost of the car and/or the interest rate in the middle of the activity. Note the difference between these two changes. Students know the price of a car before buying it. But students who invest money are taking a risk, because the teacher can wait for everyone to invest and only then change the interest rate. If students think this is unfair, they should discuss what the rules of the game should be and how these rules would reflect (or not) a real market.
THINGS TO TRY
The teacher should try both telling students the number of rounds in the activity and ending after a randomly selected number of rounds without informing the students. The students should think about how they should adjust their strategy for each set of conditions. The teacher should also adjust the interest rate and the cost of a car throughout the game to simulate an indeterminate market.
EXTENDING THE MODEL
Currently all of the conditions of the world are controlled by input from the teacher; these variables, cost of car, interest rate, and number of rounds, could be controlled automatically by the model. There is only one type of investment now, try adding low or high risk investments so the rate of return is not always the same.
RELATED MODELS
Public Good
HOW TO CITE
If you mention this model in a publication, we ask that you include these citations for the model itself and for the NetLogo software:
- Wilensky, U. (2004). NetLogo HubNet Investments model. http://ccl.northwestern.edu/netlogo/models/HubNetInvestments. Center for Connected Learning and Computer-Based Modeling, Northwestern Institute on Complex Systems, Northwestern University, Evanston, IL.
- Wilensky, U. (1999). NetLogo. http://ccl.northwestern.edu/netlogo/. Center for Connected Learning and Computer-Based Modeling, Northwestern Institute on Complex Systems, Northwestern University, Evanston, IL.
COPYRIGHT AND LICENSE
Copyright 2004 Uri Wilensky.
This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA.
Commercial licenses are also available. To inquire about commercial licenses, please contact Uri Wilensky at uri@northwestern.edu.
This activity and associated models and materials were created as part of the projects: PARTICIPATORY SIMULATIONS: NETWORK-BASED DESIGN FOR SYSTEMS LEARNING IN CLASSROOMS and/or INTEGRATED SIMULATION AND MODELING ENVIRONMENT. The project gratefully acknowledges the support of the National Science Foundation (REPP & ROLE programs) -- grant numbers REC #9814682 and REC-0126227.
Comments and Questions
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Variable and Breed declarations ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; globals [ quick-start ;; current quickstart instruction displayed in the quickstart monitor qs-item ;; index of the current quickstart instruction qs-items ;; list of quickstart instructions ] breed [ students student ] students-own [ user-id ;; the name selected by each user fraction ;; the fraction of current money the user has selected to invest investment ;; the amount the user has invested my-money ;; the money that the user currently has to use return-investment ;; the interest plus the principle returned on the investment cars ;; the number of cars purchased invested? ;; boolean variable indicating whether the user has invested this round ] ;;;;;;;;;;;;;;;;;;;;; ;; Setup Functions ;; ;;;;;;;;;;;;;;;;;;;;; to startup ca ask patches [ set pcolor gray ] hubnet-reset end ;; reset all the clients to begin the activity again to setup reset-ticks ask students [ reset-client send-info-to-clients ] end ;;;;;;;;;;;;;;;;;;;;;;; ;; Runtime Functions ;; ;;;;;;;;;;;;;;;;;;;;;;; to go every .1 [ listen-clients ] ;; get commands and data from the clients end ;; move on the the next round, calculate interest and update the variables on the clients to next-round tick ask students [ update-student ] end ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; Code for interacting with the clients ;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;; standard hubnet procedure to collect data sent by clients to listen-clients while [ hubnet-message-waiting? ] [ hubnet-fetch-message ifelse hubnet-enter-message? [ create-new-student display ] [ ifelse hubnet-exit-message? [ remove-student display ] [ execute-command hubnet-message-tag ] ] ] end ;; interpret each hubnet message as a command to execute-command [command] if command = "fraction-to-invest" ;; every time a student adjusts their fraction to invest button update the turtle variable [ ask students with [user-id = hubnet-message-source] [ if (invested? = false) [ set fraction hubnet-message ] ] ] if command = "invest" [ ask students with [user-id = hubnet-message-source] ;; when the student press the INVEST button move the money from My Money into investment [ if (invested? = false) ;; students may only invest once per round [ set investment my-money * fraction set my-money my-money - investment set return-investment 0 hubnet-send user-id "investment" precision investment 2 hubnet-send user-id "My Money" precision my-money 2 hubnet-send user-id "investment-return" precision return-investment 2 set invested? true ] ] ] if command = "buy-car" [ ask students with [user-id = hubnet-message-source] [ if (my-money >= car-cost) [ set cars cars + 1 set my-money my-money - car-cost hubnet-send user-id "cars" cars hubnet-send user-id "My Money" precision my-money 2 ] ] ] end ;; manage the turtles as clients enter and exit to create-new-student let p one-of patches with [ count neighbors = 8 and not any? turtles-here and not any? neighbors4 with [ any? turtles-here ] ] ifelse p = nobody [ user-message "All of the spaces in the view are full, no more students can join." ] [ create-students 1 [ setup-student-vars p reset-client send-info-to-clients ] ] end to remove-student ask students with [user-id = hubnet-message-source] [ die ] end ;; sets the turtle variables to appropriate initial values ;;;;;;;;;;;;;;;;;;;;;;; ;; Turtle Procedures ;; ;;;;;;;;;;;;;;;;;;;;;;; ;; setup the visual components of each turtle to setup-student-vars [ p ] set user-id hubnet-message-source set shape "circle" set color one-of [ red blue pink cyan green ] set label-color black setxy [pxcor] of p + 0.5 [pycor] of p set label word user-id ", " end ;; initialize the turtle variables to reset-client set my-money 100 set invested? false set return-investment 0 set cars 0 set label ( word user-id ", " precision my-money 2 ) end ;; calculate investments and send the results to the clients to update-student set return-investment ( investment * ( interest-rate + 1 ) ) set my-money ( my-money + return-investment ) set label ( word user-id ", " precision my-money 2 ", " cars) set invested? false set investment 0 send-info-to-clients end ;; send the appropriate monitor information back to the client to send-info-to-clients hubnet-send user-id "I am:" user-id hubnet-send user-id "Round" ticks hubnet-send user-id "My Money" precision my-money 2 hubnet-send user-id "investment" precision investment 2 hubnet-send user-id "investment-return" precision return-investment 2 hubnet-send user-id "cars" cars end ; Copyright 2004 Uri Wilensky. ; See Info tab for full copyright and license.
There are 7 versions of this model.
Attached files
File | Type | Description | Last updated | |
---|---|---|---|---|
Investments.png | preview | Preview for 'Investments' | over 11 years ago, by Uri Wilensky | Download |
This model does not have any ancestors.
This model does not have any descendants.