Skip to content
View giovannibrusco's full-sized avatar

Block or report giovannibrusco

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
giovannibrusco/README.md

Giovanni Brusco

MSc Finance (110/110 cum laude), Università Cattolica del Sacro Cuore, Milan | Derivatives, Volatility & Python

I study how trading strategies behave once real-world frictions are priced in: execution costs, fill assumptions, margin and data quality. Most of my projects start from a published or personal strategy and end with one question: which assumption is actually carrying the result?

Interests: options and implied volatility, futures, execution and market microstructure, robust backtesting.

Selected projects

Replication of Zarattini & Aziz (2023), followed by an execution stress test. The paper's $138,639 backtest profit falls to $4,860 with 2¢ per share of slippage; break-even is about 2.2¢, against a spread of roughly 1¢. An NQ futures confirmation filter carries real information (t = 2.05, against 1.27 for a placebo), but 76% of the filtered profit comes from 2022 alone.

Replication of Zarattini, Aziz & Barbon (2024) on SPY, cross-validated on ES futures from a second data vendor (return correlation 0.97). Sharpe 1.11 with near-zero market beta. Optimisation does not improve it: with protocols frozen before any result and a Deflated Sharpe Ratio correction, the best of 27 variants is the paper's own setup, and quarterly walk-forward reselection cuts Sharpe from 0.92 to 0.57.

Ten years of one-minute Nasdaq-100 futures data. Eleven simulation corrections net out to +1.1% of PnL, while a single entry-fill assumption moves it by 15.7%. The result is reported as a Sharpe band (1.02 to 1.11) rather than a single point.

Bitcoin volatility risk premium (MSc thesis)

A systematic short-volatility strategy on Deribit BTC options, delta-hedged with futures. The code is being revised and will be published here; available on request in the meantime.

Toolkit

Python (pandas, NumPy, SciPy, statsmodels), pytest and GitHub Actions, Jupyter. Market data through the Interactive Brokers, Alpaca and Deribit APIs.

Background

  • MSc in Finance, Università Cattolica del Sacro Cuore, Milan: 110/110 cum laude, GPA 30/30. Coursework in Derivatives, Advanced Derivatives, Econometrics and Quantitative Methods for Finance
  • Exchange semester, Butler University, Indianapolis: GPA 4.0/4.0
  • BSc in Business Administration, Ca' Foscari University of Venice: thesis on market inefficiencies using Python-based regression analysis

Contact

LinkedIn · Email

Pinned Loading

  1. zarattini-2024-momentum-spy zarattini-2024-momentum-spy Public

    📈 Independent replication and out-of-sample validation of Zarattini, Aziz & Barbon (2024) "Beat the Market" intraday momentum on SPY and ES futures, with ex-ante frozen anti-overfitting protocols.

    Python 4 1

  2. zarattini-2023-orb-qqq zarattini-2023-orb-qqq Public

    Independent replication of the 5-minute Opening Range Breakout on QQQ (Zarattini & Aziz 2023, SSRN 4416622), stress-tested for execution costs. Break-even at ~2.2¢/share slippage; NQ confirmation f…

    Python 2 1

  3. nq-intraday-breakout nq-intraday-breakout Public

    Opening-range breakout on Nasdaq-100 futures with a full audit of how simulation conventions move the result.

    Jupyter Notebook 1