import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from nsepy.archives import get_price_history
from datetime import date
symbol="VEDL"
year=[2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016]
month=[1,2,3,4,5,6,7,8,9,10,11,12]
r1=[]
#1999 december month last day close value
result=get_price_history(stock = symbol,start = date(2000,12,1),end = date(2000,12,31))
if result.empty:
r1.append(0)
else:
s2=result[['Close']]
v1=s2.values.T.tolist()
value=(v1[0][-1])
r1.append(value)
for y in year:
for m in month:
if m in [1,3,5,7,8,10,12]:
result=get_price_history(stock = symbol,start = date(y,m,1),end = date(y,m,31))
if result.empty:
r1.append(0)
else:
s2=result[['Close']]
v1=s2.values.T.tolist()
value=(v1[0][-1])
r1.append(value)
elif y in [2000,2004,2008,2012,2016] and m==2: #condition for leapyear
result=get_price_history(stock = symbol,start = date(y,m,1),end = date(y,m,29))
if result.empty:
r1.append(0)
else:
s2=result[['Close']]
#v=s1.values.T.tolist()
v1=s2.values.T.tolist()
value=(v1[0][-1])
r1.append(value)
elif y not in [2000,2004,2008,2012,2016] and m==2:
result=get_price_history(stock = symbol,start = date(y,m,1),end = date(y,m,28))
if result.empty:
r1.append(0)
else:
s2=result[['Close']]
#v=s1.values.T.tolist()
v1=s2.values.T.tolist()
value=(v1[0][-1])
r1.append(value)
else:
result=get_price_history(stock = symbol,start = date(y,m,1),end = date(y,m,30))
if result.empty:
r1.append(0)
else:
s2=result[['Close']]
#v=s1.values.T.tolist()
v1=s2.values.T.tolist()
value=(v1[0][-1])
r1.append(value)
m=["January","February","March","April","May","June","July","August","September","October","November","December"]
value=[]
j=0
for i in r1:
if i >0 and r1[j+1]>0:
if j<len(r1):
s=(r1[j+1]-i)*100/i
value.append(s)
j=j+1
elif i==0 and r1[j+1]==0:
value.append(0)
j=j+1
k=(value[i:i+12] for i in range(0, len(value), 12))
#print len(k)
out=[]
for s in k:
out.append(s)
print len(out)
m=["January","February","March","April","May","June","July","August","September","October","November","December"]
import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
%pylab inline
import seaborn.matrix as smatrix
#actual verification
#sns.set(style="white")
#s=np.array(out)
sns.set()
data = pd.DataFrame(out, columns=m, index = range(2000, 2017, 1))
print data
fig, ax = plt.subplots()
# the size of A4 paper
fig.set_size_inches(11.7, 8.27)
# plot heatmap
sns.heatmap(data.T,cbar=False,
square=False,robust=True,annot=True,fmt=".1f",annot_kws={"size": 10},linewidths=0.5,cmap="RdYlGn", ax=ax)
#print ax
cax = plt.gcf().axes[-1]
cax.tick_params(width=12)
cax = plt.gcf().axes[-1]
cax.tick_params(labelsize=20)
#turn the axis label
for item in ax.get_yticklabels():
item.set_rotation(0)
for item in ax.get_xticklabels():
item.set_rotation(90)