Стандартная практика построения «High» и «циклоны» (вместе с «Open» и «Close) в области финансов является свечной зарисовки Следующий код должен получить вы начали намечать подсвечников:
Step 1. Импорт.
import datetime as dt
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
from matplotlib.finance import candlestick_ohlc
import pandas as pd
from pandas_datareader import data
Шаг 2. Загрузки.
start = dt.datetime(2015,1,1)
spy = data.DataReader('^GSPC', 'yahoo', start)
Вы можете легко пропустить этот шаг, если у вас уже есть данные в формате OHLC.
Шаг 3. Подготовьте свои данные.
На данный момент вы бы ваши данные в виде:
spy.head()
Open High Low Close Volume Adj Close
Date
2015-01-02 2058.899902 2072.360107 2046.040039 2058.199951 2708700000 2058.199951
2015-01-05 2054.439941 2054.439941 2017.339966 2020.579956 3799120000 2020.579956
2015-01-06 2022.150024 2030.250000 1992.439941 2002.609985 4460110000 2002.609985
2015-01-07 2005.550049 2029.609985 2005.550049 2025.900024 3805480000 2025.900024
2015-01-08 2030.609985 2064.080078 2030.609985 2062.139893 3934010000 2062.139893
Чтобы двигаться дальше, вы должны иметь свой индекс в отдельной колонке как число дат, а не в качестве метки времени, которая достигается за счет:
spy['Date2'] = spy.index.map(lambda x: mdates.date2num(x))
Шаг 4. Подсвечник черчения.
Теперь, когда у вас есть все данные на месте можно построить:
fig, ax = plt.subplots()
ax.xaxis_date()
ax.xaxis.set_major_formatter(mdates.DateFormatter("%Y-%m-%d"))
plt.xlabel("Date")
plt.ylabel("Price")
plt.title("SP500")
candlestick_ohlc(ax, spy[['Date2', 'Open', 'High', 'Low','Close']].values, width=.6, colorup='g', alpha =.4);
EDIT
Если вы все еще хотите иметь только две отдельные линии для высокого и Ниже приведена следующая строка кода:
spy[['High','Low']].plot();