Telegram Web Link
آشنایی با کتابخانه SciPy
سای پای یکی دیگر از کتابخانه های بی نظیر پایتون است. در واقع سای پای نسخه تکمیل شده Numpy است که در محاسباات ریاضی، اقتصادی و مالی بسیار کاربرد دارد.
مسائلی مانند تحلیل رگرسیون، بهینه یابی، محاسبات آماری، محاسبات مالی و ... به راحتی با scipy قابل انجام است.
فرض کنید می خواهیم IRR یک پروژه را با مقادیر (100 میلیون تزریق و به ترتیب 40،50 و 60 میلیون تومان بازده ) را محاسبه کنیم.
حل این مسئله به راحتی با scipy قابل انجام است.
import scipy as sp
cashflows = [-100 , 40, 50 , 60]
print (sp.irr(cashflows))


#پایتون_مالی
#سری_زمانی
# Scipy

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
روش های توزیع برنامه های پایتون
خیلی از دوستان می پرسند که خروجی پایتون بالاخره چیست؟ یعنی برای اجرای برنامه هایی که نوشتیم و توزیع آنها چه روش هایی را می توانیم استفاده کنیم؟
1- روش اول اینکه فایل های برنامه پایتون (py.*) خود را به صورت مستقیم به استفاده کننده بدهید. استفاده کننده باید پایتون را روی سیستم خود نصب کند و برنامه شما را اجرا کند، به همین سادگی! 😇
2- برنامه خود را در قالب یک نرم افزار به مخاطب تحویل بدهید. برای این منظور کتابخانه های مختلفی مانند PyQt وجود دارند که می توانید اپلیکیشن خود را مانند اپلیکیشن های ویندوزی یا لینوکسی طراحی و اجرا نمایید. 😚
3- برنامه خود را به عنوان یک وبسایت تحویل دهید. اگر کمی html و css بلد باشید به کمک ابزارهایی مانند جانگو می توانید یک وب سایت پرفکت بر پایه پایتون ایجاد کنید و برنامه خود را در آن قرار دهید.
4- امکان خروجی گرفتن از برنامه های پایتون در قالب اپ موبایل (اندروید و آی او اس) هم به سادگی مهیاست
در پست های آتی راجع به هر یک از شیوه های توزیع مفصل صحبت خواهیم کرد.


تلگرام https://www.tg-me.com/python4finance
بله https://ble.im/python4finance
آشنایی با کتابخانه Matplotlib
مصور سازی نتایج تقریبا آخرین کاری است که در محاسباتی انجام می شود. ترسیم نمودارهای دو بعدی با قابلیت های فراوان کاری است که کتابخانه Matplotlib انجام می دهد. فرض کنید می خواهیم تابع x^2 را رسم کنیم. برای این منظور با استفاده از Numpy و Matplotlib کدی مانند زیر خواهیم داشت.

import matplotlib.pyplot as plt
import numpy as np
a=np.linspace(1,100)
plt.plot(a,a**2)
plt.show()

#پایتون_مالی
#سری_زمانی
# Matplotlib

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
محاسبات آماری در پایتون
پایتون یکی از خوش دست ترین زبان ها برای انجام محاسبات آماری است. به لطف پکیج هایی مانند scipy و statistics محاسبات آماری بسیار ساده و روان انجام می شوند.
برای محاسبه میانگین، میانه ، نما ، انحراف معیار و واریانس یک نمونه از دستورات زیر استفاده می کنیم:
import statistics as st
my_data = [5,2,5,6,1,2,6,7,2,6,3,5,5]
print("The mean is: " , st.mean(my_data)) #Miangin
print("The median is: " , st.mean(my_data)) #Miane
print("The mode is: " , st.mode(my_data)) #Nama
print("The stdev is: " , st.stdev(my_data)) #Enhraf Meyar
print("The variance is: " , st.variance(my_data)) #variance
البته زیبایی کار وقتی است که محاسبات برای سری های زمانی بزرگ و معنی دار انجام شود. ان شاء الله در ادامه مفصل به این موضوع خواهیم پرداخت.

#پایتون_مالی
#محاسبات_آماری
# statistics

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
مدل سازی مالی در صنعت مالی چگونه است؟
اگر صنعت مالی را به دو بخش بانکی و غیر بانکی تقیسم کنیم، کاربرد مدلسازی مالی در بخش های مختلف در شکل بالا تصویر شده است.
در پست های آتی کاربرد پایتون در هر یک از بخش ها را به صورت مفصل توضیح خواهیم داد.

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
پایتون یا MQL، کدام را یادبگیرم؟
یکی از اهداف معامله گران حرفه ای، استفاده از سیستم هایی برای خودکار سازی فرآیندهای معاملاتی است. یکی از بهترین پلت فرم های معاملاتی که در ایران هم کاربرد زیادی دارد متاتریدر (MetaTrader) است. در این سامانه کاربران با استفاده از زبان MQL می توانند استراتژی های خود را ایجاد کرده و معاملات خودکار انجام دهند.
اخیرا به واسطه گسترش محبوبت پایتون در میان معامله گران و کارگزاران، شرکت متاکوت (سازنده متاتریدر) کتابخانه ای را برای کار پایتون در PyPi منتشر کرده است که آخرین نسخه آن (MetaTrader5 5.0.6) را می توانید از لینک زیر دانلود کنید.
لینک MetaTrader5 5.0.6 در PyPi

به کمک این کتابخانه می توانید از تمام امکانات متاتریدر در پایتون استفاده کنید و به این صورت از یادگیری MQL بی نیاز خواهید شد.


پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
کتاب تحلیل سری های زمانی در عمل با پایتون

از آنجایی که در پست های بعدی مطالبی از این کتاب را بررسی خواهیم کرد، دانلود این کتاب را به همه دوستان توصیه می نماییم.

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
@Python4Finance_Practical_time_series.pdf
11.8 MB
کتاب تحلیل سری های زمانی در عمل با پایتون

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
حل مدل های تعادل عمومی پویای تصادفی(DSGE) با پایتون
یکی از مشکلاتی که در مدلسازی های اقتصاد کلان کلاسیک با آن مواجه بودیم، ثابت در نظر گرفتن باقی متغیرها و اجرای مدل بود. این موضوع باعث می شد تا تحلیل ما تحلیل جامعی نباشد و بتوان به آن اشکالات زیادی وارد کرد. برای رفع این موضوع مدل های جدیدی در اقتصاد رایج شد که همزمان خانوار، بخش خصوصی، دولت و بخش خارجی را در نظر می گیرد و شوک های وارد به آن را محاسبه می کند. یکی از بهترین نرم افزارها برای این موضوع نرم افزار Dynare است که تحت نرم افزار Matlab مدل ها را اجرا می کند.
خوشبختانه به لطف پایتون شما می توانید مدل های DSGE خود را صرفا با پایتون و بدون نیاز به نرم افزار دیگری Run نمایید.
کتابخانه PyMacLab که کتابخانه آزمایشگاه اقتصاد کلان است به راحتی قادر است این مدل ها را برای شما حل نماید.(لینک)
در مباحث پیشرفته به معرفی مدل های DSGE و حل آن ها با پایتون خواهیم پرداخت.

#پایتون_اقتصاد
#DSGE

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
سری های زمانی در پایتون
خب، نوبت آن فرارسیده است که وارد بحث بسیار شیرین و پرکاربرد سری های زمانی در پایتون و کاربرهای عملی آن در مالی و اقتصاد بپردازیم.
اما قبل از آن لازم است تا توضیحات مختصری در این خصوص را خدمت شما عرض نماییم.
معمولا داده های آماری در سه گروه بررسی می شوند:
1- داده های سری زمانی(Time Series Data): همانطور که از نام آن بر می آید این داده ها مقادیر یک یا چند متغیر را طی یک دوره زمانی ارائه می کند. در واقع هدف اصلی در بررسی سری های زمانی ایجاد یک مدل آماری برای داده‌های وابسته به زمان براساس اطلاعات گذشته آن پدیده است.
برای پاسخ به سوالات زیر از سری های زمانی استفاده می کنیم:
الف- وضعیت تولید ناخالص داخلی ایران در مواجهه با تحریم ها چه تغییری داشته است.
ب- بهترین زمان برای خرید سهم A طی سه سال گذشته چه زمانی بوده است.
ج-چگونه ارزش شاخص سهام یک کشور با تغییر مولفه های اقتصادی کلان آن کشور تغییر می کند.
2- داده های مقطعی (Cross-Sectional Data): اگر مقادیر یک یا چند متغیر در یک برش زمانی مشخصجمع­­آوری می­شود داده های مقطعی ایجاد شده است. مثلا قیمت انواع نان در روز 28 شهریور 98 در کشور ایران
برای پاسخ به سوالات زیر از داده های مقطعی استفاده می کنیم:
الف- بازده متوسط سهام شرکت های پذیرفته شده در بورس ایران در سال 98
ب- مقایسه GDP کشورهای مختلف جهان در سال 98
3- داده های تابلویی، یا پنل یا ترکیبی (Panel Data): این نوع داده ترکیبی از دو نوع داده قبلی هستند و شامل مشاهداتی برای چندین بخش مختلف ( مثلا خانوار، بنگاه و...) هستند که در طی زمان‌های مختلف جمع‌آوری شده‌اند.
برای پاسخ به سوالات زیر از داده های پنل استفاده می کنیم:
الف- بررسی رابطه ماهیانه بین سود و بازده شرکتهای بورسی در طی 12 ماه سال 1398
ب- مقایسه GDP کشورهای مختلف از سال 1990 تا امروز

#پایتون_مالی
#انواع_داده_ها
#سری_زمانی

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
مقایسه انواع داده ها


#پایتون_مالی
#انواع_داده_ها
#سری_زمانی

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
سری های زمانی در پایتون
به طور کلی، ساختار سری های زمانی در چهار گروه قابل تفسیر است:
1- روند (Trend): تمایل سری زمانی به افزایش، کاهش یا حتی ثابت بودن را روند می گویند.
2- تناوب (Cyclic): تغییرات یکسان و تکراری در مقاطع میان‌مدت، تناوب در سری زمانی نامیده می‌شود.
3- فصل (Seasonal): در سری زمانی، تغییراتی که در دوره‌ای کوتاه‌تر از یک تناوب به صورت تکراری رخ می‌دهد، به تغییرات فصلی معروف است.
4- تغییرات پیش بینی نشده (Unexpected): اثر عامل تصادفی پیش بینی نشده بر سری زمانی را تغییرات پیش بینی نشده می نامیم. این تغییرات بعد از شناسایی توسط تحلیل گر از سری زمانی حذف می شوند در غیر اینصورت نتایج حاصل از تحلیل سری زمانی ممکن است گمراه کننده باشند. به این مورد باقیمانده یا residual هم گفته می شود.
#پایتون_مالی
#ساختار_سری_زمانی
#سری_زمانی

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
شما را به جمع متخصصین پایتون مالی ایران دعوت می کنیم.
+ آموزش پایتون، نکات ریز و ترفندها
+ کاربرد پایتون در اقتصاد و مالی
+ دانلود منابع و کتاب های آموزشی
+ آشنایی با آخرین مدل های مالی
+ استفاده از پایتون در تحلیل بورس داخل، خارج و رمز ارزها
و ...


عضویت در کانال پایتون برای مالی👇👇👇

https://www.tg-me.com/python4finance
مدلسازی گام تصادفی (Random Walk) در پایتون
فرضیه گام تصادفی (که به آن ولگشت هم گفته می شود) نمایانگر حالتی است که مقدار آتی یک متغیر وابسته به مقدار حال آن به اضافه یک مقدار تصادفی است. به عنوان مثال، مسیر طی شده توسط یک مولکول هنگام حرکت درون گاز یا مایع، مسیر حرکت یک حیوان علف‌خوار، نوسانات قیمت سهام و ...؛ مواردی است که می‌تواند با گام تصادفی مدل‌سازی شود.
xt=xt−1+wt
که wt بیانگر جزء تصادفی است که دارای خصوصیات وایت نویز است. (بعدا راجع به وایت نویز صحبت می کنیم.)
یک مدل گام تصادفی به صورت زیر در پایتون قابل پیاده سازی است.
import numpy as np
import matplotlib.pyplot as plt
x = w = np.random.normal(size=1000)
for t in range(1000):
x[t] = x[t-1] + w[t]
plt.plot(x)
plt.show()

#پایتون_مالی
#مدلسازی_سری_زمانی
#سری_زمانی

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
تفکیک بخش های یک سری زمانی
همانگونه که پیش از این اشاره شد، یکی از اهداف ما در سری های زمانی، شناخت روند، تناوب ها، تغییرات فصلی و موارد نامشخص است. یکی از کتابخانه های خوب پایتون برای کار با داده های سری زمانی کتابخانه Statsmodels است. برای مثال استخراج روند، تغییرات فصلی و موارد پیش بینی نشده در مثال فرض زیر به این صورت خواهد بود.

import numpy as np
from matplotlib import pyplot
from statsmodels.tsa.seasonal import seasonal_decompose
x = w = np.random.normal(size=100)
for t in range(100):
x[t] = x[t-1] + w[t]
result = seasonal_decompose(x, model='additive', freq=1)
result.plot()
pyplot.show()

#پایتون_مالی
#مدلسازی_سری_زمانی
#سری_زمانی

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
خود همبستگی(Auto correlation) سری زمانی
در داده هاي سري زماني، مشکل شايع خود همبستگي يا همبستگي پياپي است كه بر روي جملات اخلال در دوره هاي مختلف وجود دارد.
يکي از دلايل وجود همبستگي پياپي يا خود همبستگي اين است كه عوامل موثر از سري زماني حذف شده است، عواملي كه مانند متغيرهاي موجود در مدل مهم و با يکديگر ارتباط دارند.
import matplotlib.pyplot as plot
import numpy as np
# Time series data
data = np.array([24.40,10.25,20.05,22.00,16.90,7.80,15.00,22.80,34.90,13.30])
plot.acorr(data, maxlags=9)
plot.title('Autocorrelation of XYZ stock price data')
plot.xlabel('Lag')
plot.ylabel('Autocorrelation')
plot.show()
#پایتون_مالی
#همبستگی_سری_زمانی
#سری_زمانی

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
This media is not supported in your browser
VIEW IN TELEGRAM
میانگین متجرک چیست؟ (فیلم آموزشی)

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
میانگین متحرک (Moving Average) چیست؟
از آنجایی که امکان پیش‌بینی برای سری‌های زمانی ناایستا (Non-stationary) به راحتی امکان پذیر نیست، بهتر است عواملی که باعث خارج شدن سری زمانی از حالت ایستایی هستند، حذف شوند. به این ترتیب باید مولفه‌های شناسایی شده در سری زمانی را حذف کنیم. به این کار «هموار سازی» (Smoothing) یا «صافی» (Filtering) می‌گویند. روش‌های مختلفی برای هموارسازی سری زمانی وجود دارد. عملگرهای میانگین متحرک، هموارسازی نمایی ساده، روش‌های تفاضل‌گیری و … به حذف مولفه‌های سری زمانی کمک می‌کنند.

نگاه اقتصادی و مالی:
میانگین متحرک یکی از اندیکاتورهای مهم و مورد استفاده فراوان در تحلیل تکنیکال است که با حذف نوسانات قیمتی کمک می‌کند تا سرمایه‌گذار بتواند تصویر بهتری از متوسط قیمت و روند قیمتی را ترسیم کند.
میانگین متحرک یکی از شاخص‌های قیمتی دنباله رو است، چراکه متوسط قیمت سهام در گذشته را نشان می‌دهد (برای مثال 50، 100 یا 200 روز گذشته). دو نوع میانگین متحرک وجود دارد:

1- میانگین متحرک ساده یا Simple Moving Average
2- میانگین متوسط تصاعدی یا Exponential Moving Average

میانگین متحرک ساده تنها متوسطی از قیمت سهام در بازه زمانی مورد نظر است، ولی نحوه محاسبه میانگین متحرک تصاعدی بصورتی است که هرچه قیمت به انتهای بازه زمانی (قیمت فعلی) نزدیک‌تر می‌شود، وزن سنگین‌تری را در محاسبه میانگین ایفا میکند.
به بیانی دیگر میانگین متحرک تصاعدی همان میانگین وزنی متوسط قیمت است که قیمت‌های اخیر وزن بیشتری را در محاسبه در بر‌دارند. هرچند که نحوه محاسبه این شاخص‌ها مهم نیستند چراکه بسیاری از سایت‌ها آن را برای شما فراهم می‌کنند.

#پایتون_مالی
#میانگین_متحرک
#سری_زمانی

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
میانگین متحرک ساده (SMA)
در پایتون روش های زیادی برای محاسبه میانگین متحرک ساده وجود دارد. در این درس تابعی برای این منظور نوشته شده است که به راحتی میانگین متحرک را برای داده های فرضی ما محاسبه می کند.

#پایتون_مالی
#میانگین_متحرک
#سری_زمانی

پایتون برای مالی در تلگرام https://www.tg-me.com/python4finance
پایتون برای مالی در بله https://ble.im/python4finance
کتاب Python for Finance نگارش دوم. یک کتاب بسیار خوب برای علاقه مندان به یادگیری پایتون برای کاربردهای مالی


#پایتون_مالی
#معرفی_کتاب


پایتون برای مالی در تلگرام
https://www.tg-me.com/joinchat-AAAAAFGMkouqbsb86Vfzug
2024/09/24 21:32:54
Back to Top
HTML Embed Code: