Skip to main content
TopMiniSite

Back to all posts

How to Create Candlestick Chart Using Matplotlib?

Published on
5 min read
How to Create Candlestick Chart Using Matplotlib? image

Best Tools to Create Candlestick Charts to Buy in January 2026

1 12Pcs Trading Chart Pattern Posters Candlestick Pattern Poster Bulletin Board Crypto and Stock Market Trading Poster Office Decorations for Trader Investor Supplies Wall Door Decor 11 x 15.7 Inches

12Pcs Trading Chart Pattern Posters Candlestick Pattern Poster Bulletin Board Crypto and Stock Market Trading Poster Office Decorations for Trader Investor Supplies Wall Door Decor 11 x 15.7 Inches

  • COMPLETE SET: 12 POSTERS & 100 DOTS FOR EFFORTLESS SETUP AND USE.

  • STYLISH DESIGN: PROFESSIONAL BLACK BACKGROUND ENHANCES ANY TRADING SPACE.

  • DURABLE QUALITY: THICK, LAMINATED CARDS ENSURE LONGEVITY AND EASY CLEANING.

BUY & SAVE
$13.99 $14.99
Save 7%
12Pcs Trading Chart Pattern Posters Candlestick Pattern Poster Bulletin Board Crypto and Stock Market Trading Poster Office Decorations for Trader Investor Supplies Wall Door Decor 11 x 15.7 Inches
2 Day Trading Flash Cards - Stock Market Chart & Candlestick Patterns, Instructions to Trade Like a Pro!

Day Trading Flash Cards - Stock Market Chart & Candlestick Patterns, Instructions to Trade Like a Pro!

  • COMPREHENSIVE TOOLKIT FOR ALL TRADERS: 20 CHART, 34 CANDLESTICK PATTERNS.
  • QUICK RECOGNITION HELPS BOOST DECISION-MAKING IN TRADING SCENARIOS.
  • DURABLE, PORTABLE CARDS MAKE LEARNING AND TRADING CONVENIENT ON-THE-GO.
BUY & SAVE
$19.95
Day Trading Flash Cards - Stock Market Chart & Candlestick Patterns, Instructions to Trade Like a Pro!
3 Candlestick Pattern Cheat Sheet for Trading – 3-Page Durable Cardstock with 190+ Chart Patterns – Includes Candlestick and Traditional Technical Analysis for Stock, Crypto, and Forex Traders

Candlestick Pattern Cheat Sheet for Trading – 3-Page Durable Cardstock with 190+ Chart Patterns – Includes Candlestick and Traditional Technical Analysis for Stock, Crypto, and Forex Traders

  • ACCESS 190+ CANDLESTICK PATTERNS FOR FASTER TRADING INSIGHTS.
  • MAKE INFORMED BUY/SELL CALLS WITH PROVEN HISTORICAL DATA.
  • DURABLE, WATERPROOF DESIGN FOR LONG-TERM USE AT YOUR DESK.
BUY & SAVE
$19.99
Candlestick Pattern Cheat Sheet for Trading – 3-Page Durable Cardstock with 190+ Chart Patterns – Includes Candlestick and Traditional Technical Analysis for Stock, Crypto, and Forex Traders
4 Candlestick Charting Explained: Timeless Techniques for Trading Stocks and Futures

Candlestick Charting Explained: Timeless Techniques for Trading Stocks and Futures

BUY & SAVE
$31.67 $61.00
Save 48%
Candlestick Charting Explained: Timeless Techniques for Trading Stocks and Futures
5 The New Candlestick Trading Bible for Beginners: A Step by Step System with Clear Charts and Tools to Read Patterns, Build a Repeatable Method and Grow Capital Even If You Are Starting from Scratch

The New Candlestick Trading Bible for Beginners: A Step by Step System with Clear Charts and Tools to Read Patterns, Build a Repeatable Method and Grow Capital Even If You Are Starting from Scratch

BUY & SAVE
$27.99
The New Candlestick Trading Bible for Beginners: A Step by Step System with Clear Charts and Tools to Read Patterns, Build a Repeatable Method and Grow Capital Even If You Are Starting from Scratch
6 Getting Started in Candlestick Charting

Getting Started in Candlestick Charting

BUY & SAVE
$13.48 $22.95
Save 41%
Getting Started in Candlestick Charting
7 Candlesticks, Fibonacci, and Chart Pattern Trading Tools: A Synergistic Strategy to Enhance Profits and Reduce Risk (Wiley Trading)

Candlesticks, Fibonacci, and Chart Pattern Trading Tools: A Synergistic Strategy to Enhance Profits and Reduce Risk (Wiley Trading)

BUY & SAVE
$80.29 $116.00
Save 31%
Candlesticks, Fibonacci, and Chart Pattern Trading Tools: A Synergistic Strategy to Enhance Profits and Reduce Risk (Wiley Trading)
8 Technical Analysis Trading Posters Set – 11 Stock Market Chart Pattern Cheat Sheets for Traders | Candlestick Patterns, Forex & Crypto Wall Art | Price Action, Risk Reward, Divergence, Retest & Strategy Guide

Technical Analysis Trading Posters Set – 11 Stock Market Chart Pattern Cheat Sheets for Traders | Candlestick Patterns, Forex & Crypto Wall Art | Price Action, Risk Reward, Divergence, Retest & Strategy Guide

  • ELEVATE TRADING SKILLS: 11 POSTER SET FOR QUICK TECHNICAL ANALYSIS.

  • MASTER CHART PATTERNS: EASY GUIDES FOR IMPROVING ENTRY AND EXIT TIMING.

  • ENHANCE TRADING DISCIPLINE: STRUCTURED STRATEGIES FOR SMARTER DECISION-MAKING.

BUY & SAVE
$13.99
Technical Analysis Trading Posters Set – 11 Stock Market Chart Pattern Cheat Sheets for Traders | Candlestick Patterns, Forex & Crypto Wall Art | Price Action, Risk Reward, Divergence, Retest & Strategy Guide
9 The Candlestick Course

The Candlestick Course

BUY & SAVE
$28.95 $75.00
Save 61%
The Candlestick Course
+
ONE MORE?

To create a candlestick chart using matplotlib, you first need to import the necessary libraries, such as matplotlib, matplotlib.finance, and matplotlib.dates. Next, you would read in your financial data and convert it into a format that is compatible with matplotlib. Then, you can use the candlestick_ohlc function to plot the candlestick chart based on your data. Make sure to customize your chart by adding labels, titles, and adjusting the colors and styles of the candlesticks as needed. Finally, show the chart using plt.show(). Experiment with different parameters and settings to create a visually appealing and informative candlestick chart.

How to add axis labels to a candlestick chart in matplotlib?

To add axis labels to a candlestick chart in matplotlib, you can use the following code:

import matplotlib.pyplot as plt from mpl_finance import candlestick_ohlc import pandas as pd import matplotlib.dates as mdates

Create a dataframe with your data

For example:

data = {'date': ['2021-01-01', '2021-01-02', '2021-01-03'], 'open': [100, 110, 105], 'high': [120, 115, 118], 'low': [90, 105, 100], 'close': [110, 112, 115]} df = pd.DataFrame(data)

Convert date to matplotlib dates

df['date'] = pd.to_datetime(df['date']) df['date'] = df['date'].map(mdates.date2num)

Create the candlestick chart

fig, ax = plt.subplots() candlestick_ohlc(ax, zip(df['date'], df['open'], df['high'], df['low'], df['close']), width=0.6, colorup='g', colordown='r')

Set the x-axis labels

ax.xaxis_date() ax.xaxis.set_major_formatter(mdates.DateFormatter('%Y-%m-%d'))

Set the y-axis labels

plt.xlabel('Date') plt.ylabel('Price')

plt.show()

This code will create a candlestick chart using the data from the dataframe df and add axis labels for the x-axis and y-axis. You can customize the labels further by changing the plt.xlabel() and plt.ylabel() functions to suit your needs.

How to create a candlestick chart with moving averages in matplotlib?

To create a candlestick chart with moving averages in matplotlib, you can follow these steps:

  1. Import the necessary libraries:

import matplotlib.pyplot as plt import pandas as pd import matplotlib.dates as mdates from mpl_finance import candlestick_ohlc

  1. Read the data into a pandas dataframe:

data = pd.read_csv('data.csv') data['Date'] = pd.to_datetime(data['Date']) data = data.set_index('Date')

  1. Calculate the moving averages:

data['MA_20'] = data['Close'].rolling(window=20).mean() data['MA_50'] = data['Close'].rolling(window=50).mean()

  1. Create the candlestick chart with moving averages:

fig, ax = plt.subplots() ax.xaxis_date()

candlestick_ohlc(ax, zip(mdates.date2num(data.index.to_pydatetime()), data['Open'], data['High'], data['Low'], data['Close']), width=0.6, colorup='g', colordown='r')

plt.plot(data.index, data['MA_20'], label='MA 20', color='blue') plt.plot(data.index, data['MA_50'], label='MA 50', color='orange')

plt.legend() plt.show()

This code reads the data from a CSV file, calculates the moving averages, and then plots a candlestick chart with the closing prices, along with the 20-day and 50-day moving averages. You can customize the chart further by adjusting the window size for the moving averages, changing the colors, or adding additional indicators.

How to add a legend to a candlestick chart in matplotlib?

To add a legend to a candlestick chart in matplotlib, you can use the matplotlib.pyplot.legend() function. Here is an example code snippet to demonstrate how to add a legend to a candlestick chart:

import matplotlib.pyplot as plt from mplfinance.original_flavor import candlestick_ohlc import matplotlib.dates as mdates import pandas as pd

Sample data

data = { 'date': pd.date_range(start='1/1/2021', periods=10), 'open': [100, 110, 120, 130, 140, 150, 160, 170, 180, 190], 'high': [120, 130, 140, 150, 160, 170, 180, 190, 200, 210], 'low': [90, 100, 110, 120, 130, 140, 150, 160, 170, 180], 'close': [110, 120, 130, 140, 150, 160, 170, 180, 190, 200] }

df = pd.DataFrame(data)

Create a figure and an axes

fig, ax = plt.subplots()

Plot the candlestick chart

candlestick_ohlc(ax, zip(mdates.date2num(df['date']), df['open'], df['high'], df['low'], df['close']), width=0.6, colorup='g', colordown='r')

Add legend

plt.legend(['Open', 'High', 'Low', 'Close'], loc='upper left')

Display the plot

plt.show()

In this example, we first create a candlestick chart using the candlestick_ohlc() function from the mplfinance.original_flavor module. Then, we use the plt.legend() function to add a legend to the plot, specifying the labels for each data series. Finally, we display the plot using plt.show().

What is a shooting star candlestick pattern?

A shooting star candlestick pattern is a bearish reversal pattern that typically occurs at the end of an uptrend. It is characterized by a small body at the top of the candle with a long upper shadow, and little to no lower shadow. The long upper shadow indicates that the price opened high, but was unable to sustain its momentum and closed near the low of the session, suggesting a potential reversal in the trend. Traders often see the shooting star as a sign of weakness and a potential signal to sell or go short.

How to add annotations to a candlestick chart in matplotlib?

You can add annotations to a candlestick chart in matplotlib by using the annotate function. Here is an example code snippet to add annotations to a candlestick chart:

import matplotlib.pyplot as plt from mpl_finance import candlestick_ohlc import pandas as pd import numpy as np

Create a sample dataframe with OHLC data

data = {'Date': pd.date_range(start='1/1/2021', periods=10), 'Open': np.random.randint(100, 200, 10), 'High': np.random.randint(200, 300, 10), 'Low': np.random.randint(50, 100, 10), 'Close': np.random.randint(100, 200, 10)} df = pd.DataFrame(data) df['Date'] = df['Date'].apply(lambda x: x.toordinal())

Create a figure and axis

fig, ax = plt.subplots()

Plot the candlestick chart

candlestick_ohlc(ax, df.values, width=0.6, colorup='g', colordown='r')

Add annotations to the chart

for i in range(len(df)): ax.annotate(str(df['Close'][i]), (df['Date'][i], df['High'][i]), textcoords="offset points", xytext=(0,10), ha='center')

plt.show()

In this code snippet, we first create a sample dataframe with OHLC data. We then plot the candlestick chart using the candlestick_ohlc function. Next, we loop through each data point in the dataframe and add annotations to the chart using the annotate function. The annotate function takes the text to display, the position of the annotation, the position of the text relative to the position, and the horizontal alignment of the text.

You can adjust the position and formatting of the annotations as needed to customize the appearance of the annotations on your candlestick chart.