Insegnamento a.a. 2021-2022


Department of Finance

Course taught in English
Go to class group/s: 31
DSBA (8 credits - I sem. - OBCUR  |  SECS-S/06)
Course Director:

Classes: 31 (I sem.)

Lezioni della classe erogate in forma blended (in parte online e in parte in presenza)

Suggested background knowledge

You should have mastered the first year courses on machine learning, databases and big data processing. Good command of standard data science and machine learning frameworks in Python (pandas, scikit-learn) is expected.

Mission & Content Summary


The object of study of this course is FinTech, a rapidly growing industry that uses a combination of digital financial contracting and machine learning to deliver innovative financial services. We'll dedicate the first half of the course to explore novel digital ways of writing financial contracts and trading financial assets on trustless blockchains (including an outlook on the upcoming central bank digital currencies). We'll mainly work with Ethereum to gain practical exposure to contract development, smart contract auditing and financial contracting for decentralised finance (DeFi). The second half of the course covers FinTech and Digital Finance: in this part of the course, we'll address the central question which customers should be offered which financial contracts, and to which conditions. We put particular emphasis on strategic machine learning for FinTech lenders; learn about the pitfalls of machine learning with highly imbalanced datasets; explore ways to overcome racial bias in machine learning models; study machine learning approaches to the processing of payment data; try to predict risk propagation in financial network models; dive into issues of information and liquidity in digital shadow banking; and much more. The course aims to offer data science students a balanced mix of theory and applied coding lab sessions as to enable them to develop high-impact data products for FinTech industry.


Part I: Financial Contracting for Digital Finance

  • Blockchain and distributed consensus
  • Smart Contracts: Hands-on development with Solidity
  • Cryptoasset design: ERC20, ERC721 and ERC777 tokens
  • Decentralised Finance (DeFi)
  • Central Bank Digital Currency (CBDC)


Part II: Topics in Machine Learning for FinTech

  • Payments, Payment Data and PSD2.
  • Machine Learning with Imbalanced Data
  • Financial Networks and Financial Risk Propagation
  • Strategic Machine Learning in Credit Markets

  • Beyond FinTech: InsurTech, RegTech, SupTech

Intended Learning Outcomes (ILO)


At the end of the course student will be able to...
  • Summarize the upsides and limitations of permissionless blockchains for financial applications.
  • Identify adequate smart contract designs for financial applications.
  • Recognize systemic risks of current DeFi platforms, and select adequate mitigation strategies.
  • Describe the potential evolution of DeFi with settlement in central bank digital currency.
  • Select adequate machine learning strategies for FinTech applications.
  • Identify origins of bias in machine learning models for credit screening.
  • Understand key technological, strategic and regulatory aspects of new FinTech business models.


At the end of the course student will be able to...
  • Develop financial smart contracts and cryptoassets on a trustless blockchain.
  • Formulate statistical models for FinTech and InsurTech applications using advanced machine learning techniques.
  • Choose adequate technologies, data sources and machine learning models to support a particular FinTech business idea.

Teaching methods

  • Face-to-face lectures
  • Online lectures
  • Guest speaker's talks (in class or in distance)
  • Individual assignments
  • Group assignments
  • Interactive class activities (role playing, business game, simulation, online forum, instant polls)


This course is designed for a high level of participation and interaction. We'll have online and face-to-face lectures, complemented by hands-on lab classes in which we develop prototypes of what was discussed in the lectures. We will run simulations and let our models compete against each other. Furthermore, there is a semester-long project which gives you plenty of opportunity to develop and demonstrate your own ideas. 

Assessment methods

  Continuous assessment Partial exams General exam
  • Written individual exam (traditional/online)
  • Individual assignment (report, exercise, presentation, project work etc.)
  • Group assignment (report, exercise, presentation, project work etc.)


With the purpose of measuring the acquisition of the above-mentioned learning outcomes, attending students’ assessment is based on three components:


  1. Short quizzes (25% of the final grade), open and closed questions aimed to assess students’ understanding of the core material of the course. The quizzes are open book and can be taken remotely via Blackboard.
  2. Individual assignments (4x 10% of the final grade: one individual presentation, one group project proposal, plus two takehome assignments) to test students’ ability to apply the concepts from class in practice. 
  3. A final group project (35% of the final grade) aimed to validate students' ability to work as part of a team, think critically and make valuable contributions that draw on the skills acquired in class. 


For non-attending students (all students who fail to take at least four out of the five quizzes, either in person or remotely), the grade is determined as follows:


  1. General Exam (50% of the final grade) to verify student's understanding of the material.
  2. Individual Project (50%) to test students' ability to apply concepts from class.

Teaching materials


The teaching materials comprise of 

  • lecture slides
  • software codes for the labs
  • reading assignments

All relevant teaching materials are made available on the course page. 

Last change 06/08/2021 12:26