Tobin's q

Tobin’s Q

According to Kerin and Sethuraman (Kerin and Sethuraman 1998, 261), Tobins q is the “ratio of the market value of the firm to the replacement cost of its tangible assets, property, plant, equipment, inventory, cash, and investments in stocks and bonds”.

Market-to-book ratio is the equity capitalization of a firm divided by book equity. Equivalently, (share price multiplied by number of shares) over (common stock equity, capital surplus, and retained earnings).

Market-to-book ratio and Tobin’s q have been shown to be equivalent measures (Chung and Pruitt 1994)

Original Tobin’s q calculation (Lindenberg and Ross 1981)

\[ q = \frac{PREFST + VCOMS + LTDEBT + STDEBT - ADJ}{TOTASST - BKCAP + NETCAP} \]

where

  • PREFST is the liquidating value of a firm’s preferred stock.
  • VCOMS is the price of the firm’s common stock multiplied by the number of shares outstanding at year end (December 31st).
  • LTDEBT is the long-term debt adjusted for its age structure
  • STDEBT is the book value of the firm’s current liabilities
  • ADJ is the net short-term assets
  • TOTASST is the book value of the firm’s total assets
  • BKCAP is the book value of the firm’s net capital stock
  • NETCAP is information-adjusted net capital stock.

However, (Chung and Pruitt 1994) have proposed a simple reliable, and tractable approximation of Tobin’s q:

\[ q = \frac{MVE + PS + DEBT}{TA} \]

where

  • MVE = share price x number of common stock share outstanding
  • PS = liquidating value of outstanding preferred stock
  • DEBT = short-term liability - short-term assets + book value of long-term debt
  • TA is the book value of the total assets.

(Chung and Pruitt 1994) method assumes that the replacement values of a firm’s plant, equipment, and inventories equal to their book values.

Application

Retrieve data from WRDS

# to set up connection from R to WRDS (https://wrds-www.wharton.upenn.edu/pages/support/programming-wrds/programming-r/r-from-your-computer/)
library(RPostgres)
library(dplyr)

# I've set up wrds connection before hand. Please use your username and password here.

# wrds <- dbConnect(Postgres(),
#                   host='wrds-pgdata.wharton.upenn.edu',
#                   port=9737,
#                   dbname='wrds',
#                   sslmode='require',
#                   user='')

# Check variables (column headers) in COMP ANNUAL FUNDAMENTAL
#uses the already-established wrds connection to prepare the SQL query string and save the query as the result res.
# check avaiable databases: https://wrds-web.wharton.upenn.edu/wrds/tools/variable.cfm?vendor_id=7
res <- dbSendQuery(wrds, "select column_name
                   from information_schema.columns
                   where table_schema='compa'
                   and table_name='funda'
                   order by column_name")
data <- dbFetch(res, n=-1) # fetches the data that results from running the query res against wrds and stores it as data
dbClearResult(res) # closes the connection
head(data)
##   column_name
## 1       acchg
## 2        acco
## 3       accrt
## 4     acctchg
## 5     acctstd
## 6        acdo
# select everything
res <- dbSendQuery(wrds, "select * from compa.funda")

# from compa.funda

# only select the following variables
res <- dbSendQuery(wrds, "select gvkey, datadate, fyear, indfmt, consol, popsrc, datafmt, tic, cusip, conm, curcd, fyr, act, at, bkvlps, ceq, ch, che, dltt, dlc, emp, np, exchg, cik, costat, naicsh,mkvalt from compa.funda") #check variables from (https://wrds-web.wharton.upenn.edu/wrds/ds/comp/funda/index.cfm?navId=80)
## Warning in result_create(conn@ptr, statement): Closing open result set,
## cancelling previous query
data1 <- dbFetch(res, n=-1)
dbClearResult(res)

data = data1 %>%
    distinct(gvkey,datadate,fyear,tic,conm,.keep_all = T)

Calculate Tobin’s Q

tobin_q_dt = data %>%
    mutate(mkvalt = coalesce(mkvalt,0),
           dltt = coalesce(dltt,0),
           at = coalesce(at,0),
           dlc = coalesce(dlc,0),
           act = coalesce(act,0)) %>%
    mutate(tobin_q = (mkvalt + ifelse((dlc - act) >=0,as.numeric(dlc-act),0) + dltt)/at ) %>% #follow Chung (1994) (sum of stocks (preferred + common) + debt(short-term liabilities - short-term assets + long-term debt))/(total assets) # note: take only excess of short-term liabilities over short-term assets to be included in debt. 
    select(tobin_q,gvkey,datadate,fyear,conm)
head(tobin_q_dt)
##     tobin_q  gvkey   datadate fyear                  conm
## 1       Inf 001000 1961-12-31  1961 A & E PLASTIK PAK INC
## 2       NaN 001000 1962-12-31  1962 A & E PLASTIK PAK INC
## 3       Inf 001000 1963-12-31  1963 A & E PLASTIK PAK INC
## 4 0.3686441 001000 1964-12-31  1964 A & E PLASTIK PAK INC
## 5 0.4995671 001000 1965-12-31  1965 A & E PLASTIK PAK INC
## 6 0.4563786 001000 1966-12-31  1966 A & E PLASTIK PAK INC

Chung, Kee H., and Stephen W. Pruitt. 1994. “A Simple Approximation of Tobins Q.” Financial Management 23 (3): 70. https://doi.org/10.2307/3665623.

Kerin, R. A., and R. Sethuraman. 1998. “Exploring the Brand Value-Shareholder Value Nexus for Consumer Goods Companies.” Journal of the Academy of Marketing Science 26 (4): 260–73. https://doi.org/10.1177/0092070398264001.

Lindenberg, Eric B., and Stephen A. Ross. 1981. “Tobins Q Ratio and Industrial Organization.” The Journal of Business 54 (1): 1. https://doi.org/10.1086/296120.

Mike Nguyen, PhD
Mike Nguyen, PhD
Visiting Professor of Data Sciences and Operations

My research interests include marketing, and social science.

Next
Previous

Related