π Quad Filter Daily Usage Guide
Your betting workflow is now partially automated. Total daily time: **~10-15 minutes** (down from 25+ minutes).
β¨ Overview: Automated vs. Manual Tasks
| Task | Who Does It | When |
|---|---|---|
| Pull game list & odds | **Automated** | 8:00 AM EST daily |
| Write to Google Sheet | **Automated** | 8:00 AM EST daily |
| News checks (spreads β₯10) | **Automated** | 8:00 AM EST daily |
| Enter KenPom data | **You** | ~9:00 AM |
| Enter BartTorvik data | **You** | ~9:00 AM |
| Enter EvanMiya data | **You** | ~9:00 AM |
| Review outputs & place bets | **You** | ~9:15 AM |
β³ Daily Workflow
8:00 AM β Pipeline Runs Automatically π€
GitHub Actions triggers the pipeline. It:
- Fetches all NCAAB games and odds from The Odds API
- Identifies games with spreads $\ge$ 10 points
- Runs Perplexity news searches on those games
- Writes everything to your Google Sheet
You don't need to do anything. It just happens.
~9:00 AM β Open Your Google Sheet π
URL: https://docs.google.com/spreadsheets/d/[YOUR-SHEET-ID]/edit
You'll see data in:
- Column **A**: Game names (e.g., "Duke Blue Devils vs Wake Forest Demon Deacons")
- Columns **B-C**: Opening and current spreads
- Columns **E-G**: Moneylines and totals
- Column **BC**: News notes from Perplexity (if any)
Quick check: Scroll to column **BC** to see if any games have injury news flagged.
~9:02 AM β Enter KenPom Data (Columns I-N) π
Go to: kenpom.com
For each game, find both teams and enter:
| Column | Data | Where to Find on KenPom |
|---|---|---|
| I | Fav_AdjEM | "AdjEM" column |
| J | Dog_AdjEM | "AdjEM" column |
| K | Fav_AdjT | "AdjT" column |
| L | Dog_AdjT | "AdjT" column |
| M | Fav_Luck | "Luck" column (use the **RANK**, 1-362) |
| N | Dog_Luck | "Luck" column (use the **RANK**, 1-362) |
Time: ~3-4 minutes for a typical slate
~9:06 AM β Enter BartTorvik Data (Columns R-U) π
Go to: barttorvik.com β Team Pages or use the main table
π¨ Important: Filter to **Last 30 days (L30)** β this captures recent form.
| Column | Data | What It Is |
|---|---|---|
| R | Fav_OE30 | Favorite's offensive efficiency (L30) |
| S | Fav_DE30 | Favorite's defensive efficiency (L30) |
| T | Dog_OE30 | Underdog's offensive efficiency (L30) |
| U | Dog_DE30 | Underdog's defensive efficiency (L30) |
Time: ~2-3 minutes
~9:09 AM β Enter EvanMiya Data (Columns AA-AD) π
Go to: evanmiya.com
For each game (focus on the favorite), enter:
| Column | Data | What It Measures |
|---|---|---|
| AA | Fav_KS | Kill Shots per game (favorite) |
| AB | Dog_KS_A | Kill Shots allowed per game (underdog) |
| AC | Fav_OppAdj | Opponent adjustment factor |
| AD | Fav_Consist | "High" or "Low" consistency |
Time: ~3-4 minutes
~9:13 AM β Review Outputs π
Once data is entered, formulas auto-calculate. Check these key columns:
| Column | What It Shows | What to Look For |
|---|---|---|
| Y | Form_Flag | RISING, STABLE, DECLINING |
| AF | Blowout_Pot | YES = potential blowout candidate |
| AW | Trap_Level | TRAP or WARNING |
| **AY** | **Bet_Type** | **Your betting recommendation** |
| AZ | Confidence | HIGH, MODERATE, LOW |
| BB | Final_Units | How much to bet |
~9:15 AM β Place Your Bets π°
Review the **Bet_Type** column for final action:
| Bet_Type | What It Means | Action |
|---|---|---|
| **11+ MARGIN** | Strong favorite, blowout potential | Bet favorite to win by 11+ |
| **1-10 MARGIN** | Favorite wins but compressed | Bet favorite to win by 1-10 |
| **FAV VALUE** | Edge on favorite spread | Bet favorite spread |
| **DOG VALUE** | Edge on underdog spread | Bet underdog spread |
| **DOG SPREAD (TRAP)** | Favorite is a trap | Bet underdog spread |
| **DOG SPREAD (LUCK)** | Luck divergence play | Bet underdog spread |
| **INVESTIGATE** | News flag, check manually | Research before betting |
| **SKIP (WARNING)** | Edge exists but risky | Consider skipping |
| **NO EDGE** | No betting opportunity | Pass |
ποΈ Quick Reference: Column Map
Auto-Populated by Pipeline
B = Opening spread
C = Current spread
E = Favorite moneyline
F = Underdog moneyline
G = Total
BC = News notes (Perplexity)
You Enter Manually
I-N = KenPom data
R-U = BartTorvik L30 data
AA-AD = EvanMiya data
Auto-Calculated (Formulas)
O = Expected possessions
P = KenPom baseline margin
V-X = Form adjustments
Y = Form flag
AE-AH = Kill shot & flow metrics
AI = Model margin (ΞΌ_model)
AO = Win probability
AS = Edge %
AY = Bet type recommendation
BB = Final units
π¨ Handling News Flags
If column **BC** has news notes for a game:
- **Read the note** β Does it mention injuries, suspensions, or lineup changes?
- **Investigate if needed** β Google the team + "injury report" for more details
- **Update column H (News_OK):**
- Enter `Y` if news is accounted for or not material
- Enter `N` if news is concerning and you want to skip
- Leave blank if still investigating
If News_OK = N or blank and there's a large line move, the Bet_Type will show **INVESTIGATE**.
π§ Troubleshooting
- **"Sheet not updating"**: Check GitHub Actions for errors; verify sheet sharing/ID.
- **"Formulas not calculating"**: Ensure data is in the correct columns (I-N, R-U, AA-AD); check for parameters in row 1 (BA1-BS1).
- **"News checks failing"**: Perplexity API model may have changed; check logs.
- **"Wrong teams showing"**: The Odds API team names may differ from KenPom. Manually verify.
ποΈ Weekly Maintenance & API Tracking
Weekly Maintenance
- **After Games Complete:** Enter actual results in the **Results Tracking** tab to track P/L and hit rate.
- **Parameter Tuning (Monthly):** Adjust parameters in row 1 (BA1-BS1) if results are consistently off.
API Usage Tracking
| API | Monthly Limit | Typical Daily Use | Monthly Use |
|---|---|---|---|
| The Odds API | 500 requests | 3 requests | ~90 requests |
| Perplexity | Generous (Pro) | 5-15 requests | ~300 requests |
| Google Sheets | Unlimited | ~50 writes | ~1,500 writes |
You're well within limits for daily use throughout the season.
β Summary: Your New Daily Routine
| Time | Action | Duration |
|---|---|---|
| 8:00 AM | Pipeline runs automatically | β |
| 9:00 AM | Open Google Sheet | 30 sec |
| 9:01 AM | Check news notes (column BC) | 1 min |
| 9:02 AM | Enter KenPom data (I-N) | 3-4 min |
| 9:06 AM | Enter BartTorvik data (R-U) | 2-3 min |
| 9:09 AM | Enter EvanMiya data (AA-AD) | 3-4 min |
| 9:13 AM | Review Bet_Type outputs | 2 min |
| 9:15 AM | Place bets | **Done** |