Skip to content

Add Single-Sheet Stock Rating System - Google Sheets implementation#7

Open
Rbh2733 wants to merge 1 commit into
mainfrom
claude/single-sheet-stock-rating-011CUQmMrQ5SJFbQttvFLtDm
Open

Add Single-Sheet Stock Rating System - Google Sheets implementation#7
Rbh2733 wants to merge 1 commit into
mainfrom
claude/single-sheet-stock-rating-011CUQmMrQ5SJFbQttvFLtDm

Conversation

@Rbh2733

@Rbh2733 Rbh2733 commented Oct 24, 2025

Copy link
Copy Markdown
Owner

This commit adds a complete stock rating system with:

  • STOCK_RATING_README.md: Comprehensive overview and quick start guide
  • GOOGLE_SHEETS_IMPLEMENTATION.md: Complete formula documentation and manual setup guide
  • QUICK_START_IMPORT.md: 5-minute quick start guide for importing the template
  • stock_rating_template.csv: Ready-to-import template with all formulas and example stocks

Features:
✅ Three-tier classification system (Core, Emerging, Moonshots) ✅ Auto-calculates 5 component scores (Valuation, Quality, Growth, Momentum, Health) ✅ Generates composite scores (0-100) with star ratings and action signals ✅ Tier-specific formulas optimized for different market caps ✅ 25+ financial metrics tracked
✅ Pre-loaded with 3 example stocks (GOOGL, PLTR, RKLB) ✅ Comprehensive documentation with data sources and portfolio management strategies

The system is designed for growth-focused investors and can track 20+ stocks in a single spreadsheet view with automatic scoring and color-coded feedback.

🤖 Generated with Claude Code

Summary by Sourcery

Introduce a complete single-sheet stock rating system for Google Sheets, including a ready-made CSV template, quick-start import guide, and comprehensive implementation and usage documentation.

New Features:

  • Provide stock_rating_template.csv preloaded with all formulas and three example stocks for immediate use

Enhancements:

  • Add QUICK_START_IMPORT.md to guide users through a 5-minute CSV import and basic formatting
  • Add GOOGLE_SHEETS_IMPLEMENTATION.md detailing headers, tiered scoring formulas, conditional formatting, data validation, and troubleshooting

Documentation:

  • Add STOCK_RATING_README.md summarizing system purpose, tier classifications, scoring methodology, examples, data sources, portfolio management strategies, and disclaimers

This commit adds a complete stock rating system with:

- STOCK_RATING_README.md: Comprehensive overview and quick start guide
- GOOGLE_SHEETS_IMPLEMENTATION.md: Complete formula documentation and manual setup guide
- QUICK_START_IMPORT.md: 5-minute quick start guide for importing the template
- stock_rating_template.csv: Ready-to-import template with all formulas and example stocks

Features:
✅ Three-tier classification system (Core, Emerging, Moonshots)
✅ Auto-calculates 5 component scores (Valuation, Quality, Growth, Momentum, Health)
✅ Generates composite scores (0-100) with star ratings and action signals
✅ Tier-specific formulas optimized for different market caps
✅ 25+ financial metrics tracked
✅ Pre-loaded with 3 example stocks (GOOGL, PLTR, RKLB)
✅ Comprehensive documentation with data sources and portfolio management strategies

The system is designed for growth-focused investors and can track 20+ stocks
in a single spreadsheet view with automatic scoring and color-coded feedback.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
@sourcery-ai

sourcery-ai Bot commented Oct 24, 2025

Copy link
Copy Markdown

Reviewer's Guide

This PR introduces a complete, single-sheet stock rating system for Google Sheets by adding a comprehensive README, a detailed implementation guide with all formulas and setup steps, a quick-start import guide, and a ready-to-import CSV template with example stocks and formatting instructions.

Entity relationship diagram for stock rating sheet columns and calculated scores

erDiagram
    STOCK {
      string Ticker
      string Company
      float Price
      float MarketCap
      string Sector
      float Beta
      float ForwardPE
      float AvgPE5yr
      float FCF
      float PSRatio
      float RevenueGrowth
      float EPSGrowth
      float OperatingMargin
      float OpMargin3yrAvg
      float ROIC
      float GrossMargin
      float NRR
      float CashConversion
      float TAM
      float TAMPenetration
      float Return12mo
      string Above200MA
      float NetCash
      float InsiderOwn
      string HasMoat
    }
    STOCK ||--o{ SCORE : "has"
    SCORE {
      string Tier
      float ValuationScore
      float QualityScore
      float GrowthScore
      float MomentumScore
      float HealthScore
      float CompositeScore
      string Rating
      string Action
    }
Loading

Class diagram for calculated score logic and tier system

classDiagram
    class Stock {
      +Ticker: string
      +Company: string
      +Price: float
      +MarketCap: float
      +Sector: string
      +Beta: float
      +ForwardPE: float
      +AvgPE5yr: float
      +FCF: float
      +PSRatio: float
      +RevenueGrowth: float
      +EPSGrowth: float
      +OperatingMargin: float
      +OpMargin3yrAvg: float
      +ROIC: float
      +GrossMargin: float
      +NRR: float
      +CashConversion: float
      +TAM: float
      +TAMPenetration: float
      +Return12mo: float
      +Above200MA: string
      +NetCash: float
      +InsiderOwn: float
      +HasMoat: string
    }
    class ScoreCalculator {
      +calculateTier(MarketCap): string
      +calculateValuationScore(...): float
      +calculateQualityScore(...): float
      +calculateGrowthScore(...): float
      +calculateMomentumScore(...): float
      +calculateHealthScore(...): float
      +calculateCompositeScore(...): float
      +calculateRating(...): string
      +calculateAction(...): string
    }
    Stock --> ScoreCalculator
Loading

Flow diagram for stock data input to action signal output

flowchart TD
    A["User enters stock data (A-D, F-Z)"] --> B["System classifies Tier (E)"]
    B --> C["System calculates component scores (AA-AE)"]
    C --> D["System calculates composite score (AF)"]
    D --> E["System generates rating (AG)"]
    E --> F["System generates action signal (AH)"]
Loading

File-Level Changes

Change Details Files
Add comprehensive system overview and primary README
  • Create STOCK_RATING_README.md detailing system purpose, tiers, and file list
  • Summarize features, component scores, and tier-specific weighting
STOCK_RATING_README.md
Add detailed Google Sheets implementation guide
  • Document step-by-step manual setup including headers, formulas, and layout
  • Include full formulas for component scores, composite calculation, rating, and action signals
  • Provide conditional formatting rules, data validation, and troubleshooting tips
  • Supply example data rows for GOOGL, PLTR, and RKLB
GOOGLE_SHEETS_IMPLEMENTATION.md
Add quick-start CSV import guide
  • Outline 5-minute import steps for stock_rating_template.csv into Google Sheets
  • Detail formatting, conditional formatting, and verification checks
  • Cover troubleshooting common import issues and next actions
QUICK_START_IMPORT.md
Add ready-to-import CSV template
  • Provide stock_rating_template.csv pre-configured with headers, formulas, and example stocks
stock_rating_template.csv

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey there - I've reviewed your changes - here's some feedback:

  • Consider breaking out the long nested IF formulas into named ranges or helper columns so it’s easier for users to debug and customize individual components without wading through huge formulas.
  • There’s a lot of overlap between the Implementation guide and the README—consolidating shared sections or linking to a single source of truth will reduce duplication and simplify future updates.
  • It would be helpful to surface core parameters (like tier cutoffs, component weights, and rating thresholds) in a dedicated config area or named ranges so users can tweak them without hunting down nested IF statements.
Prompt for AI Agents
Please address the comments from this code review:

## Overall Comments
- Consider breaking out the long nested IF formulas into named ranges or helper columns so it’s easier for users to debug and customize individual components without wading through huge formulas.
- There’s a lot of overlap between the Implementation guide and the README—consolidating shared sections or linking to a single source of truth will reduce duplication and simplify future updates.
- It would be helpful to surface core parameters (like tier cutoffs, component weights, and rating thresholds) in a dedicated config area or named ranges so users can tweak them without hunting down nested IF statements.

Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants