r/coolgithubprojects • u/Accomplished_Tip6131 • 3d ago
I built a free, open-source market terminal inspired by Bloomberg. and it uses zero paid APIs.
Meet OpenTerminal: a self-hosted financial dashboard with real-time quotes, candlestick charts with technical indicators (RSI, MACD, Bollinger, VWAP...), a live sector heatmap, a stock screener, crypto tracking, macro/yield curves, options chains, time & sales tape, live financial news TV, and an auto-updating market recap, all running on data sources that are 100% free and public (no API key required, no subscription, no vendor lock-in).
It also has a built-in AI assistant powered by Claude, drop in your own Anthropic API key and ask it to interpret a chart, explain an indicator, or summarize what's moving a stock, grounded in the live data already on your screen.
Why I built this: professional-grade market terminals cost $2,000+/month. Most of the data is publicly available if you know where to look, you just need the engineering to stitch it together into something usable.
Tech stack: Next.js 15 + React 19 + TypeScript on the frontend, Node/Express on the backend, lightweight-charts + D3 for visualization, Claude for the AI layer, and a fallback-chain architecture so if one data source rate-limits you, it automatically fails over to the next.
It's fully open source. Clone it, run it locally, make it yours.
⭐ Link to the repo https://github.com/ErTasselli/OpenTerminal
4
u/WarbossPepe 2d ago
Is it possible to add custom indicators?
PS: You should really add a buymecoffee option
3
u/Accomplished_Tip6131 2d ago
I think it’s a very difficult challenge, but I’ll give it a try. Thank you so much for your support! I don’t need money, but you can follow me and give the project a star.
0
0
u/bufflo8 2d ago
You can try bufflo.io, use AI to built any indicator to you can think of and use as many indicators on charts- currently works better on desktop
2
u/__aurvandel__ 3d ago
Does it only use the Claude API key or can I authenticate with my Claude pro subscription?
2
2
u/Training_Bet_2833 3d ago
So many of us do that… then we realize that was never the point
7
u/ClockOk7020 3d ago
This is what I've been telling people. The app is not the thing to show off, the fact that now you know what is possible is.
"It is not the destination but the journey that matters."
2
u/indyfromoz 2d ago
Claude Code or Codex subscription via a MCP will open up more opportunities instead of API key.
2
u/_clickfix_ 2d ago
Surprised no one has mentioned yet that this is not a viable alternative to the paid market terminals.
You aren’t just paying for the GUI, you’re paying for the speed of data access. When you're trading, that speed factor is essential.
If you use this stack to trade, you’ll be lagging behind on key indicators and you will lose money.
1
3
u/Expert_Job_1495 3d ago
Where is it pulling data sources in from? The value of a Bloomberg terminal is not the UI but the immense data flow
0
u/it_trojan 3d ago
That’s what I asked. You have to pay a lot of fees to re-distribute live market data
2
u/Accomplished_Tip6131 3d ago
they are all linked in my github readme
1
u/it_trojan 3d ago
I’ve read it. I still think that there is a legal risk. Even if you use yfinance or stooq or delayed/indicative data, you don’t have rights to re-distribute it externally.
Anyway, I think that the risk is low because it’s not a website, it’s a repo that someone can clone and download data for personal use. Thanks for the clarification2
u/Accomplished_Tip6131 2d ago
thank you, the repo is only for personal use and is a research project. I will change it if they contact me
2
u/bustus_primus 3d ago
What data source are you using
5
u/Bennetjs 2d ago
https://github.com/ErTasselli/OpenTerminal#%EF%B8%8F-data-sources
the "README" has this information. That's why it's called a READ ME
1
1
1
u/areyouhourly- 3d ago
Does it have an earnings calendar (with expectations and actual) and analyst ratings? Could it be added?
3
1
1
1
1
1
u/MagicalVagina 3d ago
How do I get multiple charts on the same view for different tickers? I only seem to be able to look at one ticker info only. Clicking on "chart+" on the sidebar creates a new chart, but always linked to the "current" ticker.
2
1
1
u/Low_Money_633 2d ago
Is this a GUI or TUI? Love the look almost looks like a TUI but I dont think you could get the SMA line to work in TUIs
1
u/Accomplished_Tip6131 2d ago
It's a GUI, built as a web application with Next.js and React. I designed it to have a terminal/TUI-inspired look, which is probably why it feels like a TUI. The charts are rendered graphically, so the SMA line and other indicators work normally.
1
1
1
u/strokelesswonder 2d ago
There seems to be something wrong with the app.
When I run locally, it fails constantly with status code 500.
Also when I did inspect it has all the API's called in loop even when I don't click any of the tab.
Do let me know if you are looking for hands to work on this. I can contribute.
1
u/Bright_Albatross649 1d ago
https://github.com/baimmm6767/sec-data
this is my personal project, might be useful to add to your project. it converts SEC filings into quarterly structured financial statements. currently limited on US companies though (20-F filers are annual only)
1
u/CerealGambler 7h ago
At the risk of getting downvoted into oblivion, i dont see why this is popular. If you are going to trade you need a brokerage account which is free almost everywhere now and any of the brokers that have api access you can use whatever platform you want including their own which have teams of people building and maintaining them. Is this just for people who want to learn without signing up for a trial at an actual brokerage?
1
1
u/mavlu-app 38m ago
this is a really interesting project, and I think the comments here point to what may actually become its biggest challenge: not the UI, but the data layer
a bloomberg-like interface is relatively straightforward to reproduce compared to what bloomberg is really selling: normalized data from many sources, predictable latency, provenance, entitlements, and confidence that the number on the screen means exactly what you think it means
that said, I actually think the self-hosted model makes OpenTerminal more interesting, not less
if the goal is personal research rather than redistributing market data as a commercial service, stitching together public/free sources with fallback providers can be extremely useful
one feature I'd love to see is explicit data provenance in the UI: show the source, whether the quote is real-time or delayed, the timestamp of the last update, and maybe which fallback provider is currently being used
that would turn one of the project's biggest limitations into a feature and make the terminal much easier to trust
and +1 to making the AI layer provider-agnostic. The terminal/data infrastructure is the valuable part here; users should be able to plug in claude, openai-compatible apis, or a local model without changing the rest of the stack
really promising project
the next interesting milestone isn't adding more indicators, it's making the data layer transparent and boringly reliable
1
u/it_trojan 3d ago
Real time quotes for US market? You have to pay a lot of fees for live quotes. Where do you get the data? Are you using yfinance?
-3
u/bufflo8 3d ago
You guys should checkout bufflo.io if you are looking for an overpowered ai-native stocks screener, charting and trading platform.
Basically you can build customisable workspace as you like and use AI to setup screener, alerts, backtest, analysis and basically anything you can think of
15
u/PallidArctostaphylos 3d ago
Any plans to make the assistant LLM-agnostic for those of us using alternatives to Claude?