Mindket

Telegram stock chart analyst with voice messages

Newversion 1 · updated

Overview

An n8n workflow that turns a Telegram bot into a stock chart analyst. Send a ticker by text or voice note, and it draws a chart with volume, RSI and MACD on Chart-Img, has gpt-4o read it and replies with a seven-part technical report.

Telegram stock chart analyst with voice messages is an n8n workflow in the Business category, listed by Mindket. It is free. This is version 1, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.

At a glance

Runs in
  • n8n Cloud: import the file, save it once, then point Get Chart at the same workflow
  • Your own n8n server: the same steps, on a public HTTPS address
  • Telegram: a private chat with the bot, by text or voice note
  • A fixed chat: Send Chart posts every picture to the chat ID you set, which can be a group

Platform

Connects 4 apps

How it works

Trigger

Telegram message

It starts when someone sends your bot a text or a voice note with:

  • A ticker, best with its exchange, such as NASDAQ:AAPL
  • An interval, such as daily or weekly, or none for weekly

Actions

  1. A voice note is downloaded and transcribed, and a text message is passed on as it is
  2. The agent on gpt-4o reads it and calls its chart tool with the ticker and interval
  3. Twelve Data finds the exchange when the ticker has none, and Chart-Img draws the chart with volume, RSI and MACD
  4. gpt-4o reads the chart picture and writes a report in seven sections
  5. The chart goes to your chosen chat as a photo, and the agent’s answer to the chat that asked

Result

A chart picture and a technical reading of it in Telegram, from one message

Integrations

What you need before you start.

Telegram

Chat

Receives text and voice notes, downloads the voice files, and sends the chart photo and the agent’s answer.

NeedsTelegram bot token from BotFather, and a chat ID for the charts

OpenAI

Language, vision and speech

Transcribes voice notes, runs the agent on gpt-4o and has gpt-4o read the chart picture.

NeedsOpenAI API key

Chart-Img

Charts

Draws a TradingView-style chart with volume, RSI and MACD for the ticker and interval, and stores it at a public address.

NeedsChart-Img API key

Twelve Data

Market data

Looks up a ticker that has no exchange and returns the exchange it trades on.

NeedsTwelve Data API key

Workflow check

Checked by Mindket on 13 Nov 2026

Steps
17 steps, starting when another workflow calls it or on a Telegram event
AI
3 steps call an AI model: Technical Analysis, Transcribe and AI Agent
Sign-ins
Signs in to: OpenAI, Telegram and Chart-Img
API keys
No API key is left in the file; 1 blank in it for your own key
Step types
Mindket’s checker reads all 9 of its step types

Read from the workflow’s file, not from a run.

About

What it is

This n8n workflow turns a Telegram bot into a stock chart analyst that takes text or voice. You send a ticker, such as NASDAQ:AAPL, and ask for a reading. A voice note is transcribed first. An AI agent on gpt-4o then calls a chart tool built into the same file. Twelve Data finds the exchange when you leave it out, and Chart-Img draws a dark chart with volume, RSI and MACD. A second gpt-4o call reads that picture and writes a seven-section report. The chart arrives as a photo, and the agent answers with what the report found.

  1. You send a ticker by text or voice note
  2. The agent on gpt-4o calls its chart tool
  3. Twelve Data finds the exchange and Chart-Img draws the chart
  4. gpt-4o reads the chart picture in seven sections
  5. The photo and the agent’s answer arrive in Telegram

Who it suits

Retail traders and finance learners who want a quick chart reading on their phone, and creators who post market commentary. It knows NASDAQ and India’s NSE best. Skip it if you want figures from price data, because gpt-4o reads values off a picture.

Who uses it, and how
IndustryWho uses itHow they use itExample
Retail tradingTraders who follow a watchlistAsk for a daily or weekly reading before the market opensA trader sends a voice note asking for NSE:TCS on the daily chart and reads the report over breakfast.
Finance educationTeachers of technical analysisShow how MACD, RSI and volume read on a current chartA tutor asks for three tickers and compares the bot’s MACD notes with the class’s own.
Market contentCreators who post about stocksGet a chart picture and a first reading to check before a postA creator asks for NASDAQ:NVDA weekly and checks the support levels by eye before writing.
Investment clubsMembers who share ideasPoint Send Chart at the club’s group chat, so every chart lands thereA member asks the bot in private, and the chart appears in the group for the next meeting.

You need some n8n for this one. The agent’s tool calls this same workflow, and two keys go into node fields. Its author puts setup at about 11 minutes.

Where to use it

Any n8n that Telegram can reach over HTTPS will run it, since Telegram calls the trigger as a webhook.

  • n8n Cloud: import the file, save it once, then point Get Chart at the same workflow
  • Your own n8n server: the same steps, on a public HTTPS address
  • Telegram: a private chat with the bot, by text or voice note
  • A fixed chat: Send Chart posts every picture to the chat ID you set, which can be a group

Setup

Get it saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. The file holds two parts, the bot on top and the chart tool it calls below.

What you need first
NeedDetail
n8nOn n8n Cloud or on a server Telegram can reach over HTTPS
TelegramA bot token from BotFather, and the chat ID the chart pictures go to
OpenAIAn API key, used by OpenAI Chat Model, Transcribe and Technical Analysis
Chart-ImgAn API key
Twelve DataAn API key, for the exchange lookup
  1. In n8n, create a workflow, open its menu, choose Import from File and pick workflow.json. Save once so it has an ID.
  2. Add a Telegram API credential and select it in Telegram Trigger, Download File, Send Analysis and Send Chart.
  3. Add an OpenAI credential and select it in OpenAI Chat Model, Transcribe and Technical Analysis.
  4. Open Get Chart, the red tool under AI Agent, and choose this same workflow from the list.
  5. In Get Chart URL, replace YOUR_CHART_IMG_KEY in the x-api-key header with your Chart-Img key.
  6. In Lookup Exchange, replace <YOUR_TWELVE_DATA_KEY>, brackets included, with your Twelve Data key.
  7. In Send Chart, replace YOUR_CHAT_ID with the chat the pictures go to.
  8. Restrict Telegram Trigger to your own user ID, save and press Publish.

The chart tool gets the ticker and the interval but not the chat, which is why Send Chart needs a fixed ID. The README shows how to pass the chat along as a third input, for a bot that several people use.

How to use it

Message the bot a ticker and the reading you want, typed or spoken. Put the exchange in front, as in NSE:INFY, and name the interval, such as daily. Without an exchange the lookup runs and the chart falls back to weekly. A general finance question gets an answer with no chart, and the agent’s prompt has it decline anything off topic.

What to change for a different result
To changeWhere
Default intervalThe agent’s system message and Parse Interval, both set to 1W
Chart lookThe body of Get Chart URL: the theme, the three studies and the MACD signal line’s color
Report sectionsThe prompt in Technical Analysis
Topics it acceptsThe guard at the top of the agent’s system message
ExchangesThe prefix rules in Parse Interval, which know NASDAQ and NSE

Example

You send the bot a voice note asking for Apple on the daily chart, on NASDAQ. Transcribe turns it into text, and the agent calls Get Chart with values like these:

{ "ticker": "NASDAQ:AAPL", "interval": "daily" }

The ticker has its exchange, so the lookup is skipped and Parse Interval sends 1D. Chart-Img stores a dark daily chart with volume, RSI and MACD, and Send Chart posts it. The report has seven ### sections, from Candlestick Analysis to Other Observations. The agent sums it up in its reply.

For newcomers and experts

If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. This file holds two workflows in one. The top row is the bot, and the bottom row is a tool its agent can call, with a trigger of its own. That is why Get Chart must point at this same workflow. Publish, send a ticker, then open Executions to follow both rows.

For experts. Two gpt-4o calls do the thinking. The code between them decides which chart you get.

The nodes that shape the answer
NodeWhat it doesWhat to know
AI Agentgpt-4o, with five exchanges of memory for each chatDefaults to 1W and assumes NSE for well-known Indian names
Parse IntervalMaps words to interval codes and builds EXCHANGE:SYMBOLAfter a lookup it reads Twelve Data’s reply, which has no interval, so the chart is weekly
Get Chart URLPOSTs to Chart-Img’s advanced-chart storage endpointReturns the stored picture’s url
Technical Analysisgpt-4o image analysis on the downloaded chartReads values off the picture, not from price data
responseReturns the report to the agentThe chart’s address is not in it

Chart-Img’s documentation, read on 2 November 2026, lists intraday intervals as 5m, 15m, 30m and 1h. Parse Interval sends 5, 30 and 60 for those, and a request for 15m becomes 5 because the 5m rule matches it first. Daily and longer codes match the list.

Good to know

The fixes worth making first are where the chart goes and how tickers are read.

  • One chat for every chart: Send Chart posts to the chat ID you set, whoever asked
  • Lost interval: a ticker without its exchange always gets a weekly chart
  • Exchange guess: a NASDAQ match gets NASDAQ:, every other exchange gets NSE:, NYSE included, and a lookup with no match charts NSE:RELIANCE
  • No link for the agent: the tool returns the report alone, so a chart link in the agent’s answer points nowhere. The photo is the chart
  • Picture reading: RSI values and levels are read off an image and can be wrong, and nothing the bot says is financial advice
  • Open bot: anyone who finds it spends your OpenAI, Chart-Img and Twelve Data calls until you restrict the trigger
  • Billing: two gpt-4o calls for each chart, a transcription for each voice note, and one call each to Chart-Img and Twelve Data
  • Long replies: Telegram takes 4,096 characters a message, and a longer answer fails at Send Analysis
  • Where data goes: messages and voice notes go to OpenAI, tickers to Twelve Data and Chart-Img, and Chart-Img keeps each picture at a public address for a time your plan sets
  • Credentials: the JSON holds none, and nothing from its author’s account

README and files

README

Telegram stock chart analyst with voice messages

An n8n workflow. Send a Telegram bot a stock ticker by text or voice note. An AI agent has Chart-Img draw the chart with
volume, RSI and MACD, gpt-4o reads the picture, and the bot replies with a technical reading and the chart.

What is inside

  • workflow.json: the workflow as n8n exports it, 22 nodes in two parts, two of them sticky notes. The top part is the
    bot and its agent. The bottom part, which starts at Workflow Input Trigger, is the chart tool the agent calls. The
    file holds no credential. The two API keys and the chat ID are placeholders, and the agent's tool Get Chart arrives
    empty, so n8n marks it red until you point it at this workflow.
  • README.md: these notes.

Before you start

  • An n8n instance that Telegram can reach over HTTPS, on n8n Cloud or your own server.
  • A Telegram bot token from BotFather, and the chat ID the chart pictures should go to.
  • An OpenAI API key.
  • A Chart-Img API key.
  • A Twelve Data API key.

Set it up

  1. In n8n, create a workflow, open its menu and choose Import from File. Pick workflow.json, then save once so the
    workflow has an ID.
  2. Add a Telegram API credential with the bot token and select it in Telegram Trigger, Download File,
    Send Analysis and Send Chart.
  3. Add an OpenAI credential and select it in OpenAI Chat Model, Transcribe and Technical Analysis.
  4. Open Get Chart, the red tool under AI Agent, and choose this same workflow from the list. Its call starts the
    bottom part at Workflow Input Trigger.
  5. In Get Chart URL, replace YOUR_CHART_IMG_KEY in the x-api-key header with your Chart-Img key.
  6. In Lookup Exchange, replace <YOUR_TWELVE_DATA_KEY> at the end of the address with your Twelve Data key, brackets
    included.
  7. In Send Chart, replace YOUR_CHAT_ID with the chat the pictures go to (below).
  8. In Telegram Trigger, set Restrict to User IDs under Additional Fields to your own ID, unless others should use it.
  9. Save, press Publish and send the bot a ticker.

Where the chart picture goes

Send Chart sits in the bottom part, which receives the ticker and the interval but not the chat. Every picture goes to
the one chat ID you type in, whoever asked. For a bot only you use, put your own ID there: message the bot once while you
test and read message.chat.id in the output of Telegram Trigger.

For a bot several people use, pass the chat along. Add a third input, chatId, to Workflow Input Trigger. In
Get Chart, set it to {{ $('Telegram Trigger').item.json.message.chat.id }}. Then set the Chat ID of Send Chart to
{{ $('Workflow Input Trigger').item.json.chatId }}.

What happens to a message

| Step | Nodes | What happens |
|---|---|---|
| Voice or text | Switch | A voice note goes to Download File and Transcribe, and a text message to Set Text |
| The agent | AI Agent, OpenAI Chat Model, Window Buffer Memory | gpt-4o reads the text with the chat's last five exchanges and calls Get Chart for a ticker |
| The ticker | Check Ticker Format, Lookup Exchange, Parse Interval | A ticker without an exchange, such as AAPL, is looked up on Twelve Data. One with it, such as NASDAQ:AAPL, goes straight on |
| The chart | Get Chart URL, Download Chart | Chart-Img draws a dark chart with volume, RSI and MACD, stores it and returns its address |
| The reading | Technical Analysis | gpt-4o reads the picture and writes a report in seven sections |
| The replies | Send Chart, response, Send Analysis | The picture goes to the chat in Send Chart, the report returns to the agent, and the agent's answer goes to the chat that asked |

The seven sections cover candlesticks, MACD, volume, RSI, support and resistance, short-term takeaways and anything else
the chart shows. The agent also answers general finance questions without a chart, and its prompt has it decline
anything off the topic of markets.

Intervals and exchanges

The agent asks for a weekly chart unless you name an interval. Parse Interval turns your words into a code for
Chart-Img, checking them in this order:

| You say | Code sent |
|---|---|
| 1d or daily | 1D |
| 1w or weekly | 1W |
| 1m, monthly or 1 month | 1M |
| 3m or quarter | 3M |
| 6m or half year | 6M |
| 1y, 1 year or yearly | 1Y |
| 5m, and also 15m, which contains it | 5 |
| 30m | 30 |
| 1h, hourly or 60 | 60 |

Chart-Img's documentation, read on 2 November 2026, lists intraday intervals as 5m, 15m, 30m and 1h. The codes
5, 30 and 60 are not on that list, so an intraday chart may be refused. Daily and longer intervals match it.

Exchanges follow three rules in the code. A ticker that already has a prefix keeps it. After a lookup, Twelve Data's
first match gets NASDAQ: when it trades on NASDAQ and NSE: for any other exchange, NYSE included. A lookup with no
match falls back to NSE:RELIANCE.

Change the result

  • Default interval: the agent's system message and Parse Interval, both set to 1W.
  • Chart look: the body of Get Chart URL, with its dark theme, its three studies and the MACD signal line's color.
  • Report sections: the prompt in Technical Analysis.
  • Topics: the guard at the top of the agent's system message.
  • Exchanges: the prefix rules near the end of Parse Interval.

Good to know

  • Lost interval: when a ticker has no exchange, Parse Interval reads Twelve Data's reply, which carries no interval,
    so the chart is weekly whatever you asked for. Write the exchange in front, as in NSE:INFY, to get the interval.
  • No link for the agent: response returns only the report, so a chart link in the agent's answer points nowhere. The
    photo from Send Chart is the chart.
  • Picture reading: gpt-4o reads RSI values and price levels off an image, not from price data, and can misread them.
    Nothing the bot says is financial advice.
  • Open bot: anyone who finds it spends your OpenAI, Chart-Img and Twelve Data calls until you restrict the trigger.
  • Costs: two gpt-4o calls for each chart, a transcription for each voice note, and one Chart-Img and one Twelve Data
    call.
  • Long replies: Telegram takes up to 4,096 characters a message, and a longer answer fails at Send Analysis.
  • Where the data goes: messages and voice notes go to OpenAI, and tickers go to Twelve Data and Chart-Img. Chart-Img
    keeps each picture at a public address until it expires, after a time set by your plan.
Files
README.md  6 KB
workflow.json  27 KB

2 files, 33 KB, downloaded as a zip.

What’s new

  • Version 1 · 2026-11-03

Reviews

No ratings yet

Write a review

No reviews yet.

More from Mindket

See all from Mindket

Huashu Design

alchaincyf · Skill

Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…

New29.4k

Guizang PPT Skill

op7418 · Skill

Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…

New29.8k

Claude Code Skills & Plugins

alirezarezvani · Skill

Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…

New29.8k

Similar in Business

See all in Business

pplx-decider-v1.1-27b

perplexity-ai · Kit

Picks the best option for a decision from text and images, such as which team should handle a request, with a probability for each choice, for developers who b…

New

NuExtract3

numind · Kit

Reads documents as text or images and fills a JSON template with the fields you ask for, or converts the pages to Markdown. A 4B model for teams that process s…

New

Drex DLM

nace-ai · Kit

Scores yes or no, multiple choice and rating questions about a document in one pass, with a probability for every option. An 8B decision model from Nace.AI tha…

New