1133 lines
26 KiB
Plaintext
1133 lines
26 KiB
Plaintext
{
|
|
"cells": [
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 1,
|
|
"id": "4e2a9393-7767-488e-a8bf-27c12dca35bd",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"# imports\n",
|
|
"\n",
|
|
"import os\n",
|
|
"import requests\n",
|
|
"from dotenv import load_dotenv\n",
|
|
"from bs4 import BeautifulSoup\n",
|
|
"from IPython.display import Markdown, display\n",
|
|
"from openai import OpenAI\n",
|
|
"\n",
|
|
"# If you get an error running this cell, then please head over to the troubleshooting notebook!"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 2,
|
|
"id": "7b87cadb-d513-4303-baee-a37b6f938e4d",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"API key found and looks good so far!\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"# Load environment variables in a file called .env\n",
|
|
"\n",
|
|
"load_dotenv(override=True)\n",
|
|
"api_key = os.getenv('OPENAI_API_KEY')\n",
|
|
"\n",
|
|
"# Check the key\n",
|
|
"\n",
|
|
"if not api_key:\n",
|
|
" print(\"No API key was found - please head over to the troubleshooting notebook in this folder to identify & fix!\")\n",
|
|
"elif not api_key.startswith(\"sk-proj-\"):\n",
|
|
" print(\"An API key was found, but it doesn't start sk-proj-; please check you're using the right key - see troubleshooting notebook\")\n",
|
|
"elif api_key.strip() != api_key:\n",
|
|
" print(\"An API key was found, but it looks like it might have space or tab characters at the start or end - please remove them - see troubleshooting notebook\")\n",
|
|
"else:\n",
|
|
" print(\"API key found and looks good so far!\")\n"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 3,
|
|
"id": "c5e793b2-6775-426a-a139-4848291d0463",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": [
|
|
"# A class to represent a Webpage\n",
|
|
"# If you're not familiar with Classes, check out the \"Intermediate Python\" notebook\n",
|
|
"\n",
|
|
"# Some websites need you to use proper headers when fetching them:\n",
|
|
"headers = {\n",
|
|
" \"User-Agent\": \"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/117.0.0.0 Safari/537.36\"\n",
|
|
"}\n",
|
|
"\n",
|
|
"class Website:\n",
|
|
"\n",
|
|
" def __init__(self, url):\n",
|
|
" \"\"\"\n",
|
|
" Create this Website object from the given url using the BeautifulSoup library\n",
|
|
" \"\"\"\n",
|
|
" self.url = url\n",
|
|
" response = requests.get(url, headers=headers)\n",
|
|
" soup = BeautifulSoup(response.content, 'html.parser')\n",
|
|
" self.title = soup.title.string if soup.title else \"No title found\"\n",
|
|
" for irrelevant in soup.body([\"script\", \"style\", \"img\", \"input\"]):\n",
|
|
" irrelevant.decompose()\n",
|
|
" self.text = soup.body.get_text(separator=\"\\n\", strip=True)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 4,
|
|
"id": "7c7e0988-8f2d-4844-a847-eebec76b114a",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"name": "stdout",
|
|
"output_type": "stream",
|
|
"text": [
|
|
"Give short summary of the business Home\n",
|
|
"Screens\n",
|
|
"Tools\n",
|
|
"Login\n",
|
|
"Home\n",
|
|
"Screens\n",
|
|
"Tools\n",
|
|
"Create a stock screen\n",
|
|
"Run queries on 10 years of financial data\n",
|
|
"Premium features\n",
|
|
"Commodity Prices\n",
|
|
"See prices and trends of over 10,000 commodities\n",
|
|
"Search shareholders\n",
|
|
"See companies where a person holds over 1% of the shares\n",
|
|
"Latest Announcements\n",
|
|
"Browse, filter and set alerts for announcements.\n",
|
|
"Upgrade to premium\n",
|
|
"Login\n",
|
|
"Get free account\n",
|
|
"CMS Info Systems Ltd\n",
|
|
"Notebook\n",
|
|
"CMS Info Systems\n",
|
|
"Summary\n",
|
|
"Chart\n",
|
|
"Analysis\n",
|
|
"Peers\n",
|
|
"Quarters\n",
|
|
"Profit & Loss\n",
|
|
"Balance Sheet\n",
|
|
"Cash Flow\n",
|
|
"Ratios\n",
|
|
"Investors\n",
|
|
"Documents\n",
|
|
"Notebook\n",
|
|
"CMS Info Systems Ltd\n",
|
|
"₹ 431\n",
|
|
"-1.66%\n",
|
|
"24 Jan\n",
|
|
" \n",
|
|
" - close price\n",
|
|
"Export to Excel\n",
|
|
"Follow\n",
|
|
"cms.com\n",
|
|
"BSE:\n",
|
|
" 543441\n",
|
|
"NSE:\n",
|
|
" CMSINFO\n",
|
|
"About\n",
|
|
"CMS Info Systems Limited is India's largest cash management company in terms of the number of ATM points and retail pick-up points as of March 31, 2021. The company is engaged in installing, maintaining, and managing assets and technology solutions on an end-to-end outsourced basis for banks, financial institutions, organized retail and e-commerce companies in India.\n",
|
|
"Key Points\n",
|
|
"Leadership\n",
|
|
"[1]\n",
|
|
"<h1>Only Integrated Banking Solutions provider</h1>\n",
|
|
"with end-to-end offerings.\n",
|
|
"<h1>1 across Cash Logistics, AIoT in Banking and Algo MVS.</h1>\n",
|
|
"The company services leading banks like\n",
|
|
"SBI, HDFC, ICICI & Axis.\n",
|
|
"Read More\n",
|
|
"Website\n",
|
|
"BSE\n",
|
|
"NSE\n",
|
|
"Market Cap\n",
|
|
"₹\n",
|
|
"7,041\n",
|
|
"Cr.\n",
|
|
"Current Price\n",
|
|
"₹\n",
|
|
"431\n",
|
|
"High / Low\n",
|
|
"₹\n",
|
|
"616\n",
|
|
"/\n",
|
|
"355\n",
|
|
"Stock P/E\n",
|
|
"18.8\n",
|
|
"Book Value\n",
|
|
"₹\n",
|
|
"124\n",
|
|
"Dividend Yield\n",
|
|
"1.33\n",
|
|
"%\n",
|
|
"ROCE\n",
|
|
"27.5\n",
|
|
"%\n",
|
|
"ROE\n",
|
|
"20.5\n",
|
|
"%\n",
|
|
"Face Value\n",
|
|
"₹\n",
|
|
"10.0\n",
|
|
"Add ratio to table\n",
|
|
"Edit ratios\n",
|
|
"1M\n",
|
|
"6M\n",
|
|
"1Yr\n",
|
|
"3Yr\n",
|
|
"5Yr\n",
|
|
"10Yr\n",
|
|
"Max\n",
|
|
"Price\n",
|
|
"PE Ratio\n",
|
|
"Hidden\n",
|
|
"More\n",
|
|
"Sales & Margin\n",
|
|
"EV / EBITDA\n",
|
|
"Price to Book\n",
|
|
"Market Cap / Sales\n",
|
|
"Alerts\n",
|
|
"Pros\n",
|
|
"Company is almost debt free.\n",
|
|
"Company has delivered good profit growth of 30.7% CAGR over last 5 years\n",
|
|
"Company has been maintaining a healthy dividend payout of 23.7%\n",
|
|
"Cons\n",
|
|
"*\n",
|
|
"The pros and cons are machine generated.\n",
|
|
"Pros / cons are based on a checklist to highlight important points. Please exercise caution and do your own analysis.\n",
|
|
"Peer comparison\n",
|
|
"Sector:\n",
|
|
"Miscellaneous\n",
|
|
"Industry:\n",
|
|
"Miscellaneous\n",
|
|
"Part of\n",
|
|
"BSE Services\n",
|
|
"BSE Allcap\n",
|
|
"BSE SmallCap\n",
|
|
"Nifty Total Market\n",
|
|
"Nifty Microcap 250\n",
|
|
"Edit\n",
|
|
"Columns\n",
|
|
"Loading peers table ...\n",
|
|
"Detailed Comparison with:\n",
|
|
"Quarterly Results\n",
|
|
"Standalone Figures in Rs. Crores\n",
|
|
" /\n",
|
|
"View Consolidated\n",
|
|
"Sep 2021\n",
|
|
"Dec 2021\n",
|
|
"Mar 2022\n",
|
|
"Jun 2022\n",
|
|
"Sep 2022\n",
|
|
"Dec 2022\n",
|
|
"Mar 2023\n",
|
|
"Jun 2023\n",
|
|
"Sep 2023\n",
|
|
"Dec 2023\n",
|
|
"Mar 2024\n",
|
|
"Jun 2024\n",
|
|
"Sep 2024\n",
|
|
"Sales\n",
|
|
"+\n",
|
|
"326\n",
|
|
"354\n",
|
|
"399\n",
|
|
"399\n",
|
|
"417\n",
|
|
"438\n",
|
|
"449\n",
|
|
"457\n",
|
|
"487\n",
|
|
"523\n",
|
|
"581\n",
|
|
"553\n",
|
|
"577\n",
|
|
"Expenses\n",
|
|
"+\n",
|
|
"237\n",
|
|
"252\n",
|
|
"294\n",
|
|
"292\n",
|
|
"302\n",
|
|
"318\n",
|
|
"310\n",
|
|
"322\n",
|
|
"359\n",
|
|
"394\n",
|
|
"432\n",
|
|
"412\n",
|
|
"433\n",
|
|
"Operating Profit\n",
|
|
"89\n",
|
|
"102\n",
|
|
"105\n",
|
|
"107\n",
|
|
"115\n",
|
|
"120\n",
|
|
"139\n",
|
|
"134\n",
|
|
"128\n",
|
|
"129\n",
|
|
"148\n",
|
|
"141\n",
|
|
"143\n",
|
|
"OPM %\n",
|
|
"27%\n",
|
|
"29%\n",
|
|
"26%\n",
|
|
"27%\n",
|
|
"28%\n",
|
|
"27%\n",
|
|
"31%\n",
|
|
"29%\n",
|
|
"26%\n",
|
|
"25%\n",
|
|
"26%\n",
|
|
"25%\n",
|
|
"25%\n",
|
|
"Other Income\n",
|
|
"+\n",
|
|
"1\n",
|
|
"9\n",
|
|
"2\n",
|
|
"17\n",
|
|
"2\n",
|
|
"4\n",
|
|
"4\n",
|
|
"6\n",
|
|
"6\n",
|
|
"31\n",
|
|
"34\n",
|
|
"10\n",
|
|
"11\n",
|
|
"Interest\n",
|
|
"4\n",
|
|
"3\n",
|
|
"4\n",
|
|
"4\n",
|
|
"5\n",
|
|
"5\n",
|
|
"5\n",
|
|
"4\n",
|
|
"4\n",
|
|
"4\n",
|
|
"4\n",
|
|
"4\n",
|
|
"4\n",
|
|
"Depreciation\n",
|
|
"21\n",
|
|
"21\n",
|
|
"26\n",
|
|
"28\n",
|
|
"32\n",
|
|
"31\n",
|
|
"33\n",
|
|
"34\n",
|
|
"34\n",
|
|
"36\n",
|
|
"38\n",
|
|
"37\n",
|
|
"38\n",
|
|
"Profit before tax\n",
|
|
"65\n",
|
|
"87\n",
|
|
"76\n",
|
|
"91\n",
|
|
"80\n",
|
|
"89\n",
|
|
"105\n",
|
|
"102\n",
|
|
"96\n",
|
|
"121\n",
|
|
"141\n",
|
|
"110\n",
|
|
"113\n",
|
|
"Tax %\n",
|
|
"24%\n",
|
|
"24%\n",
|
|
"27%\n",
|
|
"21%\n",
|
|
"26%\n",
|
|
"25%\n",
|
|
"26%\n",
|
|
"26%\n",
|
|
"26%\n",
|
|
"20%\n",
|
|
"21%\n",
|
|
"25%\n",
|
|
"26%\n",
|
|
"Net Profit\n",
|
|
"+\n",
|
|
"49\n",
|
|
"66\n",
|
|
"56\n",
|
|
"72\n",
|
|
"59\n",
|
|
"67\n",
|
|
"77\n",
|
|
"75\n",
|
|
"71\n",
|
|
"96\n",
|
|
"111\n",
|
|
"82\n",
|
|
"84\n",
|
|
"EPS in Rs\n",
|
|
"3.31\n",
|
|
"4.48\n",
|
|
"3.64\n",
|
|
"4.68\n",
|
|
"3.86\n",
|
|
"4.33\n",
|
|
"5.01\n",
|
|
"4.88\n",
|
|
"4.55\n",
|
|
"6.16\n",
|
|
"6.84\n",
|
|
"5.03\n",
|
|
"5.15\n",
|
|
"Raw PDF\n",
|
|
"Profit & Loss\n",
|
|
"Standalone Figures in Rs. Crores\n",
|
|
" /\n",
|
|
"View Consolidated\n",
|
|
"Related Party\n",
|
|
"Mar 2017\n",
|
|
"Mar 2018\n",
|
|
"Mar 2019\n",
|
|
"Mar 2020\n",
|
|
"Mar 2021\n",
|
|
"Mar 2022\n",
|
|
"Mar 2023\n",
|
|
"Mar 2024\n",
|
|
"TTM\n",
|
|
"Sales\n",
|
|
"+\n",
|
|
"783\n",
|
|
"742\n",
|
|
"903\n",
|
|
"1,162\n",
|
|
"1,131\n",
|
|
"1,408\n",
|
|
"1,704\n",
|
|
"2,047\n",
|
|
"2,233\n",
|
|
"Expenses\n",
|
|
"+\n",
|
|
"649\n",
|
|
"620\n",
|
|
"755\n",
|
|
"932\n",
|
|
"869\n",
|
|
"1,035\n",
|
|
"1,222\n",
|
|
"1,507\n",
|
|
"1,671\n",
|
|
"Operating Profit\n",
|
|
"134\n",
|
|
"122\n",
|
|
"148\n",
|
|
"230\n",
|
|
"262\n",
|
|
"373\n",
|
|
"482\n",
|
|
"539\n",
|
|
"562\n",
|
|
"OPM %\n",
|
|
"17%\n",
|
|
"16%\n",
|
|
"16%\n",
|
|
"20%\n",
|
|
"23%\n",
|
|
"26%\n",
|
|
"28%\n",
|
|
"26%\n",
|
|
"25%\n",
|
|
"Other Income\n",
|
|
"+\n",
|
|
"7\n",
|
|
"15\n",
|
|
"18\n",
|
|
"6\n",
|
|
"14\n",
|
|
"13\n",
|
|
"27\n",
|
|
"78\n",
|
|
"86\n",
|
|
"Interest\n",
|
|
"5\n",
|
|
"1\n",
|
|
"0\n",
|
|
"7\n",
|
|
"8\n",
|
|
"14\n",
|
|
"19\n",
|
|
"16\n",
|
|
"15\n",
|
|
"Depreciation\n",
|
|
"21\n",
|
|
"21\n",
|
|
"26\n",
|
|
"48\n",
|
|
"58\n",
|
|
"88\n",
|
|
"124\n",
|
|
"142\n",
|
|
"148\n",
|
|
"Profit before tax\n",
|
|
"115\n",
|
|
"116\n",
|
|
"140\n",
|
|
"181\n",
|
|
"211\n",
|
|
"285\n",
|
|
"365\n",
|
|
"459\n",
|
|
"484\n",
|
|
"Tax %\n",
|
|
"35%\n",
|
|
"34%\n",
|
|
"35%\n",
|
|
"30%\n",
|
|
"28%\n",
|
|
"25%\n",
|
|
"25%\n",
|
|
"23%\n",
|
|
"Net Profit\n",
|
|
"+\n",
|
|
"75\n",
|
|
"76\n",
|
|
"91\n",
|
|
"128\n",
|
|
"152\n",
|
|
"213\n",
|
|
"275\n",
|
|
"354\n",
|
|
"374\n",
|
|
"EPS in Rs\n",
|
|
"5.04\n",
|
|
"5.15\n",
|
|
"6.16\n",
|
|
"8.63\n",
|
|
"10.25\n",
|
|
"13.94\n",
|
|
"17.84\n",
|
|
"21.76\n",
|
|
"23.18\n",
|
|
"Dividend Payout %\n",
|
|
"0%\n",
|
|
"0%\n",
|
|
"0%\n",
|
|
"21%\n",
|
|
"15%\n",
|
|
"18%\n",
|
|
"27%\n",
|
|
"26%\n",
|
|
"Compounded Sales Growth\n",
|
|
"10 Years:\n",
|
|
"%\n",
|
|
"5 Years:\n",
|
|
"18%\n",
|
|
"3 Years:\n",
|
|
"22%\n",
|
|
"TTM:\n",
|
|
"22%\n",
|
|
"Compounded Profit Growth\n",
|
|
"10 Years:\n",
|
|
"%\n",
|
|
"5 Years:\n",
|
|
"31%\n",
|
|
"3 Years:\n",
|
|
"32%\n",
|
|
"TTM:\n",
|
|
"29%\n",
|
|
"Stock Price CAGR\n",
|
|
"10 Years:\n",
|
|
"%\n",
|
|
"5 Years:\n",
|
|
"%\n",
|
|
"3 Years:\n",
|
|
"16%\n",
|
|
"1 Year:\n",
|
|
"11%\n",
|
|
"Return on Equity\n",
|
|
"10 Years:\n",
|
|
"%\n",
|
|
"5 Years:\n",
|
|
"19%\n",
|
|
"3 Years:\n",
|
|
"20%\n",
|
|
"Last Year:\n",
|
|
"21%\n",
|
|
"Balance Sheet\n",
|
|
"Standalone Figures in Rs. Crores\n",
|
|
" /\n",
|
|
"View Consolidated\n",
|
|
"Corporate actions\n",
|
|
"Mar 2017\n",
|
|
"Mar 2018\n",
|
|
"Mar 2019\n",
|
|
"Mar 2020\n",
|
|
"Mar 2021\n",
|
|
"Mar 2022\n",
|
|
"Mar 2023\n",
|
|
"Mar 2024\n",
|
|
"Sep 2024\n",
|
|
"Equity Capital\n",
|
|
"148\n",
|
|
"148\n",
|
|
"148\n",
|
|
"148\n",
|
|
"148\n",
|
|
"153\n",
|
|
"154\n",
|
|
"163\n",
|
|
"163\n",
|
|
"Reserves\n",
|
|
"413\n",
|
|
"522\n",
|
|
"589\n",
|
|
"686\n",
|
|
"803\n",
|
|
"1,059\n",
|
|
"1,342\n",
|
|
"1,726\n",
|
|
"1,866\n",
|
|
"Borrowings\n",
|
|
"+\n",
|
|
"7\n",
|
|
"0\n",
|
|
"0\n",
|
|
"0\n",
|
|
"0\n",
|
|
"0\n",
|
|
"0\n",
|
|
"0\n",
|
|
"181\n",
|
|
"Other Liabilities\n",
|
|
"+\n",
|
|
"161\n",
|
|
"171\n",
|
|
"197\n",
|
|
"434\n",
|
|
"580\n",
|
|
"549\n",
|
|
"500\n",
|
|
"673\n",
|
|
"533\n",
|
|
"Total Liabilities\n",
|
|
"729\n",
|
|
"842\n",
|
|
"934\n",
|
|
"1,268\n",
|
|
"1,532\n",
|
|
"1,761\n",
|
|
"1,997\n",
|
|
"2,562\n",
|
|
"2,743\n",
|
|
"Fixed Assets\n",
|
|
"+\n",
|
|
"162\n",
|
|
"162\n",
|
|
"204\n",
|
|
"328\n",
|
|
"440\n",
|
|
"637\n",
|
|
"753\n",
|
|
"727\n",
|
|
"711\n",
|
|
"CWIP\n",
|
|
"1\n",
|
|
"0\n",
|
|
"3\n",
|
|
"4\n",
|
|
"23\n",
|
|
"42\n",
|
|
"20\n",
|
|
"18\n",
|
|
"71\n",
|
|
"Investments\n",
|
|
"143\n",
|
|
"215\n",
|
|
"195\n",
|
|
"240\n",
|
|
"281\n",
|
|
"266\n",
|
|
"426\n",
|
|
"613\n",
|
|
"562\n",
|
|
"Other Assets\n",
|
|
"+\n",
|
|
"422\n",
|
|
"464\n",
|
|
"532\n",
|
|
"696\n",
|
|
"787\n",
|
|
"815\n",
|
|
"798\n",
|
|
"1,205\n",
|
|
"1,400\n",
|
|
"Total Assets\n",
|
|
"729\n",
|
|
"842\n",
|
|
"934\n",
|
|
"1,268\n",
|
|
"1,532\n",
|
|
"1,761\n",
|
|
"1,997\n",
|
|
"2,562\n",
|
|
"2,743\n",
|
|
"Cash Flows\n",
|
|
"Standalone Figures in Rs. Crores\n",
|
|
" /\n",
|
|
"View Consolidated\n",
|
|
"Mar 2017\n",
|
|
"Mar 2018\n",
|
|
"Mar 2019\n",
|
|
"Mar 2020\n",
|
|
"Mar 2021\n",
|
|
"Mar 2022\n",
|
|
"Mar 2023\n",
|
|
"Mar 2024\n",
|
|
"Cash from Operating Activity\n",
|
|
"+\n",
|
|
"121\n",
|
|
"150\n",
|
|
"74\n",
|
|
"204\n",
|
|
"100\n",
|
|
"219\n",
|
|
"382\n",
|
|
"385\n",
|
|
"Cash from Investing Activity\n",
|
|
"+\n",
|
|
"-65\n",
|
|
"-91\n",
|
|
"5\n",
|
|
"-106\n",
|
|
"-90\n",
|
|
"-284\n",
|
|
"-323\n",
|
|
"-236\n",
|
|
"Cash from Financing Activity\n",
|
|
"+\n",
|
|
"-57\n",
|
|
"-5\n",
|
|
"-29\n",
|
|
"-56\n",
|
|
"-60\n",
|
|
"2\n",
|
|
"-51\n",
|
|
"-51\n",
|
|
"Net Cash Flow\n",
|
|
"-2\n",
|
|
"55\n",
|
|
"51\n",
|
|
"42\n",
|
|
"-50\n",
|
|
"-63\n",
|
|
"9\n",
|
|
"98\n",
|
|
"Ratios\n",
|
|
"Standalone Figures in Rs. Crores\n",
|
|
" /\n",
|
|
"View Consolidated\n",
|
|
"Mar 2017\n",
|
|
"Mar 2018\n",
|
|
"Mar 2019\n",
|
|
"Mar 2020\n",
|
|
"Mar 2021\n",
|
|
"Mar 2022\n",
|
|
"Mar 2023\n",
|
|
"Mar 2024\n",
|
|
"Debtor Days\n",
|
|
"57\n",
|
|
"56\n",
|
|
"54\n",
|
|
"70\n",
|
|
"137\n",
|
|
"111\n",
|
|
"97\n",
|
|
"118\n",
|
|
"Inventory Days\n",
|
|
"49\n",
|
|
"212\n",
|
|
"169\n",
|
|
"82\n",
|
|
"182\n",
|
|
"149\n",
|
|
"233\n",
|
|
"238\n",
|
|
"Days Payable\n",
|
|
"329\n",
|
|
"603\n",
|
|
"318\n",
|
|
"363\n",
|
|
"642\n",
|
|
"610\n",
|
|
"763\n",
|
|
"806\n",
|
|
"Cash Conversion Cycle\n",
|
|
"-223\n",
|
|
"-335\n",
|
|
"-95\n",
|
|
"-211\n",
|
|
"-324\n",
|
|
"-349\n",
|
|
"-433\n",
|
|
"-450\n",
|
|
"Working Capital Days\n",
|
|
"63\n",
|
|
"49\n",
|
|
"49\n",
|
|
"21\n",
|
|
"35\n",
|
|
"60\n",
|
|
"57\n",
|
|
"58\n",
|
|
"ROCE %\n",
|
|
"19%\n",
|
|
"20%\n",
|
|
"24%\n",
|
|
"24%\n",
|
|
"28%\n",
|
|
"28%\n",
|
|
"28%\n",
|
|
"Shareholding Pattern\n",
|
|
"Numbers in percentages\n",
|
|
"Quarterly\n",
|
|
"Yearly\n",
|
|
"Trades\n",
|
|
"Mar 2022\n",
|
|
"Jun 2022\n",
|
|
"Sep 2022\n",
|
|
"Dec 2022\n",
|
|
"Mar 2023\n",
|
|
"Jun 2023\n",
|
|
"Sep 2023\n",
|
|
"Dec 2023\n",
|
|
"Mar 2024\n",
|
|
"Jun 2024\n",
|
|
"Sep 2024\n",
|
|
"Dec 2024\n",
|
|
"Promoters\n",
|
|
"+\n",
|
|
"63.38%\n",
|
|
"63.16%\n",
|
|
"63.01%\n",
|
|
"60.98%\n",
|
|
"60.24%\n",
|
|
"46.48%\n",
|
|
"26.69%\n",
|
|
"26.69%\n",
|
|
"0.00%\n",
|
|
"0.00%\n",
|
|
"0.00%\n",
|
|
"0.00%\n",
|
|
"FIIs\n",
|
|
"+\n",
|
|
"9.54%\n",
|
|
"10.40%\n",
|
|
"10.61%\n",
|
|
"12.46%\n",
|
|
"13.12%\n",
|
|
"15.27%\n",
|
|
"23.76%\n",
|
|
"23.76%\n",
|
|
"36.34%\n",
|
|
"40.21%\n",
|
|
"39.99%\n",
|
|
"37.95%\n",
|
|
"DIIs\n",
|
|
"+\n",
|
|
"11.09%\n",
|
|
"11.65%\n",
|
|
"12.09%\n",
|
|
"12.14%\n",
|
|
"12.57%\n",
|
|
"20.96%\n",
|
|
"23.98%\n",
|
|
"23.43%\n",
|
|
"29.01%\n",
|
|
"28.40%\n",
|
|
"26.66%\n",
|
|
"27.03%\n",
|
|
"Public\n",
|
|
"+\n",
|
|
"15.99%\n",
|
|
"14.78%\n",
|
|
"14.30%\n",
|
|
"14.43%\n",
|
|
"14.04%\n",
|
|
"17.27%\n",
|
|
"25.56%\n",
|
|
"26.13%\n",
|
|
"34.65%\n",
|
|
"31.40%\n",
|
|
"33.35%\n",
|
|
"35.01%\n",
|
|
"No. of Shareholders\n",
|
|
"1,43,091\n",
|
|
"1,30,634\n",
|
|
"1,18,270\n",
|
|
"1,09,201\n",
|
|
"1,14,003\n",
|
|
"1,20,804\n",
|
|
"1,43,365\n",
|
|
"1,54,547\n",
|
|
"1,68,942\n",
|
|
"1,60,764\n",
|
|
"1,77,142\n",
|
|
"1,74,847\n",
|
|
"Mar 2022\n",
|
|
"Mar 2023\n",
|
|
"Mar 2024\n",
|
|
"Dec 2024\n",
|
|
"Promoters\n",
|
|
"+\n",
|
|
"63.38%\n",
|
|
"60.24%\n",
|
|
"0.00%\n",
|
|
"0.00%\n",
|
|
"FIIs\n",
|
|
"+\n",
|
|
"9.54%\n",
|
|
"13.12%\n",
|
|
"36.34%\n",
|
|
"37.95%\n",
|
|
"DIIs\n",
|
|
"+\n",
|
|
"11.09%\n",
|
|
"12.57%\n",
|
|
"29.01%\n",
|
|
"27.03%\n",
|
|
"Public\n",
|
|
"+\n",
|
|
"15.99%\n",
|
|
"14.04%\n",
|
|
"34.65%\n",
|
|
"35.01%\n",
|
|
"No. of Shareholders\n",
|
|
"1,43,091\n",
|
|
"1,14,003\n",
|
|
"1,68,942\n",
|
|
"1,74,847\n",
|
|
"* The classifications might have changed from Sep'2022 onwards.\n",
|
|
"The new XBRL format added more details from Sep'22 onwards.\n",
|
|
"Classifications such as banks and foreign portfolio investors were not available earlier. The sudden changes in FII or DII can be because of these changes.\n",
|
|
"Click on the line-items to see the names of individual entities.\n",
|
|
"Documents\n",
|
|
"Announcements\n",
|
|
"Recent\n",
|
|
"Important\n",
|
|
"Search\n",
|
|
"All\n",
|
|
"Disclosures under Reg. 29(1) of SEBI (SAST) Regulations, 2011\n",
|
|
"14h\n",
|
|
"Announcement under Regulation 30 (LODR)-Newspaper Publication\n",
|
|
"18 Jan - Newspaper publications for Postal Ballot Notice dated 16th January, 2025\n",
|
|
"Shareholder Meeting / Postal Ballot-Notice of Postal Ballot\n",
|
|
"17 Jan - Postal ballot notice for appointment of Independent Director.\n",
|
|
"Change In The Name Of Registrar And Share Transfer Agent.\n",
|
|
"2 Jan - Change of name of Registrar and Share Transfer Agent.\n",
|
|
"Closure of Trading Window\n",
|
|
"30 Dec\n",
|
|
"Annual reports\n",
|
|
"Financial Year 2024\n",
|
|
"from bse\n",
|
|
"Financial Year 2023\n",
|
|
"from bse\n",
|
|
"Financial Year 2022\n",
|
|
"from bse\n",
|
|
"Financial Year 2022\n",
|
|
"from nse\n",
|
|
"DRHP\n",
|
|
"Credit ratings\n",
|
|
"Rating update\n",
|
|
"25 Jan 2024 from icra\n",
|
|
"Rating update\n",
|
|
"22 Mar 2023 from icra\n",
|
|
"Rating update\n",
|
|
"26 Sep 2022 from icra\n",
|
|
"Rating update\n",
|
|
"15 Jul 2021 from icra\n",
|
|
"Rating update\n",
|
|
"18 Feb 2020 from icra\n",
|
|
"Rating update\n",
|
|
"8 Jan 2019 from icra\n",
|
|
"Concalls\n",
|
|
"Add Missing\n",
|
|
"Oct 2024\n",
|
|
"Transcript\n",
|
|
"Notes\n",
|
|
"PPT\n",
|
|
"REC\n",
|
|
"Jul 2024\n",
|
|
"Transcript\n",
|
|
"Notes\n",
|
|
"PPT\n",
|
|
"REC\n",
|
|
"May 2024\n",
|
|
"Transcript\n",
|
|
"Notes\n",
|
|
"PPT\n",
|
|
"REC\n",
|
|
"Jan 2024\n",
|
|
"Transcript\n",
|
|
"Notes\n",
|
|
"PPT\n",
|
|
"Oct 2023\n",
|
|
"Transcript\n",
|
|
"Notes\n",
|
|
"PPT\n",
|
|
"Jul 2023\n",
|
|
"Transcript\n",
|
|
"Notes\n",
|
|
"PPT\n",
|
|
"May 2023\n",
|
|
"Transcript\n",
|
|
"Notes\n",
|
|
"PPT\n",
|
|
"REC\n",
|
|
"Feb 2023\n",
|
|
"Transcript\n",
|
|
"Notes\n",
|
|
"PPT\n",
|
|
"Nov 2022\n",
|
|
"Transcript\n",
|
|
"Notes\n",
|
|
"PPT\n",
|
|
"Aug 2022\n",
|
|
"Transcript\n",
|
|
"Notes\n",
|
|
"PPT\n",
|
|
"May 2022\n",
|
|
"Transcript\n",
|
|
"Notes\n",
|
|
"PPT\n",
|
|
"Feb 2022\n",
|
|
"Transcript\n",
|
|
"Notes\n",
|
|
"PPT\n",
|
|
"Stock analysis and screening tool\n",
|
|
"Mittal Analytics Private Ltd © 2009-2024\n",
|
|
"Made with\n",
|
|
"in India.\n",
|
|
"Data provided by C-MOTS Internet Technologies Pvt Ltd\n",
|
|
"Terms\n",
|
|
"&\n",
|
|
"Privacy\n",
|
|
".\n",
|
|
"Product\n",
|
|
"Premium\n",
|
|
"What's new?\n",
|
|
"Learn\n",
|
|
"Install\n",
|
|
"Team\n",
|
|
"About us\n",
|
|
"Support\n",
|
|
"Theme\n",
|
|
"Light\n",
|
|
"Dark\n",
|
|
"Auto\n",
|
|
"Mittal Analytics Private Ltd © 2009-2024\n",
|
|
"Data provided by C-MOTS Internet Technologies Pvt Ltd\n",
|
|
"Terms\n",
|
|
"&\n",
|
|
"Privacy\n",
|
|
". and recommend pros and cons of the business in bullet points alongwith recommendation to buy or sell\n"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"website = \"https://www.screener.in/company/CMSINFO/\"\n",
|
|
"biz = Website(website)\n",
|
|
"user_prompt = \"Give short summary of the business \" + biz.text +\" and recommend pros and cons of the business in bullet points alongwith recommendation to buy or sell\"\n",
|
|
"print(user_prompt)"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": 5,
|
|
"id": "00743dac-0e70-45b7-879a-d7293a6f68a6",
|
|
"metadata": {},
|
|
"outputs": [
|
|
{
|
|
"ename": "NameError",
|
|
"evalue": "name 'openai' is not defined",
|
|
"output_type": "error",
|
|
"traceback": [
|
|
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
|
|
"\u001b[1;31mNameError\u001b[0m Traceback (most recent call last)",
|
|
"Cell \u001b[1;32mIn[5], line 18\u001b[0m\n\u001b[0;32m 10\u001b[0m messages \u001b[38;5;241m=\u001b[39m [\n\u001b[0;32m 11\u001b[0m {\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mrole\u001b[39m\u001b[38;5;124m\"\u001b[39m: \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124msystem\u001b[39m\u001b[38;5;124m\"\u001b[39m, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mcontent\u001b[39m\u001b[38;5;124m\"\u001b[39m: system_prompt},\n\u001b[0;32m 12\u001b[0m {\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mrole\u001b[39m\u001b[38;5;124m\"\u001b[39m: \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124muser\u001b[39m\u001b[38;5;124m\"\u001b[39m, \u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mcontent\u001b[39m\u001b[38;5;124m\"\u001b[39m: user_prompt}\n\u001b[0;32m 13\u001b[0m ]\n\u001b[0;32m 14\u001b[0m \u001b[38;5;66;03m# Step 3: Call OpenAI\u001b[39;00m\n\u001b[0;32m 15\u001b[0m \n\u001b[0;32m 16\u001b[0m \u001b[38;5;66;03m# To give you a preview -- calling OpenAI with system and user messages:\u001b[39;00m\n\u001b[1;32m---> 18\u001b[0m response \u001b[38;5;241m=\u001b[39m \u001b[43mopenai\u001b[49m\u001b[38;5;241m.\u001b[39mchat\u001b[38;5;241m.\u001b[39mcompletions\u001b[38;5;241m.\u001b[39mcreate(model\u001b[38;5;241m=\u001b[39m\u001b[38;5;124m\"\u001b[39m\u001b[38;5;124mgpt-4o-mini\u001b[39m\u001b[38;5;124m\"\u001b[39m, messages\u001b[38;5;241m=\u001b[39mmessages)\n\u001b[0;32m 19\u001b[0m \u001b[38;5;66;03m# Step 4: print the result\u001b[39;00m\n\u001b[0;32m 21\u001b[0m \u001b[38;5;28mprint\u001b[39m(response\u001b[38;5;241m.\u001b[39mchoices[\u001b[38;5;241m0\u001b[39m]\u001b[38;5;241m.\u001b[39mmessage\u001b[38;5;241m.\u001b[39mcontent)\n",
|
|
"\u001b[1;31mNameError\u001b[0m: name 'openai' is not defined"
|
|
]
|
|
}
|
|
],
|
|
"source": [
|
|
"# Step 1: Create your prompts\n",
|
|
"website = \"https://www.screener.in/company/CMSINFO/\"\n",
|
|
"biz = Website(website)\n",
|
|
"\n",
|
|
"system_prompt = \"You are an equity research analyst. Analyze the content of the website and give a summary of the business\"\n",
|
|
"user_prompt = \"Give short summary of the business \" + biz.text +\" and recommend pros and cons of the business in bullet points alongwith recommendation to buy or sell\"\n",
|
|
"\n",
|
|
"# Step 2: Make the messages list\n",
|
|
"\n",
|
|
"messages = [\n",
|
|
" {\"role\": \"system\", \"content\": system_prompt},\n",
|
|
" {\"role\": \"user\", \"content\": user_prompt}\n",
|
|
"]\n",
|
|
"# Step 3: Call OpenAI\n",
|
|
"\n",
|
|
"# To give you a preview -- calling OpenAI with system and user messages:\n",
|
|
"\n",
|
|
"response = openai.chat.completions.create(model=\"gpt-4o-mini\", messages=messages)\n",
|
|
"# Step 4: print the result\n",
|
|
"\n",
|
|
"print(response.choices[0].message.content)\n"
|
|
]
|
|
},
|
|
{
|
|
"cell_type": "code",
|
|
"execution_count": null,
|
|
"id": "d9edf96e-1190-44fe-9261-405709fb39cd",
|
|
"metadata": {},
|
|
"outputs": [],
|
|
"source": []
|
|
}
|
|
],
|
|
"metadata": {
|
|
"kernelspec": {
|
|
"display_name": "Python 3 (ipykernel)",
|
|
"language": "python",
|
|
"name": "python3"
|
|
},
|
|
"language_info": {
|
|
"codemirror_mode": {
|
|
"name": "ipython",
|
|
"version": 3
|
|
},
|
|
"file_extension": ".py",
|
|
"mimetype": "text/x-python",
|
|
"name": "python",
|
|
"nbconvert_exporter": "python",
|
|
"pygments_lexer": "ipython3",
|
|
"version": "3.11.11"
|
|
}
|
|
},
|
|
"nbformat": 4,
|
|
"nbformat_minor": 5
|
|
}
|