Indexanteile an AG
from agspiel.api import Api
from matplotlib import pyplot as plot
api = Api("Deine PHPSESSID")
ag = api.get_ag(140818)
aktionaersstruktur = ag.aktionaere
aktienanzahl = ag.aktienanzahl
minimum = int(aktienanzahl * 0.05)
indizes = {}
# Ermittelt die Aktien die jeder Index an AG hält
for i in aktionaersstruktur:
aktionaer = api.get_ag(i.wkn)
try:
name = aktionaer.ceo.index.name
except AttributeError:
name = "Indexlos"
try:
indizes[name] += i.stueckzahl
except KeyError:
indizes[name] = i.stueckzahl
counter = 0
to_delete = []
# Ermittelt alle Indizes kleiner als 5%
for k, v in indizes.items():
if v < minimum:
to_delete.append(k)
counter += v
# Entfernt alle zu kleinen Indizes
for i in to_delete:
del indizes[i]
labels = ["Andere"]
sizes = [counter]
for k in sorted(indizes, key=indizes.get):
labels.append(k)
sizes.append(indizes[k])
# Nun wird ein Kreisdiagramm erzeugt
fig1, ax1 = plot.subplots()
ax1.pie(sizes, labels=labels, startangle=90, autopct='%1.1f%%')
ax1.axis("equal")
plot.show()
Last updated