인프런 영문 브랜드 로고
인프런 영문 브랜드 로고
Career

/

Finance

Python Algorithmic Trading Part 1: Python Data Analysis for Algorithmic Trading

You can systematically learn the statistical approach to S&P 500 pair trading with Python. Establish the foundation of an investment strategy that excludes emotions through professional data analysis.

(5.0) 20 reviews

134 students

Python
oop
Quant
Pandas
Machine Learning(ML)
Thumbnail

This course is prepared for Basic Learners.

What you will learn!

  • Financial data statistical analysis

  • Interactive Visualization with Plotly

  • Python Object-Oriented Programming

  • Pandas Time Series Analysis

  • Accelerate analysis with data parallel processing

  • Python package management using Anaconda

Conquer the stock market with a statistical approach!
A strategic investment journey starting with object-oriented Python and Pandas

Notes before taking the class 📢

IMPORTANT NOTICE :

This course is designed to educate algorithmic trading and coding automation from a developer's perspective . The course content focuses on developing investment strategies and simulating them , and does not cover account opening, legal procedures, tax-related matters related to actual investments, etc. In addition, it does not serve as investment advice or financial counseling , and matters related to actual financial transactions should be carried out at one's own risk.

All trading strategies covered in the course are based on simulations and are for educational purposes only. If students have questions related to investing or trading, please understand that we cannot answer questions that are outside the scope of the course.


[Python Algorithm Trading Lecture] is a three-part series , and this lecture is 'Part 1'.

  • Part 1 - 'Python Data Analysis for Algorithmic Trading' (this lecture)

    • Covers the fundamentals of Python data analysis required for algorithmic trading.

  • Part 2 - 'Real-time algorithmic trading using Interactive Brokers API'

    • Learn how to implement real-time trading using the #1 global market share Interactive Brokers API.

  • Part 3 - 'Cloud Automation'

    • Learn how to automatically launch virtual machines to match your stock trading schedule with cloud automation.

Why You Should Learn Python at This Point 🤔

Where to start with Python data analysis? 🤔

Why study Python for financial analysis ? ❓

Why do we need object-oriented programming ? ❓

Why is parallel processing necessary ? ❓

Why set up a Python analytics environment in Azure?

If you don't have basic knowledge of Python 🤔

...

If you are curious about the questions above, read the introduction below!

First, popularity in the job market!

As of now (2024), the undisputed #1 programming popularity is Python. Programming popularity is also linked to opportunities in the job market. Learning Python will provide you with more opportunities.

PYPL (Popularity of Programming Language)

Second, then why Pandas?

This is a question about the essence of data analysis. The essence of data analysis, called EDA (Exploratory Data Analysis), is the ability to process raw data into a desired form. The tool that can do this EDA most effectively is Pandas.


Third, why study Python with financial data?

Creator of the Pandas library, essential for data analysis in Python Did you know that Wes McKinney was a quant working in the financial sector ? Securities data is an ideal subject for analysis, where complex and diverse analytical techniques and statistical models can be applied.

Pairs Trading, which will be implemented in this lecture, defines stock pairs that show similar patterns and uses statistical methodology and machine learning to determine algorithmic investments.

Fourth, in general data analysis classes, we write scripts in a functional manner.
Why study object-oriented data analysis?

  • Data is dynamic: investment strategies that worked in the past may not be suitable today.

  • Respond to continuous change: Your code needs to be updated periodically to accommodate changing data characteristics.


Advantages of Object Oriented Programming (OOP)

Easy to maintain : Modularize code to make it easier to modify and maintain code written by individuals or teams.

Improved readability : Coding in blocks using classes greatly improves the readability of your code.

Prevent Spaghetti Code : Avoid 'spaghetti code' with a systematic structure instead of one-off scripts.

Increased Productivity : Writing object-oriented code can significantly increase analyst productivity.

For this reason, learning object-oriented programming in data analysis is an important skill for effective code management and productivity improvement beyond simple function implementation. Once you become familiar with object-oriented grammar, you can quickly understand the code below in a few seconds. The ability to interpret object-oriented grammar is a magic like speed reading in reading .

Fifth, Python is slow? Is that really true? The answer is Yes or No.

Python can be sped up in two ways. In deep learning, GPUs can be used to speed up calculations, while in data analysis, parallel processing of the CPU can be used to speed up the process .

This lecture will guide you on how to effectively utilize CPU cores .

Practical examples : In the hands-on course, you can learn specific ways to use CPU cores in parallel and improve processing speed.

Practical Applications : Many practitioners are not fully utilizing the potential of CPU parallel processing. In this lecture, you will learn how to overcome this.


Sixth, configure the analytics environment on an Azure virtual machine.

  • Using Azure Virtual Machines in your analytics environment :

    • In this lecture, we will build a stable Python analysis environment using Azure virtual machines.

    • Minimize variability in local environments and provide a standardized learning environment.

    • Learn how to set up a virtual environment and manage packages using Anaconda.

  • Alternatives if you have trouble using the cloud :

    • We also share a separate notebook to enable implementation of Python analysis using Kaggle Notebooks.

    • The Kaggle platform offers the advantage of being able to start analyzing data right away without any installation or configuration.

    • This allows for flexible learning in a variety of environments.

The last seventh, Python Crash Course, is easy to understand even without basic knowledge.

  • The basic Python syntax and concepts required for this course are intensively covered in “Section 4. Python Crash Course for Financial Analysis.”

  • This section starts with the basics for those new to Python, and dives deep into the core syntax and functions needed for financial data analysis.

  • This will give students a solid foundation to follow along smoothly with the more complex analysis and programming content that is presented later in the course.

💡 What sets it apart from other Python data analysis courses

  • A lot of thought and practical application on how to write readable code

  • Access to real-time data via Yahoo Finance, not historical data

  • Everything is an object. Object-oriented programming

  • No more slow Python, Python with fast interpretation speed

  • And cloud application

I recommend this to these people

Using Python
In data analysis
For those who want to get started

Anyone who wants to upgrade their Python skills in an object-oriented way

Anyone who wants to implement algorithmic trading in Python

Things to note before taking the class

Practice environment

  • The lecture will proceed by creating a Windows OS virtual machine in Azure and creating a Python analysis environment with Anaconda. You can also proceed with the practice through Kaggle Notebook without setting up the analysis environment.


Learning Materials

  • All Python scripts are attached to the course materials, and the main script notebook is also accessible via the Kaggle platform.

Recommended for
these people!

Who is this course right for?

  • If you want to analyze financial data statistically using Python

  • Data analysts who want to write tidy Python scripts using object-oriented programming

  • Someone who can read basic programming (ex. for loop statement) as if reading English.

Need to know before starting?

  • Basic programming reading ability (ex. loop statement)

Hello
This is

471

Students

45

Reviews

56

Answers

4.9

Rating

6

Courses

  • 서울대학교 기계항공 공학부 졸업

  • 영국 크랜필드 대학교 기계항공 석사 졸업

  • 독일 함부르크 공대 기계공학 박사 수료

  • 독일 Nordex Wind Senior Data Scientist

  • 영국 Wood Energy Data Analysis Senior Consultant

  • Databricks Data Engineering Project

  • Kaggle Stock Trading Competition top 3%

  • 현 AI 스타트업 (MUSTai) 개발팀장

Curriculum

All

52 lectures ∙ (6hr 4min)

Lecture resources

are provided.

Published: 
Last updated: 

Reviews

Not enough reviews.
Become the author of a review that helps everyone!