[Exploration] Voir le top des composants des ETFs investis

Hello,

Une fonctionnalitĂ© qui pourrait ĂȘtre intĂ©ressante, notamment pour ceux qui investissent dans des ETFs : voir avec Finary le top des composants sur lesquels ils sont investis.

Au final lorsqu’on adopte une gestion passive ETF, on ne se prĂ©occupe pas toujours de savoir dans quoi on investit en dĂ©tails, on prend le S&P500, le NASDAQ-100 ou un MSCI World, mais au final quelle part est rĂ©ellement investie dans les GAFAM / grosse capitalisations ?

Par exemple savez-vous que :

  • Apple reprĂ©sente 11% du NASDAQ 100
  • ASML reprĂ©sente 29% du Stoxx Europe 600 Technology
  • Apple reprĂ©sente 18% du du MSCI World Information Technology
  • LVMH reprĂ©sente 12% du CAC 40

Si l’on s’étend aux 10 premiers composants de chaque ETF, voilĂ  la part de capitalisation que cela reprĂ©sente par rapport Ă  la valeur totale de l’indice :

  • Stoxx Europe 600 Technology : 80%
  • Stoxx Europe 600 Healthcare : 72%
  • NASDAQ-100 : 54%
  • S&P 500 : 28%
  • CAC40 : 55%
  • MSCI World : 18%

Pas si diversifié que ça au final! On pense investir dans 600 sociétés distinctes via un ETF, mais dans les faits le top 10 représente plus de 70%! Ce qui cohérent quand on sait que seules 4% des actions du marché sont un bon investissement.

Perso je me suis fait un petit script qui crawl les diffĂ©rents Ă©metteurs de mes ETF (Amundi, Lyxor, BNP principalement) pour rĂ©cupĂ©rer les diffĂ©rents composants qui sont disponibles sur chaque fiche et va ensuite mettre Ă  jour un Google Spreesheet pour m’afficher un graphique du type :

Une fonctionnalitĂ© que j’aimerais bien voir dans Finary :grinning:

TrĂšs explicite. Je vote pour (+1) :+1:

2 « J'aime »

@mounir @julien un avis sur cette fonctionnalité ?

en tout cas un indicateur de diversification du portefeuille ou des différents éléments du portefeuille serait trÚs intéressant

Nous avons construit notre base de données pour pouvoir proposer la transparisation des fonds à terme :wink:

11 « J'aime »

Parfait hùte de voir ça alors ! :grinning:

Cette fonctionnalitĂ© serait vraiment top. Je l’ai fait en manuel de mon cotĂ©, mais je butte pour automatiser tout ça.
Par exemple, je sais que j’ai 5’000 titres, dont 3’200 sans les doublons.
1% des titres représente 25% de mon portefeuille ETF.
Ca pourrait faire des beaux graphiques pour voir les fonds en transparence. Voici des exemples des miens.


Des sites proposent d’obtenir la liste des constituants des ETFs par API. C’est un peu cher pour un particulier qui fera 1 ou 2 « get » par mois, mais dans un cadre global sur Finary y’a moyen de diminuer les couts :

https://cbonds.com/api/catalog/

https://eodhistoricaldata.com/
https://www.bloomberg.com/professional/support/api-library/
https://www.cloudquote.io/products/api/etfglobal-getETFConstituents
https://developer.factset.com/api-catalog/etf-profile-and-prices-api

Sinon le listing home-made de chaque Ă©metteur, mais lĂ  c’est trop de contraintes.

Et ensuite, pouvoir exporter ce résultat via API :wink:

3 « J'aime »

Bonjour, Je télécharge 3012 cotations ETF disponible a 23h50 EOD ainsi que la plus part des bourses mondiale au format Metastock je pense que je peux les convertir (Uniquement les ETFs ) en CSV et les mettre à dispo sur un OneDrive, ou si vous connaissez VB, powershell & Python je vous refile les scripts

Hello,

@pcombes le problĂšme des cotations, c’est que c’est du one-shot. Il faut ĂȘtre capable de l’automatiser et donc idĂ©alement on recherche plutĂŽt une API ou un site Web.

@freerider74 j’ai regardĂ© tes liens merci! Le problĂšme comme tu le signales c’est que ce sont soit des APIs trĂšs chĂšres pour un particulier, soit des APIs limitĂ©es au marchĂ© US. On va donc attendre que Finary implĂ©mente la feature :smiley:

J’ai essayĂ© sinon de rĂ©pertorier quelques sites scrappables mais finalement trĂšs peu de sites proposent la composition et ceux qui le font ne le font pas sur tous (typiquement sur la plupart des ETFs ZoneBourse est incapable de me sortir la composition, idem pour Boursorama).

La meilleure solution à date reste donc pour le moment de scrapper les sites des émetteurs, mais ça nécessite de développer une instrumentation différente pour chaque émetteur. Si ca intéresse des personnes je pourrais éventuellement mettre ça sur github.

exemple API Python téléchargement des Quotes
si vous souhaitez la source complùte avec les explications d’installation et du Run contactez moi

import pandas as pd
import yfinance as yf
import datetime
import time
import requests
import io
# Input Start and End Date
start = datetime.datetime(2020,2,1)
end = datetime.datetime(2021,10,11)
url="https://pkgstore.datahub.io/core/nasdaq-listings/nasdaq-listed_csv/data/7665719fb51081ba0bd834fde71ce822/nasdaq-listed_csv.csv"
s=requests.get(url).content
companies=pd.read_csv(io.StringIO(s.decode('utf-8')))
companies.head()
 len(Symbols)`` ` 
Symbols[0:10]   *ou*  Symbols[0:2967]
**résultat attendu**  ['AAIT', 'AAL', 'AAME', 'AAOI', 'AAON', 'AAPL', 'AAVL', 'AAWW', 'AAXJ', 'ABAC']
t0 = time.time()

# create empty dataframe
stock_final = pd.DataFrame()

# iterate over each symbol
for i in Symbols:  
    
    # print the symbol which is being downloaded
    print( str(Symbols.index(i)) + str(' : ') + i, sep=',', end=',', flush=True)  
    
    try:
        # download the stock price 
        stock = []
        stock = yf.download(i,start=start, end=end, progress=False)
        
        # append the individual stock prices 
        if len(stock) == 0:
            None
        else:
            stock['Name']=i
            stock_final = stock_final.append(stock,sort=False)
    except Exception:
        None
        
t1 = time.time()

total = t1-t0

stock_final.Name.unique()
len(stock_final)
stock_final.to_excel('nom de votre fichier excel .xlsx', index = False)
stock_final.Name.nunique()
stock_final.head(10)
  résultat
![resultat|690x70](upload://i1d0aUq69iHNDDhZSrUYtAnAQeb.jpeg)

Hello,

Le script en question tĂ©lĂ©charge les cotations de symboles indiquĂ©s dans le CSV distant. La problĂ©matique de ce thread c’est d’obtenir, Ă  partir d’un ISIN ETF, la liste des composants pondĂ©rĂ©s (genre Apple- 11%).

Si tu as une source qui permet d’avoir ces infos je suis preneur.

Il n’existe pas de moyen simple La seule façon de tenter de le faire c’est de faire une correspondance avec le code boursier mais on ne peut pas taper les tables en direct
il me semble qu’il est possible de faire un appel REST API à OpenFIGI a tester
(OpenFIGI API | OpenFIGI) ensuite faire des liaisons peut ĂȘtre en Power Pivot directement dans excel
les intermĂ©diaires financier veulent gĂ©nĂ©ralement que vous payiez pour les tables de conversion CUSIP / ISIN-to-ticker 
, je vais demander Ă  l’interne si quelqu’un Ă  dĂ©jĂ  fait une requĂȘte du style
Il me semble que ce que vous essayez de faire, c’est de construire votre propre Bloomberg! :upside_down_face:

La meilleure solution à date reste donc pour le moment de scrapper les sites des émetteurs, mais ça nécessite de développer une instrumentation différente pour chaque émetteur. Si ca intéresse des personnes je pourrais éventuellement mettre ça sur github.

Oui, c’est vite lourd de dev une interface par Ă©metteur, surtout que ça change avec le temps (et donc nĂ©cessite du dev de maj, pas le temps de me crĂ©er un autre mĂ©tier).
Et avec Vaneck, on est vite coincé (les exports des constituants sont trÚs pauvres)

Le S&P a Ă©tabli en novembre son 66e record annuel, pour autant de records absolus, l’indice Ă©largi de Wall Street ayant dĂ©passĂ© dĂšs la fin d’annĂ©e derniĂšre son pic prĂ©-pandĂ©mique, mais n’a pourtant pas Ă©tĂ© aussi concentrĂ© depuis plus d’un demi-siĂšcle.

À eux cinq, Microsoft (2.523 milliards de dollars), Apple (2.481), Alphabet (1.978), Amazon (1.760) et Tesla (1.227) affichent une valorisation combinĂ©e de 9.993 milliards de dollars Ă  la clĂŽture de vendredi, soit 24,53% de la « market cap » totale du S&P 500 - qui compte actuellement 506 membres. Il s’agit d’un record depuis
 1969 en termes de concentration selon Jim Bianco, fondateur du cabinet d’études Bianco Research.

Sujet plus que jamais d’actualitĂ© !

1 « J'aime »

Bonjour à la communauté Finary !

Je trouve le module exposition sectorielle super. Est-il possible de savoir quelle actif est classé dans chaque catégorie?

Exemple:

  • Services financiers (Liste des actions/fonds avec leur %
)
  • Biens de consommations (non essentiels) (Liste des actifs avec leur %
)
    


Merci d’avance pour votre rĂ©ponse.

Ciao !

J’ai dĂ©placĂ© le sujet dans IdĂ©es afin qu’il puisse rĂ©colter des votes (et que tu puisses voter pour lui ;).

1 « J'aime »

Merci Mounir :slight_smile:

Petit aperçu de ce qui arrive dans la prochaine mise Ă  jour de l’appli : le dĂ©tail des allocations gĂ©ographiques & sectorielles de chacun de vos comptes (ex: PEA), et de votre patrimoine au sens large.

14 « J'aime »

Bravo @mounir pour tout ce que vous faites ! Ne changez rien de votre enthousiasme pour continuer Ă  changer les finances des particuliers !

HĂąte de voir cette amĂ©lioration et bien d’autres dans mon appli finary !

3 « J'aime »

ExtrĂȘmement fan du design : compact et super clair.

1 « J'aime »