ºÚ¹Ï³ÔÁÏÍø
ICM142-Programming for Finance
Module Provider: ICMA Centre
Number of credits: 10 [5 ECTS credits]
Level:7
Terms in which taught: Spring term module
Pre-requisites:
Non-modular pre-requisites:
Co-requisites:
Modules excluded:
Current from: 2021/2
Module Convenor: Dr Vu Tran
Email: v.tran@icmacentre.ac.uk
Type of module:
Summary module description:
The module objective is to introduce the students to Object Oriented Programming using Python as the programming language, and to use the learning outcomes for data processing and applications in finance. It deals with how to write programming code whilst using conditional statements and loops, process data from files, receive input and display relevant output. Students who complete this course will be able to write programming functions in Python, process data files including reading, modifying and writing data to external files. Specifically, students will be able to read and write to Excel, CSV and Text files, connect to databases, obtain and process data from the Web, as well as use Python for Finance and Econometrics applications including developing event-based trading strategies and backtesting & optimising with historical data.Ìý
Aims:
- Learning fundamentals of Objec Oriented ProgrammingÌý
- Fundamentals of PythonÌý
- Learning about Python Packages and IDE softwareÌý
- Representing and working with data: tuples, lists, dictionaries and sets
- Designing functions and organising larger programs into functionsÌý
- Array Operations, Random Numbers
- Plotting, Data Visualisation via MatplotlibÌý
- Utilising Pandas and Statsmodels libraries for financial time series analysisÌý
Assessable learning outcomes:
By the end of the module, it is expected that students will be able to:ÌýÌý
- Write programming code in PythonÌý
- Programmatically process filesÌýÌý
- Receive input and produce outputÌýÌý
- Programmatically read from and write to Excel and CSV filesÌýÌý
- Connect to databasesÌýÌý
- Get and process data from the Web using PythonÌýÌý
- Use Python for Quantitative, Finance and Econometrics applicationsÌýÌý
- Use Python to implement event driven trading strategies and backtesting these using historical dataÌý
Additional outcomes:
The module also aims to enable students to apply what they learn in classroom by using programming tools to conduct a quantitative project in Finance, which makes use of financial data and programming techniques to read, analyse and use different variable and signals to develop an event driven trading strategy which can be back tested with historical data before implementation.
Outline content:
- Introduction to Programming with PythonÌý
- Conditional Statements, Loops and writing functions in PythonÌý
- ºÚ¹Ï³ÔÁÏÍø from and writing to files: Python and Excel/CSV filesÌý
- Python and databases including connections to the WebÌý
- Python and Finance/EconometricsÌý
- Python and TradingÌý
Global context:
Python is now one of the most common introductory programming languages taught at universities across the world specifically for future development of programming Financial & FinTech applications worldwide.Ìý
Brief description of teaching and learning methods:
Lectures will combine a theoretical framework and practical programming applications. Students will be able to directly apply what is being taught, as well as conduct quantitative assignments. There will be six 2-hour lectures and six 1-hour seminars.Ìý
Ìý | Autumn | Spring | Summer |
Lectures | 12 | ||
Seminars | 6 | ||
Guided independent study: | Ìý | Ìý | Ìý |
Ìý Ìý Wider reading (independent) | 25 | ||
Ìý Ìý Wider reading (directed) | 10 | ||
Ìý Ìý Completion of formative assessment tasks | 47 | ||
Ìý | Ìý | Ìý | Ìý |
Total hours by term | 0 | 100 | 0 |
Ìý | Ìý | Ìý | Ìý |
Total hours for module | 100 |
Method | Percentage |
Project output other than dissertation | 70 |
Class test administered by School | 30 |
Summative assessment- Examinations:
Summative assessment- Coursework and in-class tests:
Individual project – 70% of total final markÌý
The individual project makes use of financial data and programming techniques to read, analyse and use different variables and signals to develop an event driven trading strategy which can be back tested with historical data before implementation.Ìý
Assessment due: Week 35 & Week 39 on BlackBoardÌý
- In-class test – 30% of total final markÌý
- In class multiple choice test in Week 29Ìý
Formative assessment methods:
Seminar questions are assigned for each class. The seminar leader will facilitate discussion and offer feedback.Ìý
Penalties for late submission:
Penalties for late submission on this module are in accordance with the University policy. Please refer to page 5 of the Postgraduate Guide to Assessment for further information: http://www.reading.ac.uk/internal/exams/student/exa-guidePG.aspxÌý
Assessment requirements for a pass:
50% weighted average markÌý
Reassessment arrangements:
Re-submission of an individual project in August / SeptemberÌý
Additional Costs (specified where applicable):
1) Required text booksÌý 2) Specialist equipment or materials: 3) Specialist clothing, footwear or headgear: 4) Printing and binding: 5) Computers and devices with a particular specification: 6) Travel, accommodation and subsistence
Last updated: 8 April 2021
THE INFORMATION CONTAINED IN THIS MODULE DESCRIPTION DOES NOT FORM ANY PART OF A STUDENT'S CONTRACT.