الحصول على أسعار الأسهم باستخدام Python

مرحبا يا هابر! أقدم لكم ترجمة المقال "بيانات أسعار الأسهم التاريخية في بيثون" للمؤلف إيشان شاه.

مقال حول كيفية الحصول على بيانات المخزون التاريخية اليومية باستخدام yfinance وبيانات دقيقة باستخدام alpha vantage.


كما تعلم ، الأسهم هي أداة متقلبة للغاية ومن المهم جدًا تحليل سلوك السعر بعناية قبل اتخاذ أي قرارات تداول. حسنًا ، تحتاج أولاً إلى الحصول على البيانات ويمكن أن يساعد الثعبان في ذلك.

يمكن تنزيل بيانات التبادل باستخدام حزم مختلفة. ستغطي هذه المقالة تمويل ياهو وامتياز ألفا.

تمويل ياهو


أولاً ، جرب حزمة yfianance. يمكن تثبيته باستخدام الأمر yipinance pip pip. يوضح الكود أدناه كيفية الحصول على بيانات AAPL من 2016 إلى 2019 وبناء سعر الإغلاق المعدل (سعر الإغلاق المعدل للأرباح والأقسام) على الرسم البياني.

# Import the yfinance. If you get module not found error the run !pip install yfianance from your Jupyter notebook
import yfinance as yf

# Get the data for the stock AAPL
data = yf.download('AAPL','2016-01-01','2019-08-01')

# Import the plotting library
import matplotlib.pyplot as plt
%matplotlib inline

# Plot the close price of the AAPL
data['Adj Close'].plot()
plt.show()

صورة

حسنًا ، إذا كنت بحاجة إلى الحصول على عدة مشاركات ، فأنت بحاجة إلى إضافة صغيرة إلى الرمز. يتم استخدام DataFrame لتخزين القيم. باستخدام حزمة matplotlib والبيانات المستلمة ، يمكنك إنشاء مخطط ربحية يومي.

# Define the ticker list
import pandas as pd
tickers_list = ['AAPL', 'WMT', 'IBM', 'MU', 'BA', 'AXP']

# Import pandas
data = pd.DataFrame(columns=tickers_list)

# Fetch the data

for ticker in tickers_list:
    data[ticker] = yf.download(ticker,'2016-01-01','2019-08-01')['Adj Close']

# Print first 5 rows of the data
data.head()

صورة

# Plot all the close prices
((data.pct_change()+1).cumprod()).plot(figsize=(10, 7))

# Show the legend
plt.legend()

# Define the label for the title of the figure
plt.title("Adjusted Close Price", fontsize=16)

# Define the labels for x-axis and y-axis
plt.ylabel('Price', fontsize=14)
plt.xlabel('Year', fontsize=14)

# Plot the grid lines
plt.grid(which="major", color='k', linestyle='-.', linewidth=0.5)
plt.show()

صورة

بالنسبة لقيم الأسهم الروسية ، هناك دقة طفيفة. تتم إضافة نقطة وأحرف كبيرة ME إلى اسم السهم. شكرا الخبراء على smartlab دفعت.

صورة

احصل على بيانات دقيقة مع Alpha vantage


لسوء الحظ ، لا تسمح لك النسخة المجانية من Yahoo Finance بتلقي البيانات بتردد أقل من يوميًا. لهذا ، يمكنك استخدام حزمة Alpha vantage ، والتي تسمح لك بالحصول على فترات مثل 1 دقيقة ، 5 دقائق ، 15 دقيقة ، 30 دقيقة ، 60 دقيقة.

صورة

في المستقبل ، يمكن تحليل هذه البيانات وإنشاء استراتيجية تداول وتقييم الفعالية باستخدام حزمة pyfolio. في ذلك ، يمكنك تقييم نسبة شارب ، ومعامل سورتينو ، والحد الأقصى من التخفيض والعديد من المؤشرات الضرورية الأخرى.

آمل أن تكون ترجمتي للمقالة الأصلية مفيدة لك. تم التحقق من الرمز ويعمل كل شيء. ولكن الآن ، السؤال بالنسبة لي هو إمكانية استخدام ميزة ألفا للسوق الروسية.

Source: https://habr.com/ru/post/undefined/


All Articles