Oracle3
Oracle3: 예측시장 거래 엔진·MCP 서버
Huntr로 저평가 주식 탐색, 기본 지표·다중 차트·스마트 워치리스트 제공
Discover undervalued stocks with Huntr. The ultimate financial terminal offering fundamental metrics, multi-chart overviews, and smart watchlists. Join the Wolf of Value Street.
금융TypeScript · HTMLGitHub @igarridosi온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기🐺 Huntr – A high-end financial terminal built to democratize fundamental analysis. It features an advanced DCF calculator with dynamic sliders, an Opportunity Radar to track unusual volume and buybacks, and a visual Earnings Calendar.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Live at huntrvalue.me.
Huntr works out what a company is actually worth and tells you whether today's price is cheap or expensive. It is built for people who invest in individual companies and want to check the numbers themselves instead of trusting a headline multiple.README 전문 보기 ↗Live at huntrvalue.me.
Huntr works out what a company is actually worth and tells you whether today's price is cheap or expensive. It is built for people who invest in individual companies and want to check the numbers themselves instead of trusting a headline multiple.
Next.js 16 (App Router, Server Actions), TypeScript strict, Supabase (Postgres, Auth, Row Level Security), TanStack Query, Recharts, Tailwind v4, Vitest. Deployed on Vercel with two weekly cron jobs. Market data comes from Yahoo Finance through yahoo-finance2, from SEC EDGAR for balance-sheet figures, and from Alpha Vantage where a key is configured.
npm test
494 tests across 31 files, running in about two seconds with no network access. They cover the DCF engine, the Monte Carlo sampler, the reverse DCF solver, net-debt integrity across scenarios, SEC EDGAR extraction (debt cascades, restricted cash, share-count selection), currency and data-quality guards, scenario coherence, the cache guards that stop an empty response from being stored, the Chart Builder's spec model, resolver and templates (calendar alignment, the trailing-twelve-month period and growth transforms, indexing against the period before the window, pre-listing clipping), the Alpha Vantage statement mappers and the repair of cached bundles, and the live price stamped on every DCF scenario before export.
The financial logic lives in src/lib/calculations as pure functions that take numbers and return numbers. Nothing in there fetches, renders or touches a database, which is why every test runs against literal inputs and why the export invariants (the same net debt, share count and price in all three scenarios) can be asserted on the actual file a user downloads.
src/app/actions/stock.ts). The yahoo-finance2 client and the API keys never leave the server, ticker inputs are validated against a strict pattern before use, and there is no public endpoint to scrape or abuse. The only route handlers are the two cron jobs, and those require a bearer secret.stock_cache table, and a Sunday cron pre-warms the whole universe an hour before the quality-score cron reads it. A request never waits on a provider unless the cache has nothing.watchlists, user_portfolio_state, user_dcf_scenarios, and the rest under supabase/migrations) carries policies keyed on auth.uid(), so a client can only ever read and write its own rows./app/settings is protected at the middleware. Saving a watchlist, a portfolio or a scenario opens a sign-up prompt that says what the account is for. People can try the product before deciding whether to trust it with their data.analytics_events, keyed on a random id in a 30-day httpOnly cookie. No IP address, user agent, referrer or fingerprint is stored, query strings are cut off paths before they are saved, and the table has RLS on with no policy, so only the service role reads it. The numbers are read back through SQL aggregates on , which 404s for anyone not listed in .cp .env.example .env
npm ci
npm run dev
.env.example lists every variable the code reads and says which ones are required. With only the two Supabase values set, the app runs and the data views fall back to their empty states.
With Docker:
cp .env.example .env
docker compose up --build
The compose file targets a hosted Supabase project; there is no local database to stand up.
Public beta with guest access. Bugs and requests go through the feedback form, also reachable from inside the app.
MIT. See LICENSE.
This project is developed with help from AI coding agents; their instructions live in docs/ai/.
/app/admin/analyticsANALYTICS_ADMIN_IDS