TL;DR. The Australian Securities Exchange (ASX) requires listed entities to publish material disclosures through the ASX Markets Announcements platform. Critically, ASX is one of the few major exchanges that requires issuers to flag whether each announcement is price-sensitive — a binary signal that maps directly onto event-driven trading research. The announcements also have a category taxonomy (financial reports, Appendix 3B / share issues, Appendix 3Y / director interest, takeovers, etc.) and a public XML/JSON surface. This guide covers the announcements structure, the materials-sector dynamics that dominate ASX disclosure volume, and a working Python pipeline using the ASX Company Announcements actor.
Why ASX announcements are uniquely useful
ASX Listing Rule 3.1 requires immediate disclosure of any information a reasonable person would expect to have a material effect on price. Rule 3.1A.1 provides limited exceptions. Crucially, when filing an announcement, the issuer must mark "This announcement is price sensitive — Yes/No". That flag:
- Is set by the issuer based on their own materiality assessment
- Becomes part of the public announcement metadata
- Is reviewed by ASX Compliance — issuers who mis-flag can be queried
- Drives algorithmic news-flow tagging for event-driven systematic trading
Roughly 30–40% of ASX announcements are flagged price-sensitive on a typical trading day. Filtering on that flag alone reduces noise by ~2/3 and is the simplest possible event filter.
The category taxonomy
ASX classifies announcements into types. The high-frequency, high-signal categories:
- Appendix 3B — new issue of securities (placement, rights, options exercise)
- Appendix 3Y — director's notice of change in interest (insider transactions)
- Appendix 4D / 4E — half-year and full-year financial reports
- Form 604 / 605 — change in substantial holder ≥5%
- Quarterly Activities / Cashflow Report — required for junior miners and explorers (Appendix 5B)
- Takeover Bid documents
- Trading Halt / Pause in Trading — often immediately precedes a material announcement
For a junior miner-heavy market like ASX, Appendix 5B quarterly cashflows and exploration-result announcements are central to the disclosure flow. Roughly 30% of ASX-listed entities are materials-sector and a similar share of total announcement volume comes from mining-related categories.
Working Python example
The ASX Company Announcements actor returns structured JSON with the price-sensitive flag and category preserved. Curl:
curl -X POST "https://api.apify.com/v2/acts/nexgendata~asx-company-announcements/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"priceSensitiveOnly": true, "since": "2026-05-01", "maxResults": 500}'
Python — building an intraday price-sensitive watchlist:
import os, json, urllib.request
APIFY_TOKEN = os.environ["APIFY_TOKEN"]
ACTOR = "nexgendata~asx-company-announcements"
payload = json.dumps({
"priceSensitiveOnly": True,
"since": "2026-05-29",
"categories": ["Quarterly Cashflow Report", "Material Asset Transaction",
"Takeover Bid", "Trading Halt"],
}).encode("utf-8")
url = f"https://api.apify.com/v2/acts/{ACTOR}/run-sync-get-dataset-items?token={APIFY_TOKEN}"
req = urllib.request.Request(url, data=payload, method="POST",
headers={"Content-Type": "application/json"})
with urllib.request.urlopen(req, timeout=600) as r:
anns = json.loads(r.read())
for a in anns:
print(f"{a['datetime']} | {a['ticker']} ({a['issuerName']})")
print(f" [{a['category']}] {a['title']}")
print(f" PriceSensitive={a['priceSensitive']} | {a['url']}")
Returned shape:
{
"ticker": "BHP",
"issuerName": "BHP Group Limited",
"datetime": "2026-05-15T10:32:00+10:00",
"category": "Quarterly Activities Report",
"title": "Q3 FY26 Operations Review",
"priceSensitive": true,
"pdfUrl": "https://www.asx.com.au/asxpdf/...",
"pages": 24
}
How ASX data compares to terminal feeds
| Source | Coverage | Price-sensitive flag | Cost |
|---|---|---|---|
| ASX Markets Announcements (raw HTML/PDF) | Full ASX, real-time | Yes, on each filing | Free |
| Bloomberg Terminal (DES CN for AU) | ASX + global | Mapped to Bloomberg flags | ~$24,000/yr/seat (~AUD 36,000) |
| Refinitiv Eikon (AU) | ASX + global | Mapped | ~$22,000/yr/seat |
| IRESS for AU | ASX-centric, AU broker-dealer standard | Yes | AUD $1,500–$3,000/mo/seat |
| ASX Announcements actor (Apify) | Full ASX, ~1–3 min after publish | Yes, preserved verbatim | PPE |
For systematic event-driven strategies the cost gap matters. A 5-person quant team needs 5 Bloomberg seats at ~AUD 36K each per year — AUD 180K/yr just for terminal access. The actor-based pull serves the same announcements feed for cents per filing. The trade-off is no terminal chat, no integrated execution, and ~1–3 minute latency vs. real-time on the terminal.
Common pipelines
- Junior miner cashflow screen — pull Appendix 5B reports, extract cash-on-hand, flag entities with under 2 quarters of runway as funding-risk candidates.
- Director-interest momentum signal — Appendix 3Y filings with buy direction across multiple directors of the same entity within a short window.
- Takeover-target screen — Form 604 substantial-holder filings combined with Trading Halt announcements.
- Earnings-flow dashboard — Appendix 4D / 4E announcements with price-sensitive flag.
Cross-jurisdiction pattern
For pan-APAC coverage pair ASX with our SGX announcements guide. For Form 605 substantial-holder filings specifically (the ASX 5% disclosure form), see our dedicated ASX Form 605 actor. ASIC enforcement (the Australian regulator's actions, equivalent to US SEC litigation) is tracked by our ASIC enforcement actor.
Trading signal pattern
For event-driven systematic strategies the architecture pattern is the same one we cover for building trading signals from PR Newswire data — ingest, classify, dedupe, time-stamp, run abnormal-return analysis. The ASX price-sensitive flag eliminates most of the classification work.
Two things to know about the price-sensitive flag
The flag is filer-set, not exchange-set. That has two practical consequences:
- False negatives happen — issuers occasionally fail to flag something that should be. ASX Compliance reviews and queries these but the public correction can lag the original filing by hours.
- The flag is binary, not graded — a routine Appendix 3B placement of a few hundred thousand shares and a transformative M&A both come through as "price sensitive = Yes." Filtering on the flag is necessary but not sufficient; downstream classification on title and category gives you the gradation.
For systematic backtests, a useful sanity check is the realized 1-day absolute return on the underlying after each price-sensitive announcement. The distribution should have a fatter tail than a random sample of trading days — if it doesn't, your timestamp join is broken.
Trading halts as a precursor signal
ASX trading halts are themselves announcements ("Pause in Trading" or "Trading Halt") and almost always precede a material disclosure. The halt-to-announcement window is typically 30 minutes to 4 hours during normal trading hours, longer if straddling a session close. For event-driven desks, the trading halt is the earliest leading indicator that something material is coming — often before the actual content is public. Many ASX-focused systematic strategies trade off the halt arrival, not the subsequent announcement.
Materials sector dominance
ASX is unique among major exchanges in the dominance of small-cap junior miners and explorers. About 700+ listed entities are materials-sector, with quarterly cashflow reporting obligations (Appendix 5B) that make their disclosure cadence highly predictable. For analysts running junior-miner screens, the combination of Appendix 5B (cash-on-hand and runway), Appendix 3B (capital raises), and exploration-result announcements produces a tight signal loop — a junior miner that just announced strong drill results, has < 2 quarters of runway in their last 5B, and files a 3B raise within 30 days is a textbook setup.
Get started: Pull yesterday's price-sensitive ASX announcements free at the ASX Announcements actor.
Related Reading
More from this series:
- SGX Company Announcements API: Singapore Equity Research Made Programmatic
- SEC 8-K Filings API: Build a Material Events Tracker (2026 Guide)
- SEC Event Router: One API for 8-K, Litigation, Form 4, Form D, and 13F
From the press release / event-driven series:
Top comments (0)