intermediate10 min read13 of 24

    News and Sentiment at Machine Speed — Filtering Noise Without Trading the Headline

    Triage and deduplication are the real value. A sentiment score is a compression of language, not a judgement about materiality.

    Rohit Singh

    Mr. Chartist · SEBI RA INH000015297

    Module

    A single event produces a wall of headlines. The RBI announces a policy decision and within the hour you have twenty stories about it — a wire report, three aggregator rewrites, a television summary, a dozen social posts quoting the same two lines. Nothing new happened after the first one. What you are looking at is one event photocopied twenty times. The genuinely useful thing a machine can do here is not tell you what the news means. It is tell you that these twenty items are one item.

    That is the honest pitch for AI in news work: triage, not prediction. Triage — sorting incoming items by relevance and urgency before anyone acts on them — is a volume problem, and volume is exactly what software is for. A language model can group duplicate coverage, tag which companies a story genuinely concerns, and separate an exchange filing from an anonymous forward. It does all three reasonably well. What it cannot do is tell you whether the event will move a price, and attaching a sentiment score does not change that.

    The trap is subtle and almost everybody walks into it. A tool returns a headline with a label stuck on the front — “sentiment: strongly negative” — and the label quietly starts doing your reading for you. But that label summarises the words the journalist used. It is not a judgement about whether the underlying event matters to the business. An angrily written piece about a routine matter scores negative. A flat, procedural filing announcing something serious scores neutral. Tone and materiality are different things, and only one of them moves a stock.

    The one thing to remember

    AI earns its keep on market news by deduplicating and routing it, not by scoring it — a sentiment number describes the language inside an article, never whether the event behind it actually matters.

    What a News Filter Is Actually For

    Start by being precise about the job. You are not asking a model to forecast a reaction. You are asking it to reduce a hundred incoming items to the handful that concern you, so that a human being — you — has time to read those properly. That is a sorting task. Sorting is mechanical, checkable and boring, which is precisely why it suits a machine and why it is the part most tools skip over on their way to the exciting-sounding score.

    Three sub-tasks make up almost all of the value. Deduplication: recognising that many items describe one event. Relevance routing: deciding which names on your list a story actually touches. Source grading: separating what a company formally told the exchange from what somebody said a person familiar with the matter told a reporter. Each of these has a right answer you can verify by opening the source, which makes them safe to delegate.

    Notice what is missing from that list. Nothing there predicts anything. Nothing there is an opinion about price. The moment a tool crosses from “these twenty items are one event” into “this is bearish for the sector”, it has left the ground where its output is checkable and entered the ground where it is just fluent guessing. You want the first half of that tool and none of the second.

    There is a practical reason to insist on the split. During a busy session your scarce resource is attention, not information. Information is free and infinite. A filter that hands you six real events instead of a hundred headlines has given you back most of an hour. A filter that hands you a hundred headlines each wearing a confident label has given you a hundred small decisions to make instead of one.

    The value is in the collapsing, not in the labelling — six real events beat a hundred scored headlines every session.

    Deduplication turns twenty pieces of coverage into the one event that generated them.
    Relevance routing decides which names on your watchlist a story genuinely concerns.
    Source grading separates an exchange filing from an unattributed report or a forwarded claim.
    Every one of those three tasks has an answer you can verify by opening the underlying document.
    Prediction is not on the list, and no amount of prompting puts it there.
    Your scarce resource in a live session is attention; a filter buys attention back, it does not buy insight.

    Clustering: Twenty Headlines, One Event

    Clustering means grouping items that describe the same underlying event, however differently they are worded. A model does this well because it compares meaning rather than matching words. “Board approves fund raise” and “Company to raise capital via QIP, board clears plan” share almost no vocabulary and are obviously the same event to any reader. A keyword filter misses that. A language model catches it.

    The output you want from clustering is one neutral sentence per group, built only from facts present in the items, plus a list of which sources carried it. That format has a useful side effect: if the group cannot be reduced to one clean sentence, it usually means you have accidentally merged two events, and you go and look. Ambiguity in the summary is a signal, not a defect.

    Clustering also exposes something the raw feed hides — how thin a story actually is. Twenty items that all trace back to a single unnamed source are not twenty pieces of evidence. They are one claim, repeated. Volume of coverage feels like confirmation and is not. A group that collapses to “all of these cite the same one report” tells you more about how much weight the story can carry than any sentiment score would.

    Where it fails is on genuinely borderline cases. A regulatory change and a company’s response to that regulatory change are two events, closely linked; models will sometimes merge them. Two companies announcing similar things on the same morning may get merged for the same reason. So read the group headings, not just the count. The clustering is a first pass you check, not a filing system you trust blindly.

    Twenty headlines, two events

    The collapse is the work. Volume of coverage feels like confirmation and is not.

    Raw feed — 20 itemsGrouped by meaningsrc 1src 2src 3src 4src 5src 6src 7src 8src 9src 10src 11src 12src 13src 14src 15src 16src 17src 18src 19src 20Different wording, no shared keywords.dedupeEvent 1 — one neutral sentenceBuilt only from facts present in the grouped items.Sources: 14 outlets — all citing the same one unnamed reportOne claim, repeated fourteen times. Not fourteen pieces of evidence.Event 2 — one neutral sentenceSame format. Different weight, because of where it came from.Sources: 6 outlets — all tracing to one exchange filingGo and read the filing. The coverage is not the event.Not the output: a sentiment scoreIt compresses language. It does not judge whether the item is material.Read the groupheadings, notthe counts.Two closely linked events can be merged by mistake — the clustering is a first pass you check.
    Twenty items, one event. The useful work is the collapse on the left — the label on the right is where most tools go wrong.

    Pro tip — Ask for the cluster to name every source it grouped, not just a count. Twenty items citing one unnamed report is one claim repeated twenty times, and only the source list makes that visible.

    Relevance Versus a Passing Mention

    The second job is deciding which of your names a story is actually about. This matters more than it sounds. Financial writing is full of names used as scenery — a story about one company that lists four competitors for context, a sector piece that names every large player in its second paragraph, an analyst quote that compares a business to an unrelated one. A crude keyword alert fires on all of them.

    A useful relevance verdict has three levels rather than two. Direct: the story is about this company — its filing, its results, its regulator, its plant. Indirect: the story is about something this company demonstrably depends on, such as a customer, a supplier, an input cost or a rule that governs its business. Passing mention: the name appears, and nothing in the text connects the event to it. Most alerts on most days are the third kind.

    The indirect category is where a language model adds something a filter cannot. It can read “the government revised the duty structure on imported cells” and connect it to a manufacturer that assembles using those cells — because the connection lives in the meaning of the sentence, not in a shared keyword. That is a genuine capability. It is also the category where false positives cluster, because the same reasoning that finds a real link will happily invent a plausible one.

    So the rule is simple: a relevance verdict without a stated mechanism is not a verdict. If the model says a story is relevant to a name, it must be able to quote the words in the text that make the connection and state, in one checkable sentence, what would have to be true for the event to reach that business. If it cannot, the flag is decoration.

    Direct relevance means the story is about the company itself — its filing, its results, its regulator.
    Indirect relevance means the story is about something the company demonstrably depends on.
    A passing mention is a name used as scenery, with nothing in the text linking the event to it.
    Most keyword alerts on most days are passing mentions wearing an alert badge.
    Indirect relevance is where a language model beats a keyword filter — and also where its false positives collect.
    Any relevance verdict must come with the quoted words that justify it, or it is decoration.

    Confirmed Sources Versus Unconfirmed Reports

    The third job is grading the source, and it is the one with real money attached. Under India’s listing disclosure framework, a listed company is required to inform the exchanges of material events, and those filings appear on the NSE and BSE corporate announcement pages. That is a primary source: named, dated, and attributable to the company itself. It is a different class of object from a report saying that people familiar with the discussions expect an announcement.

    Unconfirmed reports move price. That is the whole problem. A market reacts to a plausible story before anybody can check it, and if the story does not survive contact with a filing, the move unwinds as fast as it came. Buying the reaction to an unconfirmed report is a bet on the report, not on the business — and you usually discover which one you were betting on only after the position is on.

    A model is decent at this grading because the linguistic markers are consistent. Filings and official releases carry named authority, dates, regulatory references and specific figures. Unconfirmed reporting carries hedges — sources said, is understood to, may consider, is exploring. Ask for the grade and the phrase that earned it, and you get a check you can eyeball in a second.

    What the model cannot do is verify. It can tell you the item reads like an unattributed report. It cannot open nseindia.com and confirm whether a filing exists. That step is yours, it takes under a minute, and skipping it is how people end up trading a headline that was withdrawn before the session closed.

    ItemWhat it isHow fast it reversesHow to treat it
    Exchange filingFiled by the company to NSE or BSE, dated and attributableDoes not reverse; it can be amended or clarifiedPrimary source — open it and read the wording
    Company or regulator releasePublished on an official site under a named authorityRarely reversed, sometimes clarified laterPrimary source — check the date and the exact scope
    Attributed media reportA journalist naming a document or an on-record personOccasionally corrected within the same sessionA lead worth following — go find the document
    Unattributed media reportSourced to people familiar with the matter, no documentOften reversed, or quietly dropped and never followed upTreat as a question to answer, not a fact
    Social or messaging chatterA forwarded claim with no traceable originCan reverse within minutes of being questionedIgnore until it turns up in a filing
    AI summary of any of theseA compression, one step further from the originalInherits whatever the underlying source doesNever the thing you act on — open the source
    Where a market-moving line first appeared decides how much weight it can carry. AI can grade the item; only you can confirm it.

    Watch out — Never act on an AI-summarised headline before you have opened the underlying filing or release and read the actual wording. Summaries drop qualifiers — “subject to shareholder approval”, “for one plant”, “over three years” — and the qualifier is very often the entire story.

    Why a Sentiment Score Is Not a Materiality Judgement

    Sentiment scoring works by reading the words and rating how positive or negative the language is. That is a real measurement of a real thing. The mistake is what people do with it. A score of “80% negative” is a compression of vocabulary. It says the article used unhappy words. It says nothing about whether the event described will affect earnings, cash flow, competitive position or anything else that eventually shows up in a price.

    Two failure directions follow, and both are common. A minor matter written up in dramatic language scores strongly negative — a routine consumer complaint, a small penalty, an executive’s awkward interview. Meanwhile a filing announcing a genuinely serious development is written in flat regulatory prose and scores neutral, because filings are always written that way. The scoring system is behaving exactly as designed. It is being asked the wrong question.

    There is a second, quieter problem. Sentiment on financial text is measured against how the language reads, not against what the market already expected. A result described in glowing terms can still be below what was priced in. Nothing in a language score knows what was priced in. Expectation is the missing variable, and it is the variable that decides most reactions.

    None of this makes the score worthless. As a sorting aid — surface the items whose language changed sharply versus the same company’s previous coverage — it is a reasonable trigger to go and look. As a reason to act, it is a number that feels like analysis and is not. Use it to decide what to read. Never use it to decide what to do.

    A sentiment score tells you how the article was written. It has no access to whether the event matters, or to what the market already expected.

    Using a sentiment score without being used by it

    Do

    • Treat the score as a trigger to go and read the item yourself.
    • Compare a name’s language against its own previous coverage, where a shift is at least meaningful.
    • Read the actual event description before you form any view on whether it matters.
    • Ask what the market was already expecting — the score cannot know, and you sometimes can.
    • Keep the score and your own materiality judgement in separate columns of your notes.

    Don't

    • Let a label substitute for reading the underlying news.
    • Read a strongly negative score as evidence that the event is serious.
    • Read a neutral score on a filing as evidence that nothing important happened.
    • Compare sentiment scores across different sources, which write in different registers.
    • Size a position on a number that measures adjectives.

    Ask It Why — The Reasoning Is Where You Catch the False Positive

    The single habit that upgrades news triage from a toy to a tool is forcing the filter to explain itself. Not “is this relevant to this company” but “which words in this text connect this event to this company, and what would have to be true for it to reach the business”. A verdict is a coin flip you cannot inspect. A stated mechanism is something you can immediately agree or disagree with.

    False positives become obvious the moment the reasoning is visible. You will see the model connect a story to a name because both appear in the same sector, which is not a mechanism. You will see it build a chain three links long — this affects an input, which affects a supplier, which supplies this company — where each link is plausible and the chain is not. Written out, that is transparently weak. Delivered as a flag with a coloured dot, it looks like a signal.

    The demand for a quoted justification also constrains invention. A model asked to quote the exact words that create the link has to find words that exist. That does not make fabrication impossible, but it makes it visible, because you can search the pasted text for the quote in about two seconds. This is the same discipline that makes filing extraction trustworthy: claims travel with their evidence or they do not travel.

    Finally, insist on an explicit null answer. Give the model permission to reply “no relevant names in this text” and it will use it. Withhold that permission and it will find something, because the shape of the request implies that finding something is the job. Most headlines on most days are relevant to none of your names, and a filter that never says so is not filtering.

    Relevance-with-reasoning prompt
    You are triaging market news. Below is one headline and the opening
    paragraphs of the story.
    
    STORY:
    <paste headline, source name, timestamp and the first two paragraphs>
    
    MY WATCHLIST:
    <paste the list of names>
    
    For every watchlist name you believe this story touches, answer in
    exactly this format and nothing else:
    
    NAME
    RELEVANCE: direct / indirect / passing mention only
    QUOTED LINK: the exact words from the story that connect it to this name
    MECHANISM: one sentence, containing the word "because", explaining how
    the event reaches this business
    WHAT WOULD HAVE TO BE TRUE: one checkable claim I can go and verify
    
    Rules:
    - If a name only appears in a list, a comparison or a quote about someone
      else, label it "passing mention only" and give no mechanism.
    - If the text does not support a link to any name on my list, reply
      "no relevant names in this text" and stop.
    - Do not use any fact that is not in the text I pasted.
    - Do not say anything about price, direction or what I should do.

    When to use — When a headline lands during the session and you want to know which of your names it genuinely concerns before you open a single chart.

    A good answer — Most names come back as “passing mention only” or do not appear at all, every “direct” verdict quotes words you can find in the text you pasted, and the mechanism sentence is something you could go and check in a filing.

    A Triage Routine You Can Run in Ten Minutes

    Put the pieces together and you get a short, repeatable routine rather than a scroll through a feed. Collect, cluster, route, grade, then verify by hand the two or three items that survived. The order matters: deduplicate before you route, or you will assess the same event five times; grade the source before you verify, so you know which items are worth the minute it takes to open a filing.

    The routine also has a fixed stopping point, which is the part people skip. Once the surviving items have been checked against their primary sources, triage is over. Everything after that — what the event means for the business, whether it changes your view, whether you do anything at all — is your work, done against a chart and your own notes. Handing that stage to the model is where the process quietly turns into taking headline tips from software.

    Keep the surviving items in a simple log with four fields: the one-sentence event, the primary source link, the date you saw it, and one line on what you decided to do about it — including “nothing”. Over a few weeks that log tells you something a feed never will: how many of the events that felt urgent actually mattered, and how many of your reactions to headlines you would repeat.

    One warning about speed. The reason this is called machine speed is that the machine is fast. You are not, and you should not try to be. If the entire advantage of a process is that it lets you act on a headline thirty seconds sooner, you are competing on the one dimension where retail infrastructure loses by design. The advantage you are actually buying is that you read the right six things instead of skimming a hundred.

    1. 1

      Collect into one place

      Paste the session’s headlines into a single block, each with its source name and timestamp. Sources and times are what make the grading step possible later.

    2. 2

      Cluster into distinct events

      Ask for groups, one neutral sentence per group, and the full list of items in each. If a group will not reduce to one clean sentence, two events have been merged — split it yourself.

    3. 3

      Route to names, with mechanisms

      Run the relevance prompt on each surviving group. Reject any relevance verdict that arrives without quoted words and a mechanism sentence.

    4. 4

      Grade the best source in each group

      Filing, official release, attributed report, unattributed report, or chatter. The grade sets how much weight the item can carry before you have verified it.

    5. 5

      Verify by hand, then stop

      Open the exchange announcement or official release for the two or three items that survived and read the wording. Triage ends here; interpretation is yours.

    Session news triage prompt
    Below are the market news items I collected this session. Each item is
    separated by a line of three dashes and begins with its source name and
    timestamp.
    
    <paste items>
    
    Do exactly this, in this order:
    
    1. GROUP the items into distinct events. Items describing the same
       underlying event belong in one group, however differently worded.
    2. For each group, write ONE neutral sentence stating what happened,
       using only facts present in the items. No interpretation.
    3. For each group, list every item you placed in it, by source name.
    4. Label each group's strongest source as one of: EXCHANGE FILING /
       COMPANY OR REGULATOR RELEASE / ATTRIBUTED MEDIA REPORT /
       UNATTRIBUTED MEDIA REPORT / UNTRACEABLE. Quote the words that earned
       the label.
    5. Put every group whose strongest source is UNATTRIBUTED or UNTRACEABLE
       into a separate section headed "UNCONFIRMED - verify before use".
    
    Rules:
    - If two items conflict on a fact, say so plainly instead of choosing one.
    - Do not add any fact that is not in the items I pasted.
    - Do not give a sentiment score.
    - Do not say what any of this means for prices, and do not suggest an
      action.

    When to use — Once at the end of a session, or once in the morning before the open, on the pile of headlines you collected rather than on each one as it arrives.

    A good answer — Far fewer groups than items, a one-line summary you could read aloud without adding anything, a source list per group that lets you see when twenty items trace to one report, and an unconfirmed section you have not yet acted on.

    Before you act on any news item

    Run this against the two or three items that survive triage. It takes about a minute each and it is the minute that matters.

    • You have opened the primary source yourself — the exchange filing or the official release — not a summary of it.
    • The qualifiers in the original are intact in your understanding: scope, timeline, conditions, approvals still pending.
    • You can state the mechanism by which this reaches the business in one sentence containing the word “because”.
    • You have checked whether this is genuinely new, or a re-report of something already disclosed on an earlier date.
    • You know which of the twenty items in the cluster is the original, and whether the rest add any independent fact.
    • Nothing in your reasoning rests on a sentiment label rather than on the event itself.
    • You have written the item into your log with its source link, before doing anything about it.

    Common questions

    No. A language model has no access to positioning, to what the market already expected, or to who is willing to trade at what price. It can tell you what an item says and which names it concerns. The reaction depends on expectation versus outcome, and expectation is not in the text.

    Knowledge Check

    Question 1 of 3Score: 0

    A tool labels a company filing “neutral sentiment”. What does that tell you?

    Rohit Singh — Mr. Chartist

    Written By

    Rohit Singh

    Mr. Chartist

    With 14+ years of experience in Indian financial markets, Rohit Singh (Mr. Chartist) is a SEBI Registered Research Analyst, Amazon #1 bestselling author, and the founder of Investology — a premium trading ecosystem trusted by a 1.5 Lakh+ strong community across India.

    INH000015297Full Bio

    Keep reading