Asset-Specific Sentiment Inversions in Financial NLP

Standard sentiment models assign polarity to text in isolation. In financial NLP, that's often wrong. The same phrase can be bullish for one asset and bearish for another. swik catalogs these systematic inversions — instances of context-dependent polarity — so inference engines can correct for them. This is the core challenge of Aspect-Based Sentiment Analysis (ABSA) applied to financial markets.

35
assets covered
127
inversion entries
CC BY 4.0
open license
47k+
labeled headlines

The Inversion Problem

A sentiment inversion occurs when the naive polarity of a financial headline differs from the actual directional impact on a specific asset's price. These are not random errors — they are systematic inversions rooted in supply chain relationships, macro linkages, and domain knowledge that general language models don't encode.

Solving this requires context-dependent polarity: the same phrase scored differently depending on which asset you're analyzing. This is the financial NLP equivalent of ABSA — and it's why asset-specific sentiment signal correction matters for any serious application in trading or quantitative research.

Active inversion catalog

Live data from the swik community catalog. Updated as entries are confirmed.

ALUMINUM Aluminum (ALI / LME) 2 inversions
"Russia sanctions"
Russia is major aluminum supplier
naive: negative bullish
"power shortage"
Aluminum smelters shut down = less supply
naive: negative bullish
AUDUSD Australian Dollar / US Dollar 2 inversions
"China PMI falls"
Weak Chinese demand hits commodity exports, hurts AUD
naive: negative bearish
"commodity rally"
Higher commodity prices support commodity-exporting AUD
naive: positive bullish
BRENT Brent Crude Oil (BRN) 4 inversions
"OPEC cut"
Reduced supply = price support
naive: negative bullish
"geopolitical tensions escalate"
Supply risk premium builds into prices as traders fear potential disruptions to production or shipping routes, creating upward price pressure.
naive: positive bullish
"inventory build"
Supply glut depresses prices
naive: positive bearish
"supply disruption recovery"
When supply disruptions are resolved, lost barrels return to market, increasing available supply and pushing prices down despite the disruption ending.
naive: negative bearish
BTC Bitcoin (BTC/USD) 12 inversions
"ETF inflows"
Spot ETF inflows represent new institutional capital entering BTC, directly supporting price.
naive: positive bullish
"ETF outflows"
Sustained ETF outflows signal institutional de-risking and reduce demand for BTC.
naive: negative bearish
"SEC approves ETF"
ETF approval opens BTC to institutional capital that cannot hold spot crypto directly. Historically triggers significant price appreciation as new demand channels open (e.g. January 2024 spot ETF approval).
naive: positive bullish
"SEC rejects or sues"
Regulatory action from SEC signals hostile US regulatory environment, triggering institutional risk-off and retail panic selling. Short-term strongly bearish regardless of long-term outcome.
naive: negative bearish
"bitcoin crashes"
Direct price action — BTC crashing is bearish.
naive: negative bearish
"bitcoin surges"
Direct price action — BTC surging is bullish.
naive: positive bullish
"crypto winter"
Prolonged bear market signal — crypto winter implies sustained selling pressure across all crypto assets.
naive: negative bearish
"exchange collapse"
Exchange failures destroy confidence and force selling across the market (e.g. FTX collapse).
naive: negative bearish
"exchange hack"
Reduces confidence in crypto infrastructure
naive: negative bearish
"halving"
Supply issuance cut 50% — historically precedes bull run
naive: neutral bullish
"halving approaches"
Bitcoin halving reduces new supply issuance by 50%, historically triggering bull cycles 6-12 months later.
naive: neutral bullish
"rate hike"
Risk-off rotation out of speculative assets
naive: positive bearish
COCOA Cocoa (CC — ICE) 2 inversions
"El Nino"
El Niño brings drier conditions to West Africa, damaging cocoa crops
naive: neutral bullish
"harmattan winds"
Dry northerly winds damage cocoa pods in Ghana/Ivory Coast
naive: neutral bullish
COFFEE Coffee Arabica (KC — ICE) 2 inversions
"Brazil frost"
Cold damages coffee trees, reducing future supply
naive: negative bullish
"off-year production"
Coffee trees produce less every other year (biennial effect)
naive: negative bullish
COPPER Copper (HG) 3 inversions
"China slowdown"
China accounts for ~55% of global copper demand
naive: negative bearish
"green energy"
EVs and wind/solar require 3-4x more copper than conventional
naive: positive bullish
"mine strike"
Supply disruption reduces available copper
naive: negative bullish
CORN Corn (ZC — CBOT) 3 inversions
"La Nina"
La Nina typically causes drought in South American corn belt
naive: neutral bullish
"bumper crop"
Record supply depresses prices
naive: positive bearish
"drought"
Crop damage reduces supply
naive: negative bullish
COTTON Cotton No. 2 (CT — ICE) 1 inversion
"synthetic alternative"
Cheaper polyester captures market share from cotton
naive: neutral bearish
DAX DAX 40 (Germany) 2 inversions
"China slowdown"
Germany's auto/industrial exporters depend heavily on China
naive: negative bearish
"energy crisis"
High energy costs squeeze German industrial margins
naive: negative bearish
ELEC Electricity (Power Markets) 6 inversions
"gas price drop"
Gas peakers set the marginal price in most markets — cheaper gas directly lowers the electricity price ceiling
naive: negative bearish
"heatwave"
Extreme heat drives air conditioning demand, pushing electricity consumption and spot prices sharply higher
naive: negative bullish
"mild weather forecast"
Low heating/cooling demand reduces electricity consumption, bearish for spot prices regardless of supply
naive: positive bearish
"nuclear outage"
Nuclear provides cheap baseload — outages remove large blocks of low-cost supply, forcing expensive gas peakers to set the price
naive: negative bullish
"record wind output"
High wind generation floods the grid with zero-marginal-cost power, collapsing spot electricity prices
naive: positive bearish
"solar generation record"
Record solar output during midday hours drives negative or near-zero spot prices in well-connected markets
naive: positive bearish
ETH Ethereum (ETH/USD) 1 inversion
"network congestion"
High gas fees = more ETH burned = deflationary pressure
naive: negative bullish
EURUSD Euro / US Dollar 21 inversions
"ECB dovish"
Dovish ECB signals lower rates ahead, reducing EUR carry appeal and narrowing the rate differential with USD.
naive: negative bearish
"ECB hawkish"
Tighter ECB policy supports EUR
naive: positive bullish
"ECB signals cuts"
Rate cut signals from ECB reduce EUR yield premium, weakening the currency against USD.
naive: negative bearish
"Fed hike"
Higher US rates attract capital to USD, weakening EUR/USD
naive: positive bearish
"bullish bias"
Analyst bullish bias on EUR/USD signals expected appreciation; market positioning supports upside.
naive: positive bullish
"dollar firms"
Dollar firmness directly implies EUR/USD weakness — the pair moves inversely to USD strength.
naive: positive bearish
"dollar index rises"
DXY and EUR/USD have strong inverse correlation — rising dollar index directly depresses EUR/USD.
naive: positive bearish
"dollar rallies"
Dollar rally = EUR/USD decline by definition. Direct inverse relationship.
naive: positive bearish
"dollar remains firm"
Sustained dollar strength keeps EUR/USD suppressed; firmness implies continuation of downtrend.
naive: positive bearish
"dollar strengthens"
EUR/USD is inverse of DXY by definition
naive: positive bearish
"energy crisis"
European energy crises (gas supply disruption, price spikes) damage eurozone growth outlook and weaken EUR/USD.
naive: negative bearish
"energy shock"
Europe is heavily energy-import dependent — energy price shocks hit the eurozone economy disproportionately, weakening EUR relative to USD.
naive: negative bearish
"euro drops"
Direct price action signal — euro dropping means EUR/USD is declining.
naive: negative bearish
"euro extends losses"
Momentum continuation — euro extending losses signals persistent selling pressure on EUR/USD.
naive: negative bearish
"euro falls"
Direct price action — euro falling = EUR/USD bearish.
naive: negative bearish
"euro gains"
Euro gaining ground = EUR/USD appreciating.
naive: positive bullish
"euro rallies"
Direct price action signal — euro rallying means EUR/USD is rising.
naive: positive bullish
"euro strengthens"
Euro strength directly translates to EUR/USD upside.
naive: positive bullish
"greenback strengthens"
Greenback = USD — stronger USD means weaker EUR/USD.
naive: positive bearish
"risk appetite improves"
Improving risk appetite reduces safe-haven USD demand, allowing EUR to recover against the dollar.
naive: positive bullish
"risk-off"
Risk-off environments drive capital into USD as the global safe-haven, weakening EUR/USD.
naive: negative bearish
GAS European Natural Gas (TTF) 4 inversions
"Norwegian outage"
Norway is Europe main pipeline gas supplier; outages immediately tighten supply
naive: negative bullish
"Russian gas supply cut"
Russia supply cuts remove significant European gas supply, driving TTF prices sharply higher
naive: negative bullish
"high storage levels"
Full storage removes urgency to buy spot gas, suppressing TTF prices heading into winter
naive: positive bearish
"warm winter forecast"
Reduced heating demand lowers European gas consumption, bearish for TTF
naive: positive bearish
GBPUSD British Pound / US Dollar 2 inversions
"BOE hike"
Higher UK rates attract capital to GBP
naive: positive bullish
"UK recession"
Weak growth = BOE more likely to cut rates
naive: negative bearish
GOLD Gold (XAUUSD / GC) 16 inversions
"central bank buying"
Central bank gold purchases reduce available supply and signal institutional confidence in gold as reserve asset.
naive: positive bullish
"dollar index rises"
Gold is priced in USD — a stronger dollar makes gold more expensive for foreign buyers, reducing demand. DXY strength and gold price have a strong inverse correlation historically.
naive: positive bearish
"geopolitical tensions rise"
Geopolitical risk drives safe-haven demand for gold — negative world events are bullish for gold prices.
naive: negative bullish
"gold drops"
Direct bearish price action.
naive: negative bearish
"gold falls"
Direct price action — gold falling is bearish.
naive: negative bearish
"gold rallies"
Direct price action — gold rallying is bullish.
naive: positive bullish
"gold slides"
Downward price movement — bearish continuation signal.
naive: negative bearish
"gold surges"
Strong upward price movement — directly bullish signal.
naive: positive bullish
"rate hike"
Raises real yields, reduces gold's appeal as non-yielding asset
naive: positive bearish
"real yields negative"
Negative real yields eliminate the cost disadvantage of holding gold versus bonds, strongly supporting gold prices.
naive: negative bullish
"real yields rise"
Opportunity cost of holding gold increases
naive: positive bearish
"rising yields"
Higher real yields increase the opportunity cost of holding non-yielding gold. When Treasury yields rise, gold becomes less attractive relative to interest-bearing assets, driving capital outflows from gold.
naive: positive bearish
"safe haven"
Crisis demand flows into gold
naive: positive bullish
"strong dollar"
Gold priced in USD — inverse relationship
naive: positive bearish
"war escalates"
Armed conflict escalation increases safe-haven demand for gold significantly.
naive: negative bullish
"yields fall"
Falling yields reduce opportunity cost of holding non-yielding gold, increasing demand.
naive: negative bullish
IRON_ORE Iron Ore (SGX / DCE) 2 inversions
"port inventory high"
Excess inventory reduces spot buying pressure
naive: positive bearish
"steel output cut"
Less steel production = less iron ore needed
naive: negative bearish
LNG Liquefied Natural Gas (Global) 3 inversions
"LNG export terminal outage"
Outage reduces US LNG exports — bearish US gas but bullish global LNG spot prices
naive: negative bullish
"LNG facility restart"
Restart increases export capacity, reducing domestic gas prices and adding to global supply
naive: positive bearish
"Qatar production increase"
More Qatar supply increases global LNG availability, pushing spot prices down
naive: positive bearish
NATGAS Natural Gas (NG) 4 inversions
"coal power"
Phrase 'coal power' appears in 4 bearish GAS headlines that were followed by price rises >2% within 5 days. Confidence 100%, support 0%.
naive: negative bullish
"cold snap"
Spike in heating demand
naive: negative bullish
"mild winter"
Less heating demand = less consumption
naive: positive bearish
"storage build"
Above-average storage reduces scarcity premium
naive: positive bearish
NDX Nasdaq 100 (NQ) 2 inversions
"10Y yield rises"
Higher long rates compress growth stock valuations (duration effect)
naive: positive bearish
"AI boom"
AI tailwind for major Nasdaq constituents
naive: positive bullish
NICKEL Nickel (LME) 2 inversions
"EV slowdown"
Battery-grade nickel demand falls
naive: negative bearish
"Indonesia export ban"
Indonesia is world's largest producer — export restrictions tighten supply
naive: negative bullish
NIKKEI Nikkei 225 (Japan) 2 inversions
"yen strengthens"
Strong yen hurts export earnings of Nikkei companies
naive: positive bearish
"yen weakens"
Weak yen inflates overseas earnings of Japanese exporters
naive: negative bullish
OIL Crude Oil (WTI/Brent) 4 inversions
"demand destruction"
Confirms weakening consumption
naive: negative bearish
"inventory build"
Rising stockpiles signal oversupply, pushing prices down
naive: positive bearish
"inventory draw"
Falling stockpiles signal tight supply, pushing prices up
naive: negative bullish
"strong dollar"
Oil priced in USD — stronger dollar makes it more expensive globally, reducing demand
naive: positive bearish
PALLADIUM Palladium (XPDUSD / PA) 2 inversions
"EV adoption"
EVs don't need catalytic converters — reduces palladium demand
naive: positive bearish
"stricter emissions"
More catalyst loading per vehicle required
naive: negative bullish
PLATINUM Platinum (XPTUSD / PL) 2 inversions
"diesel ban"
Diesel cars use platinum catalysts — fewer diesel = less demand
naive: negative bearish
"hydrogen economy"
Platinum is key catalyst in hydrogen fuel cells
naive: neutral bullish
RBOB RBOB Gasoline 1 inversion
"refinery outage"
Reduced supply of refined product
naive: negative bullish
SILVER Silver (XAGUSD / SI) 2 inversions
"rate hike"
Like gold, higher real yields reduce silver's appeal
naive: positive bearish
"solar demand"
Silver is key input in photovoltaic cells
naive: neutral bullish
SOYA Soybeans (ZS — CBOT) 2 inversions
"Argentina drought"
Argentina is world's largest soy meal exporter
naive: negative bullish
"China cancels orders"
China buys ~60% of traded soybeans
naive: negative bearish
SPX S&P 500 Index (ES) 3 inversions
"Fed pivot"
Rate cut expectations reduce discount rate, boost multiples
naive: neutral bullish
"rate hike"
Higher rates = higher discount rate = lower equity valuations
naive: positive bearish
"recession fears"
Expected earnings decline hurts stock prices
naive: negative bearish
STEEL_REBAR Steel Rebar (RB — Shanghai) 2 inversions
"infrastructure stimulus"
Government spending on infrastructure = steel demand spike
naive: positive bullish
"property crackdown"
Less construction = less steel demand
naive: negative bearish
SUGAR Sugar No. 11 (SB — ICE) 2 inversions
"ethanol parity"
When ethanol is profitable, Brazilian mills divert cane to ethanol, reducing sugar output
naive: neutral bullish
"monsoon failure"
India's sugar output falls when monsoon underperforms
naive: negative bullish
USDCAD US Dollar / Canadian Dollar 2 inversions
"oil falls"
Lower oil = weaker CAD = higher USD/CAD
naive: negative bullish
"oil rally"
Higher oil = stronger CAD = lower USD/CAD
naive: positive bearish
USDCHF US Dollar / Swiss Franc 2 inversions
"SNB intervention"
SNB buys USD/sells CHF to cap franc strength
naive: neutral bullish
"risk-off"
Safe-haven demand for CHF = USD/CHF falls
naive: negative bearish
USDJPY US Dollar / Japanese Yen 3 inversions
"BOJ tightening"
Narrowing rate differential weakens USD vs JPY
naive: positive bearish
"carry trade unwind"
Unwinding yen carry = buying yen = USD/JPY falls
naive: negative bearish
"risk-off"
Risk-off flows into yen (safe haven), USD/JPY falls
naive: negative bearish
WHEAT Wheat (ZW — CBOT) 2 inversions
"Black Sea corridor"
Export corridor open = more supply reaching market
naive: positive bearish
"Russia export ban"
Russia is world's largest wheat exporter — ban tightens supply
naive: negative bullish

How swik corrects for inversions

swik uses a two-layer inference architecture. A base language model provides an initial sentiment reading. The swik inversion catalog then applies asset-specific sentiment signal correction — overriding the naive reading when a known phrase inversion applies. This is what makes swik an asset-specific news analyzer rather than a generic sentiment classifier.

The catalog is community-maintained and open. Every inversion entry includes the phrase, naive polarity, actual directional impact, and economic reasoning. Entries move from hypothesis to active status through community voting: minimum 3 confirmations, 2:1 confirm-to-reject ratio required.

Browse catalog Contribute labels API reference

Open data

The full inversion catalog is released under Creative Commons Attribution 4.0 and available on GitHub and HuggingFace. Use it for fine-tuning models, cross-asset spillover analysis, backtesting sentiment signals, or building your own asset-specific sentiment APIs.