Websocket data not receiving

vaibhavsharma13
import logging
from kiteconnect import KiteTicker

logging.basicConfig(level=logging.DEBUG)

# Initialise
api_key=...
access_token=...
kws = KiteTicker(api_key, access_token)

def on_ticks(ws, ticks):
# Callback to receive ticks.
logging.debug("Ticks: {}".format(ticks))


def on_connect(ws, response):
# Callback on successful connect.
# Subscribe to a list of instrument_tokens (RELIANCE and ACC here).
ws.subscribe([738561, 5633])

# Set RELIANCE to tick in `full` mode.
ws.set_mode(ws.MODE_FULL, [738561])

def on_close(ws, code, reason):
# On connection close stop the main loop
# Reconnection will not happen after executing `ws.stop()`
ws.stop()

# Assign the callbacks.
kws.on_ticks = on_ticks
kws.on_connect = on_connect
kws.on_close = on_close

# Infinite loop on the main thread. Nothing after this will run.
# You have to use the pre-defined callbacks to manage subscriptions.
kws.connect()
I am using this code to get streaming data. But the onclick function is only running once. It is not running continuously in a loop as claimed in documentation.
  • sujith
    on_tick is called only when there is a new incoming tick data from the server. During off market hours, Kite Ticker will return only one cached tick. Try it in market hours.
This discussion has been closed.