Uniwersytet Warszawski - Centralny System Uwierzytelniania
Strona główna

C++ in Quantitative Finance I

Informacje ogólne

Kod przedmiotu: 2400-QFU2C1
Kod Erasmus / ISCED: 14.3 Kod klasyfikacyjny przedmiotu składa się z trzech do pięciu cyfr, przy czym trzy pierwsze oznaczają klasyfikację dziedziny wg. Listy kodów dziedzin obowiązującej w programie Socrates/Erasmus, czwarta (dotąd na ogół 0) – ewentualne uszczegółowienie informacji o dyscyplinie, piąta – stopień zaawansowania przedmiotu ustalony na podstawie roku studiów, dla którego przedmiot jest przeznaczony. / (0311) Ekonomia Kod ISCED - Międzynarodowa Standardowa Klasyfikacja Kształcenia (International Standard Classification of Education) została opracowana przez UNESCO.
Nazwa przedmiotu: C++ in Quantitative Finance I
Jednostka: Wydział Nauk Ekonomicznych
Grupy: Anglojęzyczna oferta zajęć WNE UW
Przedmioty obowiązkowe dla II roku Quantitative Finance
Punkty ECTS i inne: 4.00 Podstawowe informacje o zasadach przyporządkowania punktów ECTS:
  • roczny wymiar godzinowy nakładu pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się dla danego etapu studiów wynosi 1500-1800 h, co odpowiada 60 ECTS;
  • tygodniowy wymiar godzinowy nakładu pracy studenta wynosi 45 h;
  • 1 punkt ECTS odpowiada 25-30 godzinom pracy studenta potrzebnej do osiągnięcia zakładanych efektów uczenia się;
  • tygodniowy nakład pracy studenta konieczny do osiągnięcia zakładanych efektów uczenia się pozwala uzyskać 1,5 ECTS;
  • nakład pracy potrzebny do zaliczenia przedmiotu, któremu przypisano 3 ECTS, stanowi 10% semestralnego obciążenia studenta.

zobacz reguły punktacji
Język prowadzenia: angielski
Rodzaj przedmiotu:

obowiązkowe

Skrócony opis:

Kurs jest zaprojektowany jako łagodne wprowadzenie do języka C++ oraz świata programowania obiektowego dla studentów finansów ilościowych. Szczególny nacisk położono na zagadnienie wyceny instrumentów pochodnych. Wcześniejsze doświaczenie w programowaniu nie jest wymagane. Struktura kursu pozwala na naukę od samych podstaw. Omawiane są zagadnienia i elementy języka C++ istotne przed przejściem do bardziej zaawansownych aplikacji w obszarze finansów ilościowych.

Pełny opis:

1. Tworzenie prostego programu

Podstawowa składnia I struktura programu w C++. Kompilowanie kodu. Wyświetlanie tekstu w konsoli. Uruchamianie skompilowanego kodu. Zatrzymywanie programu. Spacje. Dodawanie komentarzy do kodu. Praca z IDE.

2. Proste zmienne i typy danych.

Deklarowanie zmiennych. Przypisywanie wartości zmiennym. Wypisywanie wartości zmiennych. Formatowanie liczb. Konwersja typów. Wprowadzenie do zmiennych znakowych i tekstowych. Wprowadzenie do stałych.

3. Operatory i elementy kontroli programu.

Operatory arytmetyczne. Instrukcje warunkowe if. Zastosowanie instrukcji else oraz else if. Potrójny operator warunkowy. Operatory logiczne i operatory porównania. Operatory inkrementacji i dekrementacji. Pętla while, pętla for

4. Operacje wejścia, wyjścia i praca z plikami.

Wczytywanie znaków. Ignorowanie danych wejściowych. Wczytywanie danych numerycznych. Wczytywania danych tekstowych. Wczytywanie danych różnych typów. Wczytywanie całych linii. Weryfikowanie wczytowanych danych. Tworzenie pliku wyjściowego. Wczytywanie danych z pliku wejściowego.

5. Definiowanie własnych funkcji.

Tworzenie prostych funkcji. Tworzenie funkcji z argumentami. Domyślne wartości argumentów. Tworzenie funkcji zwracających wartości. Przeciążanie funkcji. Zasięg zmiennych.

6. Złożone typy danych.

Praca z tablicami. Praca ze wskaźnikami. Struktury. Praca z funkcjami przy wykorzystaniu wskaźników.

7. Wprowadzenie do obiektów.

Tworzenie prostej klasy. Dodawanie metod do klas. Tworzenie obiektów I praca z nimi. Denifiowanie konstruktorów i destruktorów. Wskaźnik this.

8. Dziedziczenie klas

Proste dziedziczenie. Dziedziczenie kontruktorów i desktruktorów. Kontrola dostępu do elementów klas. Przesłanianie metod. Tworzenie klas przyjaciół.

9. Przestrzenie nazw i modularyzacja kodu.

Praca z plikami dołączanymi. Preprocesor C. Praca z przestrzeniami nazw. Łączenie plików.

10. Praca z szablonami dla metod i klas.

11. Prosta aplikacjia do wyceny opcji typu non-path dependent.

12. Prosta aplikacja do wyceny opcji typu path-dependent.

Literatura:

1. Ullman, Signer "C++ Programming. Visual Quickstart Guide"

2. Prata "C++ Primer Plus 6 ed."

3. Duffy "Introduction to C++ for Financial Engineers"

Efekty uczenia się:

Po zakończeniu kursu studenci będą potrafili napisać i skompilować swój własny kod C++ oraz tworzyć proste aplikacje do wyceny instrumentów pochodnych. Będą potrafili zaprojektować i wdrożyć proste symulacje Monte Carlo, służące do przybliżania wartości teoretycznych opcji typu non-path dependent oraz path dependent.

KW01, KW02, KU01, KU02

Metody i kryteria oceniania:

Egzamin przy komputerach, projekt domowy oraz aktywność podczas zajęć.

Zajęcia w cyklu "Semestr zimowy 2023/24" (zakończony)

Okres: 2023-10-01 - 2024-01-28
Wybrany podział planu:
Przejdź do planu
Typ zajęć:
Ćwiczenia, 30 godzin więcej informacji
Koordynatorzy: Paweł Sakowski
Prowadzący grup: Radost Waszkiewicz
Lista studentów: (nie masz dostępu)
Zaliczenie: Przedmiot - Egzamin
Ćwiczenia - Egzamin
Opisy przedmiotów w USOS i USOSweb są chronione prawem autorskim.
Właścicielem praw autorskich jest Uniwersytet Warszawski.
ul. Banacha 2
02-097 Warszawa
tel: +48 22 55 44 214 https://www.mimuw.edu.pl/
kontakt deklaracja dostępności USOSweb 7.0.2.0-80474ed05 (2024-03-12)