# Clear the workspace and set working directory
while (dev.cur() != 1) {
  dev.off()
}
rm(list=ls())  # Clear the workspace
gc()           # Perform garbage collection
##           used (Mb) gc trigger (Mb) max used (Mb)
## Ncells  581195 31.1    1338434 71.5   644245 34.5
## Vcells 1060668  8.1    8388608 64.0  1635433 12.5
setwd("C:/R Projects")

# Function to calculate and plot gain distribution
gain.dist <- function(x, p) {
  h <- hist(x, breaks=20, plot=F)

  plot(h, col=ifelse(h$mids < 0, 2, 4),
       main=paste("Distribution of NIFTY500 Stocks Gains for\n", p, " period on ", as.character(Sys.Date())),
       xlab=paste("Period ", p, "Gain%"), ylab="No. of stocks")

  xBar <- mean(x)
  xMu <- sd(x)

  shift_amount <- 15

  # Add annotations
  text(max(h$mids) - shift_amount, max(h$counts)-2, paste("Standard Deviation\n", round(sd(x), digits = 3), sep=" "), pos=1, adj = 1, cex = 0.9)
  text(max(h$mids) - shift_amount, max(h$counts)-15, paste("\nMean Gains\n", round(mean(x), digits=3), sep=" "), pos=1, adj=1, cex = 0.9)
  text(max(h$mids) - shift_amount, max(h$counts)-60, paste("Stocks with positive returns\n", sum(x >= 0), sep=" "), pos=1, adj=1, cex = 0.9)
  text(max(h$mids) - shift_amount, max(h$counts)-75, paste("\nStocks with negative returns\n", sum(x < 0), sep=" "), pos=1, adj=1, cex = 0.9)
  return(list(Period = p, Mean = xBar, SD = xMu, PositiveReturns = sum(x >= 0), NegativeReturns = sum(x < 0)))
}

# Open a new graphics device and set up plotting grid
dev.new()
par(mfrow=c(2,2))

# Read data from CSV file
s2 <- read.csv("mogains.csv", stringsAsFactors = FALSE)
# Identify rows that do not contain "Infinity" in any column
rows_to_keep <- apply(s2, 1, function(row) {
  all(row != "Infinity")
})

# Subset the data frame to keep only the desired rows
s2 <- s2[rows_to_keep, ]

print(s2)
##         Symbol    Chg   Chg5  Chg10  Chg15  Chg20
## 1     JKCEMENT  -2.24  -0.36  -1.31  -2.35  -2.87
## 2      RAYMOND -20.42  -9.31  -9.53 -10.86 -18.24
## 3      MPHASIS  -7.84  -6.78  -4.42  -8.12  -7.81
## 4    JINDALSAW   1.59  -1.32   4.06   3.02   1.74
## 5    MOTHERSON   4.02  -5.66  -2.04   6.39   4.00
## 6   KARURVYSYA  -4.90  -3.95  -1.03  -4.90  -4.97
## 7         JBMA  -7.25  -2.14  -8.80 -10.71  -8.33
## 8        GET&D   3.20   2.24   3.37  -4.18   1.96
## 9         MFSL   2.43  -2.89   0.55   0.98   3.90
## 10     MAZDOCK -14.65  -3.77   0.39  -5.55 -11.00
## 11    MANYAVAR   1.51  -2.50   1.54   2.94   0.69
## 12      ELECON   8.98  -3.77   8.71   8.54   7.75
## 13  JBCHEPHARM -10.89  -9.18  -9.08  -8.93 -11.30
## 14     MANKIND   8.20  -2.74   7.65   7.41   5.60
## 15        CDSL  -3.26  -6.47  -9.09  -0.32  -3.05
## 16      M&MFIN  -7.40 -11.76  -7.17  -9.35  -8.71
## 17     J&KBANK  -6.63  -6.69  -2.78  -3.95  -6.36
## 18        LTTS -10.78  -7.11  -7.83 -11.23 -10.63
## 19    NIFTY500  -0.90  -3.93  -1.34  -1.56  -0.96
## 20       LODHA  -3.69 -15.31  -9.99  -1.99  -2.85
## 21         ITI -16.17  -9.36 -11.06 -14.43 -16.14
## 22  SUNDARMFIN   8.23   4.72   6.65   8.67   8.80
## 23        ISEC   5.09  -3.09  -1.55   2.96   4.16
## 24  LINDEINDIA  11.03  -6.83  -1.23   5.40   7.49
## 25       IREDA  -5.86  -1.27  -3.63  -4.72  -5.81
## 26        LICI  -8.79  -5.53  -2.94  -5.86  -9.18
## 27       IRCON -15.19  -3.31  -2.81  -9.32 -13.92
## 28        FACT  -8.86  -5.82  -6.61  -8.36  -9.61
## 29         IRB  -5.57  -2.80   1.15  -0.60  -3.54
## 30         BSE  48.83   9.29  10.70  43.19  42.12
## 31   LICHSGFIN  -8.15  -4.74  -4.34  -9.78 -10.26
## 32   INTELLECT  -9.80 -13.42  -9.70 -11.20 -10.17
## 33    INOXWIND   0.61  -9.37  -7.98  -9.92  -0.10
## 34        IDEA -33.99  -5.68  -5.68 -27.59 -35.12
## 35      TVSSCS   0.31  -1.73   0.16  -4.97  -4.94
## 36    JUBLFOOD  -3.24  -8.54  -9.53  -6.03  -2.47
## 37   INDIAMART  -7.00  -1.68  -4.85  -9.20  -6.21
## 38    JSWINFRA   6.79  -2.95   1.50   1.25   7.07
## 39   JSWENERGY   0.14  -9.90  -5.84  -7.97  -2.09
## 40         SCI  -9.12  -9.65   1.79  -0.10  -8.07
## 41    INDIACEM  -0.55   0.23  -1.20  -0.16  -0.37
## 42     RAILTEL -12.62  -6.43  -4.21  -8.01 -12.32
## 43         JSL   7.06  -0.42   6.00   3.78   8.18
## 44      JIOFIN  -2.42  -3.16  -2.26  -3.14  -1.90
## 45     JPPOWER   8.25  11.54  14.97  12.38   8.37
## 46        IIFL   0.04  -5.73  -7.05  -5.24  -1.68
## 47         IEX   0.53  -0.34  -7.75  -3.96  -0.66
## 48      NEWGEN  22.83  -2.83   1.33  18.67  19.55
## 49      NETWEB  -6.23  -1.48  -5.57  -7.56  -4.85
## 50  JINDALSTEL   7.98  -0.70   1.82   1.64   7.43
## 51  BHARTIHEXA  16.46  -1.53   3.53   8.98  16.79
## 52        IRFC -13.61  -3.05  -2.05  -8.95 -12.34
## 53        IDFC  -3.11  -1.47  -1.02  -0.41  -3.89
## 54     TECHNOE  -4.45  -4.61   0.33  -4.52  -3.25
## 55       HUDCO -15.82  -4.38  -2.68 -11.72 -14.38
## 56       SYRMA  -5.00  -7.78  -6.47 -10.30  -4.42
## 57       PTCIL  -2.05   7.48   0.73  -2.50  -2.21
## 58     IPCALAB   5.59   0.83   2.55   2.38   3.27
## 59        HSCL  19.31  -3.39  -3.83  12.62  17.99
## 60      HONASA -15.09 -10.71  -9.12 -13.50 -18.49
## 61   HOMEFIRST  11.27  -3.80   2.84  10.53   5.90
## 62  KIRLOSBROS   4.79   4.90   9.22   7.84   5.09
## 63   INOXINDIA  -3.03   0.05   1.69  -3.69  -3.04
## 64         IOB  -6.85  -5.16  -3.13  -3.34  -6.80
## 65        GRSE -15.39  -2.68  -2.43  -5.20 -12.71
## 66      VIJAYA   9.69   8.80   9.67   5.48   4.43
## 67  HINDCOPPER   5.63  -3.90   1.93   5.11   4.71
## 68  INDUSTOWER -14.32  -5.47  -4.52 -14.13 -16.00
## 69     INDIANB  -2.37  -1.75   2.76   0.63  -5.02
## 70      SANOFI  -5.49  -0.81  -4.32  -4.92  -7.53
## 71       INDGN  16.07   3.37   6.80  -2.78  12.68
## 72        HFCL  -8.82  -9.66  -9.60  -7.03 -11.27
## 73         IGL   0.06   0.08   1.24   4.68  -1.20
## 74     TRIVENI  -1.59  -2.14  -2.44  -1.23  -2.20
## 75        DOMS  -3.41  -2.76  -6.36  -8.67  -2.59
## 76         HEG  19.87  -2.41   4.74  17.76  19.25
## 77        IDBI  -9.75  -5.06  -5.04  -4.73  -9.39
## 78  AVANTIFEED -10.17  -5.79  -9.77 -10.00  -9.79
## 79        SBFC   7.27  -0.56   3.27   7.40   7.58
## 80  ICICIPRULI  -1.77  -3.38   0.09   0.01  -0.30
## 81    KFINTECH   0.82  -2.13   0.55   1.62   1.16
## 82    HBLPOWER  -0.76   3.32   1.96   2.34  -0.49
## 83  HAPPSTMNDS  -0.09   0.24   1.06  -2.66  -0.12
## 84      HONAUT  -4.13  -2.00  -2.82  -6.00  -3.02
## 85        IFCI -16.21  -6.56 -11.57 -11.85 -15.37
## 86     GODIGIT  -1.63   6.26   9.21   1.38  -3.70
## 87   AADHARHFC   4.56  -9.20  -5.26  -4.87   0.43
## 88        GSPL  -3.87   5.47   6.44   0.05  -6.96
## 89      TBOTEK  -9.31  -0.07   1.01  -0.08  -6.43
## 90    HINDZINC   6.45   0.05   5.68   5.60   4.35
## 91        GSFC  -9.93  -2.24  -1.72  -3.14 -10.55
## 92    SAREGAMA  22.25   3.15  17.82  17.43  21.22
## 93     GRINFRA   5.15   1.89   3.59   3.50   4.69
## 94   HINDPETRO  -8.58  -3.57   2.22  -1.57  -9.28
## 95    RTNINDIA -11.16  -7.35  -7.16  -8.07  -8.57
## 96   GUJGASLTD  -6.68   1.82  -0.49  -3.58  -9.07
## 97   GRINDWELL  -0.52   2.21   2.07  -0.89   0.04
## 98      JKTYRE  -2.39  -5.52  -4.05  -3.99  -3.54
## 99  GODREJPROP  -0.16 -12.35  -0.47   0.61   0.97
## 100   DBREALTY  -4.43  -2.89  -1.31  -4.81  -4.73
## 101   GRAPHITE  13.41  -2.64   0.93  12.30  12.94
## 102      GLAXO  -3.43   0.88   1.96  -3.86  -2.22
## 103      GLAND  -7.31  -5.38  -3.37  -7.49  -7.55
## 104   ANANTRAJ  17.87  -1.18   6.18  13.12  15.46
## 105   GRANULES -19.05   4.79   5.03   0.86 -18.40
## 106      GICRE  -3.34  -3.85   0.14  -2.13  -3.28
## 107 FLUOROCHEM  28.32  -4.61  -2.47  -5.38  15.35
## 108       GPPL  -7.37  -2.03  -2.59  -5.25  -7.81
## 109       GPIL   8.50  -2.71  10.56  13.18  10.90
## 110  ZFCVINDIA  -1.13  -3.73  -6.37  -8.72  -2.30
## 111  GODREJIND  -7.47  -9.99  -7.43  -7.55  -8.03
## 112    ESCORTS   6.29  -7.71   5.21   5.92   7.25
## 113 GODREJAGRO  -8.31  -3.03  -8.20  -5.35  -7.30
## 114      DIXON   6.70  -3.30  -0.83   6.08   9.84
## 115 ZENSARTECH -14.72  -1.58  -6.96 -12.49 -15.58
## 116  DELHIVERY  -2.67  -6.55  -4.34  -2.37  -2.37
## 117  DEEPAKNTR  -5.36   0.32   0.15  -3.23  -5.67
## 118 GODFRYPHLP   4.06  -7.14 -14.79  -0.16   3.36
## 119  DALBHARAT   0.57   1.14   6.32   2.66   1.24
## 120       ZEEL  -2.85  -3.49   4.47  -2.20  -2.82
## 121  WHIRLPOOL   6.52   9.60  16.63  11.92   5.65
## 122   WESTLIFE   9.94   2.47   4.44  12.20   9.58
## 123       GNFC  -7.21  -3.33  -0.08  -2.03  -8.43
## 124 COROMANDEL  -6.02  -0.87  -3.25  -4.28  -5.83
## 125 WELSPUNLIV -12.18  -0.17  -6.73  -8.54 -12.75
## 126   GMRINFRA  -3.73  -4.43  -2.92  -4.21  -6.09
## 127     CONCOR  -8.71  -1.22  -3.51  -7.38  -8.25
## 128    WELCORP   3.40  -0.72   8.55   4.87   3.13
## 129    GMDCLTD  -8.33  -8.33  -9.81  -8.85  -8.26
## 130    COFORGE  12.55   3.66   3.04   3.62   8.77
## 131        VTL  -4.13  -0.22  -4.53  -6.20  -4.03
## 132   GLENMARK  -1.41  -0.93   0.78  -4.88  -2.73
## 133    CGPOWER   4.33  -6.91  -2.34  -1.43   4.55
## 134  CENTRALBK  -3.55  -2.61  -0.53  -1.23  -4.01
## 135     VIPIND  14.83   2.87  12.60  15.11   9.51
## 136   GILLETTE  -5.27  -0.04  -5.24  -4.17  -6.43
## 137 VINATIORGA   6.01   2.42   3.94   4.55   6.16
## 138   BOSCHLTD  13.20  -1.10   6.67   7.68   8.94
## 139     GESHIP  -7.36   2.27   2.20  -3.58  -7.40
## 140     VGUARD  -4.89  -0.52  -4.01  -3.88  -4.72
## 141     VARROC   0.09  -2.26   1.05   1.61  -2.81
## 142     BIOCON  -8.71  -7.11  -4.19  -8.03  -9.53
## 143     UTIAMC   2.46  -3.28  -4.64  -4.25  -3.95
## 144       GAEL -12.50  -0.78  -1.27  -9.29 -12.73
## 145   USHAMART   2.24  -0.81   3.19  -2.62   2.59
## 146       BHEL  -3.98  -4.65   4.06   0.60  -2.18
## 147 UJJIVANSFB  -8.13  -1.99  -3.92  -4.10  -8.01
## 148        FSL  -2.91  -7.74  -1.46  -4.55  -4.91
## 149     FORTIS   6.97  -4.70  -1.54   0.92   3.61
## 150 TV18BRDCST -14.46  -6.51  -6.64 -11.35 -16.06
## 151   FIVESTAR   5.17   0.23   3.68   7.55   5.32
## 152 BERGEPAINT  -3.47  -6.02  -7.02  -7.07  -3.12
## 153       TTML -13.96  -3.66  -6.50 -12.35 -13.07
## 154    FINPIPE -11.57  -3.94 -11.77 -11.73 -11.40
## 155 TRITURBINE -12.31  -5.64  -9.40 -11.48 -11.34
## 156  BANKINDIA  -7.78  -1.58  -1.13  -1.89  -7.25
## 157    FINEORG  -3.44  -2.37  -3.86  -2.59  -3.80
## 158 BANDHANBNK  -6.39  -8.99 -11.59  -5.14  -8.25
## 159    TRIDENT  -3.58  -0.31  -0.59  -2.52  -4.81
## 160  FINCABLES  -4.59  -6.43  -2.39  -3.41  -4.16
## 161 BALKRISIND  -3.23  -5.10  -7.46  -8.06  -3.31
## 162        AWL  -9.79  -2.66  -2.39  -7.07  -8.20
## 163   TITAGARH -21.68 -10.32 -10.58 -16.64 -20.72
## 164   EXIDEIND   3.77   6.50   9.23   4.70   1.36
## 165     TIMKEN  -4.77  -3.22  -4.39  -4.53  -4.13
## 166       ERIS  -6.49   5.96  -4.14  -5.90  -7.48
## 167 EQUITASBNK  -9.38  -7.10  -8.23  -8.32 -11.32
## 168 AUROPHARMA  -5.43  -3.25  -4.06  -6.11  -4.40
## 169       ATGL -10.67  -3.62  -1.65  -5.26  -9.55
## 170    THERMAX  20.02  -1.63  -0.27  11.91  21.35
## 171   TEJASNET  -8.73  -1.86  -3.96  -5.62 -11.08
## 172     ASTRAL  -2.20  -5.75  -0.80  -2.40  -2.07
## 173 ENGINERSIN  -7.47  -4.46  -0.82 -10.88  -6.82
## 174   TATATECH   0.12  -3.42  -0.31  -2.43  -1.62
## 175  ENDURANCE -10.66  -4.74 -10.25  -8.12  -9.48
## 176      ALKEM  -0.22  -0.05   0.93  -2.42  -1.31
## 177   EMAMILTD  -9.88   0.08  -0.58  -8.26 -11.08
## 178 ADANIPOWER  -1.34  -3.49  -1.15  -1.38  -0.27
## 179 TATAINVEST  -8.86  -3.84  -0.73  -4.81  -8.94
## 180 ADANIGREEN  -6.72 -12.47  -8.24  -0.59  -4.71
## 181 ADANIENSOL  -6.40  -7.13  -1.66  -4.51  -4.44
## 182   TATACHEM   4.37   7.04  10.38   8.14   4.38
## 183  ELGIEQUIP  -2.61  -0.92  -7.60  -6.74  -3.86
## 184      TANLA  -5.05  -2.91  -4.98  -5.98  -5.79
## 185        ACC   3.63  -1.56  -0.37  -1.36   0.58
## 186    SWSOLAR -20.74 -14.92 -20.58 -24.33 -24.51
## 187  ABCAPITAL   2.75  -3.56  -0.74   3.33   1.87
## 188    EIHOTEL   4.74   5.73   4.21   1.92  -0.38
## 189 SWANENERGY -14.65  -6.42  -3.32  -9.61 -14.23
## 190 ABBOTINDIA  -5.48  -3.70   0.48  -5.34  -5.26
## 191  SUVENPHAR   6.30   1.78   1.73   1.23   4.24
## 192   EIDPARRY   1.69   2.27   4.44   4.74   1.09
## 193      SUNTV   0.66  -2.60   0.30   0.36   1.94
## 194        ABB   3.81  -1.73   5.70   2.72   3.66
## 195     ECLERX   5.28   1.91  11.56   8.10   4.01
## 196 EASEMYTRIP -14.32  -8.91 -17.65 -18.91 -22.64
## 197    DEVYANI  -1.04 -11.56  -8.95  -4.41  -2.47
## 198 SUNDRMFAST   5.56   0.82   0.33   3.23   3.00
## 199   SUMICHEM   6.01   0.35  -6.13  -6.94   6.50
## 200    3MINDIA  -1.81  -3.59  -2.60  -2.23  -1.63
## 201     ZOMATO  13.36  -3.03  -1.27  -3.03   8.02
## 202      SPARC  -6.80  -1.07  -3.60  -6.64  -6.30
## 203 DEEPAKFERT  -0.38   1.57  10.93   7.79   1.55
## 204 DATAPATTNS -15.93  -4.65  -7.78 -13.28 -16.56
## 205    YESBANK  -6.56  -3.47  -4.36  -6.32  -6.16
## 206 SONATSOFTW  -9.88  -4.63  -6.56 -11.14 -10.77
## 207     CYIENT  -5.28  -4.37  -8.02 -11.06  -5.60
## 208      WIPRO   2.77  -1.54   0.04   0.66   1.66
## 209      SOBHA   2.27 -10.28  -4.29   2.78   4.03
## 210        CUB  -5.89  -4.46  -5.50  -4.39  -7.41
## 211       VEDL  10.74   1.39  13.11  15.17   9.00
## 212   SKFINDIA  -1.36  -2.01  -1.45  -2.17  -0.08
## 213   CROMPTON  -9.54   0.67  -6.21  -8.05  -9.77
## 214        VBL  -4.94  -7.65 -11.23 -10.33  -3.87
## 215       SJVN  -5.28   0.54  -1.63  -3.69  -4.61
## 216  SIGNATURE   7.24  -4.09   3.87   3.92   4.83
## 217  SHYAMMETL   9.83  -0.94   4.33   7.60   9.44
## 218        UPL  -1.41  -0.30   0.76  -2.53  -3.14
## 219  SCHNEIDER  -2.99  -4.08   5.97  -2.81  -3.47
## 220     CRISIL  -4.67  -4.13  -5.33  -5.89  -4.15
## 221   SAPPHIRE   4.07  -8.16   3.62   6.67   5.54
## 222  CREDITACC  -3.01  -5.58  -9.42  -8.26  -2.47
## 223  CRAFTSMAN   6.60  -2.59   4.55   4.98   0.86
## 224 CONCORDBIO   7.49  -9.87 -14.63  -4.17   3.64
## 225 SAMMAANCAP  -1.42  -5.79  -0.42  -2.17  -5.86
## 226    RRKABEL   9.10   1.51   3.55   4.80   9.87
## 227 COCHINSHIP -14.69  -3.48  -1.95  -9.22 -13.95
## 228      ROUTE  -1.91  -2.55  -3.09  -6.54  -3.66
## 229      CLEAN   4.78   1.37   1.85   0.42   5.09
## 230   UNITDSPR   2.13  -6.89   0.10   0.14   3.12
## 231    RKFORGE  -3.49  -5.01  -4.33  -2.26  -3.08
## 232   CIEINDIA  -4.93   0.36  -4.40  -1.49  -3.84
## 233      RITES  -2.44 -13.19  -7.16  -6.88  -4.51
## 234 ULTRACEMCO  -1.12  -5.10  -1.52  -2.22  -0.80
## 235       RHIM   0.12  -1.59   2.41   4.37   0.49
## 236   TVSMOTOR  -3.15  -7.04  -3.00  -4.79  -2.69
## 237 CHOLAHLDNG  15.71  -3.75   3.22   7.74   9.86
## 238     RENUKA   3.63   5.53   7.58   8.07   4.40
## 239  REDINGTON  -6.99  -0.55  -3.41  -3.75  -7.14
## 240 CHENNPETRO  -3.06   2.55   7.18   7.04  -3.19
## 241 CHEMPLASTS   1.96  -1.26  -2.43   2.97   0.49
## 242      TRENT   2.99  -6.27   0.37   1.98   2.59
## 243        RCF -12.80  -3.91  -6.67  -7.81 -12.38
## 244      TITAN   1.73  -2.33  -2.93  -2.50  -1.42
## 245 CHAMBLFERT  -6.21  -1.94   4.05  -1.86  -3.01
## 246     CHALET  -1.81  -2.03  -2.18  -3.72  -4.20
## 247  RATNAMANI  -2.89  -0.59  -2.24  -6.33  -2.72
## 248    TIINDIA  -1.05  -0.93   2.49   3.38   0.14
## 249       CGCL  -4.95  -2.03  -3.20  -4.72  -5.55
## 250      TECHM  -1.75   0.59   1.32  -1.63  -1.41
## 251   RAMCOCEM   3.48   0.87   4.77   3.25   2.38
## 252        TCS  -5.07  -0.94  -1.02  -5.88  -5.00
## 253       CESC   0.19  -4.79   2.69  -0.36   0.30
## 254 RAJESHEXPO  -4.01  -2.17  -2.86  -3.03  -5.12
## 255    RAINBOW   9.14  -2.27  -0.51   5.25   7.64
## 256       CERA -14.68  -2.14  -2.63  -5.63 -13.26
## 257  TATASTEEL  10.30   0.69  11.51   9.89   9.91
## 258     RADICO   1.42  -4.85  -4.04   0.34   1.56
## 259 CENTURYTEX  18.34   1.53  -1.40  -1.13  16.08
## 260      QUESS  -8.88  -6.67 -11.50  -7.15  -9.38
## 261  TATAPOWER  10.87  -1.97   6.15   6.08  10.87
## 262 CENTURYPLY   9.34  -1.80  -0.56   8.19   6.63
## 263      CELLO  -0.61   2.15   0.48  -2.97  -1.58
## 264    PVRINOX   4.74  -8.07  -4.41   0.27   1.22
## 265 TATAMOTORS -13.86  -6.28  -3.75  -5.62 -12.94
## 266   PRESTIGE  -6.31  -4.12  -7.83  -7.11  -1.76
## 267    CEATLTD   5.41  -3.65   8.50   5.98   5.66
## 268        CCL -19.89  -6.72 -11.84  -9.77 -14.90
## 269    PRAJIND   1.45   0.14   3.44   5.44   0.69
## 270 TATACONSUM  -5.40  -6.84  -6.98  -7.55  -4.90
## 271  PPLPHARMA   7.60   1.30   2.39  -1.48   4.39
## 272 CASTROLIND -15.99  -6.77  -7.45 -12.30 -14.67
## 273 POWERINDIA  19.32   3.70  10.40  13.87  19.13
## 274 CARBORUNIV  -2.90  -3.30  -1.44  -3.64  -4.78
## 275 POONAWALLA   2.52  -1.16  -0.62  -0.45   1.24
## 276  SUNPHARMA   4.21   0.61   3.47   2.39   4.57
## 277    POLYMED  -6.23   0.99  -4.78  -7.26  -8.67
## 278 CAPLIPOINT   0.02   2.66   2.65   0.17  -7.09
## 279   PNCINFRA  -4.15  -3.03  -2.14  -7.32  -5.58
## 280 PNBHOUSING -10.26  -5.31  -6.94 -14.80  -8.98
## 281        SRF  -9.68  -4.39  -2.15  -5.54 -10.24
## 282 CANFINHOME  -3.94  -4.30  -0.55  -6.74  -4.34
## 283 PHOENIXLTD  -7.72  -7.77  -5.30  -0.58  -6.91
## 284       CAMS  -3.83  -4.68  -3.57  -3.28  -3.42
## 285     CAMPUS  16.05 -10.05  -8.18   2.09  12.62
## 286    SIEMENS   7.22   2.40   7.75   8.90   8.39
## 287      BSOFT -11.99  -5.65  -7.06  -9.24 -11.89
## 288     PFIZER  -8.81   3.70  -0.90  -8.15  -8.64
## 289 SHRIRAMFIN   2.85  -8.05  -5.36  -1.90   2.80
## 290    BRIGADE   8.01   1.88   3.17   3.77   5.22
## 291        PEL  -2.36  -5.19  -1.72  -3.50  -4.30
## 292   SHREECEM   1.02  -0.34   4.42   0.06   1.45
## 293    SBILIFE  -5.97  -5.28  -2.33  -4.15  -5.75
## 294 BLUESTARCO  20.99  -3.68  10.15  13.18  21.33
## 295       PCBL   6.17  -0.09   5.55  11.73  10.28
## 296   RELIANCE  -8.45  -7.44  -5.66  -6.30  -7.13
## 297   BLUEDART   1.06   1.31   0.72   1.54   2.79
## 298    OLECTRA   5.31  -0.98  -1.08   0.91   5.20
## 299     RECLTD -16.11  -3.68  -1.07  -8.51 -16.90
## 300     NUVOCO   1.82  -1.38  -0.94   0.89   0.77
## 301        BLS -20.20  -7.83  -9.52 -22.47 -22.08
## 302     NUVAMA -11.52 -13.09 -10.29 -14.11 -11.12
## 303    NSLNISP  -5.85   0.21   2.48  -1.79  -5.59
## 304    RBLBANK  -8.86  -4.96  -5.64  -7.46  -8.46
## 305  POWERGRID   1.79  -7.28   1.18   0.19   2.29
## 306 BIRLACORPN  -7.82  -0.69  -5.56  -4.50  -8.27
## 307   NLCINDIA   1.62   0.16   4.82   4.07  -1.58
## 308     BIKAJI   3.81  -7.90  -3.39   2.62   2.21
## 309      NIACL -16.18  -6.87  -5.79 -10.22 -16.94
## 310      PIIND   1.90  -0.80  -1.74  -1.21   1.71
## 311         NH  -5.17  -1.28  -2.52 -11.07  -6.07
## 312       BEML -10.78  -2.05   2.22  -7.00  -9.73
## 313  NETWORK18 -14.61  -4.70  -6.44 -11.84 -14.85
## 314 PIDILITIND  -0.19  -2.46  -1.09  -1.86  -0.01
## 315        BDL -16.48  -1.36  -1.15 -10.42 -15.54
## 316        PFC -16.56  -3.56  -3.61  -8.48 -17.00
## 317        NCC  -7.45  -1.91  -1.67  -5.41  -7.81
## 318       BBTC   0.41   2.48   7.01   3.29   2.48
## 319 PERSISTENT  -2.07  -5.25  -2.69  -3.12  -2.34
## 320       NBCC  -8.53  -0.05  -1.58  -6.28  -7.34
## 321  BAYERCROP   2.19   6.04   3.78   1.70   3.05
## 322 NAVINFLUOR   2.48   1.07   5.36   4.29   2.12
## 323       ONGC  -6.09   0.02   3.51   0.41  -5.19
## 324  BATAINDIA  -5.69  -4.31  -4.33  -4.50  -5.03
## 325       NTPC   6.26  -0.95   1.53   6.32   6.75
## 326 NATIONALUM  26.12   8.54  20.94  22.81  24.99
## 327  NESTLEIND   2.50  -5.71  -1.37   2.78   3.72
## 328       BASF  24.70  19.30  19.39  23.19  22.45
## 329 NATCOPHARM -13.02  -2.09 -10.63 -15.00 -12.97
## 330     NAUKRI  10.27   3.16   3.75   5.26   9.68
## 331  MAXHEALTH   5.13  -7.12  -5.94   1.37   4.61
## 332  NAM-INDIA  -4.14  -2.22   1.07  -1.95  -6.84
## 333      MSUMI  -3.71  -6.68  -2.96  -2.23  -3.59
## 334 BALRAMCHIN  12.54   7.83  13.23  15.36  12.58
## 335     MARUTI   2.18  -5.81   2.06   1.65   2.50
## 336  BALAMINES   1.89  -1.70  -4.32  -0.83   1.28
## 337       MRPL -11.05   0.90  -2.50  -5.04 -11.15
## 338     MARICO   6.91  -0.49  -0.98   0.60   7.19
## 339       ATUL  -2.86   1.68   0.13  -3.80  -3.75
## 340 MOTILALOFS  -5.21  -3.65  -5.15  -2.02  -6.23
## 341       MMTC -12.39  -4.62  -4.72  -9.06 -12.62
## 342   ASTRAZEN   7.78   1.31  10.73   8.92   7.94
## 343        M&M   9.74  -5.14   7.86  10.09  10.81
## 344  MINDACORP   4.03  -3.56  14.69  10.93   1.88
## 345    ASTERDM   1.38   0.33  -1.15  -1.09   1.59
## 346        MGL   3.92  -2.78  -0.26   4.40   1.79
## 347 METROPOLIS   5.11   3.41   5.04   2.69   4.19
## 348 METROBRAND  -2.61  -1.72   1.68  -0.17  -1.34
## 349      LUPIN  -3.47   0.46   1.21  -2.19  -4.01
## 350    MEDANTA -16.18  -8.89 -11.92 -13.54 -15.40
## 351 ASAHIINDIA  13.35  -1.72   8.53  13.32  12.36
## 352       LTIM   0.71  -0.81  -4.12  -4.35  -0.57
## 353        MCX   8.47   1.57   1.44  10.08   7.59
## 354      ARE&M  -7.23   3.73   0.45  -1.63  -4.69
## 355      APTUS  11.18  -0.28   3.53  11.08   9.67
## 356         LT  -4.30  -7.13  -5.15  -3.54  -3.59
## 357     MASTEK  -6.00   0.73   0.54  -2.04  -3.49
## 358 MAPMYINDIA   6.35   3.18   6.11   3.37   6.05
## 359 MANAPPURAM  -9.64  -7.06  -8.48  -7.97  -9.96
## 360 APOLLOTYRE   0.56  -9.34  -1.33  -1.25  -0.09
## 361   JSWSTEEL  10.79   2.80   9.00   8.27  11.70
## 362     APLLTD  11.35   3.94   8.49   2.14   8.34
## 363 MAHSEAMLES  -6.26  -1.75  -1.30  -4.06  -7.12
## 364        ITC  -0.55  -3.67  -0.92  -3.07  -1.50
## 365      IRCTC  -7.08  -3.75  -1.23  -6.29  -7.67
## 366   APARINDS   5.97   0.46  -1.25  -5.75   5.54
## 367   ANGELONE   4.29   7.52   5.44  10.34   6.20
## 368 ANANDRATHI   1.80  -0.47   2.01   0.27  -0.47
## 369    MAHLIFE  -6.06  -8.04  -2.91  -4.12  -6.48
## 370      AMBER   9.05   5.38  12.05   9.27   4.87
## 371        IOC  -4.73  -1.58   2.19  -2.66  -7.00
## 372   MAHABANK  -6.32  -3.98  -0.43  -1.82  -5.80
## 373   ALOKINDS  -4.74   2.63   1.18  -1.27  -8.60
## 374        LTF   3.52  -6.35  -1.71   0.34   2.59
## 375   LLOYDSME  24.80   5.81  21.13  28.95  24.82
## 376       INFY  -0.22   0.94   1.26  -1.66  -0.78
## 377 ALKYLAMINE   5.46  -1.97  -3.67   1.42   3.05
## 378  LEMONTREE  -9.15  -3.23  -6.38  -9.57 -10.04
## 379     INDIGO  -4.27  -5.30  -5.42  -7.71  -4.54
## 380 LAURUSLABS  -6.40  -3.90  -5.37 -12.24  -8.97
## 381 LATENTVIEW  -3.15  -3.13  -3.79  -5.83  -3.18
## 382 LALPATHLAB   2.70   6.53   6.73   2.30   2.67
## 383 AJANTPHARM   2.95   4.42   3.95  -1.96  -0.16
## 384   INDHOTEL   0.27  -6.82  -4.26  -5.63  -1.34
## 385    ICICIGI  -5.51  -5.80  -3.34   0.20  -5.71
## 386     AIAENG  -2.93  -1.48   0.32  -1.46  -2.36
## 387      AFFLE  -4.63  -3.54   0.31  -1.62  -5.82
## 388        KSB  -1.40  -4.00  -1.64  -2.82  -2.57
## 389    KPRMILL  12.32  -2.70   0.79  11.51  11.19
## 390 HINDUNILVR   0.26  -4.60  -2.16  -3.64   0.36
## 391   KPITTECH  -3.34   0.52   0.88  -7.99  -1.84
## 392   AEGISLOG -14.59  -3.17  -5.89 -13.44 -14.73
## 393        ACI  -3.82   1.87   1.11  -0.84  -3.37
## 394       KPIL  -3.72   2.03  -1.92  -1.87  -3.63
## 395        ACE   3.31  -6.38  -0.37   5.87   3.45
## 396   HINDALCO  12.16   1.80   9.31  10.60  11.64
## 397    ABSLAMC  -2.59  -2.51  -2.42  -4.98  -3.97
## 398     KNRCON  -6.71  -4.90   1.88  -7.44  -8.26
## 399      ABFRL   7.26  -2.65  -1.05   2.02   5.61
## 400      AAVAS   2.04  -5.74  -4.94  -1.23  -2.14
## 401  KIRLOSENG -15.27  -4.59  -7.45 -11.16 -12.87
## 402 HEROMOTOCO  -2.87  -8.77  -8.08  -4.86  -3.72
## 403       KIMS   5.05   1.31  -0.18   0.47   2.59
## 404   HDFCLIFE  -6.59  -2.84   1.04  -0.80  -5.73
## 405    HDFCAMC  -6.32  -6.80  -3.88  -3.80  -6.53
## 406        KEI  -4.54   2.11  -2.49  -2.68  -4.46
## 407   AARTIIND  -9.59  -5.37  -2.67  -2.98 -10.68
## 408     360ONE  -7.33  -6.35  -5.11  -8.75  -8.63
## 409    HCLTECH  -0.48  -0.41   2.31  -1.71  -0.78
## 410        KEC  10.74   0.96   4.67   3.68   4.51
## 411     KAYNES   3.28  -7.93  -7.00  -2.27   5.88
## 412  ZYDUSLIFE  -6.25  -1.00   0.28  -5.60  -5.18
## 413    HAVELLS   1.74  -4.33  -3.21  -3.10   2.93
## 414        HAL -12.45  -2.58   0.59  -8.30 -11.18
## 415  KANSAINER  -4.21  -3.93  -4.09  -7.62  -5.85
## 416 KALYANKJIL   8.98  -0.52   0.66   3.43  10.03
## 417     VOLTAS   1.65  -2.58  -6.20  -2.34   1.48
## 418     GRASIM  -0.46  -0.03   0.22  -0.44   0.13
## 419   UNOMINDA -10.83  -9.47  -1.61   1.46  -8.10
## 420 KAJARIACER   0.14  -2.70  -2.38   0.72  -0.68
## 421   JYOTICNC  -1.66  -2.29  -1.68  -3.00  -2.35
## 422   GODREJCP  -8.95  -5.56  -7.03 -11.25  -7.85
## 423  UNIONBANK  -2.62  -6.38  -3.07   0.55  -3.35
## 424  JYOTHYLAB  -2.58   0.20  -0.75  -5.11  -2.61
## 425        JWL -11.69  -5.91  -5.08  -6.34 -10.83
## 426    UCOBANK  -6.60  -3.77  -1.66  -3.73  -6.28
## 427       GAIL   0.10  -0.16   9.14   4.33   0.91
## 428   JUSTDIAL  -6.95   3.44   1.83   0.34  -5.45
## 429        UBL   3.86  -2.40  -1.19   1.06   3.69
## 430  EICHERMOT  -2.62  -5.76  -3.25  -3.45  -1.94
## 431 TORNTPOWER   9.06   0.07   2.62   9.55  12.99
## 432 JUBLPHARMA  19.85  -5.89  -5.26   6.21  18.58
## 433 JUBLINGREA   7.01   3.90   5.23   9.48   7.62
## 434 TORNTPHARM   0.31   1.79   3.63   0.35   0.90
## 435    DRREDDY  -2.27  -1.65   2.01  -0.76  -0.93
## 436 JMFINANCIL  17.67   1.65  17.40  12.37  14.40
## 437      DMART  -7.12  -8.86 -11.32  -9.56 -10.75
## 438        DLF  -0.65  -8.57  -0.52   1.07   0.38
## 439  TATAELXSI  -2.23  -3.30   0.70  -2.73  -1.95
## 440  JKLAKSHMI  -1.08   1.33   0.84  -2.32  -1.75
## 441   DIVISLAB   6.45   0.86  -0.07  -1.04   5.95
## 442   TATACOMM   6.66  -2.94   5.41   3.00   5.31
## 443      DABUR -11.94  -8.52 -13.88 -13.88 -11.22
## 444    SYNGENE  -1.59  -1.66  -4.04  -5.61  -4.52
## 445     SUZLON   0.69  -8.76  -7.78  -8.60  -1.75
## 446 CUMMINSIND  -6.37  -4.50  -2.80  -5.21  -5.67
## 447 SUPREMEIND   1.00   0.25  -2.31  -0.96   1.01
## 448 STARHEALTH  -7.95  -4.74  -4.20  -5.47  -8.90
## 449   SONACOMS  -3.54  -6.36  -4.35  -4.03  -5.05
## 450     COLPAL   1.87   1.13   3.89   2.67   2.21
## 451  SOLARINDS  -0.82  -6.91   0.78  -1.48   0.64
## 452  COALINDIA  -1.28  -1.85   4.03   0.31   0.04
## 453 SCHAEFFLER   1.07   0.32   1.50   0.27  -2.23
## 454      CIPLA  -1.73   0.09  -0.88  -2.05  -0.27
## 455    SBICARD  -3.30  -4.88  -6.54  -7.37  -3.20
## 456   CHOLAFIN   0.68  -8.79  -6.20  -4.96  -2.36
## 457       SAIL   6.55  -0.14   9.85   6.37   5.94
## 458       RVNL -16.75  -5.45  -3.29 -10.62 -15.20
## 459    POLYCAB   6.97   6.48  10.95   4.92   8.06
## 460  POLICYBZR  -0.93   1.64  -8.73  -5.47  -0.42
## 461  BRITANNIA   4.72  -0.77   1.17   1.58   6.09
## 462       PGHH   3.52   2.04   0.57   1.17   3.81
## 463       BPCL  -4.76  -1.41   4.87  -1.18  -5.67
## 464   PETRONET  -1.72   6.41  10.84   4.39  -2.55
## 465      PAYTM  13.24  -1.42   6.12   4.38  10.95
## 466 BHARTIARTL   5.06  -7.35  -1.44  -0.36   6.06
## 467  PATANJALI -15.35  -4.66  -6.68 -15.49 -15.56
## 468 BHARATFORG  -8.21  -3.58  -7.07  -7.37  -8.40
## 469    PAGEIND   0.30  -1.53  -3.78  -4.33   0.82
## 470        OIL -16.05   1.52   0.23  -1.07 -12.54
## 471        BEL  -7.28  -4.58   1.65  -4.97  -4.61
## 472       OFSS  -2.43  -2.91  -0.84  -5.39  -2.80
## 473 OBEROIRLTY   1.39  -7.41  -1.81   2.31   1.01
## 474 BAJFINANCE  -1.21  -7.17  -4.99  -2.92  -0.46
## 475      NYKAA  -8.22  -4.40  -4.39  -7.42 -10.74
## 476       NMDC  12.07   0.97  11.39   9.78  11.22
## 477 BAJAJHLDNG  -6.32  -4.13  -3.70  -0.24  -4.84
## 478       NHPC  -5.65  -0.28   0.80  -2.24  -5.13
## 479 BAJAJFINSV   0.68  -4.96  -0.31   1.60   1.05
## 480 MUTHOOTFIN  -1.41  -5.72  -5.16  -2.82  -2.96
## 481 BAJAJ-AUTO   7.39  -6.71  -0.79   0.43   8.46
## 482        MRF  -1.42  -3.92  -2.16  -1.88  -1.92
## 483 ASIANPAINT  -4.92  -6.24  -6.72  -9.18  -5.12
## 484   ASHOKLEY -10.02  -6.55  -5.12  -8.43 -10.26
## 485 APOLLOHOSP  -2.27  -5.50  -3.65  -4.08  -2.32
## 486  APLAPOLLO  10.58   6.11  12.94  13.14  11.74
## 487  AMBUJACEM  -2.62  -2.31   0.38  -2.78  -3.35
## 488 ADANIPORTS  -3.97  -4.00   0.39  -4.00  -3.54
## 489   ADANIENT   3.26  -0.38   5.69   4.00   3.16
## 490       SBIN  -2.43  -0.65   0.85   1.13  -2.70
## 491        PNB  -6.28  -1.34  -1.31  -2.64  -6.66
## 492  KOTAKBANK   1.41  -4.90  -3.36  -1.01   1.75
## 493 INDUSINDBK  -3.59  -4.81  -6.86  -4.19  -2.81
## 494 IDFCFIRSTB  -3.78  -2.97  -2.70  -1.29  -4.28
## 495  ICICIBANK   0.28  -6.72  -4.04  -0.99   0.31
## 496   HDFCBANK   0.97  -7.05  -2.98  -0.54   0.74
## 497 FEDERALBNK   3.09   0.57   4.01   5.50   2.12
## 498      CANBK  -0.90  -2.31   2.78   3.49  -0.54
## 499 BANKBARODA   2.91   2.22   6.25   5.69   2.76
## 500   AXISBANK   0.06  -7.73  -5.17  -2.07  -0.18
## 501     AUBANK   4.54  -2.31  -4.46  -0.22   2.28
# Initialize an empty dataframe to store results
results <- data.frame(Period = character(), Mean = numeric(), SD = numeric(), PositiveReturns = integer(), NegativeReturns = integer(), stringsAsFactors = FALSE)

# Calculate and plot distributions, storing results in the dataframe

result_5day <- gain.dist(s2$Chg5, "5 day")
result_10day <- gain.dist(s2$Chg10, "10 day")
result_15day <- gain.dist(s2$Chg15, "15 day")
result_monthly <- gain.dist(s2$Chg, "Monthly")

# Append results to the dataframe
results <- rbind(results, result_5day, result_10day, result_15day,result_monthly)

# Reset plotting layout
par(mfrow=c(1,1))
library(gt)
gt(results)
Period Mean SD PositiveReturns NegativeReturns
5 day -2.5628343 4.200677 124 377
10 day -0.8398403 5.775988 200 301
15 day -1.5670060 7.175713 177 324
Monthly -1.3126747 8.645863 204 297
# Print the results dataframe
print(results)
##    Period       Mean       SD PositiveReturns NegativeReturns
## 1   5 day -2.5628343 4.200677             124             377
## 2  10 day -0.8398403 5.775988             200             301
## 3  15 day -1.5670060 7.175713             177             324
## 4 Monthly -1.3126747 8.645863             204             297