Scan for newly released option contracts


New member
Hello. Stuck on an options scan and hoping someone more familiar with ThinkScript than I would be able to assist.

I'm looking to build a scan that returns options contract results for when:
  • new strike prices for existing expirations and/or
  • new expirations are added to the chain.
My thought is to scan for when the previous close is not a number (ie doesn't exist).

From the TOS documentation here:

I found this:

"In order to check that close is NaN, the isNan() function can be used:

plot Data = if isNaN(close) then 1 else 0;"

I've tried this (scan > study > custom > thinkscript editor> aggregation is daily): IsNaN("value" = close) is true within 2 bars

However, when I run the scan on both stock and option hacker, for 'all optionable' there are no results. But new contracts are added daily so that can't be accurate.

Any idea on how to fix? Or is there something besides 'close' that I could check against? Any help would be much appreciated. Thanks.


Well-known member
  • open interest from prior day is 0
  • open interest today is greater than yesterdays
  • volume from yesterday is 0
  • volume from today is greater than 0
  • implied vol volume from yesterday is 0
  • implied from today is greater than 0
Then you can manually look and check, its a interesting request, would love to hear the strategy.


Well-known member
If checking for zero on all of those doesn't have the results you want, try checking if it's NaN (not a number) which is ThinkScript's way of saying there is no data. For instance !IsNaN(volume) and IsNaN(volume[1]) which means there's data today but not yesterday.

Similar threads