Mô tả

Whilst fun, Forex trading is not easy! To be successful today, you must have the ability to test strategies, automate trading and access information.


IMPORTANT:

Note: For this course, we will use the Oanda API service. It is available in most countries worldwide, however please check before purchasing the course.  You can check in video #3 called "Oanda account setup and API access"


Whether it's as a hobby or professional, this course will give you the foundation upon which you will be able to:


  • Build a live trading bot

  • Create a fast, accurate strategy testing system

  • Retrieve live headlines, sentiments, technicals and more from the web.

  • Use databases to store and correlate data with market moves

  • Build a web application showing the latest prices, sentiments and other market data

  • Learn full stack development, using MongoDB, Python and JavaScript (with React)


We will start by learning to use Python to access the Oanda REST API. Next, we'll download a few thousand candles and develop a simple strategy back test, testing multiple parameters and currency pairs at once. We'll use the results from this back test to learn how to automate the export of results into a spreadsheet format with tables and graphs.


Once the simple strategy has been tested, we'll get hold of a lot more data - six years' worth for multiple time frames. We'll rerun our simple strategy, and then move on to implementing candle pattern detection and indicator calculation. We will also look at using multi-processing to speed up the testing even more.


Now we have some more knowledge, it's time to create a more comprehensive back testing system - with spread and breaking candles down into finer time frames. For testing we will choose two strategies with over a million views on YouTube and assess whether they really give the claimed 90% win rate...


It's now time to move on to the big moment - the live trading bot. We will develop a robust trading bot that trades multiple pairs with comprehensive logging. We will structure the code such that it is easy to swap in and out strategies.


Now it's time to get more advanced and learn how stream prices live - using multi-threading with events and work queues to react to prices and make decisions


We will learn how to use Web Scraping with Python to access live sentiments, technicals, headlines and economic data. Alongside this, we'll create a MongoDB database to store our data.


Next up: React! We will use the famous framework to develop ourselves a web application that can access live prices, our sentiment data and much more.


Finally, we will deploy our trading bot on a cloud service.


The course includes a quick-start appendix for Python and for HTML/CSS/JavaScript.







Bạn sẽ học được gì

Build a robust live 24/7 trading bot with Python

Learn to use Python and multi-threading to stream live prices

Leverage multi-threading, events and work queues to make trading decisions

Build a comprehensive strategy back testing system that tests thousands of trades a second

Learn how to integrate spread and fine grain prices into your strategy testing for accurate results

Archive historical data and back test multiple instruments over a six+ year period

Learn data science techniques with Jupyter Notebooks and Pandas to analyse your results

Automate spreadsheet creation with tables and charts for further analysis

Have some fun evaluating popular YouTube strategies with promised 90% win rates

Learn to identify single, dual and multi-candle patterns

Learn to develop indicators such as MACD, RSI and Keltner Channels

Use Python to scrape the web for information to help build your strategies

Use web scraping to get live economic calendar data, headlines and sentiments

Create and interact with MongoDB to store information

Build a full featured React web application to display technicals, sentiments, headlines, prices and your bot status

Create a Flask API backend with endpoints to access technicals, sentiments, headlines, prices.. etc.

Deploy your bot to a cloud service

Learn to implement comprehensive logging

Yêu cầu

  • Some basic programming knowledge is desirable
  • Some basic computer knowledge is required - such as creating directories and installing software

Nội dung khoá học

21 sections

Introduction

2 lectures
What does intermediate mean?
03:40
What is the aim of this course?
02:10

Account Setup & Forex Trading Introduction

3 lectures
Oanda account setup and API access
05:47
How forex trading works part one
08:39
How forex trading works part 2
05:00

Environment Setup

8 lectures
Overview
00:25
Python installation
03:05
What are Python virtual environments?
03:46
Python virtual environments on Windows
05:04
Python virtual environments on Linux / Mac OS
07:58
The pip upgrade warning
01:20
Visual Studio Code and extensions
05:47
Postman
02:57

The Oanda API

7 lectures
Introduction
00:24
Oanda API documentation and authorization
02:18
Accounts endpoint
05:17
Account summary endpoint
05:56
Account instruments endpoint
05:26
Instrument Candles Endpoint
07:17
Pricing endpoint
05:05

Initial exploration with Python

15 lectures
Introduction
00:18
Jupyter Notebook setup
04:44
Our first request
06:39
The instruments API
09:49
Fetching candles #1
04:45
Fetching candles #2
05:11
Fetching candles #3
06:56
Fetching candles #4 - saving data to file
04:00
Fetching candles #5 - saving multiple instruments
04:04
The OandaApi class
04:04
Making a request from the OandaApi class
06:11
Making a request from the OandaApi class #2
05:50
Instrument class
05:17
Instrument collection class
07:14
Instrument collection class #2
03:58

The Moving Average Cross Strategy

28 lectures
Introduction
00:27
Plotting a candlestick chart with Plotly
06:55
Styling the candlestick chart
10:25
Creating a plotting class
06:32
Strategy introduction
02:35
The moving average cross
02:31
Calculating a moving average
06:49
Plotting a moving average
05:22
Plotting multiple moving averages
03:11
Calculating the deltas
04:48
Detecting Trades
05:15
Pandas and groupby
00:19
Evaluating gains (or losses)
08:35
Plotting gains over time
09:05
Moving into a script
06:08
Loading price data
05:44
Applying crosses
05:10
Calculating results for multiple instruments
07:35
The Result class
05:00
Creating results
03:46
Converting results to Dataframes
02:53
Combining all results together
05:51
Saving the results #1
06:03
Saving the results #2
07:27
Loading back test results
05:34
Do we have a winner?
06:51
Finding the best cross
05:02
How good is our chosen cross?
11:46

Automating Spreadsheets

7 lectures
Introduction
00:39
2023 xlsxwriter changes
00:13
Preparing the xlsxwriter code
07:13
Saving results to xlsx
07:56
Exporting the cumulative gains
08:19
Charting the cumulative gains
11:20
Summary
01:44

Collecting (much) more data

10 lectures
Introduction
00:27
Fetching candles from the OandaApi class
08:29
Loading candle DataFrames from the OandaApi class
07:42
Collection function definitions
07:29
Collection entry function
04:05
Date ranges
06:55
Running the data fetch from the API
06:00
Collecting a lot of data
08:35
Checking the collected data
03:00
Re-run of the moving avg. cross with six years of data.
06:28

Calculating trading indicators

7 lectures
Introduction
03:15
Bollinger bands introduction
02:22
Bollinger bands calculation
07:14
Average True Range
10:08
Keltner Channels
06:30
Relative Strength Index (RSI)
10:31
Moving Average Convergence Divergence (MACD)
07:35

Identifying candle patterns

15 lectures
Introduction
00:57
Candle characteristics
02:30
Coding candle characteristics #1
06:41
Upcoming Code - a small (one letter!) bug.
00:12
Coding candle characteristics #2
03:01
Coding candle characteristics - as a script
05:04
Hanging man / hammer
07:21
Inverted hammer
02:38
Spinning top
03:00
Marubozu
02:14
Engulfing candles
07:06
Tweezer top
08:13
Tweezer bottom
02:34
Morning / Evening star
11:12
Candle patterns script
06:29

Advanced back-testing - are the trading gurus right with 90% win rates?

29 lectures
Introduction
04:53
Guru Strategy 1 - RSI / EMA and the promise of an 85% win rate.
02:35
Guru Strategy 1 - Adding the RSI
07:13
Guru Strategy 1 - Adding EMA and Patterns
03:34
Guru Strategy 1 - Trade signals
04:07
Guru Strategy 1 - SL and TP levels
04:45
Guru Strategy 1 - Plotting the trades
07:34
Guru Strategy 1 - Simulation Trade class
08:53
Guru Strategy 1 - Trade class logic
06:36
Guru Strategy 1 - First simulation results
06:09
Guru Strategy 1 - Inspecting the results
07:46
Guru Strategy 1 - Syncing M5 and H1 candles
06:20
Guru Strategy 1 - Merging M5 and H1 candles
13:26
Guru Strategy 1 - M5 simulation results
09:18
Guru Strategy 1 - H1 simulation results with spread
08:33
Guru Strategy 1 - M5 simulation results with spread
06:01
Guru Strategy 1 - Testing Class
12:22
Guru Strategy 2 - MACD and EMA100, and a claimed 90% win rate
01:34
Guru Strategy 2 - Detecting signals
06:03
Guru Strategy 2 - Simulation results
04:12
Guru Strategy 2 - testing multiple parameters
17:12
Note for the next video
00:31
A subtle, misleading error... always check the data!
08:37
Multiprocessing vs Multithreading
03:07
Multiprocessing example
06:14
Multiprocessing batches of instruments
08:45
Simulation run with Multiprocessing
03:05
Performance
07:19
Summary
03:03

Making a live trading bot

34 lectures
Introduction
00:50
Order endpoint introduction
03:03
Order endpoint details
03:05
Order endpoint placing trades
07:11
Order endpoint placing stop order and take profit
05:41
Order endpoint details, get open trades
04:03
Order endpoint details, get a single trade and close a trade
03:42
Placing a buy trade from code
08:14
Placing a sell trade from code
01:44
Placing a stop loss and take profit from code
05:07
Close a trade from code
06:25
Fetching open trades from code
09:38
Trading bot logic outline
07:00
Setting up logging
11:15
Setting up error and main logging
02:16
Setting up the bot trading settings
09:57
Get most recent completed candle
02:11
Candle timing class
03:14
Candle manager class
05:44
Detecting new candles
08:56
Getting a trade decision
08:09
Logging new candle DataFrames
06:02
Preparing the indicator
03:22
Detecting trades
07:07
Adding stop loss and take profit
05:13
Trade Decision Class
05:02
Detecting IF we can trade
04:16
Placing trades
04:48
The bot is up and running!
02:37
Getting the live price for units calculation
08:19
Setting the risk
03:27
Calculating the units
10:47
Trading with calculated units
06:41
Conversion factors endpoint
11:38

Streaming Live Prices

17 lectures
Introduction
00:32
Streaming API
03:28
Streaming Prices
05:24
Live Price Class
04:28
Threads, Locks and Events
06:36
Creating a thread
05:43
Thread quirks with Windows vs Linux/MacOS
07:17
Stream price thread
07:57
Live API Price
02:49
Acquiring Locks
03:42
Updating Shared Prices
05:31
Firing events
01:57
Base thread class for streaming
05:29
Price Processing Class
12:49
Queues
02:01
Worker Class and a working structure
10:01
Example setup
04:23

Gathering information - web scraping

23 lectures
Introduction - important. Slight rant.
04:34
The structure of a web page
07:27
Introduction to web scraping
13:51
Example 1 - Scraping sentiment information
05:35
Loading site content
03:22
Extracting the data
06:01
Returning a DataFrame
02:32
Example 2 - Scraping some technicals
04:30
Are we human?
06:05
Are we really human? (Nov. 2022 Update)
07:38
Getting the data
03:57
Formatting the data
04:53
Collecting multiple technicals
06:39
Example 3 - Scraping News Headlines
02:04
News Headlines
06:45
Note for next video
00:16
Example 4 - Scraping an economic calendar, a new type of challenge
08:09
Working out how to make a query
06:46
Getting dates
07:48
Getting row data
04:32
Getting more row data
03:38
Collecting historical data
09:47
Using mock data files (when unable to scrape)
04:09

Databases - MongoDB

15 lectures
Introduction
00:25
Setting up MongoDB
07:09
Connecting from Python
04:52
Inserting data
08:20
Querying data, distinct values
06:54
Storing the economic data
05:13
Storing the tradeable instruments
04:06
Loading the tradeable instruments
02:12
Economic data analysis, loading candles
09:24
Economic data analysis, loading calendar data
03:22
Economic data analysis, cleaning data
03:07
Economic data analysis, fixing dates
05:58
Economic data analysis, merging data
03:40
Economic data, a little bit of analysis
06:45
Economic data analysis, charting regressions
05:45

Full stack! A ReactJS frontend and a Flask backend.

40 lectures
Introduction
00:44
Setting up a Flask server, understanding Cors
07:32
Headlines endpoint
01:54
Technicals endpoint
06:13
Pricing endpoint
06:10
Installing NodeJs
04:34
Note for next video (good old React)
00:25
Setting up the ReactJS project
03:17
How the project is structured and compiled
07:34
Editing content
07:00
Passing props, interaction with events
08:51
Installing packages
05:10
Navigation Bar
05:37
Fonts
02:19
Routes
03:27
Link component
05:02
Title component
03:11
Account endpoint
04:00
useState hook
05:04
useEffect hook
03:17
Loading account data
07:57
Account data table
06:03
Some CSS
03:00
loading headlines data
03:29
Finishing the headlines
04:12
Select component
06:45
Making a selection
04:12
Making another selection
04:21
Adding a button
04:58
Loading the technicals
04:01
Displaying the technicals
04:15
Progress bar component
07:51
Price chart data and component
12:03
Plotting the candle chart
07:08
Styling the candle chart
04:13
Adding a footer
03:58
Clean-up
03:17
Production Build
06:06
Look-up options endpoint
05:10
Look-up options frontend
08:18

Deploying the live bot to the cloud

9 lectures
Setting up a cloud server on Linode
09:46
Connecting to the remote machine
03:53
Setting up the remote machine
03:47
Python requirements file
02:51
Running on the remote machine!
07:26
Using screen to background the bot process
04:41
Running with supervisor and automating setup
12:25
Project Clean Up (a bit)
01:38
The end and thank you!
01:02

Integrating another API - 2023 Update

21 lectures
Introduction
11:06
FXOpen account creation
02:36
Creating Credentials
02:15
Initial look at the new API
06:00
Setting up the API
03:09
Account Endpoint
05:34
Symbols Endpoint
05:36
Candles Endpoint
09:28
Pricing Endpoint
04:05
API Code Setup
08:12
Instruments Gathering
15:12
Loading Candles
12:58
Trading Endpoints
12:19
Pricing and Pip Value Endpoints
06:19
Historical Data Collection
05:27
Running the original simulation code
12:56
Updating the live trading bot
13:04
Adding the web candles endpoint
01:42
Socket streaming!
14:33
Live Price Streaming
07:20
End of section (and breathe)
02:18

Appendix 1 - Python Basics

14 lectures
Introduction
00:53
Running a Python script
06:19
Variables, types and casting
12:22
Operators
05:54
Lists
07:32
Dictionaries and JSON
12:55
Conditionals
08:56
Loops
05:50
List and Dictionary comprehension
08:49
Functions
15:12
Classes
11:17
Imports
13:01
Jupyter Notebooks
11:44
Pandas
23:04

Appendix 2 - JavaScript

5 lectures
Introduction
00:56
let, var, conditionals, types, equality
11:19
functions, const, formatted strings, comments
03:55
list, object, array map
05:47
Imports and modules
04:37

Extra

1 lectures
Bonus Lecture
00:07

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.