Hi, I am making a simple algo to try to get familiar with how options work on QC.  I have been following the short tutorial here: 


Please see the attached algo.  Option chains aren't even in the data slice every day, and when there is an option chain it shows up as empty.  Here is a sample log output.  

Here is are my main bits.  I was assuming I would have options chain data for every time OnData was called.  

def Initialize(self):
'''Initialise the data and resolution required, as well as the cash and start-end dates for your algorithm. All algorithms must initialized.'''

self.SetStartDate(2016,10,01) #Set Start Date
self.SetEndDate(2016,11,16) #Set End Date
self.SetCash(25000) #Set Strategy Cash
# Find more symbols here: http://quantconnect.com/data
# self.AddUniverse(self.CoarseSelectionFunction)
self.AddEquity("GOOG", Resolution.Daily)
option = self.AddOption("GOOG", Resolution.Daily)
option.SetFilter(-10, +10, timedelta(0), timedelta(180))

def OnData(self,slice):
for i in slice.OptionChains:
optionchain = i.Value
self.Log("underlying price:" + str(optionchain.Underlying.Price))
df = pd.DataFrame([[x.Right,float(x.Strike),x.Expiry,float(x.BidPrice),float(x.AskPrice)] for x in optionchain],
index=[x.Symbol.Value for x in optionchain],
columns=['type(call 0, put 1)', 'strike', 'expiry', 'ask price', 'bid price'])