English | MP4 | AVC 1280×720 | AAC 44KHz 2ch | 510 lectures (43h 36m) | 12.16 GB
Build your own truly Data-driven Day Trading Bot | Learn how to create, test, implement & automate unique Strategies.
Welcome to the most comprehensive Algorithmic Trading Course. It´s the first 100% Data-driven Trading Course!
Course fully updated and now with an additional Broker: Interactive Brokers (IBKR)
Did you know that 75% of retail Traders lose money with Day Trading? (some sources say >95%)
For me as a Data Scientist and experienced Finance Professional this is not a surprise. Day Traders typically do not know/follow the five fundamental rules of (Day) Trading. This Course covers them all in detail!
1. Know and understand the Day Trading Business
Don´t start Trading if you are not familiar with terms like Bid-Ask Spread, Pips, Leverage, Margin Requirement, Half-Spread Costs, etc.
Part 1 of this course is all about Day Trading A-Z with the Brokers Oanda, Interactive Brokers, and FXCM. It deeply explains the mechanics, terms, and rules of Day Trading (covering Forex, Stocks, Indices, Commodities, Baskets, and more).
2. Use powerful and unique Trading Strategies
You need to have a Trading Strategy. Intuition or gut feeling is not a successful strategy in the long run (at least in 99.9% of all cases). Relying on simple Technical Rules doesn´t work either because everyone uses them.
You will learn how to develop more complex and unique Trading Strategies with Python. We will combine simple and also more complex Technical Indicators and we will also create Machine Learning- and Deep Learning- powered Strategies. The course covers all required coding skills (Python, Numpy, Pandas, Matplotlib, scikit-learn, Keras, Tensorflow) from scratch in a very practical manner.
3. Test your Strategies before you invest real money (Backtesting / Forward Testing)
Is your Trading Strategy profitable? You should rigorously test your strategy before ‘going live’.
This course is the most comprehensive and rigorous Backtesting / Forward Testing course that you can find.
You will learn how to apply Vectorized Backtesting techniques, Iterative Backtesting techniques (event-driven), live Testing with play money, and more. And I will explain the difference between Backtesting and Forward Testing and show you what to use when. The backtesting techniques and frameworks covered in the course can be applied to long-term investment strategies as well!
4. Take into account Trading Costs – it´s all about Trading Costs!
“Trading with zero commissions? Great!” … Well, there is still the Bid-Ask-Spread and even if 2 Pips seem to be very low, it isn´t!
The course demonstrates that finding profitable Trading Strategies before Trading Costs is simple. It´s way more challenging to find profitable Strategies after Trading Costs! Learn how to include Trading Costs into your Strategy and into Strategy Backtesting / Forward Testing. And most important: Learn how you can control and reduce Trading Costs.
5. Automate your Trades
Manual Trading is error-prone, time-consuming, and leaves room for emotional decision-making.
This course teaches how to implement and automate your Trading Strategies with Python, powerful Broker APIs, and Amazon Web Services (AWS). Create your own Trading Bot and fully automate/schedule your trading sessions in the AWS Cloud!
Finally… this is more than just a course on automated Day Trading:
- the techniques and frameworks covered can be applied to long-term investing as well.
- it´s an in-depth Python Course that goes beyond what you can typically see in other courses. Create Software with Python and run it in real-time on a virtual Server (AWS)!
- we will feed Machine Learning & Deep Learning Algorithms with real-time data and take ML/DL-based actions in real-time!
What you’ll learn
- Build automated Trading Bots with Python and Amazon Web Services (AWS)
- Create powerful and unique Trading Strategies based on Technical Indicators and Machine Learning / Deep Learning.
- Rigorous Testing of Strategies: Backtesting, Forward Testing and live Testing with paper money.
- Fully automate and schedule your Trades on a virtual Server in the AWS Cloud.
- Truly Data-driven Trading and Investing.
- Python Coding and Object Oriented Programming (OOP) in a way that everybody understands it.
- Coding with Numpy, Pandas, Matplotlib, scikit-learn, Keras and Tensorflow.
- Understand Day Trading A-Z: Spread, Pips, Margin, Leverage, Bid and Ask Price, Order Types, Charts & more.
- Day Trading with Brokers OANDA, Interactive Brokers (IBKR) and FXCM.
- Stream high-frequency real-time Data.
- Understand, analyze, control and limit Trading Costs.
- Use powerful Broker APIs and connect with Python.
Table of Contents
Getting Started
1 What is Algorithmic Trading Course Overview
2 How to get the best out of this course
3 Did you know… (what Data can tell us about Day Trading)
4 Test your knowledge
5 Student FAQ
6 LEGAL DISCLAIMER (MUST READ!)
+++ PART 1 Day Trading, Online Brokers and APIs +++
7 Our very first Trade
8 Long Term Investing vs. (Algorithmic) Day Trading
9 Spot Trading vs. Derivatives Trading (Part 1)
10 Spot Trading vs. Derivatives Trading (Part 2)
11 Overview & the Brokers OANDA, IBKR and FXCM
Day Trading with OANDA A-Z a Deep Dive
12 OANDA at a first glance
13 Creating a fully functional Demo Account – in all CountriesRegions!
14 How to create an Account Update May 2023
15 FOREX Currency Exchange Rates explained
16 Our second Trade – EURUSD FOREX Trading
17 How to calculate Profit & Loss of a Trade
18 Trading Costs and Performance Attribution
19 Margin and Leverage
20 Margin Closeout and more
21 Introduction to Charting
22 Our third Trade A-Z – Going Short EURUSD
23 Netting vs. Hedging
24 Market, Limit and Stop Orders
25 Take-Profit and Stop-Loss Orders
26 A more general Example
27 Trading Challenge
Stocks and FOREX Trading with Interactive Brokers (IBKR)
28 IBKR at a first glance
29 How to create a (Paper Trading) Account
30 How to Install the IB Trader Workstation (TWS)
31 TWS – First Steps
32 The first Trade (buying Stocks)
33 Trading Hours
34 Cash Account vs. Margin Account
35 Trading Costs (Stocks) – Commissions
36 Trading Costs (Stocks) – other (hidden) Costs
37 FOREX Trading Cash vs. CFD
38 A complete CFD FOREX Trade
39 CFD Trade Analysis
FOREX Day Trading with FXCM
40 Important Info April 2023
41 FXCM at a first glance
42 How to create an Account
43 Example Trade Buying EURUSD
44 Trade Analysis
45 Charting
46 Closing Positions vs. Hedging Positions
47 Order Types at a glance
48 Trading Challenge
Installing Python and Jupyter Notebooks
49 Introduction
50 Download and Install Anaconda
51 How to open Jupyter Notebooks
52 How to work with Jupyter Notebooks
53 Tips for Python Beginners
Excursus How to avoid and debug Coding Errors (don´t skip!)
54 Introduction
55 Test your debugging skills!
56 Major reasons for Coding Errors
57 The most commonly made Errors at a glance
58 Omitting cells, changing the sequence and more
59 IndexErrors
60 Indentation Errors
61 Misuse of function names and keywords
62 TypeErrors and ValueErrors
63 Getting help on StackOverflow.com
64 How to traceback more complex Errors
65 Problems with the Python Installation
66 External Factors and Issues
67 Errors related to the course content (Transcription Errors)
68 Summary and Debugging Flow-Chart
API Trading with Python and Online Brokers- an Introduction
69 How to maximize your learning experience
70 Overview
71 OANDA Commands to install required packages UPD August 23
72 OANDA Getting the API Key & other Preparations
73 OANDA Connecting to the APIServer
74 Important Notice Update August 2023
75 OANDA How to load Historical Price Data (Part 1)
76 OANDA How to load Historical Price Data (Part 2)
77 OANDA Streaming high-frequency real-time Data
78 OANDA How to place Orders and execute Trades
79 Trading Challenge
80 IBKR API Downloads and required Commands to install the Wrapper
81 IBKR How to download and install the API Wrapper & other Preparations
82 IBKR Connecting to the API
83 IBKR Contracts
84 IBKR How to get Market Data
85 IBKR Data Streaming for Multiple Tickers
86 IBKR Contracts (advanced)
87 IBKR FOREX and CFD Contracts
88 IBKR Creating Orders (Stock Trading)
89 IBKR Creating Orders (CFD Trading)
90 IBKR CFD Trade Information
91 IBKR Positions and Account Values
92 IBKR Historical Bars
93 FXCM Important Info April 2023
94 FXCM Commands to install required packages
95 FXCM How to install the FXCM API Wrapper
96 FXCM Getting the Access Token & other Preparations
97 FXCM Connecting to the APIServer
98 Troubleshooting FXCM Server Connection Issues
99 FXCM How to load Historical Price Data (Part 1)
100 FXCM How to load Historical Price Data (Part 2)
101 FXCM Streaming high-frequency real-time Data
102 FXCM How to place Orders and execute Trades
103 Trading Challenge
Conclusion and Outlook
104 Conclusion and Outlook
+++ PART 2 Pandas for Financial Data Analysis and Introduction to OOP +++
105 Introduction and Downloads Part 2 Updated March 2023
Introduction to Time Series Data in Pandas
106 Importing Time Series Data from csv-files
107 Converting strings to datetime objects with pd.to_datetime()
108 Indexing and Slicing Time Series
109 Downsampling Time Series with resample()
110 Coding Exercise 1
Financial Data Analysis with Python and Pandas – a (deep) Introduction
111 Introduction and Overview
112 Installing and importing required LibrariesPackages
113 Loading Financial Data from the Web
114 Initial Inspection and Visualization
115 [Article] Loading Data into Pandas – advanced topics
116 Normalizing Time Series to a Base Value (100)
117 Coding Challenge #1
118 Price changes and Financial Returns
119 Reward and Risk of Financial Instruments
120 Coding Challenge #2
121 Investment Multiple and CAGR
122 Compound Returns & Geometric Mean Return
123 Coding Challenge #3
124 Discrete Compounding
125 Continuous Compounding
126 Log Returns
127 Simple Returns vs Log Returns ( Part 1)
128 Simple Returns vs Log Returns ( Part 2)
129 Coding Challenge #4
130 Mid-Section Test
131 Comparing the Performance of Financial Instruments
132 (Non-) Normality of Financial Returns
133 Annualizing Return and Risk
134 Resampling Smoothing of Financial Data
135 Rolling Statistics
136 Coding Challenge #5
137 Short Selling and Short Position Returns (Part 1)
138 Short Selling and Short Position Returns (Part 2)
139 Short Selling and Short Position Returns (Part 3)
140 Coding Challenge #6
141 Covariance and Correlation
142 Portfolios and Portfolio Returns
143 Margin Trading and Levered Returns (Part 1)
144 Margin Trading and Levered Returns (Part 2)
145 Coding Challenge #7
146 Final Test
Advanced Topics
147 Importing Financial Data from Excel
148 Merging Aligning Financial Time Series (hands-on)
149 Helpful DatetimeIndex Attributes and Methods
150 Filling NA Values with bfill, ffill and interpolation
151 Timezones and Converting (Part 1)
152 Timezones and Converting (Part 2)
Object Oriented Programming (OOP) Creating a Financial Analysis Class
153 Introduction to OOP and examples for Classes
154 The Financial Analysis Class live in action (Part 1)
155 The Financial Analysis Class live in action (Part 2)
156 The special method __init__()
157 The method get_data()
158 The method log_returns()
159 String representation and the special method __repr__()
160 The methods plot_prices() and plot_returns()
161 Encapsulation and protected Attributes
162 The method set_ticker()
163 Adding more methods and performance metrics
164 Inheritance
165 Inheritance and the super() Function
166 Adding meaningful Docstrings
167 Creating and Importing Python Modules (.py)
168 Coding Exercise 3 Create your own Class
+++ PART 3 Defining and Testing Trading Strategies +++
169 Introduction to Part 3
170 Trading Strategies – an Overview
171 Downloads for Part 3 Updated May 2023
172 Getting the Data
173 A simple Buy and Hold Strategy
174 Performance Metrics
Defining and Backtesting SMA Strategies
175 SMA Crossover Strategies – Overview
176 Defining an SMA Crossover Strategy
177 Vectorized Strategy Backtesting
178 Finding the optimal SMA Strategy
179 Generalization with OOP An SMA Backtesting Class in action
180 Creating the Class (Part 1)
181 Creating the Class (Part 2)
182 Creating the Class (Part 3)
183 Creating the Class (Part 4)
184 Creating the Class (Part 5)
185 Creating the Class (Part 6)
186 Creating the Class (Part 7)
187 Creating the Class (Part 8)
Defining and Backtesting simple MomentumContrarian Strategies
188 Simple ContrarianMomentum Strategies – Overview
189 Getting the Data
190 Excursus Your FAQs answered
191 Defining a simple Contrarian Strategy
192 Vectorized Strategy Backtesting
193 Changing the Window Parameter
194 Trades and Trading Costs (Part 1)
195 Trades and Trading Costs (Part 2)
196 Generalization with OOP A Contrarian Backtesting Class in action
197 OOP Challenge Create the Contrarian Backtesting Class (incl. Solution)
Defining and Backtesting Mean-Reversion Strategies (Bollinger)
198 Mean-Reversion Strategies – Overview
199 Getting the Data
200 Defining a Bollinger Bands Mean-Reversion Strategy (Part 1)
201 Defining a Bollinger Bands Mean-Reversion Strategy (Part 2)
202 Vectorized Strategy Backtesting
203 Generalization with OOP A Bollinger Bands Backtesting Class in action
204 OOP Challenge Create the Bollinger Bands Backtesting Class (incl. Solution)
Trading Strategies powered by Machine Learning – Regression
205 Machine Learning – an Overview
206 Linear Regression with scikit-learn – a simple Introduction
207 Making Predictions with Linear Regression
208 Overfitting
209 Underfitting
210 Getting the Data
211 A simple Linear Model to predict Financial Returns (Part 1)
212 A simple Linear Model to predict Financial Returns (Part 2)
213 A Multiple Regression Model to predict Financial Returns
214 In-Sample Backtesting and the Look-ahead-bias
215 Out-Sample Forward Testing
Trading Strategies powered by Machine Learning – Classification
216 Logistic Regression with scikit-learn – a simple Introduction (Part 1)
217 Logistic Regression with scikit-learn – a simple Introduction (Part 2)
218 Getting and Preparing the Data
219 Predicting Market Direction with Logistic Regression
220 In-Sample Backtesting and the Look-ahead-bias
221 Out-Sample Forward Testing
222 Generalization with OOP A Classification Backtesting Class in action
223 The Classification Backtesting Class explained (Part 1)
224 The Classification Backtesting Class explained (Part 2)
Advanced Backtesting Techniques
225 Introduction to Iterative Backtesting (event-driven)
226 A first Intuition on Iterative Backtesting (Part 1)
227 A first Intuition on Iterative Backtesting (Part 2)
228 Creating an Iterative Base Class (Part 1)
229 Creating an Iterative Base Class (Part 2)
230 Creating an Iterative Base Class (Part 3)
231 Creating an Iterative Base Class (Part 4)
232 Creating an Iterative Base Class (Part 5)
233 Creating an Iterative Base Class (Part 6)
234 Creating an Iterative Base Class (Part 7)
235 Creating an Iterative Base Class (Part 8)
236 Adding the Iterative Backtest Child Class for SMA (Part 1)
237 Adding the Iterative Backtest Child Class for SMA (Part 2)
238 Using Modules and adding Docstrings
239 OOP Challenge Add Contrarian and Bollinger Strategies
+++ PART 4 Real-time Implementation and Automation of Strategies +++
240 Introduction and Overview
241 Downloads for Part 4 Updated May 2023
Implementation and Automation with OANDA (UPDATED!)
242 Updating the Wrapper Package (Part 1)
243 Updating the Wrapper Package (Part 2)
244 Weekend and Bank Holiday Alert
245 Historical Data, real-time Data and Orders (Recap)
246 Preview A Trader Class live in action
247 How to collect and store real-time tick data
248 Storing and resampling real-time tick data (Part 1)
249 Storing and resampling real-time tick data (Part 2)
250 Storing and resampling real-time tick data (Part 3)
251 Storing and resampling real-time tick data (Part 4)
252 Storing and resampling real-time tick data (Part 5)
253 Working with historical data and real-time tick data (Part 1)
254 Working with historical data and real-time tick data (Part 2)
255 Working with historical data and real-time tick data (Part 3)
256 Defining a simple Contrarian Strategy
257 Placing Orders and Executing Trades
258 Trade Monitoring and Reporting
259 Trading other Strategies – Coding Challenge
260 Implementing an SMA Crossover Strategy (Solution)
261 Implementing a Bollinger Bands Strategy (Solution)
262 Machine Learning Strategies (1) – Model Fitting
263 Machine Learning Strategies (2) – Implementation
264 Importing a Trader Module Class
265 Excursus Printing all ticks in a Command PromptTerminal
266 Running a Python Trader Script
267 Outlook What is (still) missing
Implementation and Automation with IBKR
268 IBKR API – Recap
269 Streaming Tick Data
270 Streaming Tick Data for multiple Symbols
271 Streaming Bar Data
272 How to create a live Candle Stick Chart
273 Preparing the Data for Day Trading
274 Improving Code Efficiency
275 Define an SMA Day Trading Strategy
276 Creating Orders and Executing Trades
277 Trade Monitoring and Reporting
278 How to Stop a Trading Session
279 Trading other Strategies – Coding Challenge
280 Running a Python Trader Script
281 Outlook What is (still) missing
Implementation and Automation with FXCM
282 Weekend and Bank Holiday Alert
283 Historical Data, real-time Data and Orders (Recap)
284 Troubleshooting FXCM Server Connection Issues
285 Preview A Trader Class live in action
286 Collecting and storing real-time tick data
287 Storing and resampling real-time tick data (Part 1)
288 A Trader Class
289 Storing and resampling real-time tick data (Part 2)
290 Storing and resampling real-time tick data (Part 3)
291 Working with historical data and real-time tick data (Part 1)
292 Working with historical data and real-time tick data (Part 2)
293 Working with historical data and real-time tick data (Part 3)
294 Defining a Simple Contrarian Trading Strategy
295 Placing Orders and Executing Trades
296 Trade Monitoring and Reporting
297 Trading other Strategies – Coding Challenge
298 SMA Crossover and Bollinger Bands (Solution)
299 Machine Learning Strategies (1) – Model Fitting
300 Machine Learning Strategies (2) – Implementation
301 Excursus Printing all ticks in a Command PromptTerminal
302 Running a Python Script
Cloud Deployment (AWS) Scheduling Trading Sessions Full Automation
303 Introduction and Motivation
304 Demonstration AWS EC2 for Algorithmic Trading live in action
305 Amazon Web Services (AWS) – Overview and how to create a Free Trial Account
306 How to create an EC2 Instance
307 How to connect to your EC2 Instance
308 Getting the Instance Ready for Algorithmic Trading
309 Weekend and Bank Holiday Alert
310 How to run Python Scripts in a Windows Command Prompt
311 How to start Trading sessions with Batch (.bat) Files
312 How to schedule Trading sessions with the Task Scheduler
313 How to stop Trading Sessions (OANDA)
314 How to stop Trading Sessions (FXCM)
+++ PART 5 Expert Tips & Tricks, Case Studies and more +++
315 Overview
316 Downloads for PART 5 Updated June 2023
Trading Hours, Spreads and Granularity – control and limit Trading Costs!
317 Introduction and Preparing the Data
318 The best time to trade (Part 1)
319 The best time to trade (Part 2)
320 Spreads during the busy hours
321 The Impact of Granularity
322 Conclusions
Working with two or many Strategies (Combination)
323 Introduction
324 Strategy 1 SMA
325 Strategy 2 Mean Reversion
326 Combining both Strategies – Alternative 1
327 Taking into account busy Trading Hours
328 Strategy Backtesting
329 Combining both Strategies – Alternative 2
330 Strategy Optimization
A Machine Learning-powered Strategy A-Z (DNN)
331 Project Overview
332 Installation of Tensorflow & Keras (Part 1)
333 Installation of Tensorflow & Keras (Part 2)
334 Getting and Preparing the Data
335 Adding LabelsFeatures
336 Adding lags
337 Splitting into Train and Test Set
338 Feature ScalingEngineering
339 Creating and Fitting the DNN Model
340 Prediction & Out-Sample Forward Testing
341 Saving Model and Parameters
342 Important Notices
343 Implementation (Oanda & FXCM)
Error Handling How to make your Trading Bot more stable and reliable
344 Introduction
345 Python Errors (Exceptions)
346 try and except
347 Catching specific Errors
348 The Exception class
349 try, except, else
350 finally
351 Try again (…until it works)
352 How to limit the number of retries
353 Waiting periods between re-tries
354 Implementation with Oanda V20 Connection Issues
355 Oanda Error Handling (Part 1)
356 Oanda Error Handling (Part 2)
357 Oanda Error Handling (Part 3)
358 Implementation with IBKR Errors and Connectivity Issues
359 IBKR Error Handling
360 Implementation with FXCM APIServer Issues
361 FXCM Error Handling (Part 1)
362 FXCM Error Handling (Part 2)
Adding Stop Loss and Take Profit to the Trading Bot
363 Introduction
364 Stop Loss Orders – Theory
365 Trailing Stop Loss Orders – Theory
366 Take Profit Orders – Theory
367 SL & TP – Use Cases and Conclusion
368 Oanda Contrader Class without Take Profit & Stop Loss (Recap)
369 Oanda How to create Stop Loss and Take Profit Orders
370 Oanda Stop Loss and Take Profit Orders – Pitfalls
371 Oanda Setting SL Distances and TP Prices in real-time
372 Oanda Check for SLTP Events
373 Oanda Adding Stop Loss & Take Profit
374 Oanda Trading Bot Final Python Script
375 IBKR Contrader Class without Take Profit & Stop Loss (Recap)
376 IBKR How to create Stop Loss and Take Profit Orders
377 IBKR Stop Loss and Take Profit Orders – Pitfalls
378 IBKR Adding Stop Loss & Take Profit
379 IBKR Trading Bot Final Python Script
+++ APPENDIX Python Crash Course +++
380 Overview
Appendix 1 Python (& Finance) Basics
381 Section Downloads Reviewed July 2024
382 Intro to the Time Value of Money (TVM) Concept (Theory)
383 Calculate Future Values (FV) with Python Compounding
384 NEW Udemy Online Coding Exercises – Intro
385 Future Value
386 Calculate Present Values (PV) with Python Discounting
387 Present Value
388 Interest Rates and Returns (Theory)
389 Calculate Interest Rates and Returns with Python
390 Interest Rates
391 Introduction to Variables
392 Variables
393 Excursus How to add inline comments
394 Variables and Memory (Theory)
395 More on Variables and Memory
396 Addition Assignment
397 Variables – Dos, Don´ts and Conventions
398 The print() Function
399 print()
400 Coding Exercise 1
401 TVM Problems with many Cashflows
402 Intro to Python Lists
403 Creating Lists
404 Zero-based Indexing and negative Indexing in Python (Theory)
405 Indexing Lists
406 Indexing Lists
407 For Loops – Iterating over Lists
408 List Iteration
409 The range Object – another Iterable
410 Iterating over range objects
411 Calculate FV and PV for many Cashflows
412 The Net Present Value – NPV (Theory)
413 Calculate an Investment Project´s NPV
414 Calculating NPV
415 Coding Exercise 2
416 Data Types in Action
417 Strings
418 The Data Type Hierarchy (Theory)
419 Excursus Dynamic Typing in Python
420 Build-in Functions
421 Functions
422 Integers
423 Floats
424 How to round Floats (and Integers) with round()
425 Rounding
426 More on Lists
427 Lists and Element-wise Operations
428 Element-wise Operations
429 Slicing Lists
430 Slicing Cheat Sheet
431 Slicing Lists
432 Changing Elements in Lists
433 Changing Lists
434 Sorting and Reversing Lists
435 Sorting Lists
436 Adding and removing Elements fromto Lists
437 Adding and Removing Elements
438 Mutable vs. immutable Objects (Part 1)
439 Mutable vs. immutable Objects (Part 2)
440 Coding Exercise 3
441 Tuples
442 Dictionaries
443 Dictionary
444 Intro to Strings
445 Capitalize Strings
446 String Replacement
447 String Replacement
448 Booleans
449 Operators (Theory)
450 Comparison, Logical and Membership Operators in Action
451 Booleans and Operators
452 Coding Exercise 4
453 Conditional Statements
454 Conditionals
455 Keywords pass, continue and break
456 Keywords
457 Calculate a Project´s Payback Period
458 Introduction to while loops
459 While Loop
460 Coding Exercise 5
Appendix 2 User-defined Functions (required for OOP)
461 Section Downloads reviewed May 2023
462 Defining your first user-defined Function
463 What´s the difference between Positional Arguments vs. Keyword Arguments
464 How to work with Default Arguments
465 The Default Argument None
466 How to unpack Iterables
467 Sequences as arguments and args
468 How to return many results
469 Scope – easily explained
470 Coding Exercise 6
Appendix 3 Numpy, Pandas, Matplotlib and Seaborn Crash Course
471 Downloads for this Section Updated July 2024
472 Modules, Packages and Libraries – No need to reinvent the Wheel
473 Numpy Arrays
474 Numpy Arrays
475 Indexing and Slicing Numpy Arrays
476 Indexing and Slicing
477 Vectorized Operations with Numpy Arrays
478 PV with vectorized Numpy Code
479 Changing Elements in Numpy Arrays & Mutability
480 View vs. copy – potential Pitfalls when slicing Numpy Arrays
481 Changing elements in Arrays (and Copies)
482 Numpy Array Methods and Attributes
483 Methods
484 Numpy Universal Functions
485 Universal Functions
486 Boolean Arrays and Conditional Filtering
487 Conditional Filtering
488 Advanced Filtering & Bitwise Operators
489 Advanced Filtering
490 Determining a Project´s Payback Period with np.where()
491 Creating Numpy Arrays from Scratch
492 Numpy Arrays from Scratch
493 Coding Exercise 7
494 How to work with nested Lists
495 dimensional Numpy Arrays
496 How to slice 2-dim Numpy Arrays (Part 1)
497 How to slice 2-dim Numpy Arrays (Part 2)
498 Recap Changing Elements in a Numpy Array slice
499 How to perform row-wise and column-wise Operations
500 Coding Exercise 8
501 Intro to Tabular Data Pandas
502 Create your very first Pandas DataFrame (from csv)
503 Loading a CSV-file into Pandas
504 Pandas Display Options and the methods head() & tail()
505 First Data Inspection
506 Summary Statistics
507 Built-in Functions, Attributes and Methods with Pandas
508 Coding Exercise 9
509 Selecting Columns
510 Selecting one Column with the dot notation
511 Selecting Columns
512 Zero-based Indexing and Negative Indexing
513 Selecting Rows with iloc (position-based indexing)
514 Slicing Rows and Columns with iloc (position-based indexing)
515 Position-based Indexing Cheat Sheets
516 Position-based Indexing 1
517 Position-based Indexing 2
518 Selecting Rows with loc (label-based indexing)
519 Slicing Rows and Columns with loc (label-based indexing)
520 Label-based Indexing Cheat Sheets
521 Label-based Indexing 1
522 Label-based Indexing 2
523 Summary, Best Practices and Outlook
524 Coding Exercise 10
525 First Steps with Pandas Series
526 Analyzing Numerical Series with unique(), nunique() and value_counts()
527 Analyzing non-numerical Series with unique(), nunique(), value_counts()
528 The copy() method
529 Sorting of Series and Introduction to the inplace – parameter
530 First Steps with Pandas Index Objects
531 Changing Row Index with set_index() and reset_index()
532 Changing Column Labels
533 Renaming Index & Column Labels with rename()
534 Filtering DataFrames (one Condition)
535 Filtering DataFrames by many Conditions (AND)
536 Filtering DataFrames by many Conditions (OR)
537 Advanced Filtering with between(), isin() and ~
538 Intro to NA Values missing Values
539 Handling NA Values missing Values
540 Exporting DataFrames to csv
541 Summary Statistics and Accumulations
542 Visualization with Matplotlib (Intro)
543 Customization of Plots
544 Histogramms (Part 1)
545 Histogramms (Part 2)
546 Scatterplots
547 First Steps with Seaborn
548 Categorical Seaborn Plots
549 Seaborn Regression Plots
550 Seaborn Heatmaps
551 Removing Columns
552 Introduction to GroupBy Operations
553 Understanding the GroupBy Object
554 Splitting with many Keys
555 split-apply-combine
What´s next (outlook and additional resources)
556 Bonus Lecture
Resolve the captcha to access the links!