Coder Social home page Coder Social logo

varuns2002 / python-nse-option-chain-analyzer Goto Github PK

View Code? Open in Web Editor NEW
397.0 47.0 207.0 628 KB

The NSE has a website which displays the option chain in near real-time. This program retrieves this data from the NSE site and then generates useful analysis of the Option Chain for the specified Index or Stock. It also continuously refreshes the Option Chain and visually displays the trend in various indicators useful for Technical Analysis.

License: GNU General Public License v3.0

Python 100.00%
option-chain nse strike-price python script program web-scrapping nifty app options

python-nse-option-chain-analyzer's Introduction

icon_square

Python-NSE-Option-Chain-Analyzer

Latest: v5.5 Download-Count License: GPL v3

For doing technical analysis for option traders, the Option Chain is the most important tool for deciding entry and exit strategies. The National Stock Exchange (NSE) has a website which displays the option chain for traders in near real-time. This program retrieves this data from the NSE site and then generates useful analysis of the Option Chain for the specified Index or Stock. It also continuously refreshes the Option Chain and visually displays the trend in various indicators useful for Technical Analysis. Calculations are based on Mr. Sameer Dharaskar's Course.

Disclaimer:

This software is an unofficial software and is not affiliated with / endorsed or approved by the National Stock Exchange (NSE) or Mr. Sameer Dharaskar in any way

This is purely an enthusiast program intended for educational purposes only and is not financial advice

By downloading this software you acknowledge that you are using this at your own risk and that I am is not responsible for any damages that may occur to you due to the usage or installation of this program

All NSE name/symbols are owned by the National Stock Exchange

Installation:

Supported platforms:

  • Windows
  • Linux
  • macOS

Method 1 (Windows only):

  • Download the .exe (Windows Executable) file

  • Run it directly

Method 2:

  • Requirements:

  • Download the .py (Python Source Code) file

  • Required modules: requirements.txt

  • Install missing modules using pip install -r requirements.txt

Note: Alternate implementations of Python and/or alternate methods of installation may also be supported

Usage:

  1. Set Index Mode or Stock Mode

  2. Select your Index or Stock

  3. Select it's Expiry Date

  4. Enter your preferred Strike Price

  5. Set the interval you want the program to refresh (Optional : Defaults to 1 minute)

  6. Click Start

Notes:

  • If there is an error in fetching dates on login screen then try refreshing

  • If there is an error in fetching dates on main screen then try stopping and again starting from option menu

  • If you face any issue or have a suggestion then feel free to open an issue.

  • It is recommended to enable logging and then send the NSE-OCA.log file or the console output for reporting issues

  • In case of network or connection errors the program doesn't crash and will keep retrying until manually stopped

  • If a ZeroDivisionError occurs or some data doesn't exist the value of the variable will be defaulted to 0

  • Set load_nse_icon option to False in the configuration file to prevent downloading the NSE icon in the .py version to speed up loading time

  • If an Incorrect Strike Price error message is displayed and the strike price you entered is correct then check whether the NSE website is loading the data properly before creating an issue

Features:

  • The program continuously retrieves and refreshes the option chain giving near real-time analysis to the traders

  • New data rows are added only if the NSE server updates its time or data (To prevent displaying duplicate data)

  • Supported Indices and Stocks: https://www.nseindia.com/products-services/equity-derivatives-list-underlyings-information

  • Option Chain data source: https://www.nseindia.com/option-chain

  • Supports multiple instances with different indices/stocks and/or strike prices selected

  • Red and Green colour indication for data based on trends

  • Toast Notifications for notifying when trend changes (Windows 10 and 11 only). Notified changes:

    • Open Interest: Bullish/Bearish
    • Open Interest Upper Boundary Strike Prices: Change in Value
    • Open Interest Lower Boundary Strike Prices: Change in Value
    • Call Exits: Yes/No
    • Put Exits: Yes/No
    • Call ITM: Yes/No
    • Put ITM: Yes/No
  • Program title format: NSE-Option-Chain-Analyzer - {index/stock} - {expiry_date} - {strike_price}

  • Stop and Start manually

  • You can select all table data using Ctrl+A or select individual cells, rows and columns

  • Then you can copy it using Ctrl+C or right click menu

  • You can then paste it in any spreadsheet application (Tested with MS Excel and Google Sheets)

  • Export table data to .csv file

  • Real time exporting data rows to .csv file

  • Dumping entire Option Chain data to a .csv file

  • Auto stop the program at 3:30pm when the market closes

  • Alert if the last time the data from the server was updated is 5 minutes or more

  • Auto Checking for updates

  • Debug Logging

  • Saves certain settings in a configuration file for subsequent runs. Saved Settings:

    • Load App Icon
    • Index/Stock Mode
    • Selected Index
    • Selected Stock
    • Refresh Interval
    • Live Export
    • Notifications
    • Dump entire Option Chain
    • Auto stop at 3:30pm
    • Warn Late Server Updates
    • Auto Check for Updates
    • Debug Logging
  • Keyboard shortcuts for all options

Data Displayed

Table Data:

Data Description
Server Time Indicates last data update time by NSE server
Value Underlying Instrument Value indicates the value of the underlying Security or Index
Call Sum Calculated. Sum of the Changes in Call Open Interest contracts of the given Strike Price and the next immediate two Strike Prices (In Thousands for Index Mode and Tens for Stock Mode)
Put Sum Calculated. Sum of the Change in Put Open Interest contracts of the given Strike Price and the next two Strike Prices (In Thousands for Index Mode and Tens for Stock Mode)
Difference Calculated. Difference between the Call Sum and Put Sum. If it's very -ve it's bullish, if it's very +ve then it's bearish else it's a sideways session.
Call Boundary Change in Call Open Interest contracts for 2 Strike Prices above the given Strike Price. This is used to determine if Call writers are taking new positions (Bearish) or exiting their positions (Bullish). (In Thousands for Index Mode and Tens for Stock Mode)
Put Boundary Change in Put Open Interest for the given Strike Price. This is used to determine if Put writers are taking new positions (Bullish) or exiting their positions(Bearish). (In Thousands for Index Mode and Tens for Stock Mode)
Call In The Money(ITM) This indicates that bullish trend could continue and Value could cross 4 Strike Prices above given Strike Price. It's calculated as the ratio of Put writing and Call writing at the 4th Strike Price above the given Strike price. If the absolute ratio > 1.5 then it's bullish sign.
Put In The Money(ITM) This indicates that bearish trend could continue and Value could cross 2 Strike Prices below given Strike Price. It's calculated as the ratio of Call writing and Put writing at the 2nd Strike Price below the given Strike price. If the absolute ratio > 1.5 then it's bearish sign.

Label Data:

Data Description
Open Interest Upper Boundary Highest and 2nd Highest(highest in OI boundary range) Call Open Interest contracts (In Thousands for Index Mode and Tens for Stock Mode) and their corresponding Strike Prices
Open Interest Lower Boundary Highest and 2nd Highest(highest in OI boundary range) Put Open Interest contracts (In Thousands for Index Mode and Tens for Stock Mode) and their corresponding Strike Prices
Open Interest This indicates if the latest OI data record indicates Bearish or Bullish signs near Indicated Strike Price. If the Call Sum is more than the Put Sum then the OI is considered Bearish as there is more Call writing than Puts. If the Put Sum is more than the Call sum then the OI Is considered Bullish as the Put writing exceeds the Call writing.
Put Call Ratio(PCR) Sum Total of Put Open Interest contracts divided by Sum Total of Call Open Interest contracts
Call Exits This indicates if the Call writers are exiting near given Strike Price in the latest OI data record. If the Call sum is < 0 or if the change in Call OI at the Call boundary (2 Strike Prices above the given Strike Price) is < 0, then Call writers are exiting their positions and the Bulls have a clear path.
Put Exits This indicates if the Put writers are exiting near given Strike Price in the latest OI data record. If the Put sum is < 0 or if the change in Put OI at the Put boundary (the given Strike Price) is < 0, then Put writers are exiting their positions and the Bears have a clear path.
Call In The Money(ITM) This indicates if the Call writers are also exiting far OTM strike prices (4 Strike Prices above the given Strike Price) showing extreme bullishness. Conditions are if the Call writers are exiting their far OTM positions and the Put writers are writing at the same Strike Price & if the absolute ratio > 1.5 then it's bullish sign. This signal also changes to Yes if the change in Call OI at the far OTM is < 0.
Put In The Money(ITM) This indicates if the Put writers are also exiting far OTM strike prices (2 Strike Prices below the given Strike Price) showing extreme bearishness. Conditions are if the Put writers are exiting their far OTM positions and the Call writers are writing at the same Strike Price & if the absolute ratio > 1.5 then it's a bearish sign. This signal also changes to Yes if the change in Put OI at the far OTM is < 0.

Screenshots:

  • Login Page:


    Login_Window

  • Main Window Index Mode:


    Main_Window_Index

  • Main Window Stock Mode:


    Main_Window_Stock

  • Selecting Data:


    Selecting_Data

  • Option Menu:


    Option_Menu

  • Toast Notifications (Windows 10 and 11 only):


    Notification

Dependencies:

  • auto-py-to-exe is used for compiling the program to a .exe file

  • pandas is used for storing and manipulating the data

  • requests is used for accessing and retrieving data from the NSE website

  • stream-to-logger is used for debug logging

  • tksheet is used for the table containing the data

  • win10toast is used for toast notifications on Windows 10 and 11

Contributors:

python-nse-option-chain-analyzer's People

Contributors

quicklearner171998 avatar varuns2002 avatar yjagota avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

python-nse-option-chain-analyzer's Issues

Interview

Hi Varun,

We were impressed by your NSE OC Analyzer code and would like to invite you to interview for our upcoming YouTube channel dedicated to Stock Market programmer.
If you are interested please send us an Email on "[email protected]" with your contact details.

Sorry to creating issue, as no contact details found.

Regards,
Sangram

Enhancement : To Include Stock Options

Hi Varun

First of all, Great Job done and big thanks for sharing.

Will it be possible for you to change the URL "https://www.nseindia.com/api/option-chain-indices" to "https://www.nseindia.com/api/quote-derivative?symbol" and provide option of "TATASTEEL". It would be great to include all stock options. I can help in creating a list in a particular format, if you need.

I tried doing that but got following error. I am not a hardcore developer to get into it.

Fatal error: PyInstaller does not include a pre-compiled bootloader for your
platform. For more details and instructions how to build the bootloader see
https://pyinstaller.readthedocs.io/en/stable/bootloader-building.html

Quitting program raises exceptions:

Quitting program raises exceptions shown below:

streamtologger appears to not be working also. No log file is produced.

Exception in Tkinter callback
Traceback (most recent call last):
  File "C:\ProgramData\Anaconda3\envs\consuming_http\lib\tkinter\__init__.py", line 1892, in __call__
    return self.func(*args)
  File "C:\ProgramData\Anaconda3\envs\consuming_http\lib\tkinter\__init__.py", line 814, in callit
    func(*args)
  File "C:\Users\richadmin\AppData\Local\Temp/ipykernel_23096/1352159003.py", line 1552, in main
    self.set_values()
  File "C:\Users\richadmin\AppData\Local\Temp/ipykernel_23096/1352159003.py", line 1378, in set_values
    self.sheet.see(last_row)
  File "C:\ProgramData\Anaconda3\envs\consuming_http\lib\site-packages\tksheet\_tksheet.py", line 1128, in see
    self.MT.see(row, column, keep_yscroll, keep_xscroll, bottom_right_corner, check_cell_visibility = check_cell_visibility, redraw = redraw)
  File "C:\ProgramData\Anaconda3\envs\consuming_http\lib\site-packages\tksheet\_tksheet_main_table.py", line 1050, in see
    yvis, xvis = self.cell_is_completely_visible(r = r, c = c, separate_axes = True)
  File "C:\ProgramData\Anaconda3\envs\consuming_http\lib\site-packages\tksheet\_tksheet_main_table.py", line 1106, in cell_is_completely_visible
    x1, y1, x2, y2 = self.GetCellCoords(r = r, c = c, sel = True)
  File "C:\ProgramData\Anaconda3\envs\consuming_http\lib\site-packages\tksheet\_tksheet_main_table.py", line 2506, in GetCellCoords
    return self.col_positions[c] + 1,self.row_positions[r] + 1, self.col_positions[c + 1], self.row_positions[r + 1]
IndexError: list index out of range

Add new features #not an issue

last 4-5 months I am using the app and it's really great. What I am missing here is auto dump full chain data. and max pain calculation.

The next update Would be to consider the following feature
1. Auto dump complete chain data
2. Max Pain calculation
3. SQL store data for better OI change calculation in last week or month expiry.

NSE Data time difference

Hello Varun,

This is not an issue but an request, if you may observed the general time difference of NSE site data is 2.5 min but some time its more than 7 to 8 ....or some time it just stops....

Like Today at 11:07 AM the BankNifty pull the data last 10:56AM follow the image System time and Data Time column
image

In my program I modified the pop up to show time difference more than 7 min...
image

image

if you like this idea you can also incorporate it.

Also an friendly advice Do not use NSE name or Logo in program.

"""
os_time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
os_update_time = datetime.datetime.strptime(os_time, '%Y-%m-%d %H:%M:%S')

opc_time = current_time
opc_time_update = datetime.datetime.strptime(opc_time, '%d-%b-%Y %H:%M:%S')

diff_time = os_update_time - opc_time_update
self.minutes = diff_time.total_seconds() / 60
#print(self.minutes)
if self.first_run:
print("First Run")
elif self.minutes >= 7:
messagebox.showinfo(title="Time difference", message="Time difference is more than 7 min")

"""

Keep the good work, Cheers.

Regards,
Sangram

OI Change Addition

Hi,
Thanks a lot for the wonderful tool. Can you please add the function for "OI Change" as well along with open interest. Thanks.

Http connection gets failed frequently

HTTPSConnectionPool(host='www.nseindia.com', port=443): Max retries exceeded with url: /api/option-chain-indices?symbol=NIFTY (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x000001E00F3460D0>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed')) <class 'requests.exceptions.ConnectionError'> 4

Save Entire Option Chain Data in Local And View in Excel Sheet.

@VarunS2002 The data of the index is refreshed by the exchange on nseindia.in after about 3 minutes and 25 seconds. This time is not fixed, there is a difference of about 20-30 seconds.

I have a request from you to please make a software from python so that whenever the data of our Banknifty's option chain is updated after 3 minutes, the exchange will be saved on our computer locally and we can see it in Excel.

It would be something like this:
The exchange will refresh its option chain after every 3 minutes and whenever it refreshes, it will also give refresh time there. Now you will check that time after every second with your software and as soon as that time is updated, you will save the entire option price in the local database giving the entire strike price and wait for the next time update and We will save it again when the data comes.

You will save these data according to the time so that according to that time in Excel, the data can be seen and your own setup can be made.

There is no email address @VarunS2002 to talk to you.
This is a very good concept.

A suggestion

Hi Varun,

First of all Thanks for this wonderful tool as it is helping me to fetch the Option Chain from NSE.
As I am not a student of Mr. Dharaskar, the only advantage for me is to retrieve the Chain, every
"n" minutes. I would like to have an additional feature, if possible. Humble request.

An additional column in csv with the Spot Price of the underlying will be of more help.

Regards

FUTURES DATA

Hi,
This program is great. Just wants to thank you for your contribution and raise a request. Since analysis is incomplete without futures data. can you please release a version which can fetch futures data also? Its humble request , please work on this if you able to spare some time.

Is this suppported in mac?

I am trying to install this in mac/linux. The installation commands are very vague. I installed the requirements.txt and also downloaded the .py file. what is the next step? where can I find?

Also, is there any way where I can run this in command line mode, if GUI is not yet implemented for Mac

Bank Nifty spot price shows zero

Hi Varun,

I actually have 3 concerns -

  1. The 'Value' column shows 0 for Bank nifty. Tried various strike prices but result is same.
  2. There is a delay of about 1 min for new updated values to appear.
  3. A minute update is skipped sometimes. For eg: If the last update was on 13:06:27 then the next update may come at 13:08:57.

Also would really appreciate if you could mention few signals that one can use as a indication to take a trade. For eg: Put Sum becomes more than Call Sum which indicates price may go Up.

OCA

Keep up the good work and Thank you in advance!

New Feature Request

Hi Varun and Team, Congratulations for building a great product. I have used some of the paid software for Open Interest analysis while your product offers great insights, however there is a limitation in terms of strike coverage.
When i enter a strike price for Banknifty, Call/PUT sum is calculated for 2 strike price away from spot, this range is very less to capture moves of FIIs and Big players who generally position 4-7 strikes away from Spot.

If you can build a feature in the product where users can select the strikes which they want to see data that will be great and increase usability of product manifolds.

Does it have Macbook support app?

Does it have a Macbook support app? I was trying to build it on my MacBook but getting the following error.

Exception in Tkinter callback
Traceback (most recent call last):
  File "/Users/dipankar/opt/anaconda3/lib/python3.8/tkinter/__init__.py", line 1883, in __call__
    return self.func(*args)
  File "/Users/dipankar/opt/anaconda3/lib/python3.8/tkinter/__init__.py", line 804, in callit
    func(*args)
  File "NSE_Option_Chain_Analyzer.py", line 1571, in main
    self.set_values()
  File "NSE_Option_Chain_Analyzer.py", line 1397, in set_values
    self.sheet.see(last_row)
  File "/Users/dipankar/Projects/Option-Chain-Analysis/env/lib/python3.8/site-packages/tksheet/_tksheet.py", line 1169, in see
    self.MT.see(row, column, keep_yscroll, keep_xscroll, bottom_right_corner, check_cell_visibility = check_cell_visibility, redraw = redraw)
  File "/Users/dipankar/Projects/Option-Chain-Analysis/env/lib/python3.8/site-packages/tksheet/_tksheet_main_table.py", line 1164, in see
    yvis, xvis = self.cell_is_completely_visible(r = r, c = c, separate_axes = True)
  File "/Users/dipankar/Projects/Option-Chain-Analysis/env/lib/python3.8/site-packages/tksheet/_tksheet_main_table.py", line 1220, in cell_is_completely_visible
    x1, y1, x2, y2 = self.GetCellCoords(r = r, c = c, sel = True)
  File "/Users/dipankar/Projects/Option-Chain-Analysis/env/lib/python3.8/site-packages/tksheet/_tksheet_main_table.py", line 2610, in GetCellCoords
    return self.col_positions[c] + 1,self.row_positions[r] + 1, self.col_positions[c + 1], self.row_positions[r + 1]
IndexError: list index out of range

And display is looking like:
Screenshot 2021-10-02 at 11 29 04 AM

Hover over headers to get the details of it

@VarunS2002 Firstly I really appreciate this piece of art. It works brilliantly with great insights into option strike price data.
As a new user, I am continuously struggling to remember how each insight or data point is being calculated.
It will be awesome if we can add the details for each insight from Wiki whenever we hover our mouse over it.

Exception in tkinter module

$ python3 oi.py
Exception in Tkinter callback
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/tkinter/init.py", line 1883, in call
return self.func(*args)
File "oi.py", line 566, in start
self.main_win()
File "oi.py", line 960, in main_win
self.sheet.enable_bindings(
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/tksheet/_tksheet.py", line 643, in enable_bindings
self.MT.enable_bindings(bindings)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/tksheet/_tksheet_main_table.py", line 2067, in enable_bindings
self.enable_bindings_internal(binding.lower())
AttributeError: 'tuple' object has no attribute 'lower'

List index out of range

Exception in Tkinter
Indexerror : list index out of range error
It will not display option chain in tsheet

Volume not available

Hi Varun,

I am using this option chain Analyzer, I found that if volume available with increased or decreased number, Trade can be taken.
Can you please try to add volume.

Need help to Get Open High low Close information

Hello Varun,
thank you for such an amazing tool, it works perfectly. I am currently looking for an Entire option chain Open, high, low, close information as per the strategy is if option Open = High for intraday it will 90 % goes below and same vice versa Open = Low it will keep rising in intraday. It will be nice if you can help how to fetch this information for index options and stock options. For your reference please find a website that provides this data, it is not my site so I have no commercial interest in this site it is just as example ''https://www.pivottrading.co.in/beta/tools/open-high-low-index-options-scanner.php''

Thank you in advance for all you have done so far.

Can you please add selection list for strike prices? The program should automatically pull available strike prices for selected underlying symbol(s), and then let the user select strike prices

This program is very nice. You did a great job. it looks like it took a ton of work. Thank you for your contribution!

I would like to make a request. Can you please add functions to automatically pull available strike prices for each underlying symbol, and then let the user select (from a list or table) the strike they want to display and analyze?

Right now, when using this program by itself, one must guess what strike prices are available. Otherwise right now we must get the option chain from somewhere else to find available strike prices. Displaying the entire option chain in another window is another way. These features will increase the usability a lot. Please add this function when you have some time to spare.

Thank you.

Need Help with New Nse India Site

Hey,

I came across your solution to access the new nse site on stackoverflow as I was running into authentication issues too. Your solution is neat and works. Could you help me with me some documentation though? I want to understand why you have used f before the url. Here's the stackoverflow soln I'm referring to:

https://stackoverflow.com/questions/63981362/python-requests-get-returns-response-code-401-for-nse-india-website

Thank You!

P.S: I'm a python newbie

Incorrect strike price

When I am trying to put strike price 18000, It is saying Incorrect "Strike Price. Please enter correct Strike Price."

Getting error

Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\amit\AppData\Local\Programs\Python\Python39\lib\tkinter_init_.py", line 1892, in call
return self.func(*args)
File "C:\Users\amit\AppData\Local\Programs\Python\Python39\lib\tkinter_init_.py", line 814, in callit
func(*args)
File "D:\Market\Python\ExcelTrading\OC_Analyzer_VarunS2002.py", line 1571, in main
self.set_values()
File "D:\Market\Python\ExcelTrading\OC_Analyzer_VarunS2002.py", line 1397, in set_values
self.sheet.see(last_row)
File "C:\Users\amit\venv\python39\lib\site-packages\tksheet_tksheet.py", line 1137, in see
self.MT.see(row, column, keep_yscroll, keep_xscroll, bottom_right_corner, check_cell_visibility = check_cell_visibility, redraw = redraw)
File "C:\Users\amit\venv\python39\lib\site-packages\tksheet_tksheet_main_table.py", line 1050, in see
yvis, xvis = self.cell_is_completely_visible(r = r, c = c, separate_axes = True)
File "C:\Users\amit\venv\python39\lib\site-packages\tksheet_tksheet_main_table.py", line 1106, in cell_is_completely_visible
x1, y1, x2, y2 = self.GetCellCoords(r = r, c = c, sel = True)
File "C:\Users\amit\venv\python39\lib\site-packages\tksheet_tksheet_main_table.py", line 2509, in GetCellCoords
return self.col_positions[c] + 1,self.row_positions[r] + 1, self.col_positions[c + 1], self.row_positions[r + 1]
IndexError: list index out of range

SSL Wrong Version Number

am getting below error after start the .py file

requests.exceptions.SSLError: HTTPSConnectionPool(host='www.nseindia.com', port=443): Max retries exceeded with url: /products-services/equity-derivatives-list-underlyings-information (Caused by SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1123)')))

please contact me

@VarunS2002 Hello brother i see you done great work in option chain analyzer. i want to update you that nse option chain data is in contracts. so it is difficult in analysis. if we multily one lot with qantity size it come more accurate. for example nifty one contract multiply with 50 and banknifty multiply with 25. then it come in lakhs. so we want that if you can add a feature where we can see OI in lakhs. it is more useful. i try to contact you but i don't understand how to reach you. if you see my message then please contact me at telegram username alpha225599. i want to contact you.

suggestions

Hi.. it is really nice work.. few suggestions :

  1. is it possible to add parameters like LTP, IV.
  2. charts will be more helpful, is it possible to add charts using Dash libraries, it will be easy to analyze live data on web rather than excel. because excel will crash many times. something similar to the attachment.
  3. if we keep live export on and when we open excel to plot the charts, the GUI is stop working and live data won't update in the exported excel
    Option chain
    .

Not working on aws and gcp

The code is working fine on local pc but not on aws or gcp. Please try yourself. And this is not firewall issue.

Installation issue

Hello sir

Can you help me install this system on my pc.

I was trying but I was unable to install.

IndexError: list index out of range

[2021-10-04 14:46:28 - INFO ] Windows 10 .py version 5.3
[2021-10-04 14:46:36 - ERROR] Exception in Tkinter callback
[2021-10-04 14:46:36 - ERROR] Traceback (most recent call last):
File "C:\Users\prash\AppData\Local\Programs\Python\Python39\lib\tkinter_init_.py", line 1892, in call
[2021-10-04 14:46:36 - ERROR] return self.func(*args)
File "C:\Users\prash\AppData\Local\Programs\Python\Python39\lib\tkinter_init_.py", line 814, in callit
[2021-10-04 14:46:36 - ERROR] func(*args)
File "D:/python-workspace/Python-NSE-Option-Chain-Analyzer/NSE_Option_Chain_Analyzer.py", line 1571, in main
[2021-10-04 14:46:36 - ERROR] self.set_values()
File "D:/python-workspace/Python-NSE-Option-Chain-Analyzer/NSE_Option_Chain_Analyzer.py", line 1397, in set_values
[2021-10-04 14:46:36 - ERROR] self.sheet.see(last_row)
File "D:\python-workspace\Python-NSE-Option-Chain-Analyzer\venv\lib\site-packages\tksheet_tksheet.py", line 1169, in see
[2021-10-04 14:46:36 - ERROR] self.MT.see(row, column, keep_yscroll, keep_xscroll, bottom_right_corner, check_cell_visibility = check_cell_visibility, redraw = redraw)
File "D:\python-workspace\Python-NSE-Option-Chain-Analyzer\venv\lib\site-packages\tksheet_tksheet_main_table.py", line 1164, in see
[2021-10-04 14:46:36 - ERROR] yvis, xvis = self.cell_is_completely_visible(r = r, c = c, separate_axes = True)
File "D:\python-workspace\Python-NSE-Option-Chain-Analyzer\venv\lib\site-packages\tksheet_tksheet_main_table.py", line 1220, in cell_is_completely_visible
[2021-10-04 14:46:36 - ERROR] x1, y1, x2, y2 = self.GetCellCoords(r = r, c = c, sel = True)
File "D:\python-workspace\Python-NSE-Option-Chain-Analyzer\venv\lib\site-packages\tksheet_tksheet_main_table.py", line 2610, in GetCellCoords
[2021-10-04 14:46:36 - ERROR] return self.col_positions[c] + 1,self.row_positions[r] + 1, self.col_positions[c + 1], self.row_positions[r + 1]
IndexError: list index out of range

Screenshot (29)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.