
Explore why forex trading dominates the market with 6.6 trillion daily volume and a 2 trillion spot market, highlighting its decentralized 24/5 structure and arbitrage opportunities that vanish within milliseconds.
Learn how the decentralized forex market operates around central banks and interbank trading, and how brokers provide retail access to spot forex with leverage and spreads.
Explore Darwinex zero for safe forex testing with Mt5, build a verifiable track record, attract investor capital, and compare demo versus real trading in an affordable, regulator-backed platform.
Discover MetaTrader 5 as the core of this course and its Python API integration for building forex trading systems, including downloading MT5 and using demo and Darwinex live servers.
Explore the MetaTrader ecosystem, including MetaQuotes, MT5, and MKL, and learn how Python API integration fits with brokers, freelancing, signals, and community resources.
Meet the prerequisites for algorithmic forex trading with MT5 python api: completion of the flagship course Algorithmic Trading and Quantitative Analysis Using Python and basic python proficiency.
Explore the MT5 terminal, create a demo account, and learn to place trades with one-click and new order, while understanding pip basics and order types.
Learn to automate Mt5 trading with Python by launching the Mt5 terminal, reading credentials from key.txt, and initializing the Mt5 API to connect to the demo server.
Connect your Mt5 terminal to Darwinex zero's live trading server and use your Python trading application for live trading and backtesting.
Discover key forex terms such as pip, base currency, counter currency, leverage, and margin, and learn to interpret them using the Mt5 terminal and Mt5 API for algorithmic trading.
Learn how forex symbols work by identifying the base currency (what you buy or sell) and the counter currency (what you pay with), with lot sizes of 100,000 and a minimum 0.01 lot.
Explore the Mt5 python api to fetch and filter forex symbols with symbols_get, inspect symbol info and tick data, and compute current price as the average of bid and ask.
Learn how to define a pip, how pip moves translate to PnL, and why major pairs use 0.0001 (0.01 for yen), with examples on euro/usd and usd/jpy.
Learn to fetch pip information programmatically by using symbol info and the point value, multiplying by ten to obtain the pip for symbols like euro USD and USD JPY.
Explore how forex leverage magnifies gains and losses, illustrated by 100:1 leverage on a $1,000 deposit and a 0.01 move in EUR/USD, and discuss the risk-reward trade-off.
Understand balance, equity, and margin in the MT5 terminal, with 100:1 leverage shaping margin and unrealized PNL affecting equity for open positions.
demonstrates fetching account information with the mt5 python api via account_info, showing balance, equity, margin, and free margin, and introduces account_details for bundling data before placing orders.
Write a get_position_size function for MT5 python API to compute the optimum position size for a symbol and required per pip pnl, defaulting to 10 USD and lot size 100,000.
Align MT5 historical data with UTC by localizing times and converting between Eastern European time and UTC using pytz, ensuring data consistency across MT5 charts and Python data.
learn to fetch time zone agnostic historical data in mt5 using copy rates from position. use start position to get data till current time for backtesting without time zone complications.
Learn what technical indicators are, how to calculate them from price data in Python, and how they confirm trends with lagging signals using indicators like MACD, RSI, and Bollinger Band.
Explore how to access, insert, and download MT5 technical indicators, understand indicator families, and plan to replicate Mql5 calculations in Python using TradingView guidance.
Explore moving averages, including simple and exponential types, to smooth forex price noise and reveal trends with SMA and EMA calculations.
Implement moving averages in Python using historical close prices, building SMA and EMA functions, handling NaN values, and validating results against historical data in MT5 Python API.
MacD uses fast (12) and slow (26) moving averages to form MacD line and EMA signal line, with histogram; learn crossover signals and cautions about false positives and lag.
Implement MacD by building fast and slow EMAs, compute MacD, derive a signal EMA, and an optional histogram, then append MacD, signal, and histogram to the input dataframe.
Explore the relative strength index as a momentum oscillator, learn its 0–100 scale, 70/30 overbought/oversold levels, and practical RSI setup and interpretation on charts.
Implement RSI using an arma-based exponential moving average, compute per-period changes, gains and losses, and derive relative strength and RSI; test against usd cad historical data.
Explore the stochastic oscillator, a momentum-based indicator using percent k and percent d to measure price momentum via lookback highs and lows, signaling oversold and overbought conditions.
Implement the stochastic indicator by calculating highest highs and lowest lows over a 14-period lookback and deriving percent k and percent d with SMA, using pandas rolling.
Explore support and resistance as key price levels used by technical analysts, and learn to identify hills and valleys with Python code to determine these levels from historical forex data.
Explore how to compute support and resistance from valleys in historical data, using current price, neighborhood ranges, and a nested loop approach to identify valid levels.
Place market and limit forex orders, including pending orders, using the MT5 Python API by building a request dictionary for order_send, including action, symbol, volume, and price.
Learn to place bracket orders with the MT5 Python API by specifying stop loss and take profit as absolute prices at time, converting market or limit orders into bracket orders.
Learn to close trades in MT5 with the close function, including offsetting naked positions or targeting a specific ticket, using symbol and ticket.
Learn how to obtain your MT5 positions and open orders using the mt5.positions_get and orders_get APIs, and transform the results into a clean data frame for strategy safety.
Explore how to modify existing MT5 orders with the MT5 Python API, updating stop loss and take profit for positions and adjusting pending orders or bracket orders through trade actions.
Explore backtesting with historical data to mimic real trading conditions, account for slippage and costs, and conservatively evaluate strategies before deployment.
Develop your own intuition for forex strategies by analyzing MacD signals, testing entries and exits with support and resistance, and backtesting to refine take profit and stop loss rules.
Backtest a forex trading strategy with MT5 Python, using utility functions and MacD to generate long and short signals, then compute pips, slippage, stop loss, take profit, and trade stats.
Extend backtesting for existing long or short signals with stop loss, take profit, slippage, and pip-based returns; add MACD-based false-signal exits and end-of-data close handling.
Integrates support and resistance into a single MT5 backtesting function, using hills and valleys, configurable bars and time frame, with robust defaults.
Explore key intraday backtesting metrics for algorithmic forex trading with MT5 Python API, including absolute return in pips, win rate, mean return per winning and losing trades, and maximum drawdown.
Learn to compute backtest KPIs from trade stats and candle data, including absolute return from cumulative returns and a win rate for long and short trades.
Evaluate a forex strategy using KPIs like mean return and win rate in backtesting. Analyze pips, drawdown, and cumulative return within MT5 Python API workflows.
Backtest your forex strategy with KPI functions to compute the equity curve, max drawdown, win rate, and average pip returns, then analyze USD JPY results.
Review backtesting flow and structure, tweak strategies with time frame changes and additional indicators (MACD, RSI), and adjust support/resistance logic to balance take-profit and stop-loss.
Incorporate platform execution costs into backtesting by subtracting commissions (approx. 0.5 pip on Darwinex) and considering swap, ensuring returns reflect real trading costs across MT5 Python API setups.
Explore the macd–stochastic double cross forex strategy, using a 200-period sma trend filter, with clear long and short entry rules and simple exit signals, plus practical backtesting insights.
Backtest a MACD–stochastic double crossover strategy by adapting a MACD backtesting template, incorporating SMA, stochastic, and histogram crossovers to signal bullish and bearish entries.
Implement a backtesting signal-detection function for the MACD-stochastic double cross strategy, checking stochastic crossovers within n periods using candle data and k/d indices, and refine entry/exit logic.
Learn triple RSI strategy using a five day RSI and a 200 day moving average, entering after four RSI declines with price above 200 day MA, exiting on RSI 50.
Demonstrates backtesting a triple RSI forex strategy using SMA and RSI on four-hour data, with long/short entries and RSI-based exits, built on a double crossover backtest code.
Expand backtesting code to handle multiple forex symbols by using a dictionary to store per-symbol candle data, trades, and kpi metrics, enabling concurrent testing of a currency basket.
Deploy your backtested forex strategy with mt5 python api by optimizing position size, asset selection, asset-specific parameters, and establishing notifications and contingency plans.
Implement a risk/PNL based position sizing strategy to allocate capital per trade and nearly fix the per-pip PNL despite market moves.
Develop a Python function to compute position size from a per-pip pnl goal using MT5 symbol data, current price, and USD conversion factor, base currency, and volume step compliance.
Learn to perform correlation analysis on forex pairs using historical data and Pearson correlation to select loosely correlated assets, improving diversification and risk-reward in MT5 Python API trading.
Learn to implement email notifications for algorithmic forex trading with Python using smtplib, Gmail SMTP, TLS, and app passwords. Send customizable messages for each trading signal.
Deploy a backtested forex strategy to live MT5 trading by converting the backtesting code to deployment logic, using a symbol-specific params csv and get position size for orders.
Analyze historical data and macd on ohlc data to generate trade signals, compute position size, and place bracket order using dynamic support and resistance levels.
Generate trading signals from MacD and ohlc data to enter or exit positions, using live historical data every interval, with rls state, last completed candles, and bracket orders.
Coordinate multi-symbol forex strategy execution using a start-time clock, per-symbol pass-through, and time-frame checks (30m, 1h, 4h) within a Monday to Friday Eastern European Time window.
Deploy your MT5 Python algos to the cloud for uninterrupted, scalable trading, avoiding desktop disruptions, and paying only for resources, with AWS as the course's preferred platform.
Create a windows-based virtual machine on AWS LightSail to deploy your Mt5 trading system, choosing Windows Server 2019 and a suitable plan, then configure and connect for the trading environment.
Connect to a cloud virtual machine using remote desktop, obtain the computer name and default password, sign in as administrator, and install only essential software while expecting initial lag.
Transfer files between your local machine and the vm while optimization runs, install the mt5 terminal, and log in; install miniconda to run python with pandas, numpy, matplotlib, and pytz.
Automate your MacD support resistance strategy in MT5 Python by configuring paths and running scripts with Miniconda. Schedule weekly runs using Windows Task Scheduler and monitor console logs.
The much awaited MT5 algorithmic trading course is here!!!
Design and deploy algorithmic forex trading strategies on the MetaTrader's MT5 platform. Automate every step of your strategy including, extracting data, performing technical analysis, generating signals, placing orders, risk management etc. Gain a thorough understanding of MT5's python API and forex trading strategies. I have also included introduction to Darwinex platform in this course which provides an amazing opportunity to forex traders anywhere in the world to get funding for their successful strategies.
You can expect to gain the following skills from this course
API trading
Forex trading & forex market
Using Darwinex platform to get funding for your strategies
Extracting historical data
Extracting symbol specific data such as PIP, liquidity, minimum quantity etc.
Understanding & leveraging account related data
Incorporating technical indicators using python
End to End strategy backtesting design
Backtested strategy deployment
Running your strategies on cloud
This course aims to provide a thorough understanding of the forex market and the algorithmic trading tools required to build fully automated automated forex trading strategies. This course seeks to provide you with the required tools to deploy reasonably complex strategies on the MetaTrader5 platform and gain an edge by leveraging advanced functionalities of MT5's python API.
The course covers multiple strategies and explains how to both backtest and deploy these strategies. The course explains how such strategies can be built step by step and how the various MT5 python API tools can be used efficiently to ensure that the various parts of the strategy work harmoniously.