Inspiration

Market research often starts over every time an analyst revisits a company. Articles, price charts, and previous conclusions live in different places, making it difficult to see what has changed and which sources support a claim.

I built Market Memory to give researchers a repeatable, source-backed workflow: collect current evidence, connect it with daily market data, and preserve the investigation for the next research session.

What it does

Market Memory analyzes US stock symbols such as NVDA, AMD, MSFT, and other supported symbols entered by the user.

For each investigation, the application:

  • Searches for company developments, industry context, and contrasting evidence with Tavily.
  • Retrieves daily price and trading-volume data from Alpha Vantage when available.
  • Uses NVIDIA Nemotron through Nebius Token Factory to classify the observed sources and generate a structured executive brief.
  • Displays interactive charts, source links, data freshness, and provider status.
  • Saves the investigation and compares it with previous research for the same symbol.

The user can explore the evidence, revisit earlier reports, and see supported changes instead of relying on an unsourced summary.

How I built it

The application uses Next.js, React, and TypeScript. Its server coordinates the research workflow and keeps API credentials outside the browser.

Tavily provides a bounded sample of web results. NVIDIA Nemotron, accessed through a runtime call to Nebius Token Factory, classifies source sentiment and synthesizes a structured report. Application-side validation checks the model's output and its source references before the report is displayed.

The application calculates daily returns and Pearson correlations in TypeScript and renders interactive charts with Plotly. Research records are stored so they can be retrieved and compared in later sessions.

Challenges and what I learned

One challenge was connecting web evidence with market data without overstating what the data means. Search results are a limited sample, not a count of all online conversation. Publications without reliable dates are excluded from time-aligned calculations.

Another challenge was keeping the AI's conclusions grounded in evidence. Structured output and validation help reject incomplete results and references to unknown sources. I also learned that model-generated explanations and numerical calculations need different checks: the model synthesizes evidence, while the application calculates the statistics.

The project shows a correlation only when there are at least 30 valid paired observations and sufficient variation. These associations are exploratory; they do not establish causation or predict future returns.

What's next

I would like to improve company identification for manually entered symbols, expand historical evidence where data is available, and make it easier to explore changes across research sessions.

Market Memory is a research tool. It does not execute trades or provide personalized investment advice.

Built With

Share this project:

Updates

Submission history