
Explore algorithmic trading and quantitative finance by extracting intraday to monthly data via APIs and web scraping, applying technical and fundamental analyses, backtesting, and building automated trading bots in Python.
Brush up basic Python skills and libraries like numpy, pandas, and matplotlib. Gain familiarity with trading terms such as high, low, candlesticks, stop loss, and going long or short.
This course targets an audience—from traders seeking to automate trading strategies to engineers and data scientists handling streaming financial data—excluding high frequency trading and focusing on medium to high latency.
Learn to seek effective help for intermediate Python trading analytics by framing precise questions, using the Q&A forum, Stack Overflow, GitHub, and library documentation to troubleshoot issues efficiently.
Install the Anaconda distribution, use conda or pip to install libraries like pandas and scikit-learn, and learn why a virtual environment matters in the next lecture.
Create and activate a dedicated virtual environment to isolate project libraries, avoiding conflicts from the base environment and library version changes, and install essential tools like Spyder and Jupyter Notebook.
Explore gathering historical stock data including open, high, low, close, and volume with Yahoo Finance, and learn to retrieve it programmatically using a Python library over APIs.
Learn how to fetch open, high, low, close, and volume data from Yahoo Finance using the yfinance library, with ticker symbols, start/end dates or period, and intraday intervals.
Learn to fetch data for multiple stocks with yfinance, using Yahoo Finance tickers (including non-US), data frames, and dictionaries to store adjusted close prices.
Introduce Alpha Vantage as a free data source for intraday and daily time series, and show obtaining an API key and fetching data with a Python wrapper that outputs pandas.
Learn to fetch data for multiple tickers with the Alpha Vantage Python library, creating a timecards object, pulling daily and intraday data, and managing API rate limits.
Compare API-based data extraction with web scraping, outlining efficiency and cost differences. Discuss legal gray areas and how sites may block scraping, yet scraping remains a viable non-commercial option.
Learn the basics of HTML and how web scraping retrieves financial data, from understanding HTML tags and structure to static vs dynamic pages and basic scraping challenges.
Learn to extract financial data from Yahoo Finance using Python, requests, and BeautifulSoup, scraping income statements, balance sheets, and cash flow tables for analysis.
Learn to scrape full financial statements from Yahoo Finance for multiple tickers, including non-US stocks, and organize income statement, balance sheet, and cash flow data into pandas data frames.
Learn to web scrape Yahoo Finance key statistics with Python, extracting market cap, enterprise value, and p/e from tables for multiple tickers and value investing strategies.
Master scraping dynamic web pages with selenium to access hidden Yahoo Finance data behind drop-downs, and learn to install selenium and Chrome driver for automated data extraction.
Learn to perform web scraping with Python and Selenium by launching a Chrome WebDriver, navigating to a URL, and extracting table data using XPath.
Learn to scrape dynamic web pages by using Selenium to click on buttons and reveal hidden rows, extract table data, and convert numbers to numeric types for analysis.
Learn to handle missing values in stock price data using fillna and dropna in a data frame, with backfill and forward fill, and manage axis and in-place updates.
Store closing prices in a data frame, compute mean, standard deviation, median, and descriptive statistics for numeric columns; derive daily returns using percentage_change or a shift-based method.
Explore rolling operations in pandas to compute moving means and standard deviations, compare simple and exponential moving averages, and understand window, minimum period, and weighting for quantitative finance.
Explore basics of visualizing financial data with data frames using a one-line plot function, including subplots, layout, and titles; compare stocks via cumulative returns to reveal performance.
Learn to start with matplotlib in Python, create bar charts using figure and axes, set titles and labels, customize colors and styles, compare mean return and standard deviation of stocks.
Learn what technical indicators are and how to call them in Python to analyze trends and confirm signals, noting lagging vs leading indicators and the efficient market hypothesis.
explore how charting platforms visualize assets with line and candlestick charts, adjustable intervals, and overlaid technical indicators such as simple moving average and exponential moving average, preparing for Python-based analysis.
Learn the macd overview, built from 12 and 26 day moving averages with a 9-day signal line, where crossovers signal bullish or bearish trends; histogram aids interpretation.
Implement MACD in python by computing fast and slow EMAs and a nine-period signal line with pandas. Use 15-minute yahoo finance data and verify apples-to-apples results against trading view.
Explore bollinger bands and atr (average true range) to quantify market volatility using moving averages and standard deviation; interpret band expansions and use atr to gauge price variability.
Demonstrates implementing the average true range in python by computing true range from high, low, and prior close, then smoothing with an exponential moving average across multiple tickers.
implement bollinger bands in python by computing 20-day moving average as the middle band and adding two standard deviation to create the upper and lower bands, returning the band values.
Learn about the relative strength index, a momentum oscillator that measures price momentum on a 0 to 100 scale, signals oversold and overbought near 30 and 70, with Excel calculations.
Implement RSI in python by computing price change, gains and losses, and using exponential moving averages with alpha one over period to derive the RSI with pandas dataframes.
Discover the adx, the average directional index, and how it measures trend strength on a 0–100 scale. Grasp directional movement from highs and lows and its Excel and Python implementations.
Explore the adx indicator in excel by calculating true range and directional movement, applying 14-period smoothing, and deriving di, dx, and adx values to quantify trends.
Implement and validate the ADX in Python by computing plus and minus directional movement, applying exponential moving averages, and deriving the ADX, while highlighting cross-platform smoothing differences.
Explore Renko charts, a non-standard time interval indicator that uses fixed brick sizes to reveal trends and reversals, reduce noise, and guide sizing with etr.
Learn how to transform candlestick data into Renko bricks in Python using the Stock Trends library, with brick size set via ADR (three times) for five-minute and hourly data.
Explore ta-lib, a comprehensive python technical analysis library with pre-built indicators for macd, rsi, adx, and strong pattern recognition, despite documentation and installation challenges.
Learn how to install TA-Lib and apply its pattern recognition tools in Python, navigate 32-bit/64-bit compatibility, and automate indicators like ADX on OHLC data.
Examine backtesting to evaluate a trading strategy's historical performance, noting slippage and costs. Identify KPIs like CAGR, volatility, Sharpe ratio, maximum drawdown, and Calmar ratio for risk and return.
Compute the compound annual growth rate (CAGR) from ending and beginning values using a one-year period, and implement the formula in Python. CAGR does not reflect risk across strategies.
Calculate the CAGR of a buy-and-hold strategy in Python by extracting data with y finance, computing daily returns, building cumulative returns, and annualizing with 1 over trading years.
Measure volatility with the standard deviation of returns and annualize it for a risk metric. Understand its normal distribution assumption and tail risk, and how to implement it in Python.
Calculate daily returns, compute their standard deviation, and annualize volatility using NumPy’s sqrt(252) to compare Amazon, Google, and Microsoft.
learn how the sharpe ratio links excess return to volatility using a risk-free rate. evaluate the sortino ratio's downside risk critique and its relevance in backtesting strategies.
Implement sharpe and sortino ratios in python by calculating returns and volatility from data frames, adjusting for the risk-free rate, and handling negative returns for Amazon.
Explore maximum drawdown and calama ratio as key risk metrics, linking peak-to-trough declines, compounded annual return, time-horizon comparisons, leverage effects, and backtesting.
Implement maximum drawdown and calama ratio in Python by computing daily returns, building cumulative and rolling max series, and deriving drawdowns to evaluate stocks like Amazon, Google, and Microsoft.
Learn how to backtest trading strategies by applying rules to historical data, accounting for slippage and brokerage costs, and adopting conservative scenarios before deploying in real markets.
Explore backtesting a simple portfolio rebalancing strategy by selecting top M stocks from a defined universe using monthly returns, with fixed positions, survivorship bias, and Python code.
Implement a Python backtesting workflow for monthly Dow Jones portfolio rebalancing, selecting six stocks and replacing the three worst performers each month. Compare results to a buy-and-hold benchmark.
Explore intraday resistance breakout strategies by recognizing a breached resistance level accompanied by a volume spike, and apply a breakout rule with stop losses and ADR-based exits in Python-backed backtesting.
Implement an intraday breakout strategy in Python using Alpha1 data, ETR stop loss, five-minute candles and between_time filtering, with rolling indicators and per-ticker backtested signals and returns.
Backtest a breakout strategy in Python by iterating over tickers candle by candle, identifying signals, applying stop losses, and computing intraday returns with technical indicators.
Demonstrates an intraday Renko-OBV trading strategy, using Renko bars and the OBV indicator to identify uptrends, with Python implementation to reconcile differing chart axes and generate long and short signals.
Merge renko bar signals with OPV indicators in Python, align irregular time frames, and generate buy/sell signals while evaluating cagr and drawdown.
Develop a Renko and MACD based trading strategy for high-volume stocks. Translate McGeady and signal line crossovers into a Python backtested implementation with short-term slope filters for buys and sells.
Combine Rengo and Magleby using the Magleby function and the McGeady rate to produce Mockbee and signal for backtesting, with buy-sell logic and signal interpretation.
Explore fundamental analysis to identify undervalued stocks by examining balance sheets, income statements, and cash flows, then use quantitative methods like Greenblatt's magic formula and Petroskey f score with Python.
Explore Joel Greenblatt's magic formula, using ROIC and earnings yield to find wonderful stocks at bargain prices, excluding finance, and build a monthly top-stock portfolio with periodic rebalancing.
Implement the magic formula in Python on Dow Jones stocks by extracting and cleaning financial statements, computing earning yield and return on capital, and ranking top value stocks.
Explore the Piotroski F-score, a nine-point value investing filter using profitability, leverage, liquidity, and operating efficiency to rank stocks from zero to nine.
Learn to implement the Piotroski F-score in Python by scraping three years of Yahoo Finance data, building year-specific dataframes, and computing assets-based metrics to rank stocks.
Build an automated trading system that extracts data, analyzes it, and automatically executes and closes trades via restful APIs, with periodic scheduling and backtesting.
Use the Python time module to run a trading script at fixed intervals with system time and time.sleep. Generate a random 1–25 input and compute its Fibonacci number recursively.
Explore MetaTrader 5 as a platform for algorithmic trading, using its Python API to run scripts and test on a robust demo account.
Explore the MT5 terminal setup, demo account creation, and core trading workflows—placing orders, viewing market data, and charting—while noting Windows limitations and future Python API coverage.
Establish a Python connection to the Mt5 terminal by installing the MetaTrader five package, reading login details from key.txt, and initializing with the terminal path for the demo server.
Extract historical MT5 data with the copy rates from function by specifying symbol, timeframe, date from, and count; convert it to a pandas data frame with a datetime index.
Learn to place Mt5 orders with the python api via order_send, using a request dictionary for market and pending orders (symbol, volume, price).
Master mt5 positions_get and orders_get calls to fetch positions and open orders, convert results to a data frame, and monitor symbol, time, volume, and price for strategy safety.
Implement a template forex strategy using mt5 api calls with renko and macd signals. Adapt for forex and use code-base indicators with renko and macd crossovers for entries and exits.
Explore how Darwinex and Darwinex zero enable traders to deploy strategies, attract investment, and monetize performance through a monthly subscription, with a live webinar featuring the CEO.
Darwinex matches algorithmic traders with capital by packaging trades into a risk-adjusted index for third-party investments, paying traders 15% of a 20% success fee.
Deploy your Python-based trading algorithms to the cloud to run continuously, gain reliability, scalability, and pay-as-you-go resources, and avoid desktop limitations and outages.
Launch an aws ec2 instance by selecting an operating system, such as Amazon Linux or Ubuntu, in the Mumbai region. Configure a security group and key pair to enable ssh.
Connect to the EC2 instance via browser-based connectivity or a local terminal, then adjust security group inbound rules and secure the pen file by restricting permissions.
Connect to the EC2 instance via SSH using an identity file and the instance IP. Install Python 3 and pip, then add libraries one by one to avoid dependency conflicts.
Transfer your local python files to an EC2 instance using SCP with an identity key, copy recursively, then verify folder contents and run your trading scripts on the remote instance.
Automate Python scripts with crontab on Linux by creating an automation script, making it executable, verifying the cron daemon, and scheduling jobs with crontab.
Learn to track and manage running Python processes in Linux by identifying process IDs with ps and grep, killing unwanted jobs, and using screen for a persistent visual interface.
Learn how to manage long-running Python processes with cron and screen, attach and detach sessions, and monitor and terminate tasks using ps and grep on Linux.
Learn how to shut down or terminate EC2 instances to stop charges, choose between stopping, rebooting, or permanently deleting, and understand data loss and timing.
Build a fully automated trading bot on a shoestring budget. Learn quantitative analysis of financial data using python. Automate steps like extracting data, performing technical and fundamental analysis, generating signals, backtesting, API integration etc. You will learn how to code and back test trading strategies using python. The course will also give an introduction to relevant python libraries required to perform quantitative analysis. The USP of this course is delving into API trading and familiarizing students with how to fully automate their trading strategies.
You can expect to gain the following skills from this course
Extracting daily and intraday data for free using APIs and web-scraping
Working with JSON data
Incorporating technical indicators using python
Performing thorough quantitative analysis of fundamental data
Value investing using quantitative methods
Visualization of time series data
Measuring the performance of your trading strategies
Incorporating and backtesting your strategies using python
API integration of your trading script
FXCM and OANDA API
Sentiment Analysis