epogrebnyak / nanobank

Learn Python by creating parts of a bank from scratch

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

nanobank

Learn Python for finance from scratch

Start coding

  1. Where to run your Python code: Google Colab
  2. Ask for the input and print the output: input() and print()
  3. Working with numbers, straings and dates
  4. Data structures, formats and places to save and read data.
  5. Functions and code structure.

Moving data around

  1. Data serialisation (JSON, CSV, XML).
  2. Reading and scraping data from web: requests and BS4
  3. Querying and building APIs: requests and FastAPI

Tables:

  1. Tables and dataframes using Excel and pandas.
  2. SQL with simple abstractions (SQLModel) and pure sqlite.

Visuals:

  1. streamlit for dashboards.
  2. Visualisations: matplotlib and whatever other library you choose.

Extra topics with code:

  1. Will there be multiple choice? beaupy library
  2. Fast track to machine learning: scikit-learn lectures and Eric's examples
  3. Command line application with sys.args, docopt or click
  4. How to start a Telegram bot: dotenv for secrets.

Bank app design:

  1. Bank client onboarding: prototype vs real app.
  2. Many clients and a payment system.
  3. Bank reporting and capital requirements.

Financial and economic data (and what to do with it):

  1. Markets data. Portfolios, risk and algotrading.
  2. Corporate reports. Default scoring.
  3. Macroeconomic data:
    • FRED
    • EconDB
    • IMF WEO forecasts
  4. Market intelligence: OpenBB terminal.

Demystifing decentrilised finance:

  1. Let's build our own blockchain
  2. Not so smart contracts
  3. Cryptocurrencies trading

Research tools:

  1. Bibliography with manubot
  2. pandoc and quarto document management
  3. Extract video subtitles with youtube-dl
  4. AI taking over: ChatGPT, you.com and a companion for paper reading
  5. Notetaking and Zettelkasten

Should everyone in economics and finance code (well)?

  • QuantEcon
  • "... for economists" guides

Missing:

  • working with text and sentiment

About

Learn Python by creating parts of a bank from scratch


Languages

Language:Python 100.0%