48
Begleiter zur Vorlesung „Finanzmathematik mit Excel“ Antje Mugler, Peter Weigand Juli 2008

BegleiterzurVorlesung „FinanzmathematikmitExcel“weigand/excel/fima.pdf · 2 Excel–Grundlagen 1.Vorbemerkungen EinTabellenkalkulationsprogrammisteinStandardprogrammausdem„Office“-Bereich

Embed Size (px)

Citation preview

Begleiter zur Vorlesung„Finanzmathematik mit Excel“

Antje Mugler, Peter Weigand

Juli 2008

Inhaltsverzeichnis

1 Vorwort 1

2 Excel – Grundlagen 3

3 Funktionen 11

4 Steuerelemente 19

5 Diagramme 25

6 Solver 31

7 Excel-Schnittstellen 39

8 Filter 41

1 Vorwort

Dieses Heft soll ein kurzer Begleiter für Excel-Einsteiger sein. Es ist für Lernende gedacht,die schnell zur Bearbeitung finanzmathematischer Aufgaben übergehen wollen, ohne dickeHandbücher lesen zu müssen.Für weitere Studien sei auf die folgende Literatur verwiesen:

• Handbücher des Rechenzentrums der Universität Hannover (über URZ zu bestellen)

• K. Renger, Finanzmathematik mit Excel, Gabler Verlag

• A. Pfeifer, Praktische Finanzmathematik, Verlag Harri Deutsch

Manches im Inhalt ist natürlich von der jeweiligen Excel-Version abhängig, die der Nutzerhat. Wir haben uns an Excel 2002 bzw. teilweise an Excel XP orientiert.Für Hinweise und Kritiken sind wir immer offen.

Chemnitz, Juli 2008Antje Mugler

Peter Weigand

2 Excel – Grundlagen

1. Vorbemerkungen

Ein Tabellenkalkulationsprogramm ist ein Standardprogramm aus dem „Office“-Bereich, mit dem Daten in Tabellenform übersichtlich dargestellt und ausgewertetwerden können. Wenn auch Datenverwaltungsprobleme häufig mit Tabellenkalkula-tionen bearbeitet werden, sollten dafür spezielle Datenbankprogramme verwendetwerden (siehe den Vergleich zwischen Datenbanksystemen und Tabellenkalkulatio-nen in Tabelle 2.1).

Eine Tabelle ist ein Schema, in dem Informationen übersichtlich in Zeilen und Spal-ten dargestellt sind. Die Zeilen und Spalten können durch Linien gegeneinander ab-gegrenzt sein, um die Struktur der Tabelle hervorzuheben. Die Kästchen, die durchdiese Linien sichtbar werden, nennt man Zellen. Typischerweise werden die Zeilenmit Zahlen und die Spalten mit Buchstaben bezeichnet. So ergibt sich eine einfacheBezeichnung der Zellen z.B. A8 für die Zelle in der Spalte A und der Zeile 8.

Eine Zelle kann einen Text, eine Zahl oder eine Formel mit Bezügen auf andereZellen enthalten. Durch Formatieren einer Zelle wird das Aussehen einer Tabellegestaltet. Mit Analyseprogrammen können die Daten analysiert und verändert, mitPräsentationsprogrammen können sie grafisch dargestellt werden.

Datenbanksystem Tabellenkalkulation

• System zur elektronischen Datenverwal-tung für große Datenmengen

• Gewährleistung der Datensicherheit

• Mehrbenutzersystem

• arbeitet mit relationalen Verknüpfungen

• Sortiervorgänge über Indizierung könnenbeschleunigt werden

• Normalisierung der Daten vermeidet un-nötige Doppelspeicherungen

• Erstellung von Reporten einfach möglich

• interaktive Eingabe und Ver-arbeitung von numerischenund alphanumerischen Datenin Tabellenform

• Analyse der Daten mit Hilfevon Formeln und Funktionen

• Graphische Darstellung mit-tels Diagrammen

• Einzelplatzsystem

Tab. 2.1: Datenbanksysteme versus Tabellenkalkulationen

4 2 Excel – Grundlagen

=⇒ Excel ist ein sehr leistungsfähiges Tabellenkalkulationsprogramm aber keineDatenbank, da u.a.

- zentral gespeicherte Daten nicht gleichzeitig von mehreren Benutzerngemeinsam bearbeitet werden können.

- es über keine Relationen und Indizes verfügt.

=⇒ Excel ist für die Bearbeitung von kleinen Datenmengen (etwa 1000 Datensät-ze) geeignet und die Möglichkeit zum Einlesen/Importieren von Daten ausDatenbanken und weiterer Bearbeitung in Excel ist gegeben. Es enthält über300 Funktionen, vielfältige Möglichkeiten der Formatierung von Zahlen undviele Analyse- und Präsentationsmöglichkeiten.

=⇒ Excel als Frontend in der Finanzwelt weit verbreitet und deshalb Quasi-Standard für vielfältige Anwendungen.

.Beachte: Excel wurde ursprünglich für den US-Markt entwickelt. Die deutscheFassung enthält deshalb noch manchmal Stolpersteine, die bei der Arbeit mitExcel zu beachten sind.

5

2. Die Einrichtung von Excel

• propietäres Programm von Microsoft (d.h. urheberrechtlich geschütztes Pro-gramm)zwar Standardprogramm, aber lizenziert – alternativ: freie Programme wiez.B. OpenCalc (Kompatibilität allerdings oft nicht gegeben somit Konvertie-rung/Speicherung in andere Formate)

• gewisse Einstellungen schon bei Installation setzen(z.B. Solver und Filtereinstellungen mitinstallieren)

• Menüs vollständig anzeigen [Extras ↪→ Anpassen ↪→ Registerkarte ’Optionen’]

• Optionen vernünftig wählen [Extras ↪→ Optionen], siehe auch Abbildung 2.1

Abb. 2.1: Options-Fenster

6 2 Excel – Grundlagen

Registerkarte Besonderheiten’Ansicht’: Anzeige von Formeln oder nicht

’Berechnung’: Automatische oder manuelle Berechnung(F9 – neu berechnen),Iterationen und Genauigkeit,Datumswerte

’Speichern’: Pfade festlegen für Speicherort für dieAutowiederherstellung

’Benutzerdef. Listen’: z.B. zum Sortieren nützlich

’Sicherheit’: Wahl der geeigneten Makrosicherheit(empfohlen ist ’mittel’)

.Beachte: Iterationen gibt die maximale Anzahl an, wie viele Zyklen Solver oderZielwertsuche bis zur Lösung ausführen.

.

Beachte: Bei den Datumswerten gibt es zwei verschiedene Systeme – zum einengilt 1.1.1900 =̂ 1 (IBM-PC) und zum anderen bei den ’1904 Datumswerten’gilt 2.1.1904 =̂ 1 (Mac-PC). Tippt man das Jahr als zweistellige Zahl ein, soversteht Excel unter ’00-29’ automatisch die Jahre 2000-2029 und unter ’30-99’die Jahre 1930-1999.

7

3. Ländereinstellungen

Ländereinstellungen werden nicht in Excel sondern mit der Systemsteuerung geän-dert (bei Regions- und Sprachoptionen) und haben Auswirkungen auf das Datums-format, das Zahlenformat, Währungsformat und Listentrennzeichen.

Beispiel:

Deutsch (Deutschland) Englisch (USA)Datumsformat 3.1.2008 1/3/2008Zahlenformat 1.2000,30 1,200.30Währung e $Listentrennzeichen ; ,

Ebenso werden die deutschen oder die englischen Funktionsbezeichnungen verwen-det.

.Beachte: Beim Programmieren in Excel immer die englischen Funktionsbezeich-nungen verwenden. (z.B. YIELD statt RENDITE)

.

Beachte: CSV-Dateien (csv – comma-separated values) über ’Datei importieren’in Excel einführen und Listentrennzeichen manuell festlegen (oder die Länder-einstellung in Englisch (USA) ändern und normal öffnen).

8 2 Excel – Grundlagen

4. Spots auf einige Excel-Elemente

Aufbau einer Excel-Datei

Eine Excel-Datei ist eine Arbeitsmappe und besteht aus einzelnen Arbeitsblät-tern (Tabellen, Diagramme, Module...). Arbeitsblätter können gelöscht, umbe-nannt, kopiert, verschoben oder durch weitere Blätter ergänzt werden; die Reihen-folge kann geändert werden. Die Tabellen bestehen wiederum aus Zellen, in die einDatensatz eingegeben werden kann.

Zellen können formatiert werden hinsichtlich

• Zahlen(-format) [z.B. Zahl, Währung, Datum, Prozent, Text usw.]

• Ausrichtung [z.B. vertikal usw.]

• Schrift [z.B. Schriftart, höher-, tiefergestellt, usw.]

• Rahmen [z.B. Umrandungen, verschiedene Linienarten usw.]

• Muster [z.B. Zellenfarbe]

• Schutz [z.B. zum Sperren oder Ausblenden von Formeln/Daten – dieses wirdaktiviert, wenn Option ’Blatt schützen’ [Extras ↪→ Schutz] gewählt wird]

In Zellen können neben Zahlen und Text auch Formeln/Funktionen eingegeben wer-den (sie beginnen immer mit "=", z.B. =SUMME(A1:A4)). Des Weiteren könnenbenutzerdefinierte Formate genutzt werden.

.

Beachte: Benutzerdefinierte Formate erlauben es in einer Formatangabe vierverschiedene Festlegungen zu treffen, d.h. Formate für negative Zahlen, positiveZahlen, die Null und normalen Text zu definieren. Diese Angaben werden jeweilsdurch Semikola getrennt. Das benutzerdefinierte Zahlenformat ";;;" ermöglichtes somit, Einträge wie z.B. Hilfsgrößen zu verbergen. Um Sonderzeichen verwen-den zu können (z.B. bei ◦C), muss bei der Formatangabe der ASCII-Zeichencodedes entsprechenden Symbols mit gedrückter ALT-Taste im Ziffernblock einge-geben werden.

-

Aufgabe: Erzeugen Sie benutzerdefinierte Formate, sodass folgende Darstellun-gen

Eingabe Darstellung1000,5 1.000,50 Tlr-1000 -1.000 Tlr

0 0,00 Tlr

Eingabe Darstellung3000000 3,00 Mio. e-2456000 -2,456 Mio. e

0 0,00 e

Eingabe Darstellung3,5 3,50 £

-2,67 -2,67 £0 0,00 £

erzielt werden, wobei die übliche Textformatierung beibehalten werden soll.

Bezüge

Bezüge adressieren Zellen oder Zellenbereiche (z.B. innerhalb von Formelnbzw. Funktionen). Durch die Bezugsart wird die Schreibweise festgelegt, wie dieZeilen und Spalten bezeichnet werden. Standardmäßig wird die A1-Bezugsart

9

verwendet. Im Menü [Extras ↪→Optionen] kann auf der Registerkarte ’Allgemein’alternativ die Z1S1-Bezugsart eingestellt werden. Bei der A1-Bezugsart werdendie Spalten mit Buchstaben (A bis IV, insgesamt 256 Spalten) bezeichnet, die Zei-len werden nummeriert (1 bis 65536). Die Bezeichnung kommt von der Schreibweise,wie der Bezug auf die „erste“ Zelle links oben angegeben ist, nämlich A1. Bei derZ1S1-Bezugsart werden sowohl die Zeilen als auch die Spalten nummeriert sind. DieBezeichnung kommt von der Schreibweise, wie der Bezug auf die „erste“ Zelle linksoben angegeben ist, nämlich Z1S1.

Man unterscheidet in relative, absolute und gemischte Bezüge.

• relativ: diese Bezüge in einer Formel sind Bezüge relativ zu der Positionder Zelle, die die Formel enthält. Wird eine Formel mit einem relativen Bezugkopiert, wird eine andere Zelle angesprochen. Die Lage dieser Zelle ist in Bezugauf die Zelle, die die Formel enthält, immer gleich z.B. zwei Spalten rechts undfünf Zeilen über der Zelle mit der Formel.

Beispiel: in der A1-Bezugsart: A1 bezieht sich auf Zelle in Zeile A Spalte 1;steht in Zelle B2 die Formel "=A1", so liefert Kopieren nach C3 die Formel"=B2", d.h. Bezüge ändern sich mit; in der Z1S1-Bezugsart: Z(5)S(2) ist dieZelle 5 Zeilen unterhalb und 2 Spalten rechts von der Zelle mit der Formel oderZS(-1) ist die Zelle in der selben Zeile eine Spalte links von der Zelle mit derFormel.

• absolut: solche Bezüge in einer Formel sind Bezüge auf eine ganz bestimmteZelle unabhängig von der Position der Zelle, die die Formel enthält. Wirdeine Formel mit einem absoluten Bezug kopiert, wird nach wie vor die selbeZelle angesprochen. Schreibweise in A1-Bezugsart: $A$1 ist die Zelle in Zeile 1Spalte A; in Z1S1-Bezugsart: Z5S2 ist die Zelle in Zeile 5 Spalte 2

• gemischt: bestehen entweder aus absoluter Spalte und relativer Zeile (Schreib-weise: $A1 bzw. ZS1 ) oder aus relativer Spalte und absoluter Zeile (Schreib-weise: A$1 bzw. Z4S(-3))

.

Vor- und Nachteile der Bezugsarten:Vorteil: Die Darstellung einer Formel ändert sich in der Z1S1-Bezugsart durchKopieren nicht.Nachteil: Man sieht in der Z1S1-Bezugsart nicht unmittelbar, welche Zellen ineiner Formel verwendet werden.

Bezüge zwischen unterschiedlichen Arbeitsblättern in gleichen Zellen bzw. Zel-lenbereichen erfolgt mittels der Angabe der entsprechenden Tabellennamen z.B."Tabelle1!A10" oder "Tabelle1:Tabelle3!B3".

Bezüge/Verknüpfungen zwischen verschiedenen Arbeitsmappen sind ebenfallsmöglich.

10 2 Excel – Grundlagen

Namen:

Zellen oder Zellbereiche können benannt werden. D.h. Namen können vergebenwerden, indem entsprechende Zelle (bzw. Zellbereich) markiert, im Eingabefeld(am linken Rand der Bearbeitungsleiste wo z.B. B5 steht) der Name eingegebenund mit der Eingabetaste bestätigt wird. Namen können auch als Bezüge in For-meln/Funktionen verwendet werden.

Werkzeuge:

• Pinsel: dient zum Übertragen des Formats

.Beachte – Beim Übertragen auf mehrere Objekte: Doppelklick auf denPinsel, Objekte nacheinander markieren und zum Abschluss wieder aufden Pinsel klicken.

• Ausfüllfunktion: zum Ausfüllen von Zellen nach einem bestimmten Prinzip

Entweder durch Markieren der Zelle und durch Ziehen des schwarzen Kreuzesüber auszufüllenden Zellenbereich (dabei verschiedene Optionen gegeben, z.B.Zellen kopieren, Datenreihe ausfüllen, nur Format ausfüllen usw.) oder überMenü ↪→ Bearbeiten ↪→ Ausfüllen.

.

Beachte – Ausfüllen über Reihe: Das Inkrement spezifiziert wie die Reihein der jeweiligen Art (linear, geometrisch, Datumswerte usw.) ausgefülltwerden soll und der Endwert gibt an, bis zu welchem maximalen Wertdie Zellen ausgefüllt werden, wenn keine Markierung des auszufüllendenZellenbereichs getroffen wurde.

Trendbestimmung (linear oder geometrisch) ist ebenso möglich [Menü ↪→Bearbeiten ↪→ Ausfüllen ↪→ Reihe].

3 Funktionen

Funktionen sind spezielle vorgefertigte Formeln, mit denen Standardberechnungen aufschnellem Wege durchgeführt werden können. Excel stellt dabei über 300 verschiedeneFunktionen zur Verfügung.

Syntax: FUNKTIONSNAME(Argument1; Argument2;. . . )

Jede Funktion besitzt einen eindeutigen Funktionsnamen (in Deutsch oder Englisch jenach Ländereinstellung und in Englisch beim Programmieren). Die benötigten Informatio-nen zur Berechnung der Funktion stehen in den Argumenten. Dabei gibt es verschiedeneArgumenttypen.

Argumenttyp ErläuterungZahlen werden als konstante Werte eingegeben – können nur manuell geän-

dert werdenZellbezüge weisen auf bestimmte Zellinhalte (z.B. Zahlen/Texte) hinFormeln können als Argumente eingesetzt werdenFunktionen Funktionsergebnisse können Argumente seinTextkonstanten werden in Anführungszeichen als konstante Werte eingegeben und

können nur manuell geändert werden (leere Zelle "")Wahrheitswerte zeigen an, ob ein Ergebnis wahr oder falsch ist

Bei einigen Funktionen gibt es optionale Argumente. Diese sind für die Berechnung nichtzwingend erforderlich und sind daran zu erkennen, dass sie in der Dialogbox des Funktions-Assistenten in normaler Stärke geschrieben sind.

.Beachte: Zwischen Funktionsname, Klammern und Argumenten dürfen keine Leer-zeichen stehen.

.Beachte: Manche Funktionen besitzen keine Argumente, trotzdem müssen die rundenKlammern geschrieben werden, z.B. HEUTE().

Funktionen können direkt eingegeben oder mit Hilfe des Funktions-Assistenten [Einfügen↪→ Funktion...], siehe Abbildung 3.1, eingefügt werden.

. Beachte: Manche Funktionsargumente werden erst nach dem Scrollen sichtbar.

Verschachtelte Funktionen kann man erstellen, indem man innerhalb des Funktions-Assis-tenten den Cursor in das Eingabefeld des Argumentes, welches eine weitere Funktionenthalten soll, setzt, links in der Bearbeitungsleiste auf den Pfeil klickt und aus dem Lis-tenfeld die entsprechende Funktion wählt bzw. auf WEITERE FUNKTIONEN klickt und

12 3 Funktionen

Abb. 3.1: Fenster für Einfügen von Funktionen

die entsprechende Funktion aussucht. Damit öffnet sich das Dialogfenster FUNKTIONS-ARGUMENTE für die verschachtelte Funktion.

.

Tipp: Die Zwischenergebnisse/Berechnungen in verschachtelten Funktionen könnenkontrolliert bzw. Schritt für Schritt nachvollzogen werden [Extras ↪→ Formelüberwa-chung ↪→ Formelauswertung].

Einige ausgewählte Funktionen

Mathematik

ABS BetragEXP ExponentialfunktionLN Natürlicher LogarithmusLOG Logarithmus zu bel. BasisLOG10 10er LogarithmusFAKULTÄT FakultätPI 3,1415926 ...SUMME Summe eines Bereichs oder einer ListePRODUKT Produkt eines Bereichs oder einer ListeQUOTIENT liefert ganzzahligen Anteil einer DivisionWURZEL QuadratwurzelZUFALLSZAHL bei jeder Neuberechnung Zufallszahl ∈ [0; 1)GANZZAHL Ganzzahliger Wert einer Zahl (Integer) [1, 8→ 1;−1, 8→ −2]

KÜRZEN Zahl ohne Nachkommastellen [1, 8→ 1;−1, 8→ −1]REST DivisionsrestRUNDEN Runden auf n Stellen vor oder nach dem KommaSIN, COS, TAN,... trigonometrische Funktionen

13

Logik

WENN Berechnung oder Ausgabe abhängig von einer Bedingung, inkl."sonst"-Verzweigung

UND, ODER liefert WAHR, falls alle bzw. eine Bedingung wahrNICHT Negation eines Wahrheitswertes

.

Beachte: Zur Formulierung einer Bedingung werden zwei Werte miteinander ver-glichen. Vergleichsoperatoren: = (gleich), <> (ungleich), < (kleiner), > (größer),<= (kleiner gleich), >= (größer gleich).

Matrix-Funktionen (u.a. unter Math. & Trigonom. oder Statistik)

+,-,*,/ elementweise OperationenMDET Determinante einer MatrixMINV Inverse einer MatrixMMULT liefert Produkt zweier MatrizenMTRANS Transponierte einer MatrixRGP gibt die Parameter eines linearen Trends zurückRKP gibt die Parameter eines exponentiellen Trends zurückSPALTEN Anzahl der Spalten einer MatrixTREND gibt Werte zurück, die sich aus einem linearen Trend ergebenZEILEN Anzahl der Zeilen einer MatrixSVERWEIS Sucht senkrecht in der ersten Spalte eines Suchbereichs, liefert

bei Übereinstimmung Wert einer Zelle in der gleichen ZeileWVERWEIS wie SVERWEIS, sucht aber waagerecht, liefert ggf. Wert aus

gleicher Spalte

.Beachte: Bei Matrix-Funktionen muss der Ausgabebereich vorher markiert werdenund die Eingabebestätigung erfolgt mit STRG+SHIFT+ENTER.

Datums-Funktionen

BRTEILJAHRE gibt Anzahl der Tage zwischen Ausgangs- und Enddatum inBruchteilen von Jahren an

HEUTE, JETZT liefert heutiges Datum bzw. Datum und UhrzeitJAHR,MONAT, TAG liefert entsprechenden Wert aus einem DatumSTUNDE, MINUTE,SEKUNDE

liefert entsprechenden Wert aus einer Uhrzeit

WOCHENTAG liefert Wochentag eines DatumsTAGE360 Differenz zweier Daten in Tagen auf Basis eines kaufmänn. 360

Tage Jahres

.

Beachte: Die BASIS (z.B. in der Funktion BRTEILJAHRE) gibt an, auf welcher Basisdie Zinstage gezählt werden:

0=̂ 30360

(US-standard), 1=̂actact

, 2=̂ act360

, 3=̂ act365

, 4=̂ 30360

(Europa).

14 3 Funktionen

Die Funktion DATEDIF(Anfangsdatum; Enddatum; Kennung) stellt eine Sonder-rolle dar, da sie vom Funktionsassistenten nicht unterstützt wird und in der Hilfe nicht zufinden ist. Sie liefert je nach Kennung die Differenz der zwei Zeitpunkte. Die Kennungen"D", "M", "Y", "YD", "YM", "MD" liefern jeweils die Differenz in Tagen, in Monaten,in Jahren, in Tagen im selben Jahr, in Monaten im selben Jahr und in Tagen im selbenMonat.

.

Beachte: Wenn ausgerechnet werden soll, wieviele Tage zwischen zwei Datumsanga-ben liegen, muss auf das Format der Ergebniszelle geachtet werden (meist muss dasFormat in Standard geändert werden).

Finanzmathematik

AUFGELZINSF Aufgelaufene (Stück-)Zinsen eines Wertpapiers, die bei Fällig-keit ausgezahlt werden

BW Barwert einer InvestitionDURATION jährliche Duration eines Wertpapiers mit periodischen Zins-

zahlungenEFFEKTIV jährliche EffektivverzinsungIKV interne Kapitalverzinsung: interner Zinsfuß einer Investition

ohne Finanzierungskosten oder ReinvestionsgewinneNBW Nettobarwert (Kapitalwert) einer Investition auf Basis eines

Abzinsungsfaktors für eine Reihe periodischer ZahlungenNOMINAL jährliche NominalverzinsungKURSFÄLLIG Kurs pro 100DM Nennwert eines Wertpapiers, bei dem Zinsen

am Fälligkeitsdatum ausgezahlt werdenRENDITE Rendite eines Wertpapiers, das periodisch Zinsen auszahltRENDITEDIS jährliche Rendite eines unverzinslichen Wertpapieres, z.B.

SchatzwechselRENDITEFÄLL jährliche Rendite eines Wertpapiers, das Zinsen am Fälligkeits-

datum auszahltRMZ Konstante Zahlungen einer Annuität pro PeriodeZINS Zinssatz einer Annuität pro PeriodeZINSTERMnVZ Datum des ersten Zinstermins nach AbrechnungsterminZINSTERMTAGE Anzahl der Tage der Zinsperiode, die den Abrechnungstermin

einschließtZINSTERMTAGNZ Anzahl der Tage vom Abrechnungstermin bis zum nächsten

ZinsterminZINSTERMTAGVA Anzahl der Tage vom Anfang des Zinstermins bis zum Abrech-

nungsterminZINSTERMVZ Datum des letzten Zinstermins vor AbrechnungsterminZINSTERMZAHL Anzahl der Zinstermine zwischen Abrechnungs- und Fällig-

keitsdatumZINSZ Zinszahlung einer Investition für bestimmte PeriodeZW zukünftiger Wert (Endwert) einer InvestitionZZR Anzahl der Zahlungsperioden einer Investition

15

. Beachte: Für die lineare Verzinsung/einfache Zinsrechnung ist keine Excel-Formelvorhanden.

.Beachte: Verwendet man die Excel-Funktionen, so sind die zu leistenden Zahlungennegativ anzusetzen.

Statistik

ANZAHL, ANZAHL2 Anzahl von Zahlen bzw. gefüllten Zellen in einem BereichACHSENABSCHNITT Schnittpunkt der RegressionsgeradenKORREL Korrelationskoeffizient zweier Reihen von Merkmalsausprä-

gungenKOVAR KovarianzMAX, MIN Maximum bzw. Minimum eines Bereichs oder einer ListeMEDIAN MedianMITTELWERT DurchschnittswertNORMINV Quantile der NormalverteilungNORMVERT Wahrscheinlichkeiten einer normalverteilten ZufallsvariablenSTABW Standardabweichung (ausgehend von einer Stichprobe)STABWN Standardabweichung (ausgehend von einer Grundgesamtheit)STEIGUNG Steigung der RegressionsgeradenVARIANZ Varianz (ausgehend von einer Stichprobe)VARIANZEN Varianz (ausgehend von einer Grundgesamtheit)VARIATION Binomialkoeffizient

Add-Ins

Beim Excel-Start steht standardmäßig nur eine Teilmenge der beschriebenen Funktionenzur Verfügung. Bei Bedarf müssen weitere Funktionen nachgeladen werden [Extras ↪→Add-Ins], wichtig hierbei sind z.B. die Analyse-Funktionen und der Solver. Weitere Paketekönnen mit Software, die über Excel-Schnittstellen verfügen, hinzukommen (z.B. Maple)oder aus dem Netz bezogen werden.

.

Beachte: Add-In-Dateien haben das Kürzel .XLA; bei Bedarf die jeweilige Datei indas entsprechende Add-In-Verzeichnis kopieren (MicrosoftOffice/Office10/Makro alsStandardverzeichnis).

Analyse-Funktionen: enthalten weitere finanzmathematische, statistischeund technische Funktionen

Analyse-Funktionen – VBA: wie oben, zur Veröffentlichung geeignetSolver: zur Lösung von Optimierungsaufgaben (siehe auch

Abschnitt 6)

.Beachte: Seit Excel-XP sind die deutschen und englischen Analyse-Funktionen nichtgleichzeitig verfügbar. Je nach Ländereinstellung werden die entsprechenden Namenverwendet.

16 3 Funktionen

Selbstdefinierte Funktionen

Es gibt auch die Möglichkeit selbstdefinierte Funktionen zu erstellen (z.B. für lineareVerzinsung). Diese werden in ein allgemeines Modul (im VBA-Editor) eingegeben [Einfü-gen ↪→ Modul] und können im Funktions-Assistenten unter der Kategorie "benutzerdefi-niert" aufgerufen werden.

Syntax: Function FUNKTIONSNAME(an Funktion übergebene Argumente)Berechnungsvorschrift(en)

End Function

Abb. 3.2: Beispiel einer benutzerdefinierten Funktion, die auf Schaltjahr testet

.Beachte: Selbstdefinierte Funktionen beginnen im Gegensatz zu Makros mit ’Functi-on‘ und optional kann der Typ der Argumente festgelegt werden.

-Aufgabe: Erstellen Sie unter Verwendung der einfachen Verzinsung je eine Funktion,die eine Annuität auf 12 Monatsraten (vor- oder nachschüssig) verteilt bzw. aus einerMonatsrate eine Annuität berechnet.

Zielwertsuche

Ist das Ergebnis einer Formel bekannt, aber der dafür benötigte Wert eines Argu-ments nicht, so kann dieser mittels der Zielwertsuche [Extras ↪→ Zielwertsuche] bestimmtwerden.

Anzeige möglicher Fehlerwerte innerhalb von Zellen

Bei der Benutzung von Formeln oder Funktionen kann es immer wieder zu Fehlerwertenkommen. Einige sind im Folgenden aufgeführt.

17

Fehlerwerte Mögliche Ursachen##### Zellinhalt kann aufgrund einer zu geringen Spaltenbreite nicht korrekt

angezeigt werden#BEZUG Zellbezüge sind nicht korrekt#DIV/0 Excel hat versucht durch 0 zu dividieren#NAME? Namen von Zellen oder Zellbereichen wurden falsch geschrieben oder

existieren nicht#NULL! Zellbezüge konnten nicht gefunden werden#NV Formel enthält möglicherweise Bezüge auf leere Zellen#WERT! Datentyp des Arguments stimmt nicht mit der erforderlichen Syntax

überein#ZAHL! Argumente liegen außerhalb der korrekten Zahlenbereiche

4 Steuerelemente

Steuerelemente sind Grafikobjekte um Daten anzuzeigen oder einzufügen, einen Vorgangauszuführen oder zu Gestaltungszwecken. Diese Objekte können aus Textfeldern, Listen-,Options-, Befehlsschaltflächen u.a. bestehen.

2 Arten von Steuerelementen:

Abb. 4.1: Symbolleiste

ActiveX-Steuerelemente:[Ansicht ↪→ Symbolleisten ↪→ Steuerelement-Toolbox]

sind für die meisten Situationen geeignet, funktionieren mitMakros, die sowohl mit VBA erstellt wurden als auch mitWebskripts, aber nicht auf Diagrammblättern und XLM-Makroblättern;die Bearbeitung erfolgt im Entwurfsmodus

Abb. 4.2: Symbolleiste

Steuerelemente der Symbolleiste Formular:[Ansicht ↪→ Symbolleisten ↪→ Formular]

sind kompatibel mit früheren Versionen und können auf XLM-Makroblättern und Diagrammblättern verwendet werden;sollen benutzt werden, wenn ein Makro direkt über ein Steu-erelement ausgeführt werden soll

20 4 Steuerelemente

.Anmerkung: In den meisten Fällen empfiehlt es sich ActiveX-Steuerelemente zu ver-wenden.

Steuerelemente – Übersicht

Steuerelemente der Symbolleiste Formular

BeschriftungText, der Informationen zu einem Steuerelement, zum Arbeitsblatt oder zum Formularliefert.

GruppenfeldFasst zusammengehörende Steuerelemente zusammen, wie z.B. Optionsfelder oder Kon-trollkästchen.

SchaltflächeFührt ein Makro aus, wenn darauf geklickt wird.

KontrollkästchenAktiviert oder deaktiviert eine Option. Es können mehrere Kontrollkästchen auf einemBlatt oder in einer Gruppe gleichzeitig aktiviert werden.

OptionsfeldWählt eine Option aus einer Gruppe von Optionen aus, die in einem Gruppenfeld ent-halten sind. Optionsfelder sollten verwendet werden, wenn nur eine von verschiedenenMöglichkeiten zugelassen werden soll.

ListenfeldZeigt eine Liste mit Elementen an.

KombinationsfeldEin Dropdown-Listenfeld. Das im Listenfeld ausgewählte Element wird im Textfeld ange-zeigt.

BildlaufleisteBlättert durch einen Wertebereich, wenn man auf die Bildlaufpfeile klickt oder wenn mandas Bildlauffeld zieht. Man kann durch eine Seite mit Werten blättern, indem man aufeine Stelle zwischen dem Bildlauffeld und einem Bildlaufpfeil klickt.

DrehfeldErhöht oder verringert einen Wert. Um den Wert zu erhöhen, klickt man auf den Auf-wärtspfeil. Um den Wert zu verringern, klickt man auf den Abwärtspfeil.

Bei einigen dieser Steuerelemente können verschiedene Eigenschaften festgelegt werden(unter Steuerelement formatieren...) oder ihnen können Makros zugewiesen werden z.B.Optionsfeldern oder Befehlsschaltflächen.

ActiveX-Steuerelemente

Sie beinhalten neben fast allen Steuerelementtypen der Formularsymbolleiste noch über120 weitere verschiedene Steuerelemente.

21

Unterscheidung

Um den Typ eines Steuerelementes zu ermitteln, muss mit der rechten Maustaste auf dasElement geklickt werden. Wird kein Kontextmenü angezeigt oder enthält dieses den Befehl’Eigenschaften’ so handelt es sich um ein ActiveX-Steuerelement. Enthält das Kontext-menü den Befehl ’Makro zuweisen’, so ist es ein Steuerelement der Formularsymbolleiste.

Anwendungsbeispiele der Steuerelemente der Symbolleiste Formular

Optionsfelder können z.B. benutzt werden um die entsprechende Usance zu wählenoder zwischen verschiedenen Verzinsungsarten (linear, geometrisch) zu unterscheiden. Dieentsprechenden Rechnungsvorschriften werden in Makros definiert und den einzelnen Op-tionsfeldern zugewiesen. Zueinandergehörende Optionsfelder können gruppiert werden,d.h. es ist erlaubt genau eine Usance und eine Verzinsungsart zu wählen.

Abb. 4.3: Beispiel gruppierter Optionsfelder

Bildlaufleisten helfen dem Benutzer des Arbeitsblattes beim Festlegen von Werten (z.B.Zinssatz). Die Steuerung erfolgt über ’Steuerelement formatieren...’ siehe Abbildung 4.4.

Abb. 4.4: Beispiel einer Bildlaufleiste

Ebenso kann mit Drehfeldern die Benutzung durch den Anwender vereinfacht werden,indem man jeweils den minimal und maximal zulässigen Wert und die Schrittweite vor-

22 4 Steuerelemente

definiert (wiederum mittels der Steuerung). Beiden Elementen können aber auch Makroszugewiesen werden.

Listenfelder können auch benutzt werden, um den Anwender zwischen verschiedenenMöglichkeiten auswählen zu lassen (z.B. Anzahl der Kupons einer Anleihe). Dabei ent-hält der Eingabebereich die in der Liste anzuzeigenden Werte und das Feld in der Zellver-knüpfung gibt die Nummer das Elementes zurück, das ausgesucht worden ist, siehe auchAbbildung 4.5. (Mit Hilfe der Funktion INDEX erhält man dann den aktuellen Wert.)Der Auswahltyp gibt an, wie Elemente gewählt werden können – bei ’Mehrfach’ oder’Erweitert’ wird die Zellverknüpfung ignoriert. Ähnlich verhält es sich mit Kombinati-onsfeldern. Alternativ können auch diesen Elementen Makros zugewiesen werden.

Abb. 4.5: Beispiel eines Listenfeldes

Befehlsschaltflächen eignen sich z.B. zum Ausführen von Makros durch den Benutzerdurch Klicken auf dieselbe, beispielsweise bei der Zielwertsuche.

23

Anwendungsbeispiele der ActiveX-Steuerelemente

Die Anwendungsbeispiele der Steuerelemente der Symbolleiste Formular können ebensomit ActiveX-Steuerelementen umgesetzt werden. Dabei erfolgt die Steuerung über denMenüpunkt ’Eigenschaften’ im Entwurfsmodus oder über den zugehörigen Makro-Code(’Code anzeigen’ im Entwurfsmodus).

Einen Kalender zur Auswahl eines Datums stellt das ’Kalender-Steuerelement 10.0’ zurVerfügung (unter ’Weitere Steuerelemente’ zu finden), siehe Abbildung 4.6.

Abb. 4.6: Beispiel eines Kalenders

Im Entwurfmodus kann das Aussehen des Kalenders verändert werden. Um das Datumin eine entsprechende Zelle auszulesen, benötigt es jedoch wiederum ein Makro. Die ein-fachste Variante ist mittels

Private Sub KALENDERNAME_Click()Range("ZELLE").Value = KALENDERNAME

End Sub

gegeben. Soll ein Kalender für verschiedene Datumsangaben verwendet werden (z.B. zumEingeben von Emissions-, Kauf- und Ablaufterminen), so bietet es sich an mehrere Be-fehlsschaltflächen der ActiveX-Toolbox mit entsprechenden Makros zu definieren.

5 Diagramme

Mit Diagrammen lassen sich Tabellendaten graphisch aufbereiten. Excel stellt für dieDiagrammgestaltung sowohl verschiedene Grund-Diagrammtypen (z.B. Säulen-, Balken-,Linien-, Kreis-, XY-Diagramme), die sich jeweils noch variieren lassen, als auch benutzer-definierte Typen zur Verfügung.

Man unterscheidet zwischen eingebetteten Diagrammen und Diagrammblättern.Erstere werden als Bestandteil des Arbeitsblattes gespeichert und als Grafikobjekt be-trachtet. Zweitere sind separate Blätter in der Arbeitsmappe mit eigenem Balttnamen.

Mittels des Diagramm-Assistenten (Abbildung 5.1) lassen sich die Einstellungen, mitdenen ein Diagramm erstellt werden soll, festlegen. Der schnelle Weg zu einem Diagrammlautet somit, Markieren des Datenbereichs, der als Diagramm dargestellt werden soll, undStart des Diagramm-Assistenten [Einfügen ↪→ Diagramm...].

Abb. 5.1: Diagramm-Assistent

26 5 Diagramme

Dabei lassen sich u.a. der Diagrammtyp, die Diagrammquelldaten, die Diagramm-gestaltung und Platzierung (d.h. als neues Blatt – Diagrammblatt – oder als Objektin einer bereits vorhandenen Tabelle) spezifizieren. Ändern sich die Daten der Tabelle(Diagrammquelldaten), so wird das entsprechende Diagramm automatisch angepasst.

Abb. 5.2: Elemente eines einfachen Diagramms

Die Beschriftung des Diagramms bzw. Gestaltung dessen kann in dem Menüpunkt’Diagrammoptionen’ erfolgen. Es lässt sich zum Beispiel die Postition der Legen-de, die Gitternetzlinien oder die Datenbeschriftung verändern oder man kann dieDatentabelle in dem Diagramm mit anzeigen lassen.

Beispiele

Das Liniendiagramm kann zum Beispiel Datentrends oder Verläufe in bestimmten Zeit-abschnitten graphisch darstellen (Aktienkurse/Zinsenwicklungen) siehe Abbildung 5.3.

Abb. 5.3: Beispiel eines Liniendiagramms

27

Das Kursdiagramm ist ein weiterer nützlicher Diagrammtyp bei der Darstellung finanz-mathematischer Sachverhalte. Beispielsweise kann man sowohl die Kursspannweite alsauch den Umsatz am jeweiligen Tag darstellen.

Abb. 5.4: Beispiel eines Kursdiagramms

.

Beachte: Beim Erstellen eines Kursdiagramms ist die Reihenfolge der Daten vorge-geben und zwar Volumen-Höchst-Tiefst-Mittelwert oder entsprechend des jeweiligenDiagrammuntertyps .

Weitere Besonderheiten

Es gibt die Möglichkeit beim Darstellen von zwei Datenreihen, die sich größenmäßig sehrunterscheiden, eine Sekundärachse einzufügen (siehe Abbildung 5.4 – Umsatz und Kursals Achsen). Dies geschieht über Markieren der entsprechenden Datenreihe im Diagramm,Klicken mit der rechten Maustaste und Aufrufen des Menüpunktes ’Datenreihen forma-tieren...’. In dem sich nun öffnenden Register können auf dem Blatt ’Achsen’ die entspre-chenden Einstellung vorgenommen werden. Soll in einem bereits vorhandenem Diagrammeine weitere Datenreihe graphisch dargestellt werden, so kann unter dem Menüpunkt’Datenquelle’ in dem Registerblatt ’Reihe’ eine neue Datenreihen hinzugefügt(oder alternativ auch entfernt) werden. Auf dem Blatt ’Datenreihenanordnung’ ließesich zum Beispiel die Reihenfolge der Dargestellten Daten wie in Abbildung 5.5 verändern.

28 5 Diagramme

Abb. 5.5: Beispiel von Säulendiagrammen mit unterschiedlicher Anordnung

Abb. 5.6: Beispiel mit verschiedenen Diagrammtypen für einzelne Datenreihen

Ebenso lassen sich für die einzelnen Datenreihen auch einzelne Diagrammtypenfestlegen, vergleich Abbildung 5.6, über den Menüpunkt ’Diagrammtyp’. Neben denFunktionen zum Berechnen von Trends (vgl. RGP) gibt es auch für Datenreihen inner-halb der Diagramme den Befehl ’Trendlinie hinzufügen...’. Dabei kann man zwischendem linearen, geometrischen, polynomialen, potenziellen oder exponentiellenRegressionstyp und dem gleitenden Durchschnitt mit variabler Periodenlänge wählen.

Abb. 5.7: Beispiel für eine lineare Regression

Mit Hilfe dieser Trendlinie können auch Vorhersagen getroffen werden, wie zum Beispielin der Abbildung 5.7 für x > 20.

29

Möchte man das erstellte Diagramm als pdf-Datei speichern um es möglicherweise inandere Dokumente einzufügen (Tex-Dokument), so kann man mit Hilfe des Diagramm-fensters (mit der rechten Maustaste auf das Diagramm klicken und den Menüpunkt ’Dia-grammfenster’ wählen) speziell für das Diagramm die Seite einrichten, es drucken oder einepdf-Datei erstellen. Als Drucker für pdf-Dateien wird auf das freie Programm FREEPDFverwiesen. Um ein Diagramm in eine Textdatei eines Textverarbeitungsprogramms (z.B.Word) einzubinden, kann das Diagramm einfach kopiert und in die entsprechende Dateieingefügt werden. Zur Bearbeitung werden gewisse Grafik-Tools abhängig vom Programmzur Verfügung gestellt.

-

Aufgabe: Gegeben sei eine 5%ige Bundesanleihe, ausgegeben am 4.1.2002, die biszum 4.1.2012 läuft. Berechnen Sie die Rendite für einen Investor, der diese Anleihebei der Emission zum Ausgabekurs von 100,57 e erworben hat, und stellen Sie zudemdie Barwerte der einzelnen Perioden graphisch dar. Die Duration soll im Diagrammangezeigt und als Nullstelle einer geeigneten Kurve ersichtlich werden. Zusätzlich sollsich der Nominalzinssatz durch ein im Diagramm integriertes, entsprechendes Steu-erelement kontinuierlich verändern lassen, sodass die Änderungen in den Barwertenund der Duration dynamisch im Diagramm ersichtlich werden.

6 Solver

Der Solver ist ein sehr brauchbares Tool, um zum einen für einen bestimmten Ziel-wert die in der Formel verwendeten Variablen anzupassen (ähnlich der Zielwertsuche- hier aber mehrere veränderbare Variablen) oder zum anderen den minimalen odermaximalen Zielwert zu ermitteln, wobei die verwendeten Variablen in Abhängigkeitvon bestehenden Nebenbedingungen angepasst werden. Es lassen sich demnach mit demSolver Optimierungsaufgaben bearbeiten.

Eine Optimierungsaufgabe ist eine Aufgabe der Art

min f(x)

s.t. hi(x) = 0 , i ∈ I1

gi(x) ≤ 0 , i ∈ I2

x ∈ D

,

wobei f die Zielfunktion, D die Grundmenge, hi(x) = 0, i ∈ I1, die Gleichungsnebenbe-dingungen und gi(x) ≤ 0, i ∈ I2, die Ungleichungsnebenbedingungen sind.(Meist ist D ⊂ Rn, f, hi, gi : Rn → R, I1, I2 endliche Mengen).

Je nach Art der vorkommenden Funktionen f, hi, gi und des Gebietes D unterscheidet mandiese Probleme in lineare oder nichtlineare Optimierungsaufgaben, wobei die nichtlinearennoch in konvexe und nichtkonvexe Optimierungsaufgaben unterteilt werden.

Die kanonische Form einer linearen Optimierungsaufgabe ist durch

max cT x

s.t. Ax ≤ bx ≥ 0

gegeben, d.h. sowohl Zielfunktion als auch die Nebenbedingungen sind linear. Alterna-tiv kann man statt zu maximieren auch minimieren, Größer-gleich- statt Kleiner-gleich-Bedingungen oder Gleichheitsbedingungen verwenden und auch Variablen ohne Nichtne-gativitätsbedingung zulassen.

Von einer ganzzahligen linearen Optimierungsaufgabe spricht man dann, wenn zu-sätzlich gefordert wird, dass die Variable x bzw. deren Komponenten ganzzahlig sind.Gemischt-ganzzahligen Probleme sind dann solche, wo beide Typen von Variablen(ganzzahlige und reelle) vorkommen.

Bei nichtlinearen Optimierungsaufgaben sind die Zielfunktion, die Nebenbedingun-gen oder sogar beide nichtlinear.

32 6 Solver

Der Solver verwendet dabei zum Lösen dieser Aufgaben im nichtlinearen Falle den Opti-mierungscode GRG2 (Generalized Reduced Gradient) und bei linearen bzw. ganzzahligenProblemen die Simplexmethode bzw. die Branch-and-Bound-Methode.

Die Elemente des Solvers sind die Zielzelle, die veränderbaren Zellen und die Ne-benbedingungen. In der Zielzelle muss eine Formel stehen, die Bezüge auf die verän-derbaren Zellen enthält. Die veränderbaren Zellen wiederum müssen Werte enthalten, diedann angepasste werden, wenn das optimale Ergebnis gefunden wurde. Für jede Zelle(Zielzelle oder veränderbare Zellen) bzw. jeden Zellbereich können Bedingungen einge-setzt werden, die die Werte dieser Zellen genauer festlegen. Nebenbedingungen lassen

Abb. 6.1: Solver Parameter festlegen

sich hinzufügen, ändern oder löschen (siehe Abbildung 6.1). Das Hinzufügen von Neben-bedingungen geschieht über das Fenster in Abbildung 6.2. Als Zellbezug muss die Zelle

Abb. 6.2: Eine Nebenbedingung festlegen

eingetragen werden, für die eine Bedingung festgelegt werden soll. Dann muss der entspre-chende Vergleichsoperator gewählt und im Feld der Nebenbedingung der Wert festgelegtwerden.

Als Vergleichsoperatoren stehen <=, >=, =, GANZZ (Ganzzahligkeit) und BIN (binäreZahl) zur Verfügung.

33

Solver-Modelle

Die Zellbezüge der veränderbaren Zellen, die Zielzelle sowie die Einstellungen der Ne-benbedingungen können als so genanntes Solver-Modell gespeichert [Extras ↪→ Solverund unter Optionen auf Modell speichern klicken, siehe auch Abbildung 6.3] und späterwiederverwendet werden. Damit lassen sich auch mehrere Solver-Modelle innerhalb einesTabellenblattes speichern. Excel benötigt jedoch zur Speicherung der Parameter leere un-tereinander liegende Zellen (die oberste ist bei der Speicherung des Modells anzugeben),deren Anzahl von der Anzahl der Bedingungen abhängt.

.Beachte: Eventuell vorhandene Inhalte in dem Zellbereich des Solver-Modells werdenohne Rückfrage überschrieben.

Um ein entsprechendes Modell zu laden [Extras ↪→ Solver und unter Optionen auf Modellladen klicken, siehe auch Abbildung 6.3] muss der dazugehörige Modellbereich angegebenwerden.

Einstellungen des Solver

Je nachdem welche Eigenschaften die vorliegende Optimierungsaufgabe hat, können fürden Solver entsprechende Einstellungen vorgenommen werden, die das Lösen des Pro-blems beschleunigen oder verbessern.

Abb. 6.3: Optionen des Solvers

34 6 Solver

Höchstzeit: diese Zeit steht Excel maximal zur Berechnung der Lösung zur Ver-fügung (Maximum ist der Wert 32767)

Iterationen: dieser Wert begrenzt die Anzahl der Zwischenberechnungen (jedochhöchstens 32767 Iterationen sind möglich)

Genauigkeit: legt die Genauigkeit des Ergebnisses fest; der Wert muss zwischen 0und 1 liegen

Toleranz: gibt die zulässige Fehlerabweichung vom optimalen Zielwert bei Ziel-wertsuche in Prozent an

Konvergenz: der Solver stoppt, wenn die relative Änderung in der Zielzelle die Zahlim Feld ’Konvergenz’ bei den letzten fünf Iterationen unterschreitet;die Konvergenz kann nur bei nichtlinearen Modellen verwendet wer-den und der Wert muss zwischen 0 und 1 liegen

Das Kontrollfeld ’Lineares Modell voraussetzen’ beschleunigt die Berechnung, wennein lineares Problem vorliegt. Bei aktiviertem Kontrollfeld ’Nichtnegativität voraus-setzen’ nutzt der Solver einen unteren Grenzwert von Null für die variablen Zellen, fürdie keine untere Grenze durch eine Nebenbedingung festgelegt wurde. Das Feld ’Auto-matische Skalierung anwenden’ sollte genutzt werden, wenn sich die Werte der verän-derbaren Zellen von den Werten der Zielzelle in ihrer Größe sehr unterscheiden. Durch dieAktivierung des Kontrollfeldes ’Iterationsergebnisse angeben’ zeigt der Solver nachjeder Iteration das jeweilige Ergebnis an.

Im Bereich ’Schätzung’ kann durch ’linear’ oder ’quadratisch’ der entsprechende Lö-sungsansatz bei der Berechnung der Schätzwerte festgelegt werden.

Linear: verwendet lineare Extrapolation, ausgehend von einem tangentialenVektor

Quadratisch: verwendet die quadratische Extrapolation, die bei extrem nichtlinearenProblemen u.U. zu verbesserten Ergebnissen führt

Über die Optionsfelder ’vorwärts’ oder ’zentral’ unter ’Differenz’ wird die Art der Dif-ferenzierung, die bei der Schätzung von Ziel- und Nebenbedingungsfunktionen genutztwird, bestimmt.

Vorwärts: wird bei den meisten Problemen verwendet, bei denen sich die Werteder Nebenbedingung relativ langsam ändern

Zentral: wird bei Problemen verwendet, bei denen sich die Nebenbedingungenvor allem in Grenzwertnähe schnell ändern; erweist sich als hilfreich,wenn der Solver die Meldung ausgibt, dass die Lösung nicht verbessertwerden konnte

Der Bereich ’Suchen’ gibt den Algorithmus an, um die Suchrichtung festzulegen.

Newton: verwendet ein Quasi-Newton-VerfahrenGradient: verwendet das konjugierte Gradientenverfahren

.

Beachte: Das Gradientenverfahren mit konjugierten Richtungen benötigt weniger Ar-beitsspeicher als das Newton-Verfahren aber i.A. mehr Iterationen, um einen gewissenGenauigkeitsgrad zu erreichen.

35

.

Beachte: Der Startwert, der für beide Algorithmen Ausgangspunkt ist, ist durchdie Werte in den veränderbaren Zellen gegeben. Die Wahl anderer Startwerte kannhilfreich sein, um andere lokale Optima ausfindig zu machen, und Werte nahe demOptimum können die Lösungszeit reduzieren. Bei linearen Modellen haben die An-fangswerte in den veränderbaren Zellen keinen Einfluss auf die Endwerte oder dieLösungszeit.

Im Dialogfeld "Ergebnis" (siehe Abbildung 6.4) erscheint eine Meldung über eine erfolg-reiche Lösungsfindung (oder nicht) sowie die Ergebnisse, die der gewünschten Lösung amnächsten kommen.

.

Beachte: Die gefundene Lösung muss nicht das globale Minimum oder Maximumsein. Je nach Charakteristik der Optimierungsaufgabe und des Startwertes finden dieAlgorithmen lokale oder globale Extrema.

Abb. 6.4: Solver Parameter festlegen

Solver-Berichte

Es können verschiedene Berichte erstellt werden, in denen zusätzliche Informationengegeben werden. Sie lassen sich vor der Übernahme der Solver-Lösung oder nachträglichanfertigen.

Es gibt den Antwort-Bericht, in dem die Ausgangs- bzw. Lösungswerte der Zielzelleund der veränderbaren Zellen zusammen mit den Nebenbedingungen aufgelistet werden.

Der Sensitivitäts-Bericht zeigt, wie sensibel das Solver-Modell bei geringfügigen Än-derungen der Formel in der Zielzelle bzw. der Nebenbedigungen reagieren kann. DieseBerichtsform steht bei ganzzahligen Nebenbedingungen nicht zur Verfügung. Bei nichtli-nearen Modellen werden Werte für reduzierte Gradienten und Lagrange-Multi-plikatoren ausgegeben. Bei linearen Modellen umfasst der Bericht reduzierte Kos-ten, Schattenpreise, den Zielkoeffizienten (mit zulässiger Zu- und Abnahme)und Nebenbedingungen für rechts angeordnete Bereiche.

Bei dem Grenzwert-Bericht werden alle oberen und unteren Grenzwerte der verän-derbaren Zellen und der Zielzelle, während die Werte aller anderen veränderbaren Zellenbeibehalten und die Nebenbedingungen erfüllt werden, angegeben. Auch diese Berichts-form steht nur zur Verfügung, wenn keine ganzzahligen Nebenbedingungen vorkommen.

36 6 Solver

Ein Beispiel für die Anwendung des Solvers in der Finanzmathematik:

Berechnung von Spot Rates mittels linearer Optimierung

Es sind die folgenden Anleihen A1, . . . , A5 am Markt erhältlich

Anleihe Laufzeit in Perioden Kurs der Anleihe Z1 Z2 Z3

A1 1 100,00 105 – –A2 2 98,00 4 104 –A3 2 95,50 3 103 –A4 3 101,00 5 5 105A5 3 102,10 6 6 106

wobei Zi die jeweiligen Auszahlungen der entsprechenden Anleihe in Periode i (i = 1, 2, 3)bezeichnet.

Für die Ermittlung der Spot Rates wird ein optimales Portfolio gesucht, sodass ein vor-gegebener Cashflow mit minimalen Kosten mindestens realisiert wird. Da die Wahl desCashflows (z.B. in jeder Periode eine Auszahlung von 100) subjektiv ist, sind die ermit-telten Spot Rates ebenfalls subjektiv.Es ist also die Optimierungsaufgabe (primale Aufgabe)

min cT x

s.t. Ax ≥ bx ≥ 0

mit

A :=

105 4 3 5 60 104 103 5 60 0 0 105 106

, b :=

100100100

und c :=

100, 0098, 0095, 50

101, 00102, 10

zu lösen. Die dazu duale Aufgabe lautet dann:

max bT y

s.t. AT y ≤ cy ≥ 0

Berechnet man mit Hilfe des Solvers die Lösung der primalen Aufgabe, so liefern die Schat-tenpreise im Sensitivitätsbericht die Lösungen der dualen. Die Schattenpreise entsprechendabei den laufzeitabhängigen Diskontfaktoren, mit denen man die gesuchten Spot Ratesberechnen kann. In dem Sensitivitätsbericht ist auch angegeben, inwiefern man die Ziel-koeffizienten oder Nebenbedingungen verändern kann (jeweils unter der Annahme alleanderen unverändert zu lassen) ohne eine andere Optimallösung zu erhalten.

37

Weitere Beispiele:

Nichtlineare Optimierungsaufgabe

Ein Beispiel einer nichtlinearen Optimierungsaufgabe und deren Lösung mittels des Sol-vers soll im Folgenden betrachtet werden.

min x2 + y2

s.t. 14x2 + (y − 0, 5)2 = 1

x, y frei

Diese Aufgabe besitzt ein lokales Minimum bei (x0, y0) = (0, 1.5) und ein globales Mini-mum bei (x1, y2) = (0,−0.5). Je nachdem wie der Startwert gewählt wird (z.B. (xs, ys) =(0, 1) liefert (x0, y0) und (xs, ys) = (0, 0) liefert (x1, y1)), findet der Solver ein Minimum,das aber u.U. nicht das globale Minimum ist.

Solver zum Lösen von linearen Gleichungssystemen

Da in Excel keine vordefinierte Funktion oder Routine zum Lösen linearer Gleichungssys-teme vorhanden ist, kann der Solver dafür umfunktioniert werden.

Sei A eine reguläre, reelle, n× n-Matrix und b ∈ Rn ein Vektor. Gesucht ist ein x ∈ Rn,sodass

Ax = b

erfüllt ist. Eine dazu entsprechende Optimierungsaufgabe könnte wie folgt lauten

min eT x

s.t. Ax = bx frei

wobei e := [1, . . . , 1]T ∈ Rn. Die Zielfunktion ist dabei beliebig austauschbar, da dieNebenbedingung nur für genau ein x erfüllt ist.

7 Excel-Schnittstellen

(a) Import und Export von und nach verschiedenen Formaten (txt, csv, html, xml);

Dateiimport aus Internetseiten

Import:

Bei txt-Formaten öffnet sich automatisch beim Aufrufen einer solchen Datei der Text-konvertierungs-Assistent. Dabei werden in drei Schritten der Datentyp der Quellda-tei, die Spaltentrennzeichen und die Datenformate der Spalten bestimmt.

Beim Aufruf von Dateien im csv-Format öffnet sich der Textkonvertierungs-Assistentnicht automatisch und im Regelfall wird die Datei nicht korrekt angezeigt. Man kann je-doch über ’Daten’ ↪→ ’Externe Daten importieren’ ↪→ ’Daten importieren’ diese Datei mitHilfe des Textkonvertierungs-Assistenten öffnen und sich die Datei somit korrekt anzeigenlassen.

DurchWebabfragen [Daten ↪→ Externe Daten importieren ↪→ Neue Webabfrage] könnenTabellen aus dem Internet in Excel eingelesen werden.

Export:

Die Formate txt oder csv können beim Speichern eingestellt werden.

Es ist aber auch möglich eine Arbeitsmappe als Webseite (html-Format) zu spei-chern [Datei ↪→ Als Webseite speichern]. Dabei gibt es zwei Möglichkeiten. Entwederkann man die gewünschte Seite als interaktive Webseite, damit andere Benutzer in ei-nem Browser mit den Daten arbeiten können, oder als statische Webseite, um anderenBenutzer lediglich das Anzeigen der Daten in einem Browser zu ermöglichen, speichern.

(b) MS-Office

Daten von Access verwenden:Von Excel aus kann auf eine Tabelle einer Access-Datenbank zugegriffen und diedarin enthaltenen Daten in ein Excel-Tabellenblatt importiert werden. Es wird dabeikeine Verknüpfung mit der Quelldatenbank erstellt.

Einfügen in eine neue Arbeitsmappe erfolgt durch Aufrufen des Menüpunktes ’Datei’ ↪→’Öffnen’, Suchen der entsprechenden Datenbank und Betätigen der Schaltfläche ’Öffnen’.Daraufhin wird das Dialogfenster ’Tabelle auswählen’ aufgemacht und man kann die ge-wünschte Tabelle markieren.Sollen die Daten in ein bestehendes oder neues Tabellenblatt eingefügt werden, so wirddies über ’Daten’ ↪→ ’Externe Daten importieren’ ↪→ ’Daten importieren’ realisiert. In demDialogfenster ’Daten importieren’ kann der Einfügebereich der Daten festgelegt werden.

40 7 Excel-Schnittstellen

Daten von Word verwenden:siehe Punkt (a)

Soll eine Verknüpfung mit Daten aus einer externen Datenbank hergestellt werden, somuss eine Microsoft-Query-Abfrage erstellt werden [Daten ↪→ Externe Daten importieren↪→ Neue Abfrage erstellen].

(c) Spezielle Schnittstellen

Maple:Um innerhalb von Excel auf Maple zugreifen zu können, muss das Add-In ’Maple ExcelAdd-in’ aktiviert werden (WMIMPLEX.XLA zugehörige Datei). Ein Aufruf erfolgt dannmittels der Syntax

=Maple("MAPLEBEFEHL(Argument_1,. . . , Argument_N);";Zelle_1;. . . ;Zelle_M).

Dabei fungieren in den Ausdrücken Argument_1,. . . ,Argument_N die Symbole

&1, . . . , &M

als Verweise auf die jeweilige Zelle, Zelle_1,. . . , Zelle_M.

Matlab und Mathematica:Zusätzliche Software (Link-Pakete) ermöglichen eine Benutzung dieser Programme in Ex-cel.

8 Filter

In Excel besteht die Möglichkeit Daten zu filtern, das heißt ein zusammenhängender Da-tenbereich wird nach Datensätzen, die bestimmten Bedingungen (Suchkriterien) genügen,durchsucht und die entsprechenden Datensätze werden eingeblendet. Excel stellt dafürden AutoFilter und den Spezialfilter zur Verfügung.

AutoFilter

Um den AutoFilter verwenden zu können, muss er aktiviert werden. Dazu wird einebeliebige Zelle des zu filternden Bereiches markiert und die Filterfunktion eingeschaltet[Daten ↪→ Filter ↪→ AutoFilter].

.Beachte: Über den Menüpunkt ’Daten ↪→ Filter ↪→ AutoFilter’ kann der AutoFilterwieder ausgeschaltet werden.

Die Zellen der ersten Zeile des entsprechenden Datenbereichs werden automatisch zuListenfeldern, in denen die Kriterien gewählt werden können, nach denen gefiltert werdensoll. Deshalb sollten unbedingt Spaltenüberschriften gesetzt werden, da sonst der ersteDatensatz „verloren geht“.

Abb. 8.1: Beispiel eines Datenbereichs mit aktivierten AutoFilter(Telefonliste der Mathefakultät Stand: Juni 2008)

Abb. 8.2: AutoFilter

Der AutoFilter (vgl. Abbildung 8.2) bietet verschiedene Möglichkeiten um Suchkriterienfestzulegen. Es kann ein Zellinhalt der jeweiligen Spalte als Kriterium gewählt werden,bei numerischen Spalten können mit dem ’Top 10’-Filter (’Top 10...’) die 10 höchstenbzw. niedrigsten Datensätze eingeblendet werden und es können benutzerdefinierte

42 8 Filter

(’Benutzerdefiniert...’) Kriterien genutzt werden, wobei bis zu zwei Suchkriterien gewähltwerden dürfen, die mit UND/ODER-Bedingungen bzw. mit den Vergleichsoperatoren <,>, <=, >=, =, <> spezifiziert werden.

Befinden sich in der zu filternden Spalte leere Zellen, so enthält der entsprechende Au-toFilter die zusätzlichen Suchkriterien (’Leere’) und (’Nichtleere’). Soll keine Filterungstattfinden bzw. bisherige Filtervorgänge rückgängig gemacht werden, so wählt man dasKriterium (’Alle’).

Excel blendet automatisch alle Datensätze aus, deren Inhalt nicht mit den Suchkriterienübereinstimmen. In der Statusleiste wird zusätzlich angezeigt, wie viele Datensätze denFilterkriterien entsprechen.

Spezialfilter

Bei dem Spezialfilter lassen sich in einem gesonderten Bereich (vergleichende oderberechnete) Suchkriterien definieren, mit denen die Daten gefiltert werden. Das Filter-ergebnis kann sowohl in der Originaltabelle (wie beim AutoFilter) als auch in einemseparaten Zielbereich ausgegeben werden. Wählt man die zweite Variante, so sollteman darauf achten, dass im Zielbereich keine Daten vorhanden sind, da diese sonst beimFiltervorgang ohne Rückfrage überschrieben werden. Bevor man den Spezialfilter aufrufenkann [Daten ↪→ Filter ↪→ Spezialfilter], muss man die Suchkriterien in einem gesondertenBereich des Tabellenblattes (oder auch auf neuem Tabellenblatt) spezifizieren.

.Tipp: Es empfiehlt sich den Kriterienbereich oberhalb der zu filternden Tabelle ein-zufügen, sodass sichergestellt ist, dass dieser nach dem Filtervorgang noch sichtbarist.

Dieser (Kriterien-)Bereich muss aus mindestens zwei Zeilen und einer Spalte beste-hen, wobei in der oberen Zeile die Spaltenüberschriften der Spalten der zu filterndenTabelle stehen und die darunterliegenden Zeilen die entsprechenden Suchkriteri-en enthalten. Dabei dürfen auch Spaltenüberschriften mehrmals vorkommen.

.Beachte: Um alle Probleme zu vermeiden, sollte man die Spaltenüberschriften imKriterienbereich nicht selbst schreiben sondern immer von der Tabelle kopieren.

Wenn man das Filterergebnis in der Originaltabelle ausgibt, kann man mit dem Menü-punkt [Daten ↪→ Filter ↪→ Alle anzeigen] wieder alle Datensätze anzeigen lassen.

Spezielle Suchkriterien

(a) vergleichende Suchkriterien: mittels der Operatoren <,>,<=,>=,=,<>

Dabei ist zu beachten, dass wenn eine exakte Zeichenfolge, z.B. Text, gesucht wird,die Formel ="=Text" eingegeben werden muss. Wird nach leeren Zellen in einer be-stimmten Spalte gesucht, so muss man ein Gleichheitszeichen eingeben, zum Filternnach nichtleeren Zellen ein ="".

(b) Platzhalter: mittels ? und *

Dabei steht das Symbol ? für ein Zeichen und * für beliebig viele Zeichen.

43

(c) Suchkriterien mit Bedingungen verknüpfen:

Mehrere Kriterien können durch UND- oder ODER-Verknüpfungen miteinander ver-bunden werden. Dabei sind alle Kriterien innerhalb einer Zeile mit UND undKriterien in verschiedenen Zeilen mit ODER verknüpft.

(d) berechnete Suchkriterien:

Dies ist das Ergebnis einer Formel und kommt nicht im zu filternden Datenbereichvor. Deshalb darf im Kriterienbereich die obere Zeile des jeweiligen Kriteriums nichtmit einer Spaltenüberschrift der Tabelle versehen sein. In der Formel könnendie entsprechenden Spaltenüberschriften eingetragen werden oder aber relativeBezüge auf die Zellen des ersten Datensatzes verwendet werden.

.

Beachte: Werden in der Formel die Spaltenüberschriften benutzt, so erscheint einFehlerwert. Dieser hat jedoch keinen Einfluss auf die Funktion des Spezialfiltersund kann daher ignoriert werden.

Abb. 8.3: Beispiel eines Kriterienbereichs Abb. 8.4: Dazugehöriges Filterergebnis

-

Aufgabe: Erstellen Sie eine Liste bestehend aus 40 gleichverteilten Zufallszahlen aufdem Intervall [0, 1] (Funktion ZUFALLSZAHL()) und filtern Sie diese Liste nach

• den 3 größten Werten

• den Zahlen, die größer oder gleich 0,85 oder kleiner oder gleich 0,15 sind

• den Zufallszahlen, die kleiner als der Mittelwert sind.

Erstellen Sie eine zweite Liste, die ebenfalls 40 gleichverteilten Zufallszahlen auf [0, 1]enthält und filtern Sie nach denjenigen Einträgen, deren Summe größer als 0,75 ist.

-

Aufgabe: Erzeugen Sie benutzerdefinierte Formate, sodass folgende Darstellungen

Eingabe Darstellung1000,5 1.000,50 Tlr-1000 -1.000 Tlr

0 0,00 Tlr

Eingabe Darstellung3000000 3,00 Mio. e-2456000 -2,456 Mio. e

0 0,00 e

Eingabe Darstellung3,5 3,50 £

-2,67 -2,67 £0 0,00 £

erzielt werden, wobei die übliche Textformatierung beibehalten werden soll.

-Aufgabe: Erstellen Sie unter Verwendung der einfachen Verzinsung je eine Funktion,die eine Annuität auf 12 Monatsraten (vor- oder nachschüssig) verteilt bzw. aus einerMonatsrate eine Annuität berechnet.

-

Aufgabe: Gegeben sei eine 5%ige Bundesanleihe, ausgegeben am 4.1.2002, die biszum 4.1.2012 läuft. Berechnen Sie die Rendite für einen Investor, der diese Anleihebei der Emission zum Ausgabekurs von 100,57 e erworben hat, und stellen Sie zudemdie Barwerte der einzelnen Perioden graphisch dar. Die Duration soll im Diagrammangezeigt und als Nullstelle einer geeigneten Kurve ersichtlich werden. Zusätzlich sollsich der Nominalzinssatz durch ein im Diagramm integriertes, entsprechendes Steu-erelement kontinuierlich verändern lassen, sodass die Änderungen in den Barwertenund der Duration dynamisch im Diagramm ersichtlich werden.

-

Aufgabe: Erstellen Sie eine Liste bestehend aus 40 gleichverteilten Zufallszahlen aufdem Intervall [0, 1] (Funktion ZUFALLSZAHL()) und filtern Sie diese Liste nach

• den 3 größten Werten

• den Zahlen, die größer oder gleich 0,85 oder kleiner oder gleich 0,15 sind

• den Zufallszahlen, die kleiner als der Mittelwert sind.

Erstellen Sie eine zweite Liste, die ebenfalls 40 gleichverteilten Zufallszahlen auf [0, 1]enthält und filtern Sie nach denjenigen Einträgen, deren Summe größer als 0,75 ist.