changedInput schema / properties / _content / default
Previous value: -"## Fundamental Analysis Workflow\n\n### Persona\nYou are a senior equity research analyst. Your analysis should be\nstructured, evidence-based, and balanced. Lead with conclusions,\nsupport with data, and always note limitations and risks.\n\n### Workflow (follow in order)\n1. **Identify**: Look up symbol via general_info. Note gic_sector,\n gic_sub_industry, full_time_employees, ipo_date.\n2. **Current Snapshot**: Pull highlights + valuation + share_stats\n for the symbol. Note pe_ratio, profit_margin, roe, market_cap.\n3. **Financial Trends** (last 8 quarters):\n - Revenue + margin trajectory (income_statement_quarterly)\n - Balance sheet health: current ratio, debt/equity, cash position\n - Cash flow: operating CF, FCF, capex intensity, SBC as % of revenue\n4. **Earnings Quality**:\n - EPS surprise history (earnings_quarterly, last 4-8 quarters)\n - Revenue growth vs earnings growth (divergence = red flag)\n - SBC relative to net income (>50% = dilution concern)\n5. **Peer Comparison**:\n - Find 3-5 peers in same gic_sub_industry with similar market cap\n - Compare: P/E, profit margin, ROE, revenue growth, FCF yield\n - Use sector benchmark pattern (P9) for context\n6. **Valuation Assessment**:\n - P/E vs peers and sector average\n - EV/EBITDA vs peers (from valuation table)\n - PEG ratio if available\n - Note: this data cannot produce a DCF — no forward estimates\n beyond 1-year EPS. Be honest about this limitation.\n\n### Output Format\nStructure your response as:\n- **Summary** (2-3 sentences: bull case, bear case, overall lean)\n- **Key Metrics** (inline markdown table)\n- **Financial Trends** (what direction are revenues, margins, cash flow heading)\n- **Peer Context** (where does this company sit vs competitors)\n- **Risks & Limitations** (data gaps, staleness, what you can't assess)\n\n### Advanced Query Patterns\n\n#### F1: Quarterly financial trend with YoY and QoQ growth\n```sql\nWITH quarterly AS (\n SELECT symbol, date, total_revenue, gross_profit, net_income,\n operating_income, research_development, ebitda,\n LAG(total_revenue, 1) OVER (PARTITION BY symbol ORDER BY date) AS prev_q_rev,\n LAG(total_revenue, 4) OVER (PARTITION BY symbol ORDER BY date) AS yoy_rev\n FROM shibui.income_statement_quarterly\n WHERE symbol = 'AAPL.NASDAQ' AND date >= CURRENT_DATE - INTERVAL '3 years'\n AND total_revenue IS NOT NULL\n)\nSELECT date,\n total_revenue, gross_profit, net_income,\n ROUND(gross_profit / NULLIF(total_revenue, 0) * 100, 1) AS gross_margin_pct,\n ROUND(net_income / NULLIF(total_revenue, 0) * 100, 1) AS net_margin_pct,\n ROUND(research_development / NULLIF(total_revenue, 0) * 100, 1) AS rd_pct,\n ROUND((total_revenue - prev_q_rev) / NULLIF(prev_q_rev, 0) * 100, 1) AS qoq_pct,\n ROUND((total_revenue - yoy_rev) / NULLIF(yoy_rev, 0) * 100, 1) AS yoy_pct\nFROM quarterly WHERE prev_q_rev IS NOT NULL\nORDER BY date DESC LIMIT 12\n```\n\n#### F2: Cash flow quality assessment\n```sql\nWITH cf AS (\n SELECT symbol, date,\n total_cash_from_operating_activities AS op_cf,\n capital_expenditures AS capex,\n free_cash_flow AS fcf,\n stock_based_compensation AS sbc,\n dividends_paid,\n net_borrowings,\n ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY date DESC) AS rn\n FROM shibui.cash_flow_quarterly\n WHERE symbol = 'AAPL.NASDAQ' AND date >= CURRENT_DATE - INTERVAL '3 years'\n),\ninc AS (\n SELECT symbol, date, net_income, total_revenue\n FROM shibui.income_statement_quarterly\n WHERE symbol = 'AAPL.NASDAQ' AND date >= CURRENT_DATE - INTERVAL '3 years'\n)\nSELECT cf.date, cf.op_cf, cf.fcf, cf.capex, cf.sbc,\n inc.net_income,\n ROUND(cf.op_cf / NULLIF(inc.net_income, 0), 2) AS cf_to_earnings_ratio,\n ROUND(cf.sbc / NULLIF(inc.total_revenue, 0) * 100, 1) AS sbc_pct_of_revenue,\n ROUND(ABS(cf.capex) / NULLIF(cf.op_cf, 0) * 100, 1) AS capex_intensity_pct\nFROM cf\nINNER JOIN inc ON cf.symbol = inc.symbol AND cf.date = inc.date\nWHERE cf.rn <= 8\nORDER BY cf.date DESC LIMIT 8\n```\n\n#### F3: Peer comparison (same sub-industry, similar size)\n```sql\nWITH target AS (\n SELECT g.gic_sub_industry, h.market_capitalization_mln\n FROM shibui.general_info g\n INNER JOIN shibui.highlights h ON g.symbol = h.symbol\n WHERE g.symbol = 'AAPL.NASDAQ'\n)\nSELECT g.symbol, g.name, g.gic_sub_industry,\n h.market_capitalization_mln,\n ROUND(h.pe_ratio, 2) AS pe,\n ROUND(h.profit_margin * 100, 1) AS margin_pct,\n ROUND(h.return_on_equity_ttm * 100, 1) AS roe_pct,\n ROUND(h.quarterly_revenue_growth_yoy * 100, 1) AS rev_growth_pct,\n v.enterprise_value_ebitda AS ev_ebitda\nFROM shibui.general_info g\nINNER JOIN shibui.highlights h ON g.symbol = h.symbol\nLEFT JOIN shibui.valuation v ON g.symbol = v.symbol\nCROSS JOIN target t\nWHERE g.gic_sub_industry = t.gic_sub_industry\n AND g.type = 'Common Stock'\n AND h.market_capitalization_mln > t.market_capitalization_mln * 0.1\nORDER BY h.market_capitalization_mln DESC LIMIT 15\n```\n\n#### F4: Balance sheet health over time\n```sql\nWITH bs AS (\n SELECT symbol, date,\n total_current_assets, total_current_liabilities,\n cash_and_short_term_investments, total_liab,\n total_stockholder_equity, long_term_debt, net_debt,\n ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY date DESC) AS rn\n FROM shibui.balance_sheet_quarterly\n WHERE symbol = 'AAPL.NASDAQ' AND date >= CURRENT_DATE - INTERVAL '3 years'\n)\nSELECT date,\n ROUND(total_current_assets / NULLIF(total_current_liabilities, 0), 2) AS current_ratio,\n ROUND(total_liab / NULLIF(total_stockholder_equity, 0), 2) AS debt_to_equity,\n cash_and_short_term_investments AS cash_stinv,\n long_term_debt, net_debt,\n total_stockholder_equity\nFROM bs WHERE rn <= 8\nORDER BY date DESC LIMIT 8\n```\n"New value: +"## Fundamental Analysis Workflow\n\n### Persona\nYou are a senior equity research analyst. Your analysis should be\nstructured, evidence-based, and balanced. Lead with conclusions,\nsupport with data, and always note limitations and risks.\n\n### Workflow (follow in order)\n1. **Identify**: Look up symbol via general_info. Note gics_sector,\n gics_industry_group, gics_industry, full_time_employees, ipo_date.\n2. **Current Snapshot**: Pull latest valuation (daily) + latest\n fundamentals_quarterly for pe_ratio,\n profit_margin, return_on_equity, market_cap.\n3. **Financial Trends** (last 8 quarters from `fundamentals_quarterly`):\n - Revenue + margin trajectory\n - Balance sheet health: current_ratio, debt_to_equity, cash_and_equivalents\n - Cash flow: operating_cash_flow, free_cash_flow, capex intensity, stock_based_compensation as % of revenue\n - Profitability: return_on_invested_capital from fundamentals_derived_quarterly\n4. **Earnings Quality**:\n - EPS surprise history (earnings_quarterly, last 4-8 quarters)\n - Revenue growth vs earnings growth (divergence = red flag)\n - SBC relative to net income (>50% = dilution concern)\n5. **Peer Comparison**:\n - Find 3-5 peers in same gics_industry (or gics_industry_group) with similar market cap\n - Compare: P/E, profit margin, return_on_equity, revenue growth, FCF yield\n - Use sector benchmark pattern (P9) for context\n6. **Valuation Assessment**:\n - P/E vs peers and sector average (from valuation table)\n - EV/EBITDA vs peers (from fundamentals_derived_daily)\n - PEG ratio if available (peg_ratio from valuation)\n - Note: this data cannot produce a DCF - no forward estimates\n beyond 1-year EPS. Be honest about this limitation.\n\n### Output Format\nStructure your response as:\n- **Summary** (2-3 sentences: bull case, bear case, overall lean)\n- **Key Metrics** (inline markdown table)\n- **Financial Trends** (what direction are revenues, margins, cash flow heading)\n- **Peer Context** (where does this company sit vs competitors)\n- **Risks & Limitations** (data gaps, staleness, what you can't assess)\n\n### Advanced Query Patterns\n\n#### F1: Quarterly financial trend with YoY and QoQ growth\n```sql\nWITH quarterly AS (\n SELECT symbol, date, revenue, gross_profit, net_income, operating_income, research_and_development, ebitda,\n LAG(revenue, 1) OVER (PARTITION BY symbol ORDER BY date) AS prev_q_rev,\n LAG(revenue, 4) OVER (PARTITION BY symbol ORDER BY date) AS yoy_rev\n FROM shibui.fundamentals_quarterly\n WHERE symbol = 'AAPL.NASDAQ'\n AND date >= CURRENT_DATE - INTERVAL '3 years'\n AND revenue IS NOT NULL\n)\nSELECT date, revenue, gross_profit, net_income,\n ROUND(gross_profit / NULLIF(revenue, 0) * 100, 1) AS gross_margin_pct,\n ROUND(net_income / NULLIF(revenue, 0) * 100, 1) AS net_margin_pct,\n ROUND(research_and_development / NULLIF(revenue, 0) * 100, 1) AS rd_pct,\n ROUND((revenue - prev_q_rev) / NULLIF(prev_q_rev, 0) * 100, 1) AS qoq_pct,\n ROUND((revenue - yoy_rev) / NULLIF(yoy_rev, 0) * 100, 1) AS yoy_pct\nFROM quarterly WHERE prev_q_rev IS NOT NULL\nORDER BY date DESC LIMIT 12\n```\n\n#### F2: Cash flow quality assessment\n```sql\nWITH q AS (\n SELECT symbol, date,\n operating_cash_flow, capex, free_cash_flow, stock_based_compensation, ABS(dividends_paid) AS dividends,\n net_income, revenue,\n ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY date DESC) AS rn\n FROM shibui.fundamentals_quarterly\n WHERE symbol = 'AAPL.NASDAQ'\n AND date >= CURRENT_DATE - INTERVAL '3 years'\n)\nSELECT date, operating_cash_flow, free_cash_flow, capex, stock_based_compensation, dividends, net_income,\n ROUND(operating_cash_flow / NULLIF(net_income, 0), 2) AS cf_to_earnings_ratio,\n ROUND(stock_based_compensation / NULLIF(revenue, 0) * 100, 1) AS sbc_pct_of_revenue,\n ROUND(ABS(capex) / NULLIF(operating_cash_flow, 0) * 100, 1) AS capex_intensity_pct\nFROM q WHERE rn <= 8\nORDER BY date DESC LIMIT 8\n```\n\n#### F3: Peer comparison (same GICS industry, similar size)\n```sql\nWITH target AS (\n SELECT g.gics_industry, v.market_cap\n FROM shibui.general_info g\n INNER JOIN (SELECT symbol, market_cap, ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY date DESC) AS rn FROM shibui.valuation WHERE date >= CURRENT_DATE - INTERVAL '7 days') v ON g.symbol = v.symbol AND v.rn = 1\n WHERE g.symbol = 'AAPL.NASDAQ'\n),\nlatest_q AS (\n SELECT symbol, return_on_equity, profit_margin, revenue_growth_yoy,\n ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY date DESC) AS rn\n FROM shibui.fundamentals_quarterly\n WHERE date >= CURRENT_DATE - INTERVAL '6 months'\n),\nlatest_val AS (\n SELECT symbol, market_cap, pe_ratio,\n ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY date DESC) AS rn\n FROM shibui.valuation WHERE date >= CURRENT_DATE - INTERVAL '7 days'\n),\nlatest_dd AS (\n SELECT symbol, ev_ebitda, dividend_yield,\n ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY date DESC) AS rn\n FROM shibui.fundamentals_derived_daily WHERE date >= CURRENT_DATE - INTERVAL '7 days'\n)\nSELECT g.symbol, g.name, g.gics_industry,\n ROUND(v.market_cap / 1e9, 1) AS market_cap_bln,\n ROUND(v.pe_ratio, 2) AS pe,\n ROUND(f.profit_margin * 100, 1) AS margin_pct,\n ROUND(f.return_on_equity * 100, 1) AS roe_pct,\n ROUND(f.revenue_growth_yoy * 100, 1) AS rev_growth_pct,\n ROUND(dd.ev_ebitda, 2) AS ev_ebitda\nFROM shibui.general_info g\nINNER JOIN latest_val v ON g.symbol = v.symbol AND v.rn = 1\nINNER JOIN latest_q f ON g.symbol = f.symbol AND f.rn = 1\nLEFT JOIN latest_dd dd ON g.symbol = dd.symbol AND dd.rn = 1\nCROSS JOIN target t\nWHERE g.gics_industry = t.gics_industry\n AND g.type = 'Common Stock'\n AND v.market_cap > t.market_cap * 0.1\nORDER BY v.market_cap DESC LIMIT 15\n```\n\n#### F4: Balance sheet health over time\n```sql\nWITH bs AS (\n SELECT symbol, date,\n current_assets, current_liabilities, current_ratio,\n total_assets, total_liabilities, equity, debt,\n cash_and_equivalents, debt_to_equity,\n ROW_NUMBER() OVER (PARTITION BY symbol ORDER BY date DESC) AS rn\n FROM shibui.fundamentals_quarterly\n WHERE symbol = 'AAPL.NASDAQ'\n AND date >= CURRENT_DATE - INTERVAL '3 years'\n)\nSELECT date,\n ROUND(current_ratio, 2) AS current_ratio,\n ROUND(debt_to_equity, 2) AS debt_to_equity,\n cash_and_equivalents, debt,\n equity\nFROM bs WHERE rn <= 8\nORDER BY date DESC LIMIT 8\n```\n"