Elements of Tokenized Finance

Instructor

Prof. Pramod Viswanath, Princeton, pramodv@princeton.edu

Teaching assistants

  • Kaya Alpturer, kalpturer@princeton.edu
  • Niusha Moshrefi, niusha@princeton.edu

Course Material

Lecture Date Theme Lecture Slides Lab Assignment
09/03 Introduction Introduction + Logistics Slides Lab  
09/08 Primer on Blockchains Slides    
09/10 EVM and smart contracts Slides Lab Crypto Zombies 1
09/15 DeFi marketplaces Exchanges I — DEXes Slides Lab  
09/17 Exchanges II — Bonding Curves and CFMMs Slides Lab Crypto Zombies 2
09/22 Exchanges III — Improving CFMMs Slides Lab  
09/24 Exchanges IV — DEX aggregation and propAMMs Slides Lab Homework 1
09/29 Derivatives & Prediction Markets Prediction Markets I — Incentives & Design Slides Lab  
10/01 Prediction Markets II — Parlays, Conditional and Decision markets Slides Lab Homework 2
10/06 Options, Derivatives, Perpetuals Slides Lab  
10/08 Perpetuals II Slides Lab Homework 3
10/13   MIDTERM      
10/15 Banking in DeFi Lending Pools Slides Lab  
10/20 FALL BREAK
10/22 FALL BREAK
10/27 Stablecoins Slides Lab Assignment 1
10/29 Bridges and oracles Slides Lab  
11/03 New banks (Macro DeFi) Slides Lab Assignment 2
11/05 Old banks vs New banks Slides Lab  
11/10 Other topics DePINs Slides Lab Assignment 3
11/12 Vaults Slides Lab  
11/17 Attacks on DeFi Slides Lab Assignment 4
11/19 Project presentations Project Presentations      
11/24 THANKSGIVING
11/26 THANKSGIVING
12/01 Project Presentations      
12/03 Project Presentations      

Course Outline

Blockchains are digital platforms whose consistency and liveness are maintained by a decentralized set of participants. The popular blockchain platforms are programmable (i.e., support applications defined via a Turing complete programming language) and are permissionless (i.e., transactions on the platform are open to anyone; the bar to participate is very lightweight). The combination of programmability, permissionless access and the financial nature of the underlying token (e.g., ETH in the Ethereum blockchain) has led to tremendous innovation in financial products on the blockchain, broadly covered under the rubric of decentralized finance or simply DeFi.

The purpose of this course is to introduce the various novel types of financial instruments enabled by blockchains, classified as “elements” of DeFi. The course is interdisciplinary since it covers both finance and computer science topics. Finance terms are introduced on a need-to-know basis and no hard prerequisites in financial engineering are needed. Basic background in computer science (programming) is expected. The course covers a technical discipline that is developing at a fast pace – course material in the form of slides and notes are provided for each lecture, but the students will be encouraged to read a diverse range of reference material (source codes, whitepapers, web forum discussions). Nine elements of DeFi are discussed:

  1. Token transfers: native blockchain transactions
  2. Market making via smart contracts
  3. Oracles: importing external data
  4. Borrow/Lending: banking functionality
  5. Cross border finance: bridges, wrapped tokens
  6. Stable coins: tying tokens to fiat
  7. Synthetics and Perpetuals: self-adapting financial instruments
  8. NFTs : digital collectibles
  9. DAOs : tokenized governance

The pedagogical style is designed to provide a hands-on experience with the material. Each class will be divided into two parts: the first part will be a lecture designed to highlight the conceptual and algorithmic aspects of the material. the second part will be a lab activity designed to provide a hands-on experience and highlight the practical aspects of interacting with a permissionless public blockchain (Ethereum testnet).

Course Notes

  • Lecture videos, slides, lab instructions, and supplementary reading material will be provided for each lecture.
  • Supplemental reading:

Pre-requisites

The basis prerequisites are a maturity with algorithms (COS 226), probability (ORF 245) and computer systems (COS 316). Background in blockchains (ECE/COS 470 and COS 495) and financial mathematics (ORF 335) will be helpful.

Assignments

We will have a 3 part homework, 2 part Crypto Zombies tutorial and a 4 part programming assignment series to build smart contracts in Solidity programming language through which students explore the core elements of DeFi.

Final Project

In-depth study of one of the elements of DeFi covered in the course. The final project report will serve as the final exam of the course.

Assignments and Grading

The course is evaluated in four formats:

  • [30% of the grade] Programming Assignments – This includes completing two Crypto Zombies modules (Introduction to Solidity) and four programming assignments in Solidity. Through these tasks, students gain hands-on experience in coding in DeFi.
  • [28% of the grade] In-class labs – Hands-on activity for students to get a feel for interacting with each element and exploring the action space. Students need to attend any 14 out of the 21 lectures to do that.
  • [42% of the grade] Final project – Students will do an in-depth study of one of the elements of DeFi covered in the course or conduct hands-on research on the intersection of AI and DeFi. Prompts on potential project topics shall be provided by us. The final project report will serve as the final exam of the course.