- Welcome and Introduction
- Did you know...? (a Sneak Preview on Crypto Trading)
- How to get the best out of this course
- Student FAQ
- *** LEGAL DISCLAIMER (MUST READ!) ***
- Course Overview
Cryptocurrency Algorithmic Trading with Python and Binance
Acquire the skills and knowledge necessary to develop a trading bot for algorithmic crypto trading, including spot and ...Read more
Beginner
Online
₹ 4099
Quick Facts
particular | details | |||
---|---|---|---|---|
Medium of instructions
English
|
Mode of learning
Self study
|
Mode of Delivery
Video and Text Based
|
Course overview
Alexander Hagmann - Data Scientist, Finance Professional, and Entrepreneur created the Cryptocurrency Algorithmic Trading with Python and Binance certification course, which is delivered through Udemy and is designed for those who wish to begin their crypto trading journey. The Cryptocurrency Algorithmic Trading with Python and Binance online course focuses on teaching the foundations and strategies of algorithmic trading to enable learners to understand how to trade and invest in cryptocurrencies.
Cryptocurrency Algorithmic Trading with Python and Binance online classes are organized into five sections that cover topics such as Python, Binance, Numpy, Pandas, AWS, Matplotlib, Seaborn, and object-oriented programming, as well as topics such as spot trading, data-driven trading, algorithmic trading, order types, slippage, liquidity, and more. Individuals will be able to examine several ways for testing their algorithms, such as backtesting, forward testing, and live testing, by the end of this course.
The highlights
- Certificate of completion
- Self-paced course
- 36 hours of pre-recorded video content
- 41 articles
- 12 downloadable resources
- 30-day money-back guarantee
Program offerings
- Certificate
- 30-day money-back guarantee
- Unlimited access
- Accessible on mobile devices and tv
Course and certificate fees
Fees information
certificate availability
Yes
certificate providing authority
Udemy
Who it is for
What you will learn
After completing the Cryptocurrency Algorithmic Trading with Python and Binance online certification, individuals will have a deeper knowledge of the fundamental technologies behind cryptocurrencies. Individuals will explore the fundamentals of algorithmic trading, spot trading, crypto trading, and data-driven trading. Individuals will learn how to use Python, AWS, and Binance to create automated crypto trading bots, as well as how to code using Numpy, Pandas, object-oriented programming, Matplotlib, and Seaborn. Using the CCXT library, individuals will also learn about several Crypto exchanges such as FTX and Kraken.
The syllabus
Getting Started
+++ PART 1: Fundamentals of Trading, Binance and Python for Finance +++
- PART 1 Overview
- Downloads for PART 1
Introduction to (Algorithmic) Trading, Cryptocurrencies and Binance
- Investing vs. (Algorithmic) Trading
- Asset Classes, Money and (Crypto-) Currencies
- What is a Stable Coin?
- Why Trading Cryptocurrencies?
- Why using Binance?
- Spot Trading vs. Derivatives (Futures) Trading (Part 1)
- Spot Trading vs. Derivatives (Futures) Trading (Part 2)
- [Article] Algorithmic Trading 101 and how to start
Cryptocurrency Trading and Investing with Binance A-Z: a Deep Introduction
- Binance.com and Binance.US at a first glance
- How to get a 10% Discount on Trading Commissions
- Registration and Identity Verification
- How to instantly buy your first Cryptos
- Deposits and Withdrawals (Part 1)
- Deposits and Withdrawals (Part 2)
- The first Spot Trade (buy Bitcoin)
- Trade Analysis and Trading Fees/Commissions
- Another Spot Trade (sell Bitcoin)
- Limit Orders vs. Market Orders
- Take-Profit Orders
- Stop-Loss Orders
- The Order Book
- Bid-Ask-Spread and Slippage
- Total Costs of a Trade (visible vs. hidden Costs)
- Liquidity and Market Depth
- Introduction to Charting and Technical Indicators
Installing Python and Jupyter Notebooks
- Introduction
- Download and Install Anaconda
- How to open Jupyter Notebooks
- How to work with Jupyter Notebooks
- Tips for Python Beginners
Trading with Python and the Binance API - an Introduction
- Overview
- Getting the API Key & other Preparations
- Commands to install required packages
- How to install the Binance API Wrapper
- Connecting to the API/Server
- Troubleshooting (BinanceAPIException Error)
- Retrieving general account/system Info (Part 1)
- Retrieving general account/system Info (Part 2)
- Getting (current) Market Data
- How to load Historical Price & Volume Data (Part 1)
- How to load Historical Price & Volume Data (Part 2)
- Excursus: Loading Historical Data (csv) from the Website
- Streaming real-time Market Data (Part 1)
- Important notice for Binance.US users
- Streaming real-time Market Data (Part 2)
- Streaming and collecting real-time Candles
- Placing a Test Order
- The Binance Spot Test Network
- Creating a Connection to the Spot Testnet
- Spot Testnet API - Overview
- Placing a Market Buy Order
- Placing a Market Sell Order
- Placing Limit Orders
- Reporting: Getting all (historical) Orders and Trades
- How to create & run a first (simple) Trading Bot
Financial Data Analysis with Python and Pandas - a (deep) Introduction
- Introduction and Overview
- Installing and importing required Libraries/Packages
- Loading Financial Data from the Web
- Initial Inspection and Visualization
- [Article] Loading Data into Pandas - advanced topics
- Normalizing Time Series to a Base Value (100)
- Coding Challenge #1
- Price changes and Financial Returns
- Reward and Risk of Financial Instruments
- Coding Challenge #2
- Investment Multiple and CAGR
- Compound Returns & Geometric Mean Return
- Coding Challenge #3
- Discrete Compounding
- Continuous Compounding
- Log Returns
- Simple Returns vs Log Returns ( Part 1)
- Simple Returns vs Log Returns ( Part 2)
- Coding Challenge #4
- Comparing the Performance of Financial Instruments
- (Non-) Normality of Financial Returns
- Annualizing Return and Risk
- Resampling / Smoothing of Financial Data
- Rolling Statistics
- Coding Challenge #5
- Short Selling and Short Position Returns (Part 1)
- Introduction to Currencies (Forex) and Trading
- Short Selling and Short Position Returns (Part 2)
- Short Selling and Short Position Returns (Part 3)
- Coding Challenge #6
- Covariance and Correlation
- Portfolios and Portfolio Returns
- Margin Trading and Levered Returns (Part 1)
- Margin Trading and Levered Returns (Part 2)
- Coding Challenge #7
+++ PART 2: Algorithmic Trading: Spot Trading +++
- Overview
- Downloads for PART 2
What is a Trading Strategy?
- Trading Strategies - Overview
- [Article] More on Trading Strategies
- Trading Strategies for Cryptocurrencies (best practices)
- How to create your own Trading Strategies
- [Article] The Lifecycle of a Trading Strategy
- Getting the Data
- Financial Data Analysis / Visual Inspection
- A simple Buy and Hold "Strategy"
- Performance Measurement
A Long-only Strategy based on Price & Volume Data
- Trading Strategies - Overview
- [Article] More on Trading Strategies
- Trading Strategies for Cryptocurrencies (best practices)
- How to create your own Trading Strategies
- [Article] The Lifecycle of a Trading Strategy
- Getting the Data
- Financial Data Analysis / Visual Inspection
- A simple Buy and Hold "Strategy"
- Performance Measurement
- Introduction
- Data Preparation
- Explanatory Data Analysis: Financial Returns and Trading Volume (Part 1)
- Explanatory Data Analysis: Financial Returns and Trading Volume (Part 2)
- Formulating a Long-only Strategy based on Price & Volume Data
- Strategy Backtesting
- Trading Costs
Strategy Optimization and Forward Testing
- Introduction
- Getting started
- Strategy Optimization (Part 1)
- Strategy Optimization (Part 2)
- Putting everything together: a Backtester Class
- Backtesting & Forward Testing (Part 1)
- Backtesting & Forward Testing (Part 2)
Implementation and Automation of Trading Strategies with Binance
- Introduction
- Getting started
- Important notice for Binance.US users
- Recap: Streaming and Collecting Real-Time Candles
- Creating the LongOnlyTrader Class
- Working with historical data and real-time data (Part 1)
- Working with historical data and real-time data (Part 2)
- Adding a Long-Only Trading Strategy
- Placing Orders and Executing Trades
- Trade Monitoring and Reporting
- How to set/automate the stop of a Trading Session
A Long-Short Trading Strategy A-Z
- Introduction
- Getting started
- Recap: Explanatory Data Analysis and generating a Trading Idea
- Defining the Long-Short Strategy
- A Long-Short Backtesting Framework
- Strategy Backtesting
- A Long-Short Trading Framework
- Implementing and Automating a Long-Short Trading Strategy
- Preview: Running a Python Trader Script
Cloud Deployment (AWS) | Scheduling Trading Sessions | Full Automation
- Introduction and Motivation
- Demonstration: AWS EC2 for Algorithmic Trading live in action
- Amazon Web Services (AWS) - Overview and how to create a Free Trial Account
- How to create an EC2 Instance
- How to connect to your EC2 Instance
- Required Installations and Downloads
- Getting the Instance Ready for Algorithmic Trading
- How to run Python Scripts in a Windows Command Prompt
- How to start Trading sessions with Batch (.bat) Files
- How to schedule Trading sessions with the Task Scheduler
Ultimate Homework Challenge: Create, Test and Implement your Strategy!
- Introduction
- Solution
+++ PART 3: Algorithmic Trading: Futures Trading +++
- Overview
- Downloads for Part 3
Futures Trading on Binance A-Z
- Creating an account on Binance Futures Testnet
- First Steps
- The first Futures Trade (Long)
- Trade Analysis
- A trade with Leverage
- The impact of Leverage
- A Short Trade
- Margin Requirements and Liquidation (Part 1)
- Margin Requirements and Liquidation (Part 2)
- Excursus: The Futures Calculator
- How to add Stop Loss to an open position
- Stop Loss (SL) and Take Profit (TP) Orders
- Margin Mode: Cross vs. Isolated
- Position Mode: One-way (Netting) vs. Hedging
- How to work with many open positions
- Introduction to the Funding Rate
- The Funding Rate explained (Part 1)
- The Funding Rate explained (Part 2)
- The Funding Rate explained (Part 3)
- The Funding Rate live in action
Backtesting Futures Trading Strategies with Leverage
- Introduction
- Getting the Data
- Backtesting without Leverage and Trading Costs in the Futures Market
- Recap: Leverage and levered Returns
- Levered Returns: a more realistic approach
- The Futures Backtesting Class live in action
- How to adjust the Framework to (levered) Futures Trading
- The impact of Leverage on Trading Performance
Implementing and automating Futures Trading on Binance
- Introduction and Preparations
- The Binance Futures API
- How to change Settings and Modes
- Placing Market Orders (Part 1)
- Trade Analysis - Trade and Income History
- Placing Market Orders (Part 2)
- Getting Historical Futures Market Data
- Streaming Future Prices in real-time
- A Futures Trading Bot (Part 1)
- A Futures Trading Bot (Part 2)
+++ APPENDIX: Python Crash Course +++
- Introduction and Overview
- Appendix Downloads
Appendix 1: Python (& Finance) Basics
- Intro to the Time Value of Money (TVM) Concept (Theory)
- Calculate Future Values (FV) with Python / Compounding
- Calculate Present Values (FV) with Python / Discounting
- Interest Rates and Returns (Theory)
- Calculate Interest Rates and Returns with Python
- Introduction to Variables
- Excursus: How to add inline comments
- Variables and Memory (Theory)
- More on Variables and Memory
- Variables - Dos, Don´ts and Conventions
- The print() Function
- Coding Exercise 1
- TVM Problems with many Cashflows
- Intro to Python Lists
- Zero-based Indexing and negative Indexing in Python (Theory)
- Indexing Lists
- For Loops - Iterating over Lists
- The range Object - another Iterable
- Calculate FV and PV for many Cashflows
- The Net Present Value - NPV (Theory)
- Calculate an Investment Project´s NPV
- Coding Exercise 2
- Data Types in Action
- The Data Type Hierarchy (Theory)
- Excursus: Dynamic Typing in Python
- Build-in Functions
- Integers
- Floats
- How to round Floats (and Integers) with round()
- More on Lists
- Lists and Element-wise Operations
- Slicing Lists
- Slicing Cheat Sheet
- Changing Elements in Lists
- Sorting and Reversing Lists
- Adding and removing Elements from/to Lists
- Mutable vs. immutable Objects (Part 1)
- Mutable vs. immutable Objects (Part 2)
- Coding Exercise 3
- Tuples
- Dictionaries
- Intro to Strings
- String Replacement
- Booleans
- Operators (Theory)
- Comparison, Logical and Membership Operators in Action
- Coding Exercise 4
- Conditional Statements
- Keywords pass, continue and break
- Calculate a Project´s Payback Period
- Introduction to while loops
- Coding Exercise 5
Appendix 2: User-defined Functions
- Defining your first user-defined Function
- What´s the difference between Positional Arguments vs. Keyword Arguments?
- How to work with Default Arguments
- The Default Argument None
- How to unpack Iterables
- Sequences as arguments and *args
- How to return many results
- Scope - easily explained
- Coding Exercise 6
Appendix 3: Numpy, Pandas, Matplotlib and Seaborn Crash Course
- Modules, Packages and Libraries - No need to reinvent the Wheel
- Numpy Arrays
- Indexing and Slicing Numpy Arrays
- Vectorized Operations with Numpy Arrays
- Changing Elements in Numpy Arrays & Mutability
- View vs. copy - potential Pitfalls when slicing Numpy Arrays
- Numpy Array Methods and Attributes
- Numpy Universal Functions
- Boolean Arrays and Conditional Filtering
- Advanced Filtering & Bitwise Operators
- Determining a Project´s Payback Period with np.where()
- Creating Numpy Arrays from Scratch
- Coding Exercise 7
- How to work with nested Lists
- 2-dimensional Numpy Arrays
- How to slice 2-dim Numpy Arrays (Part 1)
- How to slice 2-dim Numpy Arrays (Part 2)
- Recap: Changing Elements in a Numpy Array / slice
- How to perform row-wise and column-wise Operations
- Coding Exercise 8
- Intro to Tabular Data / Pandas
- Create your very first Pandas DataFrame (from csv)
- Pandas Display Options and the methods head() & tail()
- First Data Inspection
- Coding Exercise 9
- Selecting Columns
- Selecting one Column with the "dot notation"
- Zero-based Indexing and Negative Indexing
- Selecting Rows with iloc (position-based indexing)
- Slicing Rows and Columns with iloc (position-based indexing)
- Position-based Indexing Cheat Sheets
- Selecting Rows with loc (label-based indexing)
- Slicing Rows and Columns with loc (label-based indexing)
- Label-based Indexing Cheat Sheets
- Summary, Best Practices and Outlook
- Coding Exercise 10
- First Steps with Pandas Series
- Analyzing Numerical Series with unique(), nunique() and value_counts()
- Analyzing non-numerical Series with unique(), nunique(), value_counts()
- The copy() method
- Sorting of Series and Introduction to the inplace - parameter
- First Steps with Pandas Index Objects
- Changing Row Index with set_index() and reset_index()
- Changing Column Labels
- Renaming Index & Column Labels with rename()
- Filtering DataFrames (one Condition)
- Filtering DataFrames by many Conditions (AND)
- Filtering DataFrames by many Conditions (OR)
- Advanced Filtering with between(), isin() and ~
- Intro to NA Values / missing Values
- Handling NA Values / missing Values
- Exporting DataFrames to csv
- Summary Statistics and Accumulations
- Visualization with Matplotlib (Intro)
- Customization of Plots
- Histogramms (Part 1)
- Histogramms (Part 2)
- Scatterplots
- First Steps with Seaborn
- Categorical Seaborn Plots
- Seaborn Regression Plots
- Seaborn Heatmaps
- Removing Columns
- Introduction to GroupBy Operations
- Understanding the GroupBy Object
- Splitting with many Keys
- split-apply-combine
Appendix 4: Advanced Pandas Time Series Topics
- Helpful DatetimeIndex Attributes and Methods
- Filling NA Values with bfill, ffill and interpolation
- Timezones and Converting (Part 1)
- Timezones and Converting (Part 2)
Appendix 5: Object Oriented Programming (OOP): Creating a Finance Class
- Introduction to OOP and examples for Classes
- The Financial Analysis Class live in action (Part 1)
- The Financial Analysis Class live in action (Part 2)
- The special method __init__()
- The method get_data()
- The method log_returns()
- String representation and the special method __repr__()
- The methods plot_prices() and plot_returns()
- Encapsulation and protected Attributes
- The method set_ticker()
- Adding more methods and performance metrics
- Inheritance
- Inheritance and the super() Function
- Adding meaningful Docstrings
- Creating and Importing Python Modules (.py)
- Coding Exercise: Create your own Class
What´s next? (outlook and additional resources)
- Bonus Lecture
Instructors
Articles
Popular Articles
Latest Articles
Similar Courses


Industrial IoT Fundamentals on AWS
Amazon Web Services via Edx


Cloud Operations on Amazon Web Services
Amazon Web Services via Edx


Exam Prep Amazon Web Services Certified Cloud Prac...
Amazon Web Services via Edx


Amazon Web Services Cloud Technical Essentials
Amazon Web Services via Futurelearn


AWS Certified Solutions Architect-Associate
Infosec Train


Amazon Web Services Cloud Practitioner Essentials
Amazon Web Services via Coursera


Building Modern Python Applications on Amazon Web ...
Amazon Web Services via Edx


Introduction to AWS Identity and Access Management
Amazon Web Services via Edx


Building Modern Java Applications on AWS
Amazon Web Services via Edx
Courses of your Interest

An Introduction To Coding Theory
IIT Kanpur via Swayam
C++ Foundation
PW Skills
Stock Market Fundamentals
PW Skills
Advanced CFD Meshing using ANSA
Skill Lync
Data Science Foundations to Core Bootcamp
Springboard

User Experience Design And Research
UM–Ann Arbor via Futurelearn

Innovations in Fintech
UM–Ann Arbor via Futurelearn