Investing.com Bonds Scraper: Government Bond Yields & History avatar

Investing.com Bonds Scraper: Government Bond Yields & History

Pricing

from $5.00 / 1,000 bond data

Go to Apify Store
Investing.com Bonds Scraper: Government Bond Yields & History

Investing.com Bonds Scraper: Government Bond Yields & History

Get government bond yields from Investing.com (U.S. 10Y, Germany 10Y, UK Gilts, JGBs...): live yield, historical yields, technical analysis, news, related bonds and the full list of government bonds of any country (2Y, 5Y, 10Y, 30Y...). 32 languages.

Pricing

from $5.00 / 1,000 bond data

Rating

0.0

(0)

Developer

Pinto Studio

Pinto Studio

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Categories

Share

Get bonds data from Investing.com: prices, history and more. Choose exactly what you need, in 32 languages and in any currency.

What you can get

Pick one or more options in "What do you want to get?" (dataToGet):

OptionNameWhat you get
overviewQuote & overviewCurrent yield, change, open/high/low, 52-week range and more.
historicalHistorical pricesDaily, weekly or monthly prices (open, high, low, close, volume, change %) between two dates.
technicalTechnical analysisIndicators (RSI, MACD, ...), moving averages (5 to 200) and pivot points, with buy/sell signals.
newsLatest newsLatest news articles about it (title, summary, link, date, source).
relatedRelated instrumentsOther instruments people also watch, with their price and change.
government_bondsMARKET: government bondsThe government bond yields of a country (3 months to 30 years).

How to use it (no code needed)

  1. Open the actor on Apify and go to the Input tab.
  2. In "Bonds to look up", type what you want, one per line, for example: U.S. 10Y, Germany 10Y.
  3. In "What do you want to get?", tick the data you need.
  4. (Optional) choose a Language and a Currency.
  5. Click Start.
  6. When it finishes, open the Output tab. You can download the results as JSON, CSV, Excel or view them as a table.

Input fields

FieldWhat it doesExample
instrumentsBond names as on investing.com (U.S. 10Y, Germany 10Y) or investing.com links. One per line.["U.S. 10Y", "Germany 10Y"]
dataToGetWhat you want. Pick one or more of the options in the table above.["overview", "historical"]
languageLanguage of names, descriptions and news (32 languages)."en", "pt-br", "de", "ja"
currencyOptional. Show prices in another currency. local = the currency of the chosen language's country. Empty = the instrument's own currency."EUR", "BRL", "local"
historicalFrom / historicalToDates for historical prices. Empty = the last 30 days."2026-01-01"
historicalIntervaldaily, weekly or monthly."daily"
historicalOrderasc (oldest first) or desc (newest first)."asc"
splitHistoricalRowstrue saves every day as its own row: best for Excel/CSV.false
technicalIntervalTimeframe of the technical analysis: 1m, 5m, 15m, 30m, 1h, 5h, 1d, 1w, 1mo or all."1d"
marketCountryCountry for the MARKET options."US", "germany"
marketLimitMaximum number of rows for the MARKET options (up to 2000).100
proxyTypeours (default): our proxy, included in the price. own: use your own proxy."ours"
ownProxyUrlsYour proxy URLs, only used when proxyType is own.["http://user:pass@host:port"]

Example inputs

1. Prices and history

{
"instruments": [
"U.S. 10Y",
"Germany 10Y"
],
"dataToGet": [
"overview",
"historical"
],
"historicalFrom": "2026-01-01",
"historicalTo": "2026-06-30"
}

2. In Portuguese, prices in Brazilian reais

{
"instruments": [
"Brazil 10Y"
],
"dataToGet": [
"overview",
"news"
],
"language": "pt-br",
"currency": "BRL"
}

3. Market data (no list needed)

{
"dataToGet": [
"government_bonds"
],
"marketCountry": "DE"
}

Market options return one row per item (e.g. one row per stock), so they look like a normal table.

What the results look like

Every result is one item in the dataset. For the bonds you typed, you get one item per bond and per option:

FieldMeaning
inputWhat you typed
dataTypeWhich option this item is (overview, historical, ...)
instrumentThe bond that was found: name, symbol, link, and how it was found
languageLanguage of the texts
currencyCurrency of the prices in this item
metaExtra details, e.g. the exchange rate used when you asked for another currency
dataThe data itself
errornull, or the reason this item failed (the other items still work)

Example (shortened):

{
"input": "U.S. 10Y",
"dataType": "overview",
"instrument": {
"kind": "rates-bonds",
"slug": "u.s.-10-year-bond-yield",
"cid": null,
"url": "https://www.investing.com/rates-bonds/u.s.-10-year-bond-yield",
"found_by": "list (name)",
"id": "23705",
"name": "United States 10-Year",
"symbol": null,
"country": "united states",
"currency": null,
"other_matches": 0
},
"language": "en",
"currency": "USD",
"meta": {
"currency": "USD",
"native_currency": "USD"
},
"data": {
"id": "23705",
"kind": "rates-bonds",
"slug": "u.s.-10-year-bond-yield",
"type": "bond",
"name": "United States 10-Year",
"short_name": "U.S. 10Y",
"symbol": "US10YT=X",
"url": "https://www.investing.com/rates-bonds/u.s.-10-year-bond-yield",
"isin": null,
"is_open": false,
"is_crypto": false,
"exchange": {
"id": "1",
"code": "NYSE",
"name": "New York Stock Exchange",
"country": "United States",
"flag": "US"
},
"price": {
"last": 5.167,
"previous_close": 5.163,
"open": 5.189,
"high": 5.233,
"low": 5.153,
"change": 0.004,
"change_percent": 0.08,
"bid": null,
"ask": null,
"currency": "USD",
"decimals": 3,
"delayed": false,
"updated_at": "2026-09-25T20:59:56+00:00"
},
"range_52_weeks": {
"low": 3.926,
"high": 5.233
},
"...": "7 more fields"
},
"error": null
}

Call it from your code

Replace YOUR_API_TOKEN with your token (Apify Console → Settings → Integrations) and pintostudio with your Apify username.

Using the API (runs the actor and returns the results in one call):

curl -X POST "https://api.apify.com/v2/acts/pintostudio~investing-com-bonds/run-sync-get-dataset-items?token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"instruments": ["U.S. 10Y"], "dataToGet": ["overview"]}'

Python (pip install apify-client):

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("pintostudio/investing-com-bonds").call(run_input={
"instruments": ["U.S. 10Y", "Germany 10Y"],
"dataToGet": ["overview"],
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["input"], item["dataType"], item["data"])

JavaScript (npm install apify-client):

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('pintostudio/investing-com-bonds').call({
instruments: ["U.S. 10Y", "Germany 10Y"],
dataToGet: ['overview'],
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Proxy

Investing.com blocks many IPs, so every request goes through a proxy. You have two options in Proxy (proxyType):

OptionWhat happensWho pays for the proxy
Our proxy (default)Requests go through our proxy. Nothing to set up.Included in the event price, no extra cost.
My own proxyRequests go through the proxy URLs you add in Your proxy URLs (ownProxyUrls). Several URLs are rotated.You, directly to your proxy provider. The actor price stays the same.

Apify Proxy is not used by this actor, so it never adds proxy usage to your Apify bill. If you choose My own proxy without adding a URL, the run stops with a clear message.

Pricing

You only pay for what you get (pay per event). Items that fail are never charged.

EventPriceWhen
Actor start$0.00005Once per run
Bond data$0.005Each bond × option (overview, historical, technical, news, related)
Market row$0.0005Each row of the government bonds list of a country

Examples: live yields of 20 bonds ≈ $0.10 · 20 years of daily U.S. 10Y yields ≈ $0.005 · all U.S. government bonds (≈12 rows) ≈ $0.006. Historical yields are charged once per bond, no matter how many days you ask for. Set a maximum cost per run and the actor stops cleanly when it is reached. Tip: ask for several bonds and options in one run, it is faster than many small runs.

Good to know

  • Not sure what to type? Paste the link of the bond from investing.com. It always works.
  • Currency: prices are converted with the live exchange rate. Historical prices, dividends, earnings and financial statements use the rate of each date. Percentages, ratios and volumes are never converted. The item's meta shows the rate used.
  • Language: changes names, descriptions and news. Numbers stay the same.
  • Errors: if one bond or option fails, you get an item with an error explaining why, and everything else still runs.
  • Proxy: see Proxy above. By default you do not need to do anything.