Barchart
Pricing
from $0.045 / financial news
Barchart
Run a Barchart snapshot for financial news or options data. Receive structured rows with story details, contract prices and terms, trade context, and run coverage.
Pricing
from $0.045 / financial news
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
📈 Barchart market data for analysis
Investors, market researchers, and developers can use Barchart to pull financial news and options snapshots for symbols or the wider market. The Actor returns structured dataset rows with story details, contract prices, trade data, source links, and run coverage, so you can review the data or use it in code.
🎯 Try these tasks
- Track Financial News for symbols with headlines, summaries, and source links.
- Review Unusual Options Activity across stocks, ETFs, and indices with contract prices and activity measures.
- Compare Options Chain contracts for selected symbols with quotes, expirations, volume, and open interest.
- Inspect Stock Options Flow for symbol-level trades with prices, premiums, times, and source condition codes.
- Choose calls and inspect Unusual Call Options Activity in a market-wide scan.
📤 Output and returned data
Each run writes one kind of row to the dataset, based on the target you choose. The status tells you whether the run completed, found no matching rows, or stopped before all available rows were returned.
🧭 Run output
| Field | Type | What it does |
|---|---|---|
| defaultDataset | string | URL for the result rows from this run. |
| status | string | Run state: complete, empty, or truncated. |
📰 Financial news rows
| Field | Type | What it does |
|---|---|---|
| recordType | string | Always financialNews for this shape. |
| symbol | string | First submitted symbol that found this story. |
| storyId | string | Stable Barchart ID for the story. |
| headline | string | Financial news headline. |
| publishedAt | date-time string | Time when Barchart published the story. |
| provider | string | Provider that supplied the story. |
| summary | string | Short story summary. |
| sourceUrl | string | Main URL for the story. |
| shareUrl | string | Barchart share page for the story. |
| retrievedAt | date-time string | Time when this row was retrieved. |
| coverage.availableCount | integer | Matching stories available when the snapshot was read. |
| coverage.returnedCount | integer | Stories returned in this run. |
| coverage.truncated | boolean | True when the run stopped before all available stories were returned. |
| coverage.appliedFilters.target | string | Target used for this snapshot. |
| coverage.appliedFilters.symbols | string[] | Submitted symbols used for this snapshot. |
| coverage.appliedFilters.assetClass | string | Asset class setting recorded for the run. |
| coverage.appliedFilters.optionType | string | Option type setting recorded for the run. |
Example row:
{"recordType": "financialNews","symbol": "MSFT","storyId": "3596750","headline": "Microsoft Investigation Initiated: Kahn Swick & Foti, LLC Investigates the Officers and Directors of Microsoft Corporation - MSFT","publishedAt": "2026-08-01T17:55:00.000Z","provider": "Business Wire","sourceUrl": "https://barchartjson.websol.barchart.com/?module=jsonBCNews&storyid=3596750","shareUrl": "https://www.barchart.com/share/news/3596750","retrievedAt": "2026-08-01T23:07:31.273Z","summary": "Former Attorney General of Louisiana, Charles C. Foti, Jr., Esq., a partner at the law firm of Kahn Swick & Foti , LLC (“KSF”), announces that KSF has commenced an investigation into Microsoft Corporation (“Microsoft” or the “Company”)...","coverage": {"availableCount": 5,"returnedCount": 1,"truncated": false,"appliedFilters": {"target": "financial-news","symbols": ["AAPL","MSFT"],"assetClass": "all","optionType": "both"}}}
🚨 Unusual options activity rows
| Field | Type | What it does |
|---|---|---|
| recordType | string | Always unusualOptionsActivity for this shape. |
| symbol | string | Security symbol for the activity. |
| assetClass | string | Underlying group: stocks, ETFs, or indices. |
| contractSymbol | string | Stable symbol for the option contract. |
| expirationDate | date string | Calendar date when the contract expires. |
| strikePrice | number | Price at which the contract can be exercised. |
| optionType | string | Call or put. |
| bid | number | Current bid price. |
| ask | number | Current ask price. |
| lastPrice | number | Latest quoted or traded price. |
| volume | integer | Number of option contracts traded. |
| openInterest | integer | Number of open option contracts. |
| premium | number | Total premium value tied to the activity. |
| volumeOpenInterestRatio | number | Volume divided by open interest. |
| impliedVolatility | number | Implied volatility value. |
| weightedVolatility | number | Weighted volatility value. |
| delta | number | Option delta reported by Barchart. |
| moneyness | string | In-the-money, at-the-money, or out-of-the-money state. |
| underlyingPrice | number | Latest price of the underlying security. |
| sentiment | string | Option sentiment when Barchart provides it. |
| retrievedAt | date-time string | Time when this row was retrieved. |
| coverage.availableCount | integer | Matching contracts available when the snapshot was read. |
| coverage.returnedCount | integer | Contracts returned in this run. |
| coverage.truncated | boolean | True when the run stopped before all available contracts were returned. |
| coverage.appliedFilters.target | string | Target used for this snapshot. |
| coverage.appliedFilters.assetClass | string | Asset class filter used for this snapshot. |
| coverage.appliedFilters.optionType | string | Call, put, or both setting used for this snapshot. |
| coverage.appliedFilters.minVolume | integer | Minimum volume filter used for this snapshot. |
| coverage.appliedFilters.minPremium | number | Minimum premium filter used for this snapshot. |
| coverage.appliedFilters.minVolumeOpenInterestRatio | number | Minimum volume-to-open-interest ratio filter used for this snapshot. |
Example row:
{"recordType": "unusualOptionsActivity","symbol": "RDDT","assetClass": "stocks","contractSymbol": "RDDT|20260904|100.00P","expirationDate": "2026-09-04","strikePrice": 100,"optionType": "put","volume": 7439,"openInterest": 1,"underlyingPrice": 140.67,"retrievedAt": "2026-08-01T23:11:03.598Z","premium": 557925,"volumeOpenInterestRatio": 7439,"bid": 0.3,"ask": 0.99,"lastPrice": 0.75,"impliedVolatility": 0.7188,"weightedVolatility": 0.69709805944672,"delta": -0.046504,"moneyness": "-28.91%","coverage": {"availableCount": 455,"returnedCount": 1,"truncated": false,"appliedFilters": {"target": "unusual-options-activity","assetClass": "stocks","optionType": "puts","minVolume": 1000,"minPremium": 100000,"minVolumeOpenInterestRatio": 2}}}
⛓️ Options chain rows
| Field | Type | What it does |
|---|---|---|
| recordType | string | Always optionsChain for this shape. |
| symbol | string | Security symbol for the contract. |
| assetClass | string | Underlying group: stocks, ETFs, or indices. |
| contractSymbol | string | Stable symbol for the option contract. |
| expirationDate | date string | Calendar date when the contract expires. |
| strikePrice | number | Price at which the contract can be exercised. |
| optionType | string | Call or put. |
| bid | number | Current bid price. |
| ask | number | Current ask price. |
| lastPrice | number | Latest quoted or traded price. |
| volume | integer | Number of option contracts traded. |
| openInterest | integer | Number of open option contracts. |
| premium | number | Total premium value tied to the contract. |
| volumeOpenInterestRatio | number | Volume divided by open interest. |
| impliedVolatility | number | Implied volatility value. |
| weightedVolatility | number | Weighted volatility value. |
| delta | number | Option delta reported by Barchart. |
| moneyness | string | In-the-money, at-the-money, or out-of-the-money state. |
| underlyingPrice | number | Latest price of the underlying security. |
| sentiment | string | Option sentiment when Barchart provides it. |
| retrievedAt | date-time string | Time when this row was retrieved. |
| coverage.availableCount | integer | Matching contracts available when the snapshot was read. |
| coverage.returnedCount | integer | Contracts returned in this run. |
| coverage.truncated | boolean | True when the run stopped before all available contracts were returned. |
| coverage.appliedFilters.target | string | Target used for this snapshot. |
| coverage.appliedFilters.symbols | string[] | Submitted symbols used for this snapshot. |
| coverage.appliedFilters.assetClass | string | Asset class filter used for this snapshot. |
| coverage.appliedFilters.optionType | string | Call, put, or both setting used for this snapshot. |
| coverage.appliedFilters.expirationDate | date string | Optional expiration filter used for this snapshot. |
| coverage.appliedFilters.minVolume | integer | Minimum volume filter used for this snapshot. |
| coverage.appliedFilters.minPremium | number | Minimum premium filter used for this snapshot. |
| coverage.appliedFilters.minVolumeOpenInterestRatio | number | Minimum volume-to-open-interest ratio filter used for this snapshot. |
Example row:
{"recordType": "optionsChain","symbol": "AAPL","assetClass": "stocks","contractSymbol": "AAPL|20270617|5.00C","expirationDate": "2027-06-17","strikePrice": 5,"optionType": "call","volume": 2,"openInterest": 1,"underlyingPrice": 308.91,"retrievedAt": "2026-08-01T23:15:26.863Z","premium": 60028,"volumeOpenInterestRatio": 2,"bid": 301.5,"ask": 306.5,"lastPrice": 300.14,"impliedVolatility": 2.0177,"weightedVolatility": 0.27304524312285,"delta": 0.998921,"moneyness": "+98.38%","coverage": {"availableCount": 1173,"returnedCount": 1,"truncated": false,"appliedFilters": {"target": "options-chain","symbols": ["AAPL"],"assetClass": "all","optionType": "both","minVolume": 1,"minPremium": 50000,"minVolumeOpenInterestRatio": 0.1}}}
🔄 Ticker option-flow rows
| Field | Type | What it does |
|---|---|---|
| recordType | string | Always tickerOptionFlow for this shape. |
| symbol | string | Security symbol for the trade. |
| assetClass | string | Underlying group: stocks, ETFs, or indices. |
| contractSymbol | string | Stable symbol for the option contract. |
| expirationDate | date string | Calendar date when the contract expires. |
| strikePrice | number | Price at which the contract can be exercised. |
| optionType | string | Call or put. |
| tradePrice | number | Price of the option-flow trade. |
| bid | number | Bid price at the trade time. |
| ask | number | Ask price at the trade time. |
| volume | integer | Number of option contracts traded. |
| openInterest | integer | Number of open option contracts. |
| premium | number | Total premium value tied to the trade. |
| tradeTime | date-time string | Time of the option-flow trade. |
| tradeConditionCodes | string[] | Source codes that describe the trade. |
| underlyingPrice | number | Latest price of the underlying security. |
| underlyingChange | number | Price change of the underlying security. |
| underlyingChangePercent | number | Percent change of the underlying security. |
| delta | number | Option delta when Barchart provides it. |
| sentiment | string | Option sentiment when Barchart provides it. |
| retrievedAt | date-time string | Time when this row was retrieved. |
| coverage.availableCount | integer | Matching trades available when the snapshot was read. |
| coverage.returnedCount | integer | Trades returned in this run. |
| coverage.truncated | boolean | True when the run stopped before all available trades were returned. |
| coverage.appliedFilters.target | string | Target used for this snapshot. |
| coverage.appliedFilters.symbols | string[] | Submitted symbols used for this snapshot. |
| coverage.appliedFilters.assetClass | string | Asset class filter used for this snapshot. |
| coverage.appliedFilters.optionType | string | Call, put, or both setting used for this snapshot. |
Example row:
{"recordType": "tickerOptionFlow","symbol": "AAPL","assetClass": "stocks","contractSymbol": "AAPL|20260803|330.00P","expirationDate": "2026-08-03","strikePrice": 330,"optionType": "put","tradePrice": 26.1,"bid": 19.6,"ask": 22.2,"volume": 2683,"openInterest": 1306,"premium": 3387700,"tradeTime": "2026-07-31T20:28:41.000Z","tradeConditionCodes": ["CANC"],"underlyingPrice": 308.91,"retrievedAt": "2026-08-01T23:12:58.620Z","delta": -0.86678928972609,"sentiment": "Bearish","underlyingChange": -24.52,"underlyingChangePercent": -0.0735,"coverage": {"availableCount": 102,"returnedCount": 1,"truncated": false,"appliedFilters": {"target": "ticker-option-flow","symbols": ["AAPL"],"assetClass": "all","optionType": "puts"}}}
▶️ Run the Actor
🛠️ Basic steps
- Choose one target: Financial news, Unusual options activity, Options chain, or Ticker option flow.
- Add Symbols for the symbol-based targets. Unusual options activity scans the market and ignores Symbols.
- Add an expiration or activity filter when you need one. Set Actor Work Limit to stop after a chosen number of records.
- Start the run and open the default dataset URL from the run output.
🧾 Input
🧩 Input fields
| Field | Type | What it does |
|---|---|---|
| target | string | Chooses the one snapshot type for this run. |
| assetClass | string | Chooses stocks, ETFs, indices, or all for Unusual options activity. Other targets ignore it. |
| expiration | date string | Chooses one calendar date for Options chain. Empty includes all available expirations. Other targets ignore it. |
| symbols | string[] | Sends one or more security symbols to Financial news, Options chain, or Ticker option flow. Unusual options activity ignores it. |
| optionType | string | Chooses calls, puts, or both for the three options targets. Financial news ignores it. |
| minVolume | integer | Sets the smallest option volume for Unusual options activity or Options chain. Empty uses no volume threshold. |
| minPremium | number | Sets the smallest premium for Unusual options activity or Options chain. Empty uses no premium threshold. |
| minVolumeOpenInterestRatio | number | Sets the smallest volume-to-open-interest ratio for Unusual options activity or Options chain. Empty uses no ratio threshold. |
| maxItems | integer | Actor Work Limit. Stops after this many records for any target. Empty returns all available results until the source is exhausted. |
🧪 Example input
Example input:
{"target": "financial-news","assetClass": "all","symbols": ["AAPL"],"optionType": "both","maxItems": 20}
💳 Pricing
💰 Primary charges
Each target has one primary pay-per-event charge for a successfully delivered snapshot. The charge is not per returned row.
| Target | Buyer-facing event | Price |
|---|---|---|
| Financial news | Financial news | $0.045 |
| Unusual options activity | Unusual activity | $1.35 |
| Options chain | Options chain | $1.35 |
| Ticker option flow | Option flow | $1.35 |
🔌 Integrations
🔗 Use the dataset
Open the default dataset URL from the run output, or use Apify's dataset tools and API to read the structured rows. Export the data as JSON or another supported dataset format for your workflow.
For a short walkthrough, watch this video:
❓ FAQ
🔗 Can one run use more than one target?
No. Choose one target per run. Start another run for a different target.
🎚️ What happens when Actor Work Limit is empty?
The Actor returns all available results until the source is exhausted. A set limit can stop the run earlier, and status is truncated when it stops before all available results are returned.
📉 What does truncated mean?
It means the run stopped before all matching results were returned. Check coverage.availableCount, coverage.returnedCount, and the applied filters to see what the snapshot covered.
🧪 Does this replace a stock screener?
No. Barchart focuses here on financial news and options snapshots, not a general stock screener.
🧠 Does it tell me the best call options to buy today?
No. It returns Barchart data for analysis and does not give investment advice or place trades.
🔐 Do I need Barchart login credentials?
No Barchart credentials are requested. The Actor uses publicly reachable Barchart data.
🗓️ Is this a historical backfill or live stream?
No. Each run is a snapshot of data available when Barchart is read.
📝 Changelog
0.0: Initial release
Pull financial news and market-wide or symbol-specific options snapshots from Barchart, including unusual options activity, options chains, stock options flow, and unusual call activity, with structured dataset output for analysis.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- Morningstar Scraper — compare public stock, mutual fund, and ETF data with prices, ratings, fees, assets, and holdings.
- MarketWatch Scraper — collect MarketWatch articles with headlines, summaries, dates, and stock tickers.
- Stocktwits Scraper — review public Stocktwits ticker messages, sentiment, and trending symbols.
- Barchart News Scraper — compare a news-focused Barchart collection workflow with this multi-target Actor.
- Options Flow & Unusual Activity — explore another Barchart options workflow for unusual activity, chains, and intraday flow.
Made with ❤️ by Maxime Dupré