Scraper Обновлено: 29 April, 2018

Сбор торговых данных с помощью библиотеки Pandas as

  Перевод   Ссылка на автора

«Уличный знак, указывающий на Уолл-стрит в черно-белом» Крис Ли на Unsplash

Панды библиотека с открытым исходным кодом, предоставляющая высокопроизводительные, простые в использовании структуры данных и инструменты анализа данных для питон язык программирования. Pandas является одним из самых популярных инструментов для разработки торговой стратегии, потому что Pandas имеет широкий спектр утилит для сбора, обработки и анализа данных и т. Д.

Для количественных аналитиков, которые верят в торговлю, им нужен доступ к цене и объему акций, чтобы они могли рассчитать комбинацию технических индикаторов (например, SMA, BBP, MACD и т. Д.) Для стратегии. К счастью, такие данные доступны на многих платформах (например, IEX, Quandl через API REST. К счастью, pandas_datareader предоставляет простой и удобный API для сбора данных с этих платформ. В этой истории я расскажу, как собирать данные о запасах с помощью Pandas.

Условие: Python 3

Шаг 1: Настройка среды (виртуальная среда)

python3 -m venv tutorial-env
source ~/tutorial-env/bin/activate
pip install panda
pip install pandas_datareader
pip install matplotlib
pip install scipy

(Не забудьте активировать среду `source ~ / tutorial-env / bin / activ` или выбрать виртуальную среду в вашей IDE)

Шаг 2: Код (выборка данных и дамп в CSV-файл)

import matplotlib.pyplot as plt
import pandas_datareader.data as web
# collect data for Amazon from 2017-04-22 to 2018-04-22
start = '2017-04-22'
end = '2018-04-22'
df = web.DataReader(name='AMZN', data_source='iex', start=start, end=end)
print(df)
df.to_csv("~/workspace/{}.csv".format(symbol))

Вывод Dataframe

open       high        low    close    volume
date
2017-04-24 908.680 909.9900 903.8200 907.41 3122893
2017-04-25 907.040 909.4800 903.0000 907.62 3380639
2017-04-26 910.300 915.7490 907.5600 909.29 2608948
2017-04-27 914.390 921.8600 912.1100 918.38 5305543
2017-04-28 948.830 949.5900 924.3335 924.99 7364681
2017-05-01 927.800 954.4000 927.8000 948.23 5466544
2017-05-02 946.645 950.1000 941.4130 946.94 3848835
2017-05-03 946.000 946.0000 935.9000 941.03 3582686
2017-05-04 944.750 945.0000 934.2150 937.53 2418381
...

В этом примере соответствующий файл csv сохраняется в выходном каталоге (~ / workspace / AMZN.csv).

Шаг 3: Визуализируйте, что было собрано с помощью matplotlib

# select only close column
close = df[['close']]
# rename the column with symbole name
close = close.rename(columns={'close': symbol})
ax = close.plot(title='Amazon')
ax.set_xlabel('date')
ax.set_ylabel('close price')
ax.grid()
plt.show()

Это оно! Теперь вы загрузили данные о запасах для анализа.

Весь пример

import pandas_datareader.data as web
import matplotlib.pyplot as plt

# collect data for Amazon from 2017-04-22 to 2018-04-22
start = '2017-04-22'
end = '2018-04-22'
symbol='AMZN'
df = web.DataReader(name=symbol, data_source='iex', start=start, end=end)
df.index = df.index.to_datetime()
print(df)
df.to_csv("~/workspace/{}.csv".format(symbol))
# select only close column
close = df[['close']]
# rename the column with symbole name
close = close.rename(columns={'close': symbol})
ax = close.plot(title='Amazon')
ax.set_xlabel('date')
ax.set_ylabel('close price')
ax.grid()
plt.show()

Больше анализа данных с Пандами можно найти Вот!

И последнее, если вы чувствуете себя более комфортно с Excel и хотите легко анализировать акции, Гуан Мо имеет после о сборе данных с Intrinio Excel надстройка.


Рекомендуемое чтение:

Что на самом деле делают хедж-фонды (Канадская ссылка)

Python для анализа данных: обработка данных с помощью Pandas, NumPy и IPython (Канада Ссылка)

Практическое машинное обучение (Канада Ссылка)


Мои посты:

Полное руководство по разработке стека: обслуживание торговых данных с помощью REST API без сервера, работающего на AWS Lambda

Полное руководство по разработке стека: визуализация торговых данных на Angular SPA (1)

Как инвестиционный выбор Millennials по сравнению с Motley Fool Stock Advisor

Как я могу leetcode на 6 месяцев и получить работу в Amazon

Глубокий взгляд на то, какие технологии являются горячими для ИТ-рабочих мест в банках

Торговая стратегия: бэк-тестирование с Backtrader

Усиление обучения: введение в Q обучения

Торговая стратегия: технический анализ с Python TA-Lib

Оптимизация портфеля для минимального риска с Scipy - объяснил эффективную границу

Снижение риска путем создания портфолио

Торговля: Рассчитать индикаторы технического анализа с помощью панд 🐼

Собирайте торговые данные с помощью панд

Сбор торговых данных с помощью библиотеки Pandas as