Package: iran-stock
ایران استاکآشنایینصباستفادهوابستگی هااین برنامه چه کاری انجام می دهداین ابزار به سایت tsetmc.com متصل شده و اطلاعات نمادهای موجود در بازار سهام ایران را اعم از اطلاعات قیمتی و پارامترهای بنیادی دریافت و در قالب دیتافریم در اختیار کاربران قرار می دهد.در پیاده سازی و کدنویسی سعی ما بر این بوده که ابزار را به گونه ای طراحی کنیم که کاربر را از هرگونه پیچیدگی به دور نگه داشته و سهولت استفاده را فراهم کند. طبعا سعی ما بر این است که با حفظ همین استراتژی و به مرور زمان با توجه به نیاز کاربران به گسترش قابلیت ها و امکانات این ابزار پرداخته و در بروزرسانی هایی که
انجام می دهیم در مسیر پیشرفت و تکمیل پروژه گام برداریم.چگونه آن را نصب کنیمبرای نصب ایران-استاک کافی است که کد زیر را در مفسر پایتون خود وارد کنید تا ابزار از طریق منبع پایتون دریافت و در سیستم شما نصب شود:pipinstalliran_stockچگونه از آن استفاده کنیمدریافت سابقه قیمتیبرای دریافت سابقه قیمت ها کافی است تا نماد فارسی سهم و یا کداختصاری انگلیسی آن را در دستور زیر وارد کنید:importiran_stockastsedata=tse.get('شبندر')print(data)# OutputTickerFirstHighLowCloseValueVolOpenIntTFOpenLastData2022-01-18B.A.Oil.Refinie6300.06300.06050.06150.0488418040040794097205761D6330.06210.02022-01-17B.A.Oil.Refinie6360.06450.06220.06330.0317806034360502320543932D6250.06230.02022-01-16B.A.Oil.Refinie6250.06350.06180.06250.0296315603010473912234416D6380.06300.02022-01-15B.A.Oil.Refinie6480.06510.06250.06380.0412740989330647205305022D6440.06270.02022-01-12B.A.Oil.Refinie6400.06550.06350.06440.0351551475390546071854374D6380.06390.0...................................2012-06-30B.A.Oil.Refinie1139.01139.01139.01115.02119502455186084563D1096.01139.02012-06-27B.A.Oil.Refinie1102.01130.01086.01096.076405243282697303432728D1131.01120.02012-06-26B.A.Oil.Refinie1154.01159.01117.01131.052724280106466168852363D1163.01117.02012-06-25B.A.Oil.Refinie1160.01180.01146.01163.081667019797702422004041D1142.01150.02012-06-24B.A.Oil.Refinie1305.01305.01140.01142.07880849926816900000003292D1000.01140.0اگر تمایل دارید در زمان واحد سابقه قیمتی لیستی از چندین سهم مختلف را دریافت کنید لازم است تا نام نمادهای مورد نظر خود را درون یک لیست قرار داده و سپس لیست را به عنوان آرگومان به تابع get وارد کنید.importiran_stockastsetickers=['شبندر','ملت','فملی']data=tse.get(tickers)در هنگام دریافت اطلاعات چه در مواردی که در حال دریافت اطلاعات تک سهم هستید و چه در مواقعی که لیستی از سهم ها را برای دانلود انتخاب کرده اید، این امکان وجود دارد که محدوده داده را با کمک تعیین تاریخ شروع و پایان مشخص کنید:importiran_stockastsetickers=['شبندر','ملت','فملی']data=tse.get(tickers,start='2018-01-20',end='2022-01-01')در هنگام دریافت اطلاعات به این نکته توجه داشته باشید که سایت tsetmc دسترسی پکیج پانداس را محدود کرده و در بسیاری از موارد اجازه نمی دهد داده ها را به صورت مستقیم از طریق این پکیج دریافت کنیم. برای رفع این مشکل ابزار ایران-استاک ابتدا داده ها را به صورت خام دریافت و در قالب یک فایل ذخیره می کند. سپس فایل ذخیره شده را بازخوانی کرده و به صورت دیتافریم پانداس در اختیار کاربر قرار می دهد.دریافت اطلاعات بنیادیبرای دریافت اطلاعات بنیادی کافی است تا نماد فارسی سهم و یا کداختصاری انگلیسی آن را در دستور زیر وارد کنید:importiran_stockastsedata=tse.fund('شبندر')اگر تمایل دارید در زمان واحد اطلاعات بنیادی لیستی از چندین سهم مختلف را دریافت کنید لازم است تا نام نمادهای مورد نظر خود را درون یک لیست قرار داده و سپس لیست را به عنوان آرگومان به تابع fund وارد کنید:importiran_stockastsetickers=['شبندر','ملت','فملی']data=tse.fund(tickers)بعد از اینکه اطلاعات بنیادی سهم و یا لیستی از سهم ها را دریافت کردیم می توانید به همه اطلاعات دریافتی به صورت یکجا و یا به تک تک مولفه ها به صورت مجزا دسترسی داشته باشید. اگر می خواهیم تمام داده دریافتی را به صورت یکجا مشاهده کنید کافی است تا محتویات متغیر را چاپ کنید:print(data)# OutputvalueTickerشبندرTitleپالايشنفتبندرعباس(شبندر)Marketبازاراول(تابلويفرعي)بورسSectorفراوردههاينفتي،ككوسوختهستهايEPS1312.0PE4.7SectorPE4.9Shares134341922000FloatingPercent32.0MarketCap826202820300000AverageVolume71546867BaseVolume18633540NAV0.0و اما برای دسترسی مجزا به مولفه های دریافتی و چاپ آن ها می توانید مانند مثال زیر عمل کنید:print(data.value.Ticker)print(data.value.Title)print(data.value.Market)print(data.value.Sector)print(data.value.EPS)print(data.value.PE)print(data.value.SectorPE)print(data.value.Shares)print(data.value.FloatingPercent)print(data.value.MarketCap)print(data.value.AverageVolume)print(data.value.BaseVolume)print(data.value.NAV)کار با بانک اطلاعاتیجهت تسریع در خوانش اطلاعات و جستجوی لینک نمادهای درخواستی، ایران-استاک از یک پایگاه داده استفاده می کند که در آن لیست تمام نمادهای موجود در بازار بورس و اوراق بهادار ایران ذخیره شده است. هنگامی که برای اولین بار ایران-استاک را به کار می برید،
داده های لازم دریافت و این پایگاه داده ساخته می شود.این بانک اطلاعاتی قابلیت بروزرسانی را نیز دارد و اگر نماد جدیدی در بازار سهام درج شود، می تواند خود را با آخرین تغییرات منطبق کند. برای بروزرسانی محتوای پایگاه داده کافی است تا از دستور زیر کمک بگیرید:importiran_stockastsetse.update()اگر مایل هستید از اطلاعات ذخیره شده در این بانک اطلاعاتی مطلع شوید، دستور زیر به شما کمک خواهد کرد:importiran_stockastsedata=tse.check()print(data)# OutputIDEnTickerPrTicker051656103046466542QM02مظنه2126402398488556706QM02مظنه4216256689301150612QM03مظنه32324571827372990193QM03مظنه34450926374665517412QM04مظنه42............686525559236668122210ROBAکهربا686651200575796028449SAHRسحرخیز686757013080981487913SBBZسبز686832469128621155736ZARAمثقال686933254899395816171ZARFزرکمی بیشتراگر احساس می کنید توضیحاتی که تا اینجا در مورد چگونگی کار با ایران-استاک داده شده است، برای آشنایی با نحوه کار آن کافی نیست، می توانید به پوشه مثال ها مراجعه کرده و نمونه های بیشتری از نحوه کار با این ماژول را مشاهده کنید.عملکرد برنامه به چه ابزارهای جانبی وابسته استایران-استاک برای اینکه بتواند به وظایف خود به درستی عمل کند نیاز دارد تا ابزارهای زیر نیز در سیستم شما نصب شده باشند. البته نیاز نیست شخصا به نصب آن ها اقدام کنید زیرا هنگام نصب ایران-استاک همگی به صورت خودکار نصب خواهند شد:BeautifulSoupRequestsPandas