leverage.nlogo

No preview image

This model is seeking new collaborators — would you please help?

1 collaborator

Thai_visa_cr Carl Snare (Author)

Tags

debt 

"relates to positive and negative financial leverage"

Tagged by Carl Snare over 6 years ago

Visible to everyone | Changeable by everyone
Model was written in NetLogo 6.0.1 • Viewed 269 times • Downloaded 23 times • Run 0 times
Download the 'leverage.nlogo' modelDownload this modelEmbed this model

Do you have questions or comments about this model? Ask them here! (You'll first need to log in.)


WHAT IS IT?

The model looks at financial leverage, risk, reward and outcomes from portfolios of three different types: CONSERVATIVE-INVESTORS, MODERATE-INVESTORS, and AGRESSIVE-INVESTORS. Investors use their INITIAL-WEALTH to fund a PORTFOLIO-CASH fund and to buy EARNING-ASSETS. Cash is assumed to be a non-earning asset in the investor's portfolio. Based on their randomly assigned RISK-TOLERANCE investors may obtain loans from lenders to buy more securities.

Lenders charge DEBT-INTEREST and limit their loans to a certain percentage of the investors assets, which are pledged as security. LOAN-INTEREST-RATE and PORTFOLIO SECURITIES ARE set from sliderS by risk level). The objective is to see what changes in investor WEALTH take place for the three levels of RISK-TOLERANCE given the existence of positive or negative leverage. If the cost to borrow exceeds the income earned, there is negative leverage and the investor eventually goes broke.

HOW IT WORKS

The setup for the model initializes variables and randomly assigns investor RISK-TOLERANCE levels. Sliders provide values for the number of PEOPLE (investors), INITIAL-WEALTH of investors, along with and DEBT-INTEREST-RATE rate. Assignment of RISK-TOLEERANCE utilizes a random number generator.

Investors in the model: invest in a portfolio of cash and marketable securities; borrowing if their risk-tolerance permits. The securities portion of their portfolio earns income and any debt bears an interest cost. Everyone starts with the same amount of INITIAL-WEALTH.

HOW TO USE IT

The sliders determine how many investors there are, how much they have in initial wealth, and what the loan interest rate will be on any borrowing they do. The INITIAL-WEALTH slider sets the amount of money each investor starts out with. The PEOPLE slider sets the number of investors that will be created in the model when the SETUP button is pressed. The SETUP button resets the model: it initializes the variables, sets the color of the patches and the shape of the investors. It randomly assigns risk-tolerance levels to the investors. The GO button starts and stops the running of the model and the plotter.

There are monitors in the interface to help the user see what is happening to investor wealth, debt and net income. WEALTH & DEBT shows the total amount of equity currently owned and the amount of debt being incurred. WEALTH & NET INCOME shows is the amount the bank has lent out, BANK-TO-LOAN is the amount that the bank has available for loan, and BANK-RESERVES is the amount the bank has been mandated to keep in reserve. When the bank must recall loans (i.e. after the reserve ratio has been raised) BANK-TO-LOAN will read a negative amount until enough of the lent money has been paid off. WALLETS-TOTAL gives an indication of the total amount of money kept in peoples' wallets. This figure may also be negative at times when the bank has no money to loan (the turtle will maintain at a negative wallet balance until a loan is possible). MONEY-TOTAL indicates the total-amount of money currently in the economy (SAVINGS-TOTAL + WALLETS-TOTAL). Because WALLETS-TOTAL is generally kept at 0 in this model (we are assuming that everyone deposits all they can in savings), MONEY-TOTAL and SAVINGS TOTAL tend to be the the same.

A person's color tells us which risk profile it is in.

THINGS TO NOTICE

All investors begin with the same amount of wealth, but with different portfolio compositions. Only two of the three investor risk-tolerance profiles can borrow money, which they do to the maximum available degree. Lenders only make loans with a pledge of assets in percentages based on historical numbers. Portfolios are broken down into two parts: an earning part (securities) and a non-earning cash part. Cash doesn't earn anything in this model, so having more of it reduces the total portfolio return. The earnings rate on securities is based on historical figures and with the addition of non-earning cash the total portfolio earnings rate will be somewhat less.

When portfolio earnings rate is greater than the loan interest rate, the effect on net income is positive. If it is less, the effect is negative. Where they equal each other, the effect is neutral. This model does not consider the effect of taxes on outcomes.

THINGS TO TRY

Vary the interest rates and see what the effect this has on WEALTH.

Set EARNINGS-RATE initially to 10, and watch the effect on WEALTH. Now try lowering EARNINGS-RATE so it equals the selected LOAN-INTEREST-RATE. If the cost of debt exceeds the EARNINGS-RATE there is a negative effect on WEALTH. Exogenous changes to those rates can increase financial risk.

EXTENDING THE MODEL

Try extending the model to include changes in the market value of the investor's portfolio, where the lender requires more or less security for their loans. Financial leverage is a source of systemic risk in the world economy.

This model has turtles interact in a very simple way and earnings are before taxes. You could add taxation of income and see what effect that might have on use of leverage.

RELATED MODELS

This model was created based on BANK RESERVES in the NetLogo library.

HOW TO CITE

This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License. To view a copy of this license, visit https://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.

Comments and Questions

Please start the discussion about this model! (You'll first need to log in.)

Click to Run Model

globals [
  bank-loans
  new-loan
  x-max
  y-max
]


turtles-own [
  assets
  debt
  income
  interest-expense
  net-income
  portfolio-investments
  portfolio-cash
  risk-tolerance
  wealth
  ]

to setup
  clear-all
  ask turtles [initialize-variables]
  ask patches [set pcolor green]
  set-default-shape turtles "person"
  create-turtles people [setup-turtles]
  set x-max 300
  set y-max 300
  reset-ticks
end 

to initialize-variables
  set bank-loans 0
  set new-loan 0
  set assets initial-wealth
  set debt 0
  set income 0
  set interest-expense 0
  set net-income 0
  set portfolio-investments 0
  set portfolio-cash initial-wealth
  set risk-tolerance 0
  set wealth initial-wealth
end 

to setup-turtles   ;; turtle procedure
  setxy random-xcor random-ycor

  ;; setup three risk-preferences
  set risk-tolerance random 3
    ;; 0 = conservative, 1 = moderate, 2 = agressive investors

    if risk-tolerance = 0 [
      set color black
        ;; 20% of portfolio is in cash
      set portfolio-cash (initial-wealth * .2)
        ;; 80% of portfolio is in earning assets
      set portfolio-investments (initial-wealth - portfolio-cash)
        ;; total assets of investor
      set assets (portfolio-cash + portfolio-investments)
        ;; wealth is the investors equity
      set wealth (assets - debt)
    ]

    if risk-tolerance = 1 [
      set color white
        ;; 10% of portfolio is in cash
      set portfolio-cash (initial-wealth * .1)
        ;; 90% of portfolio is in earning assets
      set portfolio-investments (initial-wealth - portfolio-cash)
      set assets (portfolio-cash + portfolio-investments)
      set wealth (assets - debt)
    ]

    if risk-tolerance = 2 [
      set color red
        ;; 5% of portfolio is in cash
      set portfolio-cash (initial-wealth * .05)
        ;; 95% of portfolio is in earning assets
      set portfolio-investments (initial-wealth - portfolio-cash)
      set assets (portfolio-cash + portfolio-investments)
      set wealth (assets - debt)
    ]
end 

to go
  ;; Update balances from time period (t-1)
  ask turtles [ update ]

    ask turtles [
      if risk-tolerance = 0 [
        set interest-expense (debt * (loan-interest-rate / 100))
        set net-income (income - interest-expense)
          ;; earnings before interest and taxes
        set income (assets * (earnings-rate / 100))
          ;; total assets of investor
        set assets (portfolio-cash + portfolio-investments)
        set wealth (assets)    ;; net worth of investor
      ]
    ]

    ask turtles [
      if risk-tolerance = 1 [

        set income ((earnings-rate / 100) * portfolio-investments)
        set interest-expense (debt * (loan-interest-rate / 100))
        set net-income (income - interest-expense)
        set wealth (wealth + income)
          ;; lender makes an 80% loan against assets of moderate investor
        set new-loan (income * .8)
        set debt (debt + new-loan)
        set assets (debt + wealth)
        if wealth <= 0 [die]   ;; if wealth goes negative, turtle dies
      ]
    ]

    ask turtles [
      set income ((earnings-rate / 100) * portfolio-investments)
        set interest-expense (debt * (loan-interest-rate / 100))
        set net-income (income - interest-expense)
        set wealth (wealth + income)
          ;; lender makes an 50% loan against assets of agressive investor
        set new-loan (income * .5)
        set debt (debt + new-loan)
        set assets (debt + wealth)
        if wealth <= 0 [die]   ;; if wealth goes negative, turtle dies
      ]

  ask turtles [ move ]
  tick
end 

to update
  ;; earnings on securities before interest and taxes
  set income (portfolio-investments * (earnings-rate / 100))
  ;; interest expense on outstanding debt
  set interest-expense (debt * (loan-interest-rate / 100))
  set net-income (income - interest-expense)
  ;; reinvest net income in the portfolio
  ifelse (risk-tolerance = 1)
    [update-one]   ;; moderate invesor splits portfolio 90-10
    [if (risk-tolerance = 2)
      [update-two] ;; agressive investor splits portfolio 95-5
    ]
end 

to update-one
  set portfolio-investments (net-income * .9) ;; give 90% to earning assets
  set portfolio-cash (net-income * .1)  ;; give 10% to non-earning cash
end 

to update-two
  set portfolio-investments (net-income * .95) ;; give 95% to earning assets
  set portfolio-cash (net-income * .05)  ;; give 5% to non-earning assets
end 

to move
  rt random-float 360
  fd 1
end 

to-report wealth-total
  report sum [wealth] of turtles
end 

to-report debt-total
  report sum [debt] of turtles
end 

to-report assets-total
  report sum [assets] of turtles
end 

to-report income-total
  report sum [income] of turtles
end 

to-report net-income-total
  report sum [net-income] of turtles
end 

to-report interest-expense-total
  report sum [interest-expense] of turtles
end 

to-report portfolio-cash-total
  report sum [portfolio-cash] of turtles
end 

to-report portfolio-investments-total
  report sum [portfolio-investments] of turtles
end 

There is only one version of this model, created over 6 years ago by Carl Snare.

Attached files

No files

This model does not have any ancestors.

This model does not have any descendants.