GitHub - gqgs/llm100kbench: LLM 100k portfolio management benchmark

GitHub

3 min read Original article ↗

LLM Investment Benchmark

A tool for benchmarking and tracking Large Language Model (LLM) investment decisions.

Overview

This project provides a framework to create, manage, and track investment portfolios generated by LLM models. It allows you to:

  • Create new portfolios
  • List current holdings and recent context
  • Update portfolios based on model decisions

The model executions and their current context can be seen here.

Automated Weekly Runs

The active model roster is configured in models.json. The weekly GitHub Actions workflow runs the benchmark every Monday, writes model orders under orders/<model>/<date>.json, stores the market snapshot in prices/<date>.csv, updates llm100kbench.db, and regenerates this README's current portfolio section.

The project is intentionally limited to free API tiers. Models that require paid metered API access or subscriptions are archived instead of being run automatically.

Each weekly run also writes a concise decision log under logs/<model>/<date>.md, including the model used, validation status, per-trade rationale, context, and validation notes when a model response is rejected.

Why?

To optimize their portfolio, the primary objective defined for the LLMs, it is imperative to evaluate the risk-reward ratio, formulate cogent assumptions about future market conditions, and leverage tools and their understanding of human psychology and financial market dynamics.

This benchmark may be a good proxy to measure how well LLMs are able to coordinate the aforementioned efforts.

Notes

  • chatgpt, deepseek, and grok are kept as continuing benchmark identities. Their exact backend model IDs are recorded in each new order's metadata.
  • perplexity is archived for future runs because its API is paid and the free chat UI is not suitable for unattended automation.
  • Claude and other paid-only APIs are not included while the project keeps the free-tier-only restriction.

Project Structure

  • cmd: Contains the main command implementations
    • create: Initialize new portfolios
    • list: Display current holdings and context
    • update: Process investment orders and update holdings
    • stocks: Fetch most recent stock prices

Prompt

The most recent prompt with the clear guidelines can be see here and here.

Current Portfolio (2026-09-07)

Portfolio Value by Model

pie showData
    "deepseek" : 196111
    "chatgpt" : 133816
    "gpt-oss" : 103615
    "mistral" : 100000
    "qwen" : 99512
    "gemini" : 68980
    "llama" : 47661
Loading
Model Ticket Sum Quantity
chatgpt USD 69 69
chatgpt AAPL 133747 418
deepseek AMD 1433 3
deepseek ASML 171488 100
deepseek MSFT 3498 7
deepseek SNPS 19692 50
gemini AAPL 13439 42
gemini AMD 9074 19
gemini ASML 6860 4
gemini CRDO 3411 20
gemini GFS 2713 60
gemini NVDA 6911 30
gemini NXPI 6835 30
gemini ON 3124 42
gemini QCOM 7762 46
gemini TSLA 8852 25
mistral USD 100000 100000
llama USD 37102 37102
llama AAPL 10559 33
gpt-oss AAPL 103350 323
gpt-oss CMCSA 265 10
qwen AAPL 19838 62
qwen AMZN 19905 77
qwen GOOGL 19969 59
qwen MSFT 19988 40
qwen NVDA 19811 86
Model Total Sum Change
deepseek 196111 —
chatgpt 133816 —
gpt-oss 103615 —
mistral 100000 —
qwen 99512 —
gemini 68980 —
llama 47661 —