This course is listed as SPECIAL TOPICS IN ASSET PRICING FRE-GY 9713 in Albert.
Fall 2026: Thursday 6-8:30 PM, Finance and Risk Engineering Program at NYU Tandon Engineering School.
Please attend the highly recommended Excel bootcamp.
I will assume that you already know Python and will teach actual financial statement analytics in the course.
Overview
Modeling financial statements is vital to finance The course teaches two sets of skills: modeling financial statements and financial statement analytics. The first part establishes the framework needed to link financial statements to valuation, including identifying key metrics. The second part shows how to use modern tools (Python) to extract these metrics from historical financial statement data. These parts are summarized below and described in detail in the course outline below.
Modeling financial statements
1. Revenues and operating expenses
2. Revenue-related accruals and deferrals
3. Operating expense-related accruals and deferrals
4. Productive capacity, capex, and depreciation, and taxes
5. Unlevered free cash flows and financing needs
6. Borrowing capacity, liquidity, debt financing, and interest
7. Equity financing and linking to valuation
Financial statement analytics
8. Working with XBRL (Extensible Business Reporting Language)
9. Analyzing historical sales
10. Analyzing historical expenses
11. Identifying abnormal accruals and divergence of earnings and cash flows
12. Understanding credit rating changes and defaults [We will not try the almost impossible task of predicting future stock and bond returns.]
13. Identifying peer companies
14. Identifying LBO and acquisition targets
Inclusion Statement
Prerequisites
Knowledge of financial accounting will be a big plus. However, it is not required per se. Students without this background will need to work hard to keep up with the course. I will provide extensive materials on Financial Accounting, including prework, before the course starts. If you have the aptitude for it, you can pick it up quickly. My undergraduate is in Electronics Engineering. I picked up accounting on my own, so can you. The course will not teach Python per se. Most people can pick it up on their own.
You will be building models using Excel. I am assuming you know basic Excel and can pick up the rest as the course moves along.
Target audience
If you expect to build valuation/credit risk models using financial statement data or write code to manipulate or analyze financial data, you will benefit from this course. This course will teach you how to code in Python to process accounting and financial market data based on financial analysis and statistical concepts. This course is unsuitable for those who want a managerial overview of data analytics techniques without hands-on coding.
Exams and Grading
- Please read about the penalty for missed classes below.
- Assignments: 30%
- Project: 30%
- Final exam: 40%
Penalty for missing classes and unapproved use of devices in class
Paper and pencil
Please bring paper and pen/pencil to take notes in class.
Unapproved device usage
Most of us are now addicted to devices, which impedes learning. You are allowed to use devices only when I ask you to use your computer in class. Otherwise, ALL device use is strictly prohibited, unless you have a qualified disability which allows you to use devices in class. Students using devices when not approved will be asked to leave the classroom. Each time you are asked to leave the class, you will be marked absent. This is very painful, awkward, and disruptive, and I hope I never have to do this, but I will not hesitate to enforce this policy.
Reasons for requiring attendance
Attendance is required for several reasons. First, you incorrectly assume you can catch up on a missed class by watching a recording (if available). Videos do not engage your brain as much as a live class. Second, less than 20% of you watch the recording (if available). You are then lost in class, which provides the wrong signals to me as an instructor. Third, your absence hurts class discussions. Fourth, you miss out on feedback if you do not work through the questions I pose in class. Fifth, I lose the feedback since there are fewer questions.
Attendance policy enforced after the add/drop period
The attendance policy below will be in effect only after the add/drop period.
Attendance sheet
After entering the class, please mark yourself present on the OneDrive sheet within the first 20 minutes (link posted on Brightspace after the add/drop period). You will be marked absent if you are more than 20 minutes late, unless it is due to factors beyond your control (traffic, subway delays, or interviews running late). You will also be marked absent if you leave the class early unless you have my permission or get it afterward. You will get an F in the course if you are caught cheating on the attendance sheet.
Mark yourself excused on the attendance sheet for excused absences
Without mandatory attendance, attendance is often below 50%. Therefore, though I dislike doing this, I penalize absences. If you anticipate being absent for good reasons, please email me well in advance. Please enter Excused on the attendance sheet described below to avoid the penalty if approved. You must update it; I will not mark you excused. If you miss a class due to emergencies and cannot tell me in advance, do not panic. Take care of the emergency first, and then email me. I will permit you to change the Absent to Excused. But if you miss a class without a valid reason, there is a penalty, as stated below.
Penalty for missing classes
For sections meeting in 150-190 minute sessions, you will lose one grade (A to A-, A- to B+, B+ to B, B to B-, and so on) for EVERY missed session unless you were explicitly excused via email. Thus, if you miss two class sessions, you will lose two grades, and so on.
For sections meeting in 75-80 minute sessions, you will lose one grade (A to A-, A- to B+, B+ to B, B to B-, and so on) for EVERY TWO missed sessions unless you were explicitly excused via email. Thus, if you miss four class sessions, you will lose two grades, and so on.
Seating and name tags
Please sit in the same seat in every class and display your name tags. For Zoom classes, you must keep your video on AT ALL TIMES. You must also have a good working headset or mic, as it is extremely rude to be inaudible and force me to ask you to repeat yourself.
Almaris Assignments
- When and how to access the tests: After the first week of class, you can view the online assignments at https://www.almaris.com/assess/ using your official NYU email (no aliases) and the most recent password emailed to you by Almaris. The Almaris password is different from NYU or Stern passwords.
- Support: Almaris staff will reply to your emails only if they pertain to technical issues with the Almaris system, not deadline extensions. Please contact Stern IT for technical issues with your network.
- Password retrieval: To retrieve the password, use your full email with the domain name as it appears in Brightspace. The domain name could be @nyu.edu for some of you, while it could be @stern.nyu.edu for others. I do not control this mess.
- Length: Some assignments are short; others are long. Please manage your time.
- Deadlines: Almaris tests list the deadlines. I may update the deadlines as the course progresses.
- NO EXTENSIONS will be granted for any reason except medical or family emergencies. If you have religious or personal conflicts, please submit the assignments early. The related materials are covered well in advance of the assignments. Please do not email me to request extensions unless you have a medical or family emergency.
- Late: Assignments are marked LATE if you do not meet or exceed the passing score described below before the deadline. There is no additional penalty for lateness other than a low score.
-
Passing score: Assignments have a passing score of 100% or less.
- Passing score 100%: I set the passing score to 100% on an assignment if I want you to ace it. In reality, there is no passing score. Whatever score you get on your last attempt is your final score. You are graded on accuracy but not the number of attempts. There is a difference between passing a test and getting full credit. If you get 80/100 on your final attempt, you pass, but you do not score 100.
- Passing score less than 100%: I set the passing score to less than 100% on an assignment if I do not require you to ace it. Any score above that score is rounded up to 100%. For example, if the passing score is 90%, and you get 93%, your score is rounded up to 100%. I do the rounding up in a separate spreadsheet. You will see only the raw score online.
- Free to you and NYU: Almaris is not affiliated with Stern in any way. It is offering these tests to Stern at no charge.
- Data privacy and no marketing: Your data is not shared with any third party. It is not used for any promotion or marketing.
- No data retention: Your data is not retained. It is deleted in approximately two weeks after the end of the course.
Almaris Exams
- Please log in to Almaris as soon as you receive these instructions via email. You will see inactive links to your exams and instructions.
- Unless communicated to you differently in class, the midterm exam covers topics covered until the midterm, and the final exam covers the entire course.
- The instructions at the top of the login screen will tell you how many parts the exam has and their weights.
- Please report any problems such as wrong deadlines or missing parts of the exam to me immediately.
- Log in to Almaris right before your exam. Refresh your screen to see active links for the exam.
- Your final score on each part of the exam will be max(score1, score2 - 7, score3 - 14, score4 - 21, score5 - 28).
- You must answer all questions without help from another student or anyone else. Any such communication will be construed as cheating. If the exam is online, email your questions to the TA AND me. Whichever one of us reads the message first will respond. If the exam is held in class, you can ask the proctor.
- If the exam is online, please keep your email open during the exam and check it periodically. Any updates/corrections will be sent via email.
- Manage your time. Extra time will NOT be allowed.
- If you want us to grade your incomplete or incorrect spreadsheet manually, submit it within FIVE MINUTES of the end of the exam. Do not email it; look for Assignment on NYU Brightspace. If you submit the spreadsheet for manual grading, you will be considered to have used up your five attempts. Therefore, your maximum score on that spreadsheet can only be 72/100 due to the penalty for multiple attempts.
Important computer tips for the final
- DO NOT WORK ON A SPREADSHEET WITHIN A BROWSER. Save the spreadsheet to your computer, work on it, and save it periodically. If you navigate away from the spreadsheet in a browser, ALL YOUR WORK WILL BE LOST.
- Organize your computer files and designate a directory to save your exam files.
- Restart your computer before the exam to minimize problems.
- Bring an external mouse with a scroll wheel to speed up test-taking. Do not waste time using the trackpad or the internal mouse.
- Maximize screen space by hiding the Excel ribbon and browser menus. The more the screen you see, the faster and more accurate you are.
- Bring a computer with as big a screen as possible.
- Do not use an unfamiliar computer.
NYU Stern Policies
Please read the NYU Stern Policies for this course.
Help and Office
- Me: dgode@stern.nyu.edu, 212-998-0021, Office: KMC 10-86.
- Teaching assistant: Please check NYU Brightspace.
Administrative and System Requirements
Videotaping
Classes are normally not videotaped, except for EMBA classes. If the class is videotaped, the link is posted to Brightspace by NYU Stern IT within a day.
Registered Students Only
Only registered students can attend classes. I cannot override this NYU Stern rule. We do not allow unregistered students to "audit" a class.
Albert and NYU Brightspace
You must be in Albert and NYU Brightspace before starting the first class. If you register late, there might be a delay of a day before you appear in these systems. If you cannot access these systems after a day, please contact the relevant REGISTRAR. I cannot add you to these systems regardless of what someone in IT tells you.
Computer Requirements
You need to bring a computer to every class. If you have any technical questions, please contact Stern IT at (212-998-0180) or servicedesk@stern.nyu.edu, or NYU IT at +1 (212) 998-3333 or askit@nyu.edu. I cannot help you with your computer issues.
Excel 365 Desktop Version Required
The desktop version of Excel 365 is required. Excel Online and Google Sheets are NOT OK. Read this page regarding Excel 365 Desktop access for NYU students.
Materials
- I use my materials. Therefore, no textbook is required, and you need not purchase anything.
Topics
Topic 1: Modeling sales and operating expenses other than depreciation
Sales and sales growth
Potential market size
Market share and pricing power
Operating expenses
Cost structure and competitive advantage
Fixed costs versus variable costs
A general model of accruals and deferrals
A generalized model of the timing differences between income flows and cash flows
Accruals: When income flows precede cash flows
Deferrals: When income flows follow cash flows
Understanding lead/lag functions as an efficient and powerful way to model accruals/deferrals
Topic 2: Modeling revenue-related accruals and deferrals
Receivables: Accrued revenues or deferred receipts
When revenues precede receipts
Collection period
Long-term receivables and interest earned
Allowance for returns and bad debts
Accruing contra-revenues in anticipation of returns
Accruing bad debt expenses in anticipation of write-offs
Contra-assets: Allowance for returns and bad debts
Advance received or deferred revenues
Deliverables: When revenues follow receipts
Subscription-based models: Receipts drive future revenues
Event-based models: Future expected revenues drive current receipts
Topic 3: Modeling operating expense-related accruals and deferrals
Payables: Accrued expenses or deferred payments
When expenses precede payments
Days payable
Periodic payments and lumpy payments for bonus plans
Long-term accruals and judgments
Prepayments or deferred expenses
When expenses follow payments
Days of prepayments, prepaid rent, insurance, advertising
When future expected expenses drive current payments
Inventories: Future expected cost of goods sold drive current purchases, days of inventory
Distinguishing between costs, expenses, and payments
Topic 4: Modeling productive capacity, capex, and depreciation, taxes
Property, plant, and equipment: Capex leads future depreciation
Long-term prepayments
Future expected sales drive demand for current capacity, which drives capex
Useful lives, salvage values, and depreciation patterns
Taxes
Taxes payable: Current tax expense or tax bill versus tax paid
Deferred taxes: Total tax expense versus current tax expense
Topic 5: Modeling unlevered free cash flows and financing needs
Unlevered free cash flows
Net operating profit after tax
Growth in net operating assets
Financing needs
Operating working capital
Invested capital
Topic 6: Modeling liquidity, borrowing capacity, debt financing, and interest
Liquidity
Sources of liquidity
Common mistakes in modeling liquidity: Why current ratio, quick ratio, and working capital are often useless measures of liquidity
Metrics of borrowing capacity
Repayment ability and debt/EBITDA multiples
Interest coverage ratio
Debt to value ratio
Topic 7: Modeling equity financing and linking models to valuation
Challenges in forecasting terminal value
Growth beyond the forecast horizon
Challenges in modeling equity-linked compensation
Share-based compensation
Topic 8: Working with XBRL (Extensible Business Reporting Language)
Understanding XBRL
What is structured data? What is the XBRL taxonomy? Current financial reporting landscape and the limits of XBRLPython skills
Language syntax: Dictionaries and Tuples
Interfaces: Understanding application programming interfaces [API]
Interacting with web-based data
Topic 9: Analyzing historical sales
Analytical skills
Understanding growth drivers
Business cycles: Opex versus capex commodities
Seasonal growth: Identifying seasonal patterns
Python skills
Using Pandas for time series analysis
Challenges of time series analysis vis-à-vis cross-sectional analysis
Topic 10: Analyzing historical expenses
Analytical skills
Operating leverage, financial leverage, and variances
Using the difference between sales variance and the variance of various earnings measures to infer the extent of fixed costs
Macroeconomic effects: Quantifying systematic business risk; Behavior of sales and earnings in recessions
Python skills
Using NumPy: NumPy and scientific computing
Using Statmodels: Using basic statistical functions in Statmodels
Using Sci-Kit Learn: Running regressions with Sci-Kit Learn
Topic 11: Identifying abnormal accruals and deferrals
Accruals and deferrals relating to revenues
Unexplained increase in receivables
Unexplained decrease in deferred revenues
Accruals and deferrals relating to expenses
Unexplained increase in prepayments and deferred expenses
Unexplained decrease in payables and accrued expenses
Understanding the divergence of earnings and cash flows
The “good” and “bad” causes of divergence of earnings and cash flows
Python skills: Regression analysis and outliers
Identifying outliers using Sci-Kit learn
Dimensionality reduction
Reducing the number of independent variables using Sci-Kit learn
Topic 12: Credit ratings and distress
Leading indicators of distress
Understanding the causes of distress
Understanding which financial metrics could be leading indicators of distress
Understanding the determinants of credit ratings
Python skills
Logit regression: Using Sci-Kit Learn for logit regressions
Cluster analysis: Using Sci-Kit Learn for cluster analysis
Topic 13: Identifying peer companies
Analytical tasks
Unsupervised learning and cluster analysis
What is unsupervised learning? SIC codes versus FAMA-FRENCH Classification versus machine learning
Comparing the traditional methods of clustering that are based on intuition with the modern machine-learning-based methods Making sense of clustering based on machine learning
Python skills
Using Sci-Kit Learn for cluster analysis
Topic 14: Acquisitions and leveraged buyouts
Identifying potential acquisition and LBO targets
Which financial metrics distinguish companies that are the target of acquisitions from those that are not acquired?
Which financial metrics distinguish companies that are the target of LBOs from those that are not taken private?
Relative valuation of targets
What is the typical premium paid for targets?
What are the determinants of premium paid?
Python skills
Using Sci-Kit Learn for logit regressions
Using Sci-Kit Learn for cluster analysis
Using Sci-Kit Learn for regression analysis