Sector Refresh Log

← Back to sectors

Last refresh: 2026-09-14 10:16

Started: 2026-09-14T10:13:07.141581+05:30

=== Running sector_yearly_returns.py ===
DHAN_CLIENT_ID loaded as: ******1107
DHAN_ACCESS_TOKEN loaded as: ***********************************************************************************************************************************************************************************************************************************************************************************************************************************nIkw

Incremental run - found existing data for 14 sector(s).

Fetching NIFTY 50 (security_id=13) from 2026-07-01 ...
Fetching NIFTY BANK (security_id=25) from 2026-07-01 ...
Fetching NIFTY AUTO (security_id=14) from 2026-07-01 ...
Fetching NIFTY FMCG (security_id=28) from 2026-07-01 ...
Fetching NIFTY IT (security_id=29) from 2026-07-01 ...
Fetching NIFTY METAL (security_id=31) from 2026-07-01 ...
Fetching NIFTY PHARMA (security_id=32) from 2026-07-01 ...
Fetching NIFTY PSU BANK (security_id=33) from 2026-07-01 ...
Fetching NIFTY PVT BANK (security_id=15) from 2026-07-01 ...
Fetching NIFTY REALTY (security_id=34) from 2026-07-01 ...
Fetching NIFTY ENERGY (security_id=42) from 2026-07-01 ...
Fetching NIFTY FIN SERVICE (security_id=27) from 2026-07-01 ...
Fetching NIFTY MEDIA (security_id=30) from 2026-07-01 ...
Fetching NIFTY DEFENCE (security_id=493) from 2026-07-01 ...

Saved: /root/scripts/sector_yearly_returns.csv
Saved: /root/scripts/sector_monthly_returns.csv

      NIFTY 50  NIFTY BANK  NIFTY AUTO  NIFTY FMCG  NIFTY IT  NIFTY METAL  NIFTY PHARMA  NIFTY PSU BANK  NIFTY PVT BANK  NIFTY REALTY  NIFTY ENERGY  NIFTY FIN SERVICE  NIFTY MEDIA  NIFTY DEFENCE
Year                                                                                                                                                                                              
2026    -10.51       -5.20       -4.13      -16.13    -24.23        15.49         17.23           -2.58           -4.70         -4.16          6.84              -7.67         6.13          25.84
2025     10.12       16.94       23.08       -5.79    -11.99        30.28         -3.53           30.93           15.64        -14.93          0.22              17.13       -20.96          18.12
2024      9.20        5.86       24.44       -0.48     21.51         8.00         39.15           13.71            0.15         32.30          5.62              10.08       -24.60            NaN
2023     20.09       12.21       47.44       29.70     24.72        18.98         33.83           33.31           13.69         82.17         29.67              13.04        22.02            NaN
2022      4.33       21.15       15.31       17.54    -26.04        21.76        -11.43           70.67           21.17        -10.81         14.31               9.52       -10.22            NaN
2021     23.79       13.63       17.95        9.27     58.25        69.44          9.39           39.83            4.92         53.02         33.32              14.14        33.75            NaN
2020     15.07       -2.73       12.94       13.75     55.55        16.55         61.57          -28.37           -2.91          6.23          6.18               4.19        -7.54            NaN
2019     11.66       17.20      -10.59       -0.54      8.80       -10.82         -9.40          -19.47           15.07         25.41         11.43              24.54       -30.30            NaN
2018      4.55        8.19      -22.77       13.91     24.95       -20.00         -7.65          -14.72            9.78        -31.69          1.48              12.80       -25.63            NaN
2017     27.48       39.28       30.07       28.58     11.22        47.75         -6.32           23.37           39.61        110.28         37.65              40.05        32.58            NaN
2016      2.80        6.68        9.77        2.82     -6.94        44.92        -14.30            2.53             NaN         -5.97         19.51               4.45        -0.64            NaN
2015     -3.87       -9.13        0.11        0.63     -0.36       -32.04          9.67          -32.28             NaN        -13.42         -0.42              -4.81        10.48            NaN

=== Running stock_returns_by_sector.py ===
Loading Dhan equity instrument master ...
  9856 NSE equity instruments loaded.

=== NIFTY 50 ===
  50 official constituents from https://www.niftyindices.com/IndexConstituent/ind_nifty50list.csv
  Incremental run - 50 stock(s) already have data.
    OK ADANIENT (security_id=25, from 2026-07-01)
    OK ADANIPORTS (security_id=15083, from 2026-07-01)
    OK APOLLOHOSP (security_id=157, from 2026-07-01)
    OK ASIANPAINT (security_id=236, from 2026-07-01)
    OK AXISBANK (security_id=5900, from 2026-07-01)
    OK BAJAJ-AUTO (security_id=16669, from 2026-07-01)
    OK BAJFINANCE (security_id=317, from 2026-07-01)
    OK BAJAJFINSV (security_id=16675, from 2026-07-01)
    OK BEL (security_id=383, from 2026-07-01)
    OK BHARTIARTL (security_id=10604, from 2026-07-01)
    OK CIPLA (security_id=694, from 2026-07-01)
    OK COALINDIA (security_id=20374, from 2026-07-01)
    OK DRREDDY (security_id=881, from 2026-07-01)
    OK EICHERMOT (security_id=910, from 2026-07-01)
    OK ETERNAL (security_id=5097, from 2026-07-01)
    OK GRASIM (security_id=1232, from 2026-07-01)
    OK HCLTECH (security_id=7229, from 2026-07-01)
    OK HDFCBANK (security_id=1333, from 2026-07-01)
    OK HDFCLIFE (security_id=467, from 2026-07-01)
    OK HINDALCO (security_id=1363, from 2026-07-01)
    OK HINDUNILVR (security_id=1394, from 2026-07-01)
    OK ICICIBANK (security_id=4963, from 2026-07-01)
    OK ITC (security_id=1660, from 2026-07-01)
    OK INFY (security_id=1594, from 2026-07-01)
    OK INDIGO (security_id=11195, from 2026-07-01)
    OK JSWSTEEL (security_id=11723, from 2026-07-01)
    OK JIOFIN (security_id=18143, from 2026-07-01)
    OK KOTAKBANK (security_id=1922, from 2026-07-01)
    OK LT (security_id=11483, from 2026-07-01)
    OK M&M (security_id=2031, from 2026-07-01)
    OK MARUTI (security_id=10999, from 2026-07-01)
    OK MAXHEALTH (security_id=22377, from 2026-07-01)
    OK NTPC (security_id=11630, from 2026-07-01)
    OK NESTLEIND (security_id=17963, from 2026-07-01)
    OK ONGC (security_id=2475, from 2026-07-01)
    OK POWERGRID (security_id=14977, from 2026-07-01)
    OK RELIANCE (security_id=2885, from 2026-07-01)
    OK SBILIFE (security_id=21808, from 2026-07-01)
    OK SHRIRAMFIN (security_id=4306, from 2026-07-01)
    OK SBIN (security_id=3045, from 2026-07-01)
    OK SUNPHARMA (security_id=3351, from 2026-07-01)
    OK TCS (security_id=11536, from 2026-07-01)
    OK TATACONSUM (security_id=3432, from 2026-07-01)
    OK TMPV (security_id=3456, from 2026-07-01)
    OK TATASTEEL (security_id=3499, from 2026-07-01)
    OK TECHM (security_id=13538, from 2026-07-01)
    OK TITAN (security_id=3506, from 2026-07-01)
    OK TRENT (security_id=1964, from 2026-07-01)
    OK ULTRACEMCO (security_id=11532, from 2026-07-01)
    OK WIPRO (security_id=3787, from 2026-07-01)
  Saved: /root/scripts/stock_returns_nifty_50.csv
  Saved: /root/scripts/stock_returns_nifty_50_monthly.csv

=== NIFTY BANK ===
  14 official constituents from https://www.niftyindices.com/IndexConstituent/ind_niftybanklist.csv
  Incremental run - 14 stock(s) already have data.
    OK AUBANK (security_id=21238, from 2026-07-01)
    OK AXISBANK (security_id=5900, from 2026-07-01)
    OK BANKBARODA (security_id=4668, from 2026-07-01)
    OK CANBK (security_id=10794, from 2026-07-01)
    OK FEDERALBNK (security_id=1023, from 2026-07-01)
    OK HDFCBANK (security_id=1333, from 2026-07-01)
    OK ICICIBANK (security_id=4963, from 2026-07-01)
    OK IDFCFIRSTB (security_id=11184, from 2026-07-01)
    OK INDUSINDBK (security_id=5258, from 2026-07-01)
    OK KOTAKBANK (security_id=1922, from 2026-07-01)
    OK PNB (security_id=10666, from 2026-07-01)
    OK SBIN (security_id=3045, from 2026-07-01)
    OK UNIONBANK (security_id=10753, from 2026-07-01)
    OK YESBANK (security_id=11915, from 2026-07-01)
  Saved: /root/scripts/stock_returns_nifty_bank.csv
  Saved: /root/scripts/stock_returns_nifty_bank_monthly.csv

=== NIFTY AUTO ===
  15 official constituents from https://www.niftyindices.com/IndexConstituent/ind_niftyautolist.csv
  + 3 extra stock(s) from your watchlist (not in the official index): ESCORTS, BALKRISIND, APOLLOTYRE
  Incremental run - 15 stock(s) already have data.
    OK ASHOKLEY (security_id=212, from 2026-07-01)
    OK BAJAJ-AUTO (security_id=16669, from 2026-07-01)
    OK BHARATFORG (security_id=422, from 2026-07-01)
    OK BOSCHLTD (security_id=2181, from 2026-07-01)
    OK EICHERMOT (security_id=910, from 2026-07-01)
    OK EXIDEIND (security_id=676, from 2026-07-01)
    OK HEROMOTOCO (security_id=1348, from 2026-07-01)
    OK M&M (security_id=2031, from 2026-07-01)
    OK MARUTI (security_id=10999, from 2026-07-01)
    OK MOTHERSON (security_id=4204, from 2026-07-01)
    OK SONACOMS (security_id=4684, from 2026-07-01)
    OK TVSMOTOR (security_id=8479, from 2026-07-01)
    OK TMPV (security_id=3456, from 2026-07-01)
    OK TIINDIA (security_id=312, from 2026-07-01)
    OK UNOMINDA (security_id=14154, from 2026-07-01)
    OK ESCORTS* (security_id=958, from 2015-01-01)
    OK BALKRISIND* (security_id=335, from 2015-01-01)
    OK APOLLOTYRE* (security_id=163, from 2015-01-01)
  Saved: /root/scripts/stock_returns_nifty_auto.csv
  Saved: /root/scripts/stock_returns_nifty_auto_monthly.csv

=== NIFTY FMCG ===
  15 official constituents from https://www.niftyindices.com/IndexConstituent/ind_niftyfmcglist.csv
  + 3 extra stock(s) from your watchlist (not in the official index): TRENT, AWL, ABFRL
  Incremental run - 15 stock(s) already have data.
    OK BRITANNIA (security_id=547, from 2026-07-01)
    OK COLPAL (security_id=15141, from 2026-07-01)
    OK DABUR (security_id=772, from 2026-07-01)
    OK EMAMILTD (security_id=13517, from 2026-07-01)
    OK GODREJCP (security_id=10099, from 2026-07-01)
    OK HINDUNILVR (security_id=1394, from 2026-07-01)
    OK ITC (security_id=1660, from 2026-07-01)
    OK MARICO (security_id=4067, from 2026-07-01)
    OK NESTLEIND (security_id=17963, from 2026-07-01)
    OK PATANJALI (security_id=17029, from 2026-07-01)
    OK RADICO (security_id=10990, from 2026-07-01)
    OK TATACONSUM (security_id=3432, from 2026-07-01)
    OK UBL (security_id=16713, from 2026-07-01)
    OK UNITDSPR (security_id=10447, from 2026-07-01)
    OK VBL (security_id=18921, from 2026-07-01)
    OK TRENT* (security_id=1964, from 2015-01-01)
    OK AWL* (security_id=8110, from 2015-01-01)
    OK ABFRL* (security_id=30108, from 2015-01-01)
  Saved: /root/scripts/stock_returns_nifty_fmcg.csv
  Saved: /root/scripts/stock_returns_nifty_fmcg_monthly.csv

=== NIFTY IT ===
  10 official constituents from https://www.niftyindices.com/IndexConstituent/ind_niftyitlist.csv
  + 5 extra stock(s) from your watchlist (not in the official index): LTIM, LTTS, NAUKRI, TATAELXSI, BSOFT
  Incremental run - 10 stock(s) already have data.
    OK COFORGE (security_id=11543, from 2026-07-01)
    OK HCLTECH (security_id=7229, from 2026-07-01)
    OK INFY (security_id=1594, from 2026-07-01)
    OK LTM (security_id=17818, from 2026-07-01)
    OK MPHASIS (security_id=4503, from 2026-07-01)
    OK OFSS (security_id=10738, from 2026-07-01)
    OK PERSISTENT (security_id=18365, from 2026-07-01)
    OK TCS (security_id=11536, from 2026-07-01)
    OK TECHM (security_id=13538, from 2026-07-01)
    OK WIPRO (security_id=3787, from 2026-07-01)
    SKIP LTIM: not found in Dhan equity instrument master
    OK LTTS* (security_id=18564, from 2015-01-01)
    OK NAUKRI* (security_id=13751, from 2015-01-01)
    OK TATAELXSI* (security_id=3411, from 2015-01-01)
    OK BSOFT* (security_id=6994, from 2015-01-01)
  Saved: /root/scripts/stock_returns_nifty_it.csv
  Saved: /root/scripts/stock_returns_nifty_it_monthly.csv

=== NIFTY METAL ===
  15 official constituents from https://www.niftyindices.com/IndexConstituent/ind_niftymetallist.csv
  + 1 extra stock(s) from your watchlist (not in the official index): COALINDIA
  Incremental run - 15 stock(s) already have data.
    OK APLAPOLLO (security_id=25780, from 2026-07-01)
    OK ADANIENT (security_id=25, from 2026-07-01)
    OK HINDALCO (security_id=1363, from 2026-07-01)
    OK HINDCOPPER (security_id=17939, from 2026-07-01)
    OK HINDZINC (security_id=1424, from 2026-07-01)
    OK JSWSTEEL (security_id=11723, from 2026-07-01)
    OK JSL (security_id=11236, from 2026-07-01)
    OK JINDALSTEL (security_id=6733, from 2026-07-01)
    OK LLOYDSME (security_id=17313, from 2026-07-01)
    OK NMDC (security_id=15332, from 2026-07-01)
    OK NATIONALUM (security_id=6364, from 2026-07-01)
    OK SAIL (security_id=2963, from 2026-07-01)
    OK TATASTEEL (security_id=3499, from 2026-07-01)
    OK VEDL (security_id=3063, from 2026-07-01)
    OK WELCORP (security_id=11821, from 2026-07-01)
    OK COALINDIA* (security_id=20374, from 2015-01-01)
  Saved: /root/scripts/stock_returns_nifty_metal.csv
  Saved: /root/scripts/stock_returns_nifty_metal_monthly.csv

=== NIFTY PHARMA ===
  20 official constituents from https://www.niftyindices.com/IndexConstituent/ind_niftypharmalist.csv
  + 4 extra stock(s) from your watchlist (not in the official index): GRANULES, STAR, ASTRAZEN, SYNGENE
  Incremental run - 20 stock(s) already have data.
    OK ABBOTINDIA (security_id=17903, from 2026-07-01)
    OK AJANTPHARM (security_id=8124, from 2026-07-01)
    OK ALKEM (security_id=11703, from 2026-07-01)
    OK AUROPHARMA (security_id=275, from 2026-07-01)
    OK BIOCON (security_id=11373, from 2026-07-01)
    OK CIPLA (security_id=694, from 2026-07-01)
    OK DIVISLAB (security_id=10940, from 2026-07-01)
    OK DRREDDY (security_id=881, from 2026-07-01)
    OK GLAND (security_id=1186, from 2026-07-01)
    OK GLENMARK (security_id=7406, from 2026-07-01)
    OK IPCALAB (security_id=1633, from 2026-07-01)
    OK LAURUSLABS (security_id=19234, from 2026-07-01)
    OK LUPIN (security_id=10440, from 2026-07-01)
    OK MANKIND (security_id=15380, from 2026-07-01)
    OK PPLPHARMA (security_id=11571, from 2026-07-01)
    OK SAILIFE (security_id=27839, from 2026-07-01)
    OK SUNPHARMA (security_id=3351, from 2026-07-01)
    OK TORNTPHARM (security_id=3518, from 2026-07-01)
    OK WOCKPHARMA (security_id=7506, from 2026-07-01)
    OK ZYDUSLIFE (security_id=7929, from 2026-07-01)
    OK GRANULES* (security_id=11872, from 2015-01-01)
    OK STAR* (security_id=7374, from 2015-01-01)
    OK ASTRAZEN* (security_id=5610, from 2015-01-01)
    OK SYNGENE* (security_id=10243, from 2015-01-01)
  Saved: /root/scripts/stock_returns_nifty_pharma.csv
  Saved: /root/scripts/stock_returns_nifty_pharma_monthly.csv

=== NIFTY PSU BANK ===
  12 official constituents from https://www.niftyindices.com/IndexConstituent/ind_niftypsubanklist.csv
  Incremental run - 12 stock(s) already have data.
    OK BANKBARODA (security_id=4668, from 2026-07-01)
    OK BANKINDIA (security_id=4745, from 2026-07-01)
    OK MAHABANK (security_id=11377, from 2026-07-01)
    OK CANBK (security_id=10794, from 2026-07-01)
    OK CENTRALBK (security_id=14894, from 2026-07-01)
    OK INDIANB (security_id=14309, from 2026-07-01)
    OK IOB (security_id=9348, from 2026-07-01)
    OK PSB (security_id=21001, from 2026-07-01)
    OK PNB (security_id=10666, from 2026-07-01)
    OK SBIN (security_id=3045, from 2026-07-01)
    OK UCOBANK (security_id=11223, from 2026-07-01)
    OK UNIONBANK (security_id=10753, from 2026-07-01)
  Saved: /root/scripts/stock_returns_nifty_psu_bank.csv
  Saved: /root/scripts/stock_returns_nifty_psu_bank_monthly.csv

=== NIFTY PVT BANK ===
  10 official constituents from https://www.niftyindices.com/IndexConstituent/ind_nifty_privatebanklist.csv
  Incremental run - 10 stock(s) already have data.
    OK AXISBANK (security_id=5900, from 2026-07-01)
    OK BANDHANBNK (security_id=2263, from 2026-07-01)
    OK FEDERALBNK (security_id=1023, from 2026-07-01)
    OK HDFCBANK (security_id=1333, from 2026-07-01)
    OK ICICIBANK (security_id=4963, from 2026-07-01)
    OK IDFCFIRSTB (security_id=11184, from 2026-07-01)
    OK INDUSINDBK (security_id=5258, from 2026-07-01)
    OK KOTAKBANK (security_id=1922, from 2026-07-01)
    OK RBLBANK (security_id=18391, from 2026-07-01)
    OK YESBANK (security_id=11915, from 2026-07-01)
  Saved: /root/scripts/stock_returns_nifty_pvt_bank.csv
  Saved: /root/scripts/stock_returns_nifty_pvt_bank_monthly.csv

=== NIFTY REALTY ===
  10 official constituents from https://www.niftyindices.com/IndexConstituent/ind_niftyrealtylist.csv
  + 1 extra stock(s) from your watchlist (not in the official index): SUNTECK
  Incremental run - 10 stock(s) already have data.
    OK ABREL (security_id=625, from 2026-07-01)
    OK ANANTRAJ (security_id=13620, from 2026-07-01)
    OK BRIGADE (security_id=15184, from 2026-07-01)
    OK DLF (security_id=14732, from 2026-07-01)
    OK GODREJPROP (security_id=17875, from 2026-07-01)
    OK LODHA (security_id=3220, from 2026-07-01)
    OK OBEROIRLTY (security_id=20242, from 2026-07-01)
    OK PHOENIXLTD (security_id=14552, from 2026-07-01)
    OK PRESTIGE (security_id=20302, from 2026-07-01)
    OK SOBHA (security_id=13826, from 2026-07-01)
    OK SUNTECK* (security_id=17641, from 2015-01-01)
  Saved: /root/scripts/stock_returns_nifty_realty.csv
  Saved: /root/scripts/stock_returns_nifty_realty_monthly.csv

=== NIFTY ENERGY ===
  40 official constituents from https://www.niftyindices.com/IndexConstituent/ind_niftyenergylist.csv
  + 4 extra stock(s) from your watchlist (not in the official index): IEX, IRFC, PFC, RECLTD
  Incremental run - 40 stock(s) already have data.
    OK ABB (security_id=13, from 2026-07-01)
    OK ADANIENSOL (security_id=10217, from 2026-07-01)
    OK ADANIGREEN (security_id=3563, from 2026-07-01)
    OK ADANIPOWER (security_id=17388, from 2026-07-01)
    OK ATGL (security_id=6066, from 2026-07-01)
    OK AEGISLOG (security_id=40, from 2026-07-01)
    OK BHEL (security_id=438, from 2026-07-01)
    OK BPCL (security_id=526, from 2026-07-01)
    OK CESC (security_id=628, from 2026-07-01)
    OK CGPOWER (security_id=760, from 2026-07-01)
    OK CASTROLIND (security_id=1250, from 2026-07-01)
    OK COALINDIA (security_id=20374, from 2026-07-01)
    OK GAIL (security_id=4717, from 2026-07-01)
    OK GVT&D (security_id=16783, from 2026-07-01)
    OK HINDPETRO (security_id=1406, from 2026-07-01)
    OK POWERINDIA (security_id=18457, from 2026-07-01)
    OK IOC (security_id=1624, from 2026-07-01)
    OK IGL (security_id=11262, from 2026-07-01)
    OK INOXWIND (security_id=7852, from 2026-07-01)
    OK JSWENERGY (security_id=17869, from 2026-07-01)
    OK JPPOWER (security_id=11763, from 2026-07-01)
    OK MGL (security_id=17534, from 2026-07-01)
    OK NHPC (security_id=17400, from 2026-07-01)
    OK NLCINDIA (security_id=8585, from 2026-07-01)
    OK NTPCGREEN (security_id=27176, from 2026-07-01)
    OK NTPC (security_id=11630, from 2026-07-01)
    OK NAVA (security_id=4014, from 2026-07-01)
    OK ONGC (security_id=2475, from 2026-07-01)
    OK OIL (security_id=17438, from 2026-07-01)
    OK PETRONET (security_id=11351, from 2026-07-01)
    OK POWERGRID (security_id=14977, from 2026-07-01)
    OK RELIANCE (security_id=2885, from 2026-07-01)
    OK RPOWER (security_id=15259, from 2026-07-01)
    OK SJVN (security_id=18883, from 2026-07-01)
    OK ENRIN (security_id=756871, from 2026-07-01)
    OK SIEMENS (security_id=3150, from 2026-07-01)
    OK SUZLON (security_id=12018, from 2026-07-01)
    OK TATAPOWER (security_id=3426, from 2026-07-01)
    OK THERMAX (security_id=3475, from 2026-07-01)
    OK TORNTPOWER (security_id=13786, from 2026-07-01)
    OK IEX* (security_id=220, from 2015-01-01)
    OK IRFC* (security_id=2029, from 2015-01-01)
    OK PFC* (security_id=14299, from 2015-01-01)
    OK RECLTD* (security_id=15355, from 2015-01-01)
  Saved: /root/scripts/stock_returns_nifty_energy.csv
  Saved: /root/scripts/stock_returns_nifty_energy_monthly.csv

=== NIFTY FIN SERVICE ===
  20 official constituents from https://www.niftyindices.com/IndexConstituent/ind_niftyfinancelist.csv
  + 12 extra stock(s) from your watchlist (not in the official index): BAJAJHFL, M&MFIN, PNBHOUSING, COROMANDEL, LTF, ABCAPITAL, IIFL, MOTILALOFS, HDFCAMC, LICI, POLICYBZR, MAXHEALTH
  Incremental run - 20 stock(s) already have data.
    OK AXISBANK (security_id=5900, from 2026-07-01)
    OK BSE (security_id=19585, from 2026-07-01)
    OK BAJFINANCE (security_id=317, from 2026-07-01)
    OK BAJAJFINSV (security_id=16675, from 2026-07-01)
    OK CHOLAFIN (security_id=685, from 2026-07-01)
    OK HDFCBANK (security_id=1333, from 2026-07-01)
    OK HDFCLIFE (security_id=467, from 2026-07-01)
    OK ICICIBANK (security_id=4963, from 2026-07-01)
    OK ICICIGI (security_id=21770, from 2026-07-01)
    OK JIOFIN (security_id=18143, from 2026-07-01)
    OK KOTAKBANK (security_id=1922, from 2026-07-01)
    OK LICHSGFIN (security_id=1997, from 2026-07-01)
    OK MFSL (security_id=2142, from 2026-07-01)
    OK MUTHOOTFIN (security_id=23650, from 2026-07-01)
    OK PFC (security_id=14299, from 2026-07-01)
    OK RECLTD (security_id=15355, from 2026-07-01)
    OK SBICARD (security_id=17971, from 2026-07-01)
    OK SBILIFE (security_id=21808, from 2026-07-01)
    OK SHRIRAMFIN (security_id=4306, from 2026-07-01)
    OK SBIN (security_id=3045, from 2026-07-01)
    OK BAJAJHFL* (security_id=25270, from 2015-01-01)
    OK M&MFIN* (security_id=13285, from 2015-01-01)
    OK PNBHOUSING* (security_id=18908, from 2015-01-01)
    OK COROMANDEL* (security_id=739, from 2015-01-01)
    OK LTF* (security_id=24948, from 2015-01-01)
    OK ABCAPITAL* (security_id=21614, from 2015-01-01)
    OK IIFL* (security_id=11809, from 2015-01-01)
    OK MOTILALOFS* (security_id=14947, from 2015-01-01)
    OK HDFCAMC* (security_id=4244, from 2015-01-01)
    OK LICI* (security_id=9480, from 2015-01-01)
    OK POLICYBZR* (security_id=6656, from 2015-01-01)
    OK MAXHEALTH* (security_id=22377, from 2015-01-01)
  Saved: /root/scripts/stock_returns_nifty_fin_service.csv
  Saved: /root/scripts/stock_returns_nifty_fin_service_monthly.csv

=== NIFTY MEDIA ===
  10 official constituents from https://www.niftyindices.com/IndexConstituent/ind_niftymedialist.csv
  Incremental run - 10 stock(s) already have data.
    OK DBCORP (security_id=17881, from 2026-07-01)
    OK HATHWAY (security_id=18154, from 2026-07-01)
    OK NAZARA (security_id=2987, from 2026-07-01)
    OK NETWORK18 (security_id=14111, from 2026-07-01)
    OK PVRINOX (security_id=13147, from 2026-07-01)
    OK PFOCUS (security_id=13496, from 2026-07-01)
    OK SAREGAMA (security_id=4892, from 2026-07-01)
    OK SUNTV (security_id=13404, from 2026-07-01)
    OK TIPSMUSIC (security_id=9117, from 2026-07-01)
    OK ZEEL (security_id=3812, from 2026-07-01)
  Saved: /root/scripts/stock_returns_nifty_media.csv
  Saved: /root/scripts/stock_returns_nifty_media_monthly.csv

=== NIFTY DEFENCE ===
  19 official constituents from https://www.niftyindices.com/IndexConstituent/ind_niftyindiadefence_list.csv
  Incremental run - 19 stock(s) already have data.
    OK AXISCADES (security_id=9436, from 2026-07-01)
    OK AEQUS (security_id=760234, from 2026-07-01)
    OK APOLLO (security_id=1134, from 2026-07-01)
    OK ASTRAMICRO (security_id=11618, from 2026-07-01)
    OK BEML (security_id=395, from 2026-07-01)
    OK BDL (security_id=2144, from 2026-07-01)
    OK BEL (security_id=383, from 2026-07-01)
    OK BHARATFORG (security_id=422, from 2026-07-01)
    OK COCHINSHIP (security_id=21508, from 2026-07-01)
    OK DATAPATTNS (security_id=7358, from 2026-07-01)
    OK DYNAMATECH (security_id=4525, from 2026-07-01)
    OK GRSE (security_id=5475, from 2026-07-01)
    OK HAL (security_id=2303, from 2026-07-01)
    OK MTARTECH (security_id=2715, from 2026-07-01)
    OK MAZDOCK (security_id=509, from 2026-07-01)
    OK MIDHANI (security_id=2463, from 2026-07-01)
    OK PARAS (security_id=5911, from 2026-07-01)
    OK SOLARINDS (security_id=13332, from 2026-07-01)
    OK ZENTEC (security_id=7508, from 2026-07-01)
  Saved: /root/scripts/stock_returns_nifty_defence.csv
  Saved: /root/scripts/stock_returns_nifty_defence_monthly.csv

=== CONSUMER DURABLES ===
  12 custom stocks (no official Nifty index for this sector)
    OK TITAN (security_id=3506, from 2015-01-01)
    OK HAVELLS (security_id=9819, from 2015-01-01)
    OK VOLTAS (security_id=3718, from 2015-01-01)
    OK CROMPTON (security_id=17094, from 2015-01-01)
    OK DIXON (security_id=21690, from 2015-01-01)
    OK BEL (security_id=383, from 2015-01-01)
    OK KAJARIACER (security_id=1808, from 2015-01-01)
    OK SUPREMEIND (security_id=3363, from 2015-01-01)
    OK BATAINDIA (security_id=371, from 2015-01-01)
    OK RELAXO (security_id=24225, from 2015-01-01)
    OK CAMPUS (security_id=9362, from 2015-01-01)
    OK BRIGADE (security_id=15184, from 2015-01-01)
  Saved: /root/scripts/stock_returns_consumer_durables.csv
  Saved: /root/scripts/stock_returns_consumer_durables_monthly.csv

=== CEMENT ===
  7 custom stocks (no official Nifty index for this sector)
    OK ULTRACEMCO (security_id=11532, from 2015-01-01)
    OK ACC (security_id=22, from 2015-01-01)
    OK AMBUJACEM (security_id=1270, from 2015-01-01)
    OK RAMCOCEM (security_id=2043, from 2015-01-01)
    OK SHREECEM (security_id=3103, from 2015-01-01)
    OK INDIACEM (security_id=1515, from 2015-01-01)
    OK JKCEMENT (security_id=13270, from 2015-01-01)
  Saved: /root/scripts/stock_returns_cement.csv
  Saved: /root/scripts/stock_returns_cement_monthly.csv

=== FOOD & BEVERAGES ===
  4 custom stocks (no official Nifty index for this sector)
    OK JUBLFOOD (security_id=18096, from 2015-01-01)
    OK DMART (security_id=19913, from 2015-01-01)
    OK IRCTC (security_id=13611, from 2015-01-01)
    OK UBL (security_id=16713, from 2015-01-01)
  Saved: /root/scripts/stock_returns_food_and_beverages.csv
  Saved: /root/scripts/stock_returns_food_and_beverages_monthly.csv

=== TEXTILE & PLY ===
  6 custom stocks (no official Nifty index for this sector)
    OK CENTURYPLY (security_id=13305, from 2015-01-01)
    OK PAGEIND (security_id=14413, from 2015-01-01)
    OK LOVABLE (security_id=22415, from 2015-01-01)
    OK RAYMOND (security_id=2859, from 2015-01-01)
    OK CERA (security_id=15039, from 2015-01-01)
    OK SOMANYCERA (security_id=3880, from 2015-01-01)
  Saved: /root/scripts/stock_returns_textile_and_ply.csv
  Saved: /root/scripts/stock_returns_textile_and_ply_monthly.csv

=== CHEMICAL & FERTILIZER ===
  15 custom stocks (no official Nifty index for this sector)
    OK ASIANPAINT (security_id=236, from 2015-01-01)
    OK UPL (security_id=11287, from 2015-01-01)
    OK TATACHEM (security_id=3405, from 2015-01-01)
    OK SRF (security_id=3273, from 2015-01-01)
    OK GNFC (security_id=1174, from 2015-01-01)
    OK ATUL (security_id=263, from 2015-01-01)
    OK DEEPAKNTR (security_id=19943, from 2015-01-01)
    OK DEEPAKFERT (security_id=827, from 2015-01-01)
    OK CHAMBLFERT (security_id=637, from 2015-01-01)
    OK RCF (security_id=2866, from 2015-01-01)
    OK POLYCAB (security_id=9590, from 2015-01-01)
    OK BAYERCROP (security_id=17927, from 2015-01-01)
    OK BALAMINES (security_id=14501, from 2015-01-01)
    OK GODREJIND (security_id=10925, from 2015-01-01)
    OK PIDILITIND (security_id=2664, from 2015-01-01)
  Saved: /root/scripts/stock_returns_chemical_and_fertilizer.csv
  Saved: /root/scripts/stock_returns_chemical_and_fertilizer_monthly.csv

=== NEW EDGE ===
  10 custom stocks (no official Nifty index for this sector)
    OK ANGELONE (security_id=324, from 2015-01-01)
    OK CRISIL (security_id=757, from 2015-01-01)
    OK CDSL (security_id=21174, from 2015-01-01)
    OK BSE (security_id=19585, from 2015-01-01)
    OK MCX (security_id=31181, from 2015-01-01)
    OK CAMS (security_id=342, from 2015-01-01)
    OK ETERNAL (security_id=5097, from 2015-01-01)
    OK DELHIVERY (security_id=9599, from 2015-01-01)
    OK NYKAA (security_id=6545, from 2015-01-01)
    OK GRAPHITE (security_id=592, from 2015-01-01)
  Saved: /root/scripts/stock_returns_new_edge.csv
  Saved: /root/scripts/stock_returns_new_edge_monthly.csv


Finished: 2026-09-14T10:16:53.249010+05:30