import pandas as pd import numpy as np import matplotlib.pyplot
mansour65horzadeh

مشخصات معامله
قیمت در زمان انتشار:
۰.۰۰۰۶۶۳
توضیحات
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
import yfinance as yf
from datetime import datetime
# دریافت دادههای تاریخی (مثال: بیتکوین)
symbol = "BTC-USD"
start_date = "2023-01-01"
end_date = datetime.now().strftime("%Y-%m-%d")
data = yf.download(symbol, start=start_date, end=end_date)
df = data [ ].copy()
# ۱. محاسبه میانگین متحرک (MA)
def calculate_ma(df, window=20):
df = df .rolling(window=window).mean()
return df
df = calculate_ma(df, window=20)
df = calculate_ma(df, window=50)
# ۲. محاسبه RSI
def calculate_rsi(df, window=14):
delta = df .diff()
gain = (delta.where(delta > 0, 0)).rolling(window=window).mean()
loss = (-delta.where(delta < 0, 0)).rolling(window=window).mean()
rs = gain / loss
df = 100 - (100 / (1 + rs))
return df
df = calculate_rsi(df, window=14)
# ۳. محاسبه MACD
def calculate_macd(df, fast=12, slow=26, signal=9):
df = df .ewm(span=fast, adjust=False).mean()
df = df .ewm(span=slow, adjust=False).mean()
df = df - df
df = df .ewm(span=signal, adjust=False).mean()
df = df - df
return df
df = calculate_macd(df)
# ۴. رسم نمودارها
fig, axes = plt.subplots(4, 1, figsize=(14, 10), gridspec_kw={'height_ratios': })
# نمودار قیمت و MA
axes .plot(df.index, df , label='Close Price', color='black', linewidth=1)
axes .plot(df.index, df , label='MA 20', color='blue', linewidth=1)
axes .plot(df.index, df , label='MA 50', color='red', linewidth=1)
axes .set_title(f'{symbol} - Price & Moving Averages')
axes .legend()
axes .grid(True)
# نمودار RSI
axes .plot(df.index, df , label='RSI (14)', color='purple', linewidth=1)
axes .axhline(y=70, color='red', linestyle='--', linewidth=0.7)
axes .axhline(y=30, color='green', linestyle='--', linewidth=0.7)
axes .fill_between(df.index, 30, 70, alpha=0.1, color='gray')
axes .set_title('RSI Indicator')
axes .legend()
axes .grid(True)
# نمودار MACD و Signal Line
axes .plot(df.index, df , label='MACD', color='blue', linewidth=1)
axes .plot(df.index, df , label='Signal Line', color='red', linewidth=1)
axes .set_title('MACD Indicator')
axes .legend()
axes .grid(True)
# نمودار هیستوگرام MACD
axes .bar(df.index, df , label='MACD Histogram', color='gray')
axes .axhline(y=0, color='black', linewidth=0.5)
axes .set_title('MACD Histogram')
axes .legend()
axes .grid(True)
plt.tight_layout()
plt.show()
# ۵. نمایش جدول دادههای اخیر
print(df [ ].tail(10))
import numpy as np
import matplotlib.pyplot as plt
import yfinance as yf
from datetime import datetime
# دریافت دادههای تاریخی (مثال: بیتکوین)
symbol = "BTC-USD"
start_date = "2023-01-01"
end_date = datetime.now().strftime("%Y-%m-%d")
data = yf.download(symbol, start=start_date, end=end_date)
df = data [ ].copy()
# ۱. محاسبه میانگین متحرک (MA)
def calculate_ma(df, window=20):
df = df .rolling(window=window).mean()
return df
df = calculate_ma(df, window=20)
df = calculate_ma(df, window=50)
# ۲. محاسبه RSI
def calculate_rsi(df, window=14):
delta = df .diff()
gain = (delta.where(delta > 0, 0)).rolling(window=window).mean()
loss = (-delta.where(delta < 0, 0)).rolling(window=window).mean()
rs = gain / loss
df = 100 - (100 / (1 + rs))
return df
df = calculate_rsi(df, window=14)
# ۳. محاسبه MACD
def calculate_macd(df, fast=12, slow=26, signal=9):
df = df .ewm(span=fast, adjust=False).mean()
df = df .ewm(span=slow, adjust=False).mean()
df = df - df
df = df .ewm(span=signal, adjust=False).mean()
df = df - df
return df
df = calculate_macd(df)
# ۴. رسم نمودارها
fig, axes = plt.subplots(4, 1, figsize=(14, 10), gridspec_kw={'height_ratios': })
# نمودار قیمت و MA
axes .plot(df.index, df , label='Close Price', color='black', linewidth=1)
axes .plot(df.index, df , label='MA 20', color='blue', linewidth=1)
axes .plot(df.index, df , label='MA 50', color='red', linewidth=1)
axes .set_title(f'{symbol} - Price & Moving Averages')
axes .legend()
axes .grid(True)
# نمودار RSI
axes .plot(df.index, df , label='RSI (14)', color='purple', linewidth=1)
axes .axhline(y=70, color='red', linestyle='--', linewidth=0.7)
axes .axhline(y=30, color='green', linestyle='--', linewidth=0.7)
axes .fill_between(df.index, 30, 70, alpha=0.1, color='gray')
axes .set_title('RSI Indicator')
axes .legend()
axes .grid(True)
# نمودار MACD و Signal Line
axes .plot(df.index, df , label='MACD', color='blue', linewidth=1)
axes .plot(df.index, df , label='Signal Line', color='red', linewidth=1)
axes .set_title('MACD Indicator')
axes .legend()
axes .grid(True)
# نمودار هیستوگرام MACD
axes .bar(df.index, df , label='MACD Histogram', color='gray')
axes .axhline(y=0, color='black', linewidth=0.5)
axes .set_title('MACD Histogram')
axes .legend()
axes .grid(True)
plt.tight_layout()
plt.show()
# ۵. نمایش جدول دادههای اخیر
print(df [ ].tail(10))
مقالات undefined
مشاهده بیشترمنتخب سردبیر
مشاهده بیشتردستیار هوشمند ارز دیجیتال
ترمینال ترید بایتیکل نرمافزار جامع ترید و سرمایهگذاری در بازار ارز دیجیتال است و امکاناتی مانند دورههای آموزشی ترید و سرمایهگذاری، تریدینگ ویو بدون محدودیت، هوش مصنوعی استراتژی ساز ترید، کلیه دادههای بازارهای مالی شامل دادههای اقتصاد کلان، تحلیل احساسات بازار، تکنیکال و آنچین، اتصال و مدیریت حساب صرافیها و تحلیلهای لحظهای را برای کاربران فراهم میکند.

