all problems

Realized profit and loss PRO

pandashardgroupbyapply

The full problem statement is available to Pro members.

preloaded fixtures

import pandas as pd
import numpy as np

trades = pd.DataFrame({
    "trade_id": range(1, 11),
    "trader": ["ada", "ada", "ada", "bo", "bo", "bo", "cruz", "cruz", "dee", "dee"],
    "symbol": ["AAPL", "AAPL", "TSLA", "AAPL", "NVDA", "NVDA", "TSLA", "TSLA", "AAPL", "MSFT"],
    "side": ["buy", "sell", "buy", "buy", "buy", "sell", "buy", "sell", "buy", "buy"],
    "shares": [10, 5, 4, 3, 2, 1, 6, 6, 20, 5],
    "price": [150.0, 165.0, 210.0, 158.0, 480.0, 610.0, 190.0, 175.0, 170.0, 400.0],
    "traded_on": pd.to_datetime(["2024-01-05", "2024-02-10", "2024-01-20", "2024-01-25", "2024-02-01",
                                  "2024-03-01", "2024-02-05", "2024-02-25", "2024-02-15", "2024-03-02"]),
})

This is a Pro problem

“Realized profit and loss” is part of the Pro problem set. Upgrade to unlock the harder half of every track — SQL, Python and pandas.

Upgrade to Pro

The first problems in each track stay free.