| Course Unit Code | 154-0571/02 |
|---|
| Number of ECTS Credits Allocated | 5 ECTS credits |
|---|
| Type of Course Unit * | Choice-compulsory |
|---|
| Level of Course Unit * | Second Cycle |
|---|
| Year of Study * | |
|---|
| Semester when the Course Unit is delivered | Winter Semester |
|---|
| Mode of Delivery | Face-to-face |
|---|
| Language of Instruction | English |
|---|
| Prerequisites and Co-Requisites | Course succeeds to compulsory courses of previous semester |
|---|
| Name of Lecturer(s) | Personal ID | Name |
|---|
| KRE330 | doc. Ing. Aleš Kresta, Ph.D. |
| Summary |
|---|
The course is aimed at expanding students' ability to formulate, solve and subsequently interpret practical problems in the field of quantitative finance with the support of the Python programming language. Attention is paid especially to practical applications of individual models and approaches, in which students are expected to have at least basic theoretical knowledge and orientation.
Students of the course will learn how to code in Python. They will be familiar with conditional statements, functions, loops, basic data types and structures. They will understand the principles of working with libraries, packages and classes. They will be able to work with scientific packages such as NumPy and Pandas.
Graduates of the course will have the following skills and competencies. In Python, they will be able to calculate risk and return of individual securities and portfolios, calculate investment portfolios, back-test investment portfolio strategies, create and back-test algorithmic trading strategies, perform Monte Carlo simulations, price options and calculate the Greeks and implied volatility.
Graduates will independently and critically evaluate financial data and the results of quantitative analyses, assess the appropriateness and limitations of the methods used, and justify investment and trading decisions based on the results obtained. They will be able to independently address complex financial problems using Python, interpret model results, and respond to new situations and changing conditions in financial markets. |
| Learning Outcomes of the Course Unit |
|---|
Students of the course will learn how to code in Python. They will be familiar with conditional statements, functions, loops, basic data types and structures. They will understand the principles of working with libraries, packages and classes. They will be able to work with scientific packages such as NumPy and Pandas.
Graduates of the course will have the following skills and competencies. In Python, they will be able to calculate risk and return of individual securities and portfolios, calculate investment portfolios, back-test investment portfolio strategies, create and back-test algorithmic trading strategies, perform Monte Carlo simulations, price options and calculate the Greeks and implied volatility.
Graduates will independently and critically evaluate financial data and the results of quantitative analyses, assess the appropriateness and limitations of the methods used, and justify investment and trading decisions based on the results obtained. They will be able to independently address complex financial problems using Python, interpret model results, and respond to new situations and changing conditions in financial markets. |
| Course Contents |
|---|
1. Introduction to Python: core concepts and syntax, basic data types and working with variables, control structures
2. Structured data types (data structures), shorthand syntax for optimized use of control structures
3. Basic principles of software project organization, use within Python program: functions and classes, scope and visibility of variables, working with libraries and packages
4. Libraries NumPy and Pandas: uses, examples
5. Input/Output Operations
6. Handling of financial time series in Python, calculation of basic statistics and visualization
7. Stochastics: random numbers generation, simulation of stochastic processes
8. Portfolio optimization problem, portfolio performance measures, back-testing of portfolio investment strategies
9. Technical analysis and algorithmic trading, back-testing of trading strategies
10. Risk management: risk measures, risk estimation and its back-testing
11. Valuation of derivatives, calculation of Greeks and implied volatility
12. Machine learning in quantitative finance: basic methods, prediction of financial variables and their applications in Python
13. Project defense |
| Recommended or Required Reading |
|---|
| Required Reading: |
|---|
HILPISCH, Yves J. Financial theory with Python: a gentle introduction. Sebastopol, CA: O'Reilly, 2022. ISBN 978-1-098-10435-1.
KELLIHER, Chris. Quantitative finance with Python: a practical guide to investment management, trading and financial engineering. Boca Raton, FL: Chapman & Hall/CRC, 2022. ISBN 978-1-032-01443-2.
KRESTA, Aleš. Applied quantitative finance in Python: selected theories and examples. Ostrava: VSB - Technical University of Ostrava, 2024. ISBN 978-80-248-4748-1.
LEWINSON, Eryk. Python for finance cookbook: over 80 powerful recipes for effective financial data analysis. Second edition. Birmingham, UK: Packt Publishing, 2022. ISBN 978-1-80324-319-1. |
HILPISCH, Yves J. Financial theory with Python: a gentle introduction. Sebastopol, CA: O'Reilly, 2022. ISBN 978-1-098-10435-1.
KELLIHER, Chris. Quantitative finance with Python: a practical guide to investment management, trading and financial engineering. Boca Raton, FL: Chapman & Hall/CRC, 2022. ISBN 978-1-032-01443-2.
KRESTA, Aleš. Applied quantitative finance in Python: selected theories and examples. Ostrava: VSB - Technical University of Ostrava, 2024. ISBN 978-80-248-4748-1.
LEWINSON, Eryk. Python for finance cookbook: over 80 powerful recipes for effective financial data analysis. Second edition. Birmingham, UK: Packt Publishing, 2022. ISBN 978-1-80324-319-1. |
| Recommended Reading: |
|---|
BRUGIÈRE, Pierre. Quantitative portfolio management: with applications in Python. Cham, Switzerland: Springer, 2020. ISBN 978-3-030-37739-7.
HILPISCH, Yves J. Python for algorithmic trading: from idea to cloud deployment. Sebastopol, CA: O'Reilly, 2020. ISBN 978-1-492-05335-4.
LIU, Peng. Quantitative trading strategies using Python: technical analysis, statistical testing, and machine learning. Berkeley, CA: Apress, 2023. ISBN 978-1-4842-9674-5.
UNPINGCO, José. Python programming for data analysis. Cham, Switzerland: Springer, 2021. ISBN 978-3-030-68951-3. |
BRUGIÈRE, Pierre. Quantitative portfolio management: with applications in Python. Cham, Switzerland: Springer, 2020. ISBN 978-3-030-37739-7.
HILPISCH, Yves J. Python for algorithmic trading: from idea to cloud deployment. Sebastopol, CA: O'Reilly, 2020. ISBN 978-1-492-05335-4.
LIU, Peng. Quantitative trading strategies using Python: technical analysis, statistical testing, and machine learning. Berkeley, CA: Apress, 2023. ISBN 978-1-4842-9674-5.
UNPINGCO, José. Python programming for data analysis. Cham, Switzerland: Springer, 2021. ISBN 978-3-030-68951-3. |
| Planned learning activities and teaching methods |
|---|
| Tutorials, Project work |
| Assesment methods and criteria |
|---|
| Tasks are not Defined |