FINAL RESULTS: competition ended 2025-12-31
AUTHOR: Brennen Slaney
GITHUB: @realslimslaney
Stock Competition 2025
1 Final Standings
1.1 Leaderboard
| Final Results (Feb 21 - Dec 31, 2025) | ||||||||
| Name | Ticker | Return | Start Date | End Date | Start Price | End Price | Dividends | End Value |
|---|---|---|---|---|---|---|---|---|
| Mike | AG+ | 200.98% | 2025-02-21 | 2025-12-31 | $5.53 | $16.64 | $0.01 | $16.65 |
| Ryan | NVDA+ | 38.80% | 2025-02-21 | 2025-12-31 | $134.23 | $186.27 | $0.04 | $186.31 |
| Brennen | SD+ | 27.07% | 2025-02-21 | 2025-12-31 | $11.40 | $14.03 | $0.46 | $14.49 |
| Ben | CINF+ | 26.30% | 2025-02-21 | 2025-12-31 | $130.60 | $161.48 | $3.48 | $164.96 |
| Benchmarks | ||||||||
| Name | Ticker | Return | Start Date | End Date | Start Price | End Price | Dividends | End Value |
|---|---|---|---|---|---|---|---|---|
| S&P 500 | ^SPX+ | 13.84% | 2025-02-21 | 2025-12-31 | $6,013.13 | $6,845.50 | $0.00 | $6,845.50 |
| Bitcoin | BTC-USD+ | −8.96% | 2025-02-21 | 2025-12-31 | $96,125.55 | $87,508.83 | $0.00 | $87,508.83 |
1.2 Performance Over Time
Code
chart_df = (
df.join(
df.rename({"close": "start_price"})
.filter(pl.col("date") == start_date)
.select(["ticker", "start_price"]),
on="ticker",
how="left",
)
.with_columns(
pl.col("close")
.add(pl.col("dividend").fill_null(0.0).cum_sum().over(pl.col("ticker")))
.alias("Accumulated Value")
)
.with_columns(
(
pl.col("factor")
* (pl.col("Accumulated Value").truediv(pl.col("start_price")) - pl.lit(1))
).alias("Return"),
pl.when(pl.col("factor") == 1)
.then(pl.col("ticker") + "+")
.otherwise(pl.col("ticker") + "-")
.alias("position"),
)
)
fig = px.line(
chart_df,
x="date",
y="Return",
color="position",
line_group="position",
labels={"Return": "Return", "date": "Date"},
category_orders={"position": position_order},
color_discrete_map=position_color_map,
)
for trace in fig.data:
if trace.name in benchmark_positions:
trace.line.dash = "dash"
trace.line.color = "#888"
trace.line.width = 1.8
else:
trace.line.width = 2.5
fig.add_hline(y=0, line_dash="dot", line_color="#999", line_width=1)
fig.update_traces(
hovertemplate="<b>%{fullData.name}</b><br>%{x|%b %d, %Y}<br>Return: %{y:.2%}<extra></extra>"
)
fig.update_layout(
title="Total Return by Company",
legend_title="Ticker",
yaxis=dict(tickformat=".1%"),
template="plotly_white",
hovermode="x unified",
)
fig.show()Code
fig = px.line(
df.sort(["ticker", "date"]),
x="date",
y="close",
color="ticker",
facet_col="ticker",
facet_col_wrap=2,
labels={"close": "Stock Price", "date": "Date"},
category_orders={"ticker": ticker_order},
color_discrete_map=ticker_color_map,
)
fig.update_layout(
title="Stock Prices",
template="plotly_white",
showlegend=False,
height=700,
)
fig.update_yaxes(matches=None, showticklabels=True)
fig.update_xaxes(matches=None, showticklabels=True)
fig.for_each_annotation(lambda a: a.update(text=a.text.split("=")[-1]))
fig.update_traces(
line_width=2,
hovertemplate="%{x|%b %d, %Y}<br>$%{y:.2f}<extra></extra>",
)
fig.show()2 Background
Four ambitious gentlemen met in Cleveland on the morning of February 22, 2025 for a colossal inter-industry summoning of the minds. Following hours of deliberation and intense research, the four heads of their respective divisions proposed their leading stock selections for the remainder of the 2025 calendar year.
3 Selections
3.1 Market-Timer Mike
After thorough review of X (formerly Twitter), Market-Timer Mike had an epiphany that it was finally Silver’s time to shine and selected $AG
3.2 Raw Iron Ryan
Ryan put down the weights for a brief minute to check the pulse of his biceps and the market. He knows a chip on a shoulder when he sees one and selected $NVDA
3.3 The Benjamin
What more can we say about this individual other than Company Man? Nothing. Nothing at all. The consummate professional backed his own employer with a selection of $CINF
3.4 Real Slim Slaney
After multiple late nights of research spanning many websites, Brennen knew his selection of $SD was love at first sight because nothing can beat THE POWER OF US.
| Selections | ||
| Name | Ticker | factor |
|---|---|---|
| Ben | CINF | 1 |
| Brennen | SD | 1 |
| Mike | AG | 1 |
| Ryan | NVDA | 1 |
| S&P 500 | ^SPX | 1 |
| Bitcoin | BTC-USD | 1 |
4 Appendix
4.1 Full Dataset
| Loading ITables v2.8.1 from the internet... (need help?) |