CSAP Factor Library
Cross-Sectional Asset Pricing (CSAP) factors are important tools for analyzing and explaining differences in returns across assets at a specific point in time, and are widely used in asset pricing, portfolio optimization, and financial market research. By extracting the core variables that drive price changes, CSAP factors help researchers reveal the cross-sectional characteristics of asset returns, that is, the sources of price differences across assets. Common CSAP factors include value factors (such as price-to-book ratio and price-to-earnings ratio), size factors (such as market capitalization), momentum factors (based on past returns), profitability factors (such as ROE and gross margin), and investment factors (such as capital expenditure growth). These factors reflect the potential drivers of asset returns from different perspectives.
CSAP factors can be constructed in many ways, from simple arithmetic operations to regression analysis. Quantitative researchers extract factors that are highly correlated with asset returns through systematic screening and modeling. Investors can apply these factors in asset pricing models (such as the Fama-French three-factor model) to optimize portfolio allocation.
Many quantitative researchers and academic experts have published the factors they use in asset pricing, promoting the widespread application of factor research. In Open Source Cross-Sectional Asset Pricing, the author provides the data sources and STATA codes, demonstrating a set of cross-sectional stock return predictors. The Compustat and CRSP datasets used by the author are both obtained from Wharton Research Data Services, a data service platform that provides extensive global financial, economic, and market data and is widely used in financial research and analysis. To help researchers apply these factors in practice, we implement functions for 195 factors in DolphinDB based on the methods described in the paper and package them into the DolphinDB module CSAPFactors.dos, which is available for download in the appendix. This module is developed based on DolphinDB version 3.00.1/2.00.14.
1. Module Overview
1.1 Module Files
The DolphinDB CSAP module mainly includes the following module files:
- CSAPFactors: Contains 195 standardized factor calculation functions.
- CSAPPrepare:
- Functions starting with
prepare: Perform raw data cleaning and structured processing. - Functions starting with
calc: Complete the basic indicator calculation, including data cleaning and calculation.
- Functions starting with
- CSAPDataSimulation: Generates simulated data required for factor calculation.
1.2 Naming and Usage Conventions
All naming rules in the module are based on the definitions of the factors. For
example, brandInvest calculates a company's brand investment
rate. The input parameters for each factor vary. For details, refer to
parameter.csv. Some of the input parameters are as follows:
| Parameter | Description |
|---|---|
| permno | A unique identifier assigned by the Center for Research in Security Prices (CRSP) to each security in the U.S. financial market. |
| gvkey | A unique identifier in the Standard & Poor's (S&P) Compustat database used to identify a company's data records. |
| time_avail_m | A temporal variable that typically represents the time of the data and may be recorded in monthly units. It typically represents the trading data of a particular stock in a specific month. |
| mve_c | Market value of equity, typically calculated on a monthly basis. It is obtained by multiplying the stock price by the number of shares outstanding, reflecting the company's total value in the market. |
| shrout | The total number of company shares currently held by all shareholders. |
| vol | The trading volume of a security or commodity over a specific period. |
| cogs | Costs directly related to the production or purchase of goods sold by a company. |
2. Usage Guide
This chapter introduces the usage of CSAP modules, covering environment configuration, data preparation, and calculation function invocation.
2.1 Environment Configuration
Place the attached CSAPFactors.dos in the [home]/modules directory. The home
directory is set by the configuration parameter homeand can be viewed
using the getHomeDir() function. To use the simulated data
generation module, place CSAPDataSimulation.dos in the same directory as the
CSAPFactors module. To use the data cleaning module, place CSAPPrepare.dos in
the same directory as the CSAPFactors module.
For more details on module usage, see DolphinDB Tutorial: Modules.
2.2 Data Preparation
The CSAP module uses a total of 14 data tables, including Compustat and CRSP. For a complete list, see CSAPFactorTableInfo.
If you do not have the data, you can use the CSAPDataSimulation
function in the CSAPDataSimulation.dos to generate simulated data. The function
returns a dictionary where keys are table names and values are table data. When
generating simulated data, you need to specify four parameters: permno,
gvkey, startYear, and endYear. The first two parameters
have been described above. startYearand endYearrepresent the time
range of the simulated data.
If you already have data that can be calculated directly, ensure that the field names in the data tables are consistent with the parameter names required by the factors. For information such as the input tables and parameter names required by the factors, see CSAPFactorTableInfo.
After preparing the required data sources, some special tables (such as SignalMasterTable) require multi-table joins, and different tables require different data cleaning steps. For convenience, CSAPPrepare.dos helps clean the data, making it easier to proceed with factor calculation. CSAPPrepare.dos defines a corresponding data cleaning function for each table. You can call the data cleaning functions based on the tables required for factor calculation.
The following example loads the m_aCompustat data and performs data cleaning.
use CSAPDataSimulation
use CSAPPrepare
gvkeyList = 10970 10910
startYear = 1987
endYear = 2023
//Data simulation and acquisition
result = CSAPDataSimulation::CSAPDataSimulation(gvkeyList, startYear, endYear)
CCMLinkingTable = result.CCMLinkingTable
CompustatAnnual = result.CompustatAnnual
//Data cleaning
m_aCompustat = CSAPPrepare::prepareM_aCompustat(CompustatAnnual, CCMLinkingTable)
2.3 Calculate a Single Factor
All factors in the CSAPFactors.dos use a vectorized parameter design. You should prepare the dataset required by the target factor according to Section 2.2, and confirm the specific parameter requirements by referring to CSAPFactorTableInfo. The parameters required by different factors vary. Therefore, it is recommended to validate parameter matching before calculation.
Some factors can be calculated using the company's financial data, while others require market data. For convenience, the CSAP module provides two calculation methods:
- Full calculation: Use the
preparexxxfunctions to perform data cleaning. Then call thecalcxxxfunctions to complete the calculation. For example, call theprepareM_aCompustatfunction to clean and merge two table datasets, and then call thecalcPctTotAccfunction to calculate the pctTotAcc factor. After executing thecalcPctTotAccfunction, the output contains three columns: permno (security identifier), time_avail_m (data timestamp), and PctTotAcc (factor value).use CSAPPrepare // End-to-end example: data preparation & factor calculation cleaned_data = CSAPPrepare::prepareM_aCompustat(CompustatAnnual, CCMLinkingTable) result = CSAPPrepare::calcPctTotAcc( cleaned_data, startTime=1986.03M, // Standardized format for temporal parameters endTime=2010.12M ) - Direct Calculation: If you already have standardized data, you can
call factor functions directly: This method requires that input parameters
strictly match the function definition; we recommend verifying parameter
completeness against the metadata table.
use CSAPFactors // Call factor functions directly (ensure the input data is standardized) result = select permno, time_avail_m, pctTotAcc(ni, prstkcc, sstk, dvt, oancf, fincf, ivncf) as PctTotAcc from cleaned_data
2.4 Full Factor Calculation
After you prepare all base data tables, including core data sources such as
Compustat financial statements, CRSP market data, and Fama-French three factors
(refer to the data source list in the appendix), you can use the following
standardized workflow to automatically calculate all 195 factors. varDict stores
all parameters; simply replace the values in the dictionary with the
corresponding data sources, and all factors can be dynamically computed through
parseExpr.
// Full calculation
use CSAPPrepare
varDict = dict(
["startTime", "endTime", "m_aCompustat", "SignalMasterTable",
"monthlyCRSP", "monthlyFF", "monthlyLiquidity", "a_aCompustat",
"m_QCompustat", "CompustatPensions", "CRSPdistributions", "monthlyMarket"],
[2005.01M , 2011.12M, m_aCompustat, SignalMasterTable,
monthlyCRSP, monthlyFF, monthlyLiquidity, a_aCompustat,
m_QCompustat, CompustatPensions, CRSPdistributions, monthlyMarket]
)
funcList = select name, syntax from defs("CSAPPrepare::calc%")
resultDict = dict(STRING,ANY)
for (func in funcList) {
try{
factor_name = func.name.split("::")[1]
resultDict[factor_name] = parseExpr(func.name + func.syntax, varDict = varDict).eval()
}catch(ex){
print func
print(ex)
}
}
3. Factor Example
The previous sections have introduced how to use the CSAP modules for factor calculation in DolphinDB. In this section, we take a deeper look at the squared beta factor and how it is implemented. As a typical market risk exposure indicator, this factor demonstrates how to build complex financial metrics using vectorized computation and built-in statistical functions.
Factor Definition
The squared beta factor betaSquared quantifies the sensitivity of
returns to nonlinear market movements by calculating the squared regression
coefficient of asset excess returns on squared market excess returns. Its economic
interpretation is the asset's risk exposure to quadratic market fluctuations.
Implementation Logic
def betaSquared(ret, rf, ewretd){
//Beta squared
retrf = ret - rf // Asset excess returns
ewmktrf = ewretd- rf // Market excess returns
// Perform rolling regression (60-month window, 20-month minimum observation)
return pow(mbeta(retrf, ewmktrf,60,20), 2)
}
As shown in the code above, all input parameters (ret, rf,
ewretd) are vectors, and the mbeta function makes
rolling linear regression more concise; developers no longer need to implement their
own rolling regression function to obtain beta values. The complete calculation
is:
use CSAPPrepare
gvkeyList = 10970 10910
startYear = 1987
endYear = 2023
// Data simulation (replace with the real data)
data_simulate = CSAPDataSimulation::CSAPDataSimulation(gvkeyList, startYear, endYear)
monthlyCRSP = data_simulate.monthlyCRSP
monthlyFF = data_simulate.monthlyFF
monthlyMarket = data_simulate.monthlyMarket
// Factor calculation
result = calcBetaSquared(
prepareMonthlyCRSP(monthlyCRSP),
prepareMonthlyFF(monthlyFF),
prepareMonthlyMarket(monthlyMarket),
startTime=1987.01M,
endTime=2023.12M
)
Besides, CSAP factors make extensive use of rolling window functions and cross-sectional functions, which improve both readability and computational efficiency of the factor code. These factors significantly boost computational efficiency when processing time-series and cross-sectional data, adapting to diverse data requirements.
4. Correctness Verification
Based on the full sample test data from January 2005 to December 2011, the computation results of all 195 factors in the CSAP module match STATA results exactly or achieve a correlation of 0.99 or higher. For the few factors with statistical discrepancies, the differences primarily stem from technical implementation differences in three dimensions:
- Null Value Handling Differences: STATA automatically excludes
observations containing null values during regression calculations, whereas the
CSAP module replaces null values with zeros by default to maintain vector
computation integrity. This difference mainly affects factors that rely on
rolling regression calculations:
- Affected factors:
Beta,BetaLiquidityPS,BetaSquared,VolumeTrend
- Affected factors:
- Sliding Window Logic Differences: In time-series window calculations,
STATA strictly requires no null value records within the window period;
otherwise, that window's calculation is automatically skipped. The CSAP module won't.
- Affected factors:
DivInit,DivOmit,Investment,Mom12mOffSeason,MomOffSeason(6/11/16YrPlus),VarCF,ZZ2AbnormalAccrualsseries,roavol
- Affected factors:
- Floating-Point Precision Errors: The CSAP module and STATA have subtle
precision differences in handling extreme decimal places:
- Affected factor:
EarnSupBig
- Affected factor:
5. Summary
This tutorial provides a detailed introduction to the CSAP modules, covering the naming conventions, table information, field definitions, and practical usage. The CSAP modules deliver distinct advantages. For instance, CSAPFactors.dos leverages DolphinDB’s built-in functions—such as the m-series and various higher-order functions—to compute results over multiple windows. This approach significantly enhances both code efficiency and conciseness.
6. References
7. Appendix
7.1 CSAP Modules
Data source list: CSAPFactorTableInfo.xlsx
Parameter description: parameter.csv
Factor module: CSAPFactors.dos
Data cleaning and factor calculation module: CSAPPrepare.dos
Simulated data module: CSAPDataSimulation.dos
7.2 Factor List
The following factor reference table contains explanations and sources for all factors.
| Factor Name in Paper | Factor Name | Category | Author | Year | Description |
|---|---|---|---|---|---|
| Accruals | accruals | Predictor | Sloan | 1996 | Accruals |
| AccrualsBM | accrualsBM | Predictor | Bartov and Kim | 2004 | Book-to-market and accruals |
| AM | am | Predictor | Fama and French | 1992 | Total assets to market |
| AssetGrowth | assetGrowth | Predictor | Cooper,Gulen and Schill | 2008 | Asset growth |
| BetaLiquidityPS | betaLiquidityPS | Predictor | Pastor and Stambaugh | 2003 | Pastor-Stambaugh liquidity beta |
| BM | bm | Predictor | Stattman | 1980 | Book to market,original(Stattman 1980) |
| BMdec | bMdec | Predictor | Fama and French | 1992 | Book to market using December ME |
| BookLeverage | bookLeverage | Predictor | Fama and French | 1992 | Book leverage(annual) |
| Cash | cash | Predictor | Palazzo | 2012 | Cash to assets |
| CashProd | cashProd | Predictor | Chandrashekar and Rao | 2009 | Cash Productivity |
| CF | cf | Predictor | Lakonishok,Shleifer,Vishny | 1994 | Cash flow to market |
| cfp | cfp | Predictor | Desai,Rajgopal,Venkatachalam | 2004 | Operating Cash flows to price |
| ChAssetTurnover | chAssetTurnover | Predictor | Soliman | 2008 | Change in Asset Turnover |
| ChEQ | chEQ | Predictor | Lockwood and Prombutr | 2010 | Growth in book equity |
| ChInv | chInv | Predictor | Thomas and Zhang | 2002 | Inventory Growth |
| ChNNCOA | chNNCOA | Predictor | Soliman | 2008 | Change in Net Noncurrent Op Assets |
| ChNWC | chNWC | Predictor | Soliman | 2008 | Change in Net Working Capital |
| ChTax | chTax | Predictor | Thomas and Zhang | 2011 | Change in Taxes |
| CompEquIss | compEquIss | Predictor | Daniel and Titman | 2006 | Composite equity issuance |
| CompositeDebtIssuance | compositeDebtIssuance | Predictor | Lyandres,Sun and Zhang | 2008 | Composite debt issuance |
| DelCOA | delCOA | Predictor | Richardson et al. | 2005 | Change in current operating assets |
| DelCOL | delCOL | Predictor | Richardson et al. | 2005 | Change in current operating liabilities |
| DelEqu | delEqu | Predictor | Richardson et al. | 2005 | Change in equity to assets |
| DelLTI | delLTI | Predictor | Richardson et al. | 2005 | Change in long-term investment |
| DelNetFin | delNetFin | Predictor | Richardson et al. | 2005 | Change in net financial assets |
| DivInit | divInit | Predictor | Michaely,Thaler and Womack | 1995 | Dividend Initiation |
| DivOmit | divOmit | Predictor | Michaely,Thaler and Womack | 1995 | Dividend Omission |
| dNoa | dNoa | Predictor | Hirshleifer,Hou,Teoh,Zhang | 2004 | change in net operating assets |
| DolVol | dolVol | Predictor | Brennan,Chordia,Subra | 1998 | Past trading volume |
| EarningsConsistency | earningsConsistency | Predictor | Alwathainani | 2009 | Earnings consistency |
| EarningsSurprise | earningsSurprise | Predictor | Foster,Olsen and Shevlin | 1984 | Earnings Surprise |
| EarnSupBig | earnSupBig | Predictor | Hou | 2007 | Earnings surprise of big firms |
| EP | ep | Predictor | Basu | 1977 | Earnings-to-Price Ratio |
| EquityDuration | equityDuration | Predictor | Dechow,Sloan and Soliman | 2004 | Equity Duration |
| ExchSwitch | exchSwitch | Predictor | Dharan and Ikenberry | 1995 | Exchange Switch |
| FirmAgeMom | firmAgeMom | Predictor | Zhang | 2006 | Firm Age-Momentum |
| GP | gp | Predictor | Novy-Marx | 2013 | gross profits/total assets |
| hire | hire | Predictor | Bazdresch,Belo and Lin | 2014 | Employment growth |
| IntMom | intMom | Predictor | Novy-Marx | 2012 | Intermediate Momentum |
| IntanBM | zz1IntanBM | Predictor | Daniel and Titman | 2006 | Intangible return using BM |
| IntanCFP | zz1IntanCFP | Predictor | Daniel and Titman | 2006 | Intangible return using CFtoP |
| IntanEP | zz1IntanEP | Predictor | Daniel and Titman | 2006 | Intangible return using EP |
| IntanSP | zz1IntanSP | Predictor | Daniel and Titman | 2006 | Intangible return using Sale2P |
| Investment | investment | Predictor | Titman,Wei and Xie | 2004 | Investment to revenue |
| InvestPPEInv | investPPEInv | Predictor | Lyandres,Sun and Zhang | 2008 | change in ppe and inv/assets |
| Leverage | leverage | Predictor | Bhandari | 1988 | Market leverage |
| LRreversal | lRreversal | Predictor | De Bondt and Thaler | 1985 | Long-run reversal |
| MeanRankRevGrowth | meanRankRevGrowth | Predictor | Lakonishok,Shleifer,Vishny | 1994 | Revenue Growth Rank |
| Mom12m | mom12m | Predictor | Jegadeesh and Titman | 1993 | Momentum(12 month) |
| Mom12mOffSeason | mom12mOffSeason | Predictor | Heston and Sadka | 2008 | Momentum without the seasonal part |
| Mom6m | mom6m | Predictor | Jegadeesh and Titman | 1993 | Momentum(6 month) |
| MomOffSeason | momOffSeason | Predictor | Heston and Sadka | 2008 | Off season long-term reversal |
| MomOffSeason06YrPlus | momOffSeason06YrPlus | Predictor | Heston and Sadka | 2008 | Off season reversal years 6 to 10 |
| MomOffSeason16YrPlus | momOffSeason16YrPlus | Predictor | Heston and Sadka | 2008 | Off season reversal years 16 to 20 |
| MomRev | momRev | Predictor | Chan and Ko | 2006 | Momentum and LT Reversal |
| MomSeason | momSeason | Predictor | Heston and Sadka | 2008 | Return seasonality years 2 to 5 |
| MomSeason06YrPlus | momSeason06YrPlus | Predictor | Heston and Sadka | 2008 | Return seasonality years 6 to 10 |
| MomSeason11YrPlus | momSeason11YrPlus | Predictor | Heston and Sadka | 2008 | Return seasonality years 11 to 15 |
| MomSeason16YrPlus | momSeason16YrPlus | Predictor | Heston and Sadka | 2008 | Return seasonality years 16 to 20 |
| MomSeasonShort | momSeasonShort | Predictor | Heston and Sadka | 2008 | Return seasonality last year |
| MomVol | momVol | Predictor | Lee and Swaminathan | 2000 | Momentum in high volume stocks |
| NetDebtFinance | netDebtFinance | Predictor | Bradshaw,Richardson,Sloan | 2006 | Net debt financing |
| NetDebtPrice | netDebtPrice | Predictor | Penman,Richardson and Tuna | 2007 | Net debt to price |
| NetEquityFinance | netEquityFinance | Predictor | Bradshaw,Richardson,Sloan | 2006 | Net equity financing |
| NetPayoutYield | netPayoutYield | Predictor | Boudoukh et al. | 2007 | Net Payout Yield |
| OPLeverage | opLeverage | Predictor | Novy-Marx | 2011 | Operating leverage |
| OrderBacklog | orderBacklog | Predictor | Rajgopal,Shevlin,Venkatachalam | 2003 | Order backlog |
| OrderBacklogChg | orderBacklogChg | Predictor | Baik and Ahn | 2007 | Change in order backlog |
| PayoutYield | payoutYield | Predictor | Boudoukh et al. | 2007 | Payout Yield |
| PctAcc | pctAcc | Predictor | Hafzalla,Lundholm,Van Winkle | 2011 | Percent Operating Accruals |
| PctTotAcc | pctTotAcc | Predictor | Hafzalla,Lundholm,Van Winkle | 2011 | Percent Total Accruals |
| Price | price | Predictor | Blume and Husic | 1973 | Price |
| PS | ps | Predictor | Piotroski | 2000 | Piotroski F-score |
| RD | rd | Predictor | Chan,Lakonishok and Sougiannis | 2001 | R&D over market cap |
| RDAbility | rdAbility | Predictor | Cohen,Diether and Malloy | 2013 | R&D ability |
| RDcap | rDcap | Predictor | Li | 2011 | R&D capital-to-assets |
| RDS | rDS | Predictor | Landsman et al. | 2011 | Real dirty surplus |
| RevenueSurprise | revenueSurprise | Predictor | Jegadeesh and Livnat | 2006 | Revenue Surprise |
| roaq | roaq | Predictor | Balakrishnan,Bartov and Faurel | 2010 | Return on assets(qtrly) |
| ShareIss1Y | shareIss1Y | Predictor | Pontiff and Woodgate | 2008 | Share issuance(1 year) |
| ShareIss5Y | shareIss5Y | Predictor | Daniel and Titman | 2006 | Share issuance(5 year) |
| ShareVol | shareVol | Predictor | Datar,Naik and Radcliffe | 1998 | Share Volume |
| Size | size | Predictor | Banz | 1981 | Size |
| std_turn | stdTurn | Predictor | Chordia,Subra,Anshuman | 2001 | Share turnover volatility |
| STreversal | sTreversal | Predictor | Jegadeesh | 1990 | Short term reversal |
| SurpriseRD | surpriseRD | Predictor | Eberhart,Maxwell and Siddique | 2004 | Unexpected R&D increase |
| tang | tang | Predictor | Hahn and Lee | 2009 | Tangibility |
| Tax | tax | Predictor | Lev and Nissim | 2004 | Taxable income to income |
| TotalAccruals | totalAccruals | Predictor | Richardson et al. | 2005 | Total accruals |
| VolSD | volSD | Predictor | Chordia,Subra,Anshuman | 2001 | Volume Variance |
| XFIN | xFin | Predictor | Bradshaw,Richardson,Sloan | 2006 | Net external financing |
| AdExp | adExp | Predictor | Chan,Lakonishok and Sougiannis | 2001 | Advertising Expense |
| Beta | beta | Predictor | Fama and MacBeth | 1973 | CAPM beta |
| BrandInvest | brandInvest | Predictor | Belo,Lin and Vitorino | 2014 | Brand capital investment |
| DelDRC | delDRC | Predictor | Prakash and Sinha | 2013 | Deferred Revenue |
| FirmAge | firmAge | Predictor | Barry and Brown | 1984 | Firm age based on CRSP |
| GrLTNOA | grLTNOA | Predictor | Fairfield,Whisenant and Yohn | 2003 | Growth in long term operating assets |
| GrSaleToGrInv | grSaleToGrInv | Predictor | Abarbanell and Bushee | 1998 | Sales growth over inventory growth |
| GrSaleToGrOverhead | grSaleToGrOverhead | Predictor | Abarbanell and Bushee | 1998 | Sales growth over overhead growth |
| MomOffSeason11YrPlus | momOffSeason11YrPlus | Predictor | Heston and Sadka | 2008 | Off season reversal years 11 to 15 |
| MRreversal | mRreversal | Predictor | De Bondt and Thaler | 1985 | Medium-run reversal |
| NumEarnIncrease | numEarnIncrease | Predictor | Loh and Warachka | 2012 | Earnings streak length |
| OperProf | operProf | Predictor | Fama and French | 2006 | operating profits/book equity |
| RoE | roe | Predictor | Haugen and Baker | 1996 | net income/book equity |
| ResidualMomentum6m | zz1ResidualMomentum6mResidualMomentum/ zz1ResidualMomentum11mResidualMomentum |
Predictor | Blitz,Huij and Martens | 2011 | 6 month residual momentum |
| ShareRepurchase | shareRepurchase | Predictor | Ikenberry,Lakonishok,Vermaelen | 1995 | Share repurchases |
| SP | sp | Predictor | Barbee,Mukherji and Raines | 1996 | Sales-to-price |
| VarCF | varCF | Predictor | Haugen and Baker | 1996 | Cash-flow to price variance |
| VolMkt | volMkt | Predictor | Haugen and Baker | 1996 | Volume to market equity |
| VolumeTrend | volumeTrend | Predictor | Haugen and Baker | 1996 | Volume Trend |
| AbnormalAccrualsPercent | zz2AbnormalAccrualsPercent | Placebo | Hafzalla,Lundholm,Van Winkle | 2011 | Percent Abnormal Accruals |
| AccrualQuality | zz2AccrualQuality | Placebo | Francis,LaFond,Olsson,Schipper | 2005 | Accrual Quality |
| AccrualQualityJune | zz2AccrualQualityJune | Placebo | Francis,LaFond,Olsson,Schipper | 2005 | Accrual Quality in June |
| BetaSquared | betaSquared | Placebo | Fama and MacBeth | 1973 | CAPM beta squred |
| DelSTI | delSTI | Placebo | Richardson et al. | 2005 | Change in short-term investment |
| KZ | kz | Placebo | Lamont,Polk and Saa-Requejo | 2001 | Kaplan Zingales index |
| roic | roIc | Placebo | Brown and Rowe | 2007 | Return on invested capital |
| ZScore | zScore | Placebo | Dichev | 1998 | Altman Z-Score |
| AMq | aMq | Placebo | Fama and French | 1992 | Total assets to market(quarterly) |
| AssetGrowth_q | assetGrowthQ | Placebo | Cooper,Gulen and Schill | 2008 | Asset growth quarterly |
| AssetLiquidityBook | assetLiquidityBook | Placebo | Ortiz-Molina and Phillips | 2014 | Asset liquidity over book assets |
| AssetLiquidityBookQuart | assetLiquidityBookQuart | Placebo | Ortiz-Molina and Phillips | 2014 | Asset liquidity over book(qtrly) |
| AssetLiquidityMarket | assetLiquidityMarket | Placebo | Ortiz-Molina and Phillips | 2014 | Asset liquidity over market |
| AssetLiquidityMarketQuart | assetLiquidityMarketQuart | Placebo | Ortiz-Molina and Phillips | 2014 | Asset liquidity over market(qtrly) |
| AssetTurnover | assetTurnover | Placebo | Soliman | 2008 | Asset Turnover |
| AssetTurnover_q | assetTurnoverQ | Placebo | Soliman | 2008 | Asset Turnover |
| BMq | bMq | Placebo | Rosenberg,Reid,and Lanstein | 1985 | Book to market(quarterly) |
| BookLeverageQuarterly | bookLeverageQuarterly | Placebo | Fama and French | 1992 | Book leverage(quarterly) |
| BrandCapital | brandCapital | Placebo | Belo,Lin and Vitorino | 2014 | Brand capital to assets |
| CapTurnover | capTurnover | Placebo | Haugen and Baker | 1996 | Capital turnover |
| CapTurnover_q | capTurnoverQ | Placebo | Haugen and Baker | 1996 | Capital turnover(quarterly) |
| cashdebt | cashDebt | Placebo | Ou and Penman | 1989 | CF to debt |
| CBOperProfLagAT_q | cbOperProfLagATQ | Placebo | Ball et al. | 2016 | Cash-based oper prof lagged assets qtrly |
| cfpq | cfpq | Placebo | Desai,Rajgopal,Venkatachalam | 2004 | Operating Cash flows to price quarterly |
| CFq | cFq | Placebo | Lakonishok,Shleifer,Vishny | 1994 | Cash flow to market quarterly |
| ChangeRoA | changeRoA | Placebo | Balakrishnan,Bartov and Faurel | 2010 | Change in Return on assets |
| ChangeRoE | changeRoE | Placebo | Balakrishnan,Bartov and Faurel | 2010 | Change in Return on equity |
| ChNCOA | chNCOA | Placebo | Soliman | 2008 | Change in Noncurrent Operating Assets |
| ChNCOL | chNCOL | Placebo | Soliman | 2008 | Change in Noncurrent Operating Liab |
| ChPM | zz1PMChPM | Placebo | Soliman | 2008 | Change in Profit Margin |
| depr | depr | Placebo | Holthausen and Larcker | 1992 | Depreciation to PPE |
| DivYield | divYield | Placebo | Naranjo,Nimalendran,Ryngaert | 1998 | Dividend yield for small stocks |
| DivYieldAnn | divYieldAnn | Placebo | Naranjo,Nimalendran,Ryngaert | 1998 | Last year's dividends over price |
| EarningsSmoothness | earningsSmoothness | Placebo | Francis,LaFond,Olsson,Schipper | 2004 | Earnings Smoothness |
| EarningsPersistence | zz1EarningsPersistence | Placebo | Francis,LaFond,Olsson,Schipper | 2004 | Earnings persistence |
| EarningsPredictability | zz1EarningsPredictability | Placebo | Francis,LaFond,Olsson,Schipper | 2004 | Earnings Predictability |
| EarningsValueRelevance | zZ1EarningsValueRelevance | Placebo | Francis,LaFond,Olsson,Schipper | 2004 | Value relevance of earnings |
| EarningsTimeliness | zZ1EarningsTimeliness | Placebo | Francis,LaFond,Olsson,Schipper | 2004 | Earnings timeliness |
| EarningsConservatism | zZ1EarningsConservatism | Placebo | Francis,LaFond,Olsson,Schipper | 2004 | Earnings conservatism |
| EBM_q | eBMQ | Placebo | Penman,Richardson and Tuna | 2007 | Enterprise component of BM |
| EntMult_q | entMultQ | Placebo | Loughran and Wellman | 2011 | Enterprise Multiple quarterly |
| EPq | ePq | Placebo | Basu | 1977 | Earnings-to-Price Ratio |
| ETR | eTr | Placebo | Abarbanell and Bushee | 1998 | Effective Tax Rate |
| FRbook | zz1frfrBook | Placebo | Franzoni and Marin | 2006 | Pension Funding Status |
| GPlag | gPlag | Placebo | Novy-Marx | 2013 | gross profits/total assets |
| GPlag_q | gPlagQ | Placebo | Novy-Marx | 2013 | gross profits/total assets |
| GrGMToGrSales | grGMToGrSales | Placebo | Abarbanell and Bushee | 1998 | Gross margin growth to sales growth |
| GrSaleToGrReceivables | grSaleToGrReceivables | Placebo | Abarbanell and Bushee | 1998 | Change in sales vs change in receiv |
| KZ_q | kZQ | Placebo | Lamont,Polk and Saa-Requejo | 2001 | Kaplan Zingales index quarterly |
| LaborforceEfficiency | laborforceEfficiency | Placebo | Abarbanell and Bushee | 1998 | Laborforce efficiency |
| Leverage_q | leverageQ | Placebo | Bhandari | 1988 | Market leverage quarterly |
| NetDebtPrice_q | netDebtPriceQ | Placebo | Penman,Richardson and Tuna | 2007 | Net debt to price |
| NetPayoutYield_q | netPayoutYieldQ | Placebo | Boudoukh et al. | 2007 | Net Payout Yield quarterly |
| OperProfLag | operProfLag | Placebo | Fama and French | 2006 | operating profits/book equity |
| OperProfLag_q | operProfLagQ | Placebo | Fama and French | 2006 | operating profits/book equity |
| OperProfRDLagAT | operProfRDLagAT | Placebo | Ball et al. | 2016 | Oper prof R&D adj lagged assets |
| OperProfRDLagAT_q | operProfRDLagATQ | Placebo | Ball et al. | 2016 | Oper prof R&D adj lagged assets (qtrly) |
| OPLeverage_q | opLeverageQ | Placebo | Novy-Marx | 2011 | Operating leverage(qtrly) |
| PayoutYield_q | payoutYieldQ | Placebo | Boudoukh et al. | 2007 | Payout Yield quarterly |
| pchcurrat | zz1CurratPchcurrat | Placebo | Ou and Penman | 1989 | Change in Current Ratio |
| pchdepr | pchDepr | Placebo | Holthausen and Larcker | 1992 | Change in depreciation to PPE |
| pchgm_pchsale | pchgmPchSale | Placebo | Abarbanell and Bushee | 1998 | Change in gross margin vs sales |
| pchquick | pchQuick | Placebo | Ou and Penman | 1989 | Change in quick ratio |
| pchsaleinv | pchSaleInv | Placebo | Ou and Penman | 1989 | Change in sales to inventory |
| PM_q | pMQ | Placebo | Soliman | 2008 | Profit Margin |
| PS_q | pSQ | Placebo | Piotroski | 2000 | Piotroski F-score |
| quick | quick | Placebo | Ou and Penman | 1989 | Quick ratio |
| RD_q | rDQ | Placebo | Chan,Lakonishok and Sougiannis | 2001 | R&D over market cap quarterly |
| rd_sale | rdSale | Placebo | Chan,Lakonishok and Sougiannis | 2001 | R&D to sales |
| rd_sale_q | rdSaleQ | Placebo | Chan,Lakonishok and Sougiannis | 2001 | R&D to sales quarterly |
| RetNOA | retNOA | Placebo | Soliman | 2008 | Return on Net Operating Assets |
| RetNOA_q | retNOAQ | Placebo | Soliman | 2008 | Return on Net Operating Assets |
| roavol | roaVol | Placebo | Francis,LaFond,Olsson,Schipper | 2004 | RoA volatility |
| salecash | saleCash | Placebo | Ou and Penman | 1989 | Sales to cash ratio |
| saleinv | saleInv | Placebo | Ou and Penman | 1989 | Sales to inventory |
| salerec | saleRec | Placebo | Ou and Penman | 1989 | Sales to receivables |
| secured | secured | Placebo | Valta | 2016 | Secured debt |
| securedind | securedInd | Placebo | Valta | 2016 | Secured debt indicator |
| sgr | sgr | Placebo | Lakonishok,Shleifer,Vishny | 1994 | Annual sales growth |
| sgr_q | sgrQ | Placebo | Lakonishok,Shleifer,Vishny | 1994 | Annual sales growth quarterly |
| SP_q | sPQ | Placebo | Barbee,Mukherji and Raines | 1996 | Sales-to-price quarterly |
| tang_q | tangQ | Placebo | Hahn and Lee | 2009 | Tangibility quarterly |
| Tax_q | taxQ | Placebo | Lev and Nissim | 2004 | Taxable income to income(qtrly) |
