source | dataset | .html | .RData |
---|---|---|---|
eurostat | bop_iip6_q | 2025-02-01 | 2025-05-18 |
International investment position - quarterly and annual data (BPM6)
Data - Eurostat
Info
Data on europe
source | dataset | .html | .RData |
---|---|---|---|
eurostat | bop_gdp6_q | 2025-05-18 | 2025-05-18 |
eurostat | nama_10_a10 | 2025-02-01 | 2025-05-18 |
eurostat | nama_10_a10_e | 2025-02-01 | 2025-05-18 |
eurostat | nama_10_gdp | 2025-02-01 | 2025-05-18 |
eurostat | nama_10_lp_ulc | 2025-02-01 | 2025-05-18 |
eurostat | namq_10_a10 | 2025-03-04 | 2025-05-18 |
eurostat | namq_10_a10_e | 2025-03-13 | 2025-05-18 |
eurostat | namq_10_gdp | 2025-02-04 | 2025-05-18 |
eurostat | namq_10_lp_ulc | 2025-02-01 | 2025-05-18 |
eurostat | namq_10_pc | 2025-02-01 | 2025-05-18 |
eurostat | nasa_10_nf_tr | 2025-04-23 | 2025-05-18 |
eurostat | nasq_10_nf_tr | 2025-02-12 | 2025-05-18 |
eurostat | tipsii40 | 2025-01-26 | 2025-05-18 |
Data on macro
source | dataset | .html | .RData |
---|---|---|---|
eurostat | nama_10_a10 | 2025-02-01 | 2025-05-18 |
eurostat | nama_10_a10_e | 2025-02-01 | 2025-05-18 |
eurostat | nama_10_gdp | 2025-02-01 | 2025-05-18 |
eurostat | nama_10_lp_ulc | 2025-02-01 | 2025-05-18 |
eurostat | namq_10_a10 | 2025-03-04 | 2025-05-18 |
eurostat | namq_10_a10_e | 2025-03-13 | 2025-05-18 |
eurostat | namq_10_gdp | 2025-02-04 | 2025-05-18 |
eurostat | namq_10_lp_ulc | 2025-02-01 | 2025-05-18 |
eurostat | namq_10_pc | 2025-02-01 | 2025-05-18 |
eurostat | nasa_10_nf_tr | 2025-04-23 | 2025-05-18 |
eurostat | nasq_10_nf_tr | 2025-02-12 | 2025-05-18 |
fred | gdp | 2025-05-18 | 2025-05-18 |
oecd | QNA | 2024-06-06 | 2025-03-31 |
oecd | SNA_TABLE1 | 2025-03-04 | 2025-03-04 |
oecd | SNA_TABLE14A | 2024-09-15 | 2024-06-30 |
oecd | SNA_TABLE2 | 2024-07-01 | 2024-04-11 |
oecd | SNA_TABLE6A | 2024-07-01 | 2024-06-30 |
wdi | NE.RSB.GNFS.ZS | 2025-03-09 | 2025-03-09 |
wdi | NY.GDP.MKTP.CD | 2025-03-09 | 2025-03-09 |
wdi | NY.GDP.MKTP.PP.CD | 2025-03-09 | 2025-03-09 |
wdi | NY.GDP.PCAP.CD | 2025-03-31 | 2025-03-31 |
wdi | NY.GDP.PCAP.KD | 2025-03-09 | 2025-03-09 |
wdi | NY.GDP.PCAP.PP.CD | 2025-03-31 | 2025-03-31 |
wdi | NY.GDP.PCAP.PP.KD | 2025-03-09 | 2025-03-09 |
Last
Code
%>%
bop_iip6_q group_by(time) %>%
summarise(Nobs = n()) %>%
arrange(desc(time)) %>%
head(3) %>%
print_table_conditional()
time | Nobs |
---|---|
2024Q4 | 477668 |
2024Q3 | 478156 |
2024Q2 | 464696 |
Info
Code
include_graphics("https://ec.europa.eu/eurostat/statistics-explained/images/b/be/Net_international_investment_position%2C_surplus_and_deficit%2C_Top_10_economies%2C_2022_%28€_billion%29.png")
currency
Code
%>%
bop_iip6_q left_join(currency, by = "currency") %>%
group_by(currency, Currency) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
currency | Currency | Nobs |
---|---|---|
MIO_EUR | Million euro | 28705456 |
MIO_NAC | Million units of national currency | 28607480 |
bop_item
Code
%>%
bop_iip6_q left_join(bop_item, by = "bop_item") %>%
group_by(bop_item, Bop_item) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
sector10
Code
%>%
bop_iip6_q left_join(sector10, by = "sector10") %>%
group_by(sector10, Sector10) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
sector10 | Sector10 | Nobs |
---|---|---|
S1 | Total economy | 15469602 |
S13 | General Government | 4532729 |
S121 | Central Bank | 4451787 |
S123 | Money market funds | 4349450 |
S122 | Deposit-taking corporations except the central bank | 4175928 |
S12T | Monetary Financial Institutions (MFI) other than central bank | 3961655 |
S1P | Other sectors than MFIs and general government | 3929071 |
S12M | Financial corporations other than MFIs | 3876627 |
S1V | Non-financial corporations, households and non-profit institutions serving households | 3830770 |
S12O | Other financial institutions | 1691266 |
S11 | Non-financial corporations | 1689260 |
S12Q | Insurance corporations and pension funds | 1672390 |
S1M | Households and non-profit institutions serving households | 1658844 |
S124 | Non-MMF investment funds | 1552466 |
S1Z | Sectors other than deposit-taking corporations and general government | 168665 |
S12R | Other financial corporations | 133280 |
S1X | Monetary authorities | 118688 |
S12K | Monetary financial institutions (MFI) | 46588 |
S1A | Affiliates | 1290 |
S1N | Not sectorised | 1290 |
S1W | Other sectors than General Government | 1290 |
sectpart
Code
%>%
bop_iip6_q left_join(sectpart, by = "sectpart") %>%
group_by(sectpart, Sectpart) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
sectpart | Sectpart | Nobs |
---|---|---|
S1 | Total economy | 54381757 |
S12M | Financial corporations other than MFIs | 366893 |
S123 | Money market funds | 356871 |
S121 | Central Bank | 355616 |
S122 | Deposit-taking corporations except the central bank | 344989 |
S13 | General Government | 327074 |
S1V | Non-financial corporations, households and non-profit institutions serving households | 318864 |
S12T | Monetary Financial Institutions (MFI) other than central bank | 227559 |
S12O | Other financial institutions | 116434 |
S11 | Non-financial corporations | 116388 |
S12Q | Insurance corporations and pension funds | 114002 |
S1M | Households and non-profit institutions serving households | 113274 |
S124 | Non-MMF investment funds | 80100 |
S1N | Not sectorised | 66990 |
S12K | Monetary financial institutions (MFI) | 26123 |
S1X | Monetary authorities | 2 |
stk_flow
Code
%>%
bop_iip6_q left_join(stk_flow, by = "stk_flow") %>%
group_by(stk_flow, Stk_flow) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
print_table_conditional()
stk_flow | Stk_flow | Nobs |
---|---|---|
A_LE | Assets - positions at the end of period | 22106475 |
L_LE | Liabilities - positions at the end of period | 14690750 |
N_LE | Net positions at the end of period | 14481700 |
A_K7A | Assets - revaluations due to exchange rate changes | 972992 |
A_K7B | Assets - revaluations due to other price changes | 911500 |
A_KA | Assets - other changes in the volume of Assets/Liabilities | 857432 |
L_K7A | Liabilities - revaluations due to exchange rate changes | 573833 |
L_KA | Liabilities - other changes in the volume of Assets/Liabilities | 542402 |
N_KA | Net other changes in the volume of Assets/Liabilities | 516162 |
L_K7B | Liabilities - revaluations due to other price changes | 514732 |
N_K7A | Net revaluations due to exchange rate changes | 503320 |
N_K7B | Net revaluations due to other price changes | 492028 |
NE_LE | Net liabilities (liabilities minus assets) | 148854 |
NI_LE | Net FDI inward - positions at the end of period | 378 |
NO_LE | Net FDI outward - positions at the end of period | 378 |
partner
Code
%>%
bop_iip6_q left_join(partner, by = "partner") %>%
group_by(partner, Partner) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
mutate(Partner = ifelse(partner == "DE", "Germany", Partner)) %>%
mutate(Flag = gsub(" ", "-", str_to_lower(Partner)),
Flag = paste0('<img src="../../bib/flags/vsmall/', Flag, '.png" alt="Flag">')) %>%
select(Flag, everything()) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .} {
geo
Code
%>%
bop_iip6_q left_join(geo, by = "geo") %>%
group_by(geo, Geo) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) %>%
mutate(Flag = gsub(" ", "-", str_to_lower(Geo)),
Flag = paste0('<img src="../../bib/flags/vsmall/', Flag, '.png" alt="Flag">')) %>%
select(Flag, everything()) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .} {
Net International Investment Position
Table
Code
%>%
bop_iip6_q filter(bop_item == "FA__NENDI",
== "MIO_EUR",
currency nchar(time) == 6) %>%
left_join(geo, by = "geo") %>%
group_by(geo, Geo) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) %>%
mutate(Flag = gsub(" ", "-", str_to_lower(Geo)),
Flag = paste0('<img src="../../bib/flags/vsmall/', Flag, '.png" alt="Flag">')) %>%
select(Flag, everything()) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .} {
France, Germany, Spain, Netherlands, Italy
Code
%>%
bop_iip6_q filter(bop_item == "FA__NENDI",
== "MIO_EUR",
currency %in% c("FR", "DE", "EA19", "ES", "NL", "IT"),
geo nchar(time) == 6) %>%
%>%
quarter_to_date mutate(values = values/1000) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA20", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ geom_line(aes(x = date, y = values, color = color)) + theme_minimal() +
ggplot scale_color_identity() + add_5flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2030, 2), "-01-01")),
labels = date_format("%Y")) +
xlab("") + ylab("Net international investment position") +
scale_y_continuous(breaks = seq(-3000, 3000, 250),
labels = dollar_format(suffix = " Bn€", prefix = "", accuracy = 1))
France, Germany, Europe
Code
%>%
bop_iip6_q filter(bop_item == "FA__NENDI",
== "MIO_EUR",
currency %in% c("FR", "DE", "EA20"),
geo nchar(time) == 6) %>%
%>%
quarter_to_date mutate(values = values/1000) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA20", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ geom_line(aes(x = date, y = values, color = color)) + theme_minimal() +
ggplot scale_color_identity() + add_2flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2030, 2), "-01-01")),
labels = date_format("%Y")) +
xlab("") + ylab("Net international investment position") +
scale_y_continuous(breaks = seq(-3000, 3000, 250),
labels = dollar_format(suffix = " Bn€", prefix = "", accuracy = 1))
Spain, Netherlands, Italy
Code
%>%
bop_iip6_q filter(bop_item == "FA__NENDI",
== "MIO_EUR",
currency %in% c("ES", "NL", "IT"),
geo nchar(time) == 6) %>%
%>%
quarter_to_date mutate(values = values/1000) %>%
left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ geom_line(aes(x = date, y = values, color = color)) + theme_minimal() +
ggplot scale_color_identity() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2030, 2), "-01-01")),
labels = date_format("%Y")) +
xlab("") + ylab("Net international investment position") +
scale_y_continuous(breaks = seq(-3000, 3000, 250),
labels = dollar_format(suffix = " Bn€", prefix = "", accuracy = 1))