°ÄÃÅÁùºÏ²Ê¿ª½±¼Ç¼

Internal

ICM142 - Programming for Finance

°ÄÃÅÁùºÏ²Ê¿ª½±¼Ç¼

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: 2022/3

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Ìý

  • Reading 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.Ìý


Contact hours:
Ìý 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

Summative Assessment Methods:
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: 29 March 2022

THE INFORMATION CONTAINED IN THIS MODULE DESCRIPTION DOES NOT FORM ANY PART OF A STUDENT'S CONTRACT.

Things to do now