How to fetch live data for indices using websockets
-
Here is how i am trying to get index ticks. But i am not getting the ticks. I dont if it is just me but the doc link https://smartapi.angelbroking.com/docs/WebSocket is nt working for me. Can someone point me to the right doc? or spot what is wrong in my code?
indices = ["nse_cm|26000", "nse_cm|999022", "nse_cm|999031"]
mode = 3
token_list = [{"exchangeType": 1, "tokens": indices}]ws = SmartWebSocketV2(AUTH_TOKEN, API_KEY, CLIENT_CODE, FEED_TOKEN)
ws.subscribe(correlation_id, mode, token_list) -
@sevrus
from smartWebSocketV2 import SmartWebSocketV2For Live NIFTY, BANKNIFTY LTP
AUTH_TOKEN = angelapikey = feed_token = client_code = correlation_id = "live_data" action = 1 mode = 1 sws = SmartWebSocketV2(AUTH_TOKEN, angelapikey, client_code, feed_token) token_Nifty = "26000" token_Bank = "26009" token_Fin = "26037" token_Mid = "26074" token_list = [{"exchangeType": 1, "tokens": [token_Nifty,token_Bank,token_Fin,token_Mid]}] def on_data(wsapp, message): # print("Ticks: {}".format(message)) token = message['token'] last_price = message['last_traded_price'] last_price = last_price/100 def on_open(wsapp): print("\n------Options Live LTP subscribed------") sws.subscribe(correlation_id, mode, token_list) def on_error(wsapp, error): print(error) def on_close(wsapp): print("Close") sws.on_open = on_open sws.on_data = on_data sws.on_error = on_error sws.on_close = on_close threading.Thread(target = sws.connect).start()
"" Do check the indent correctly ""