You can reach out to the compliance team on kiteconnect(at)zerodha.com and make sure to include the complete description of the product you are building.
Connection closed: 1006 - connection was closed uncleanly (peer dropped the TCP connection without previous WebSocket closing handshake)
Go through the websocket FAQs here.
Header content type should be URL encoded --header 'Content-Type: application/x-www-form-urlencoded' and form input data should be in the same format as given in the examples.
The instrument you are placing an order for has either expired or does not exist.
Make sure, you are using correct exchange name('BFO') and no trailing spaces in the trading symbol.
Is there any other way to obtain the access token automatically?
It is mandatory by the exchange that a trader has to log in manually at least once in a day. We don't recommend automating the login. Go through the login FAQs here.
You don't need to use generate_session for every run. You can directly set access_token kite.set_access_token("your obtained access token"), post successfully generating access token once. The access token is valid for a day. Go through the FAQs to …
[ERROR] Runtime.ImportModuleError: Unable to import module 'lambda_function': cannot import name 'exceptions' from 'cryptography.hazmat.bindings._rust' (unknown location)
You can go through this GitHub issue.
does this mean that I will have access to historical minute data for currently active future instruments, but only historical daily data for expired futures instruments?
Yes. Go through the documentation here.
You need to import required exception from the exception class. Eg:
from kiteconnect.exceptions import InputException
try:
# Your code that may raise InputException
except InputException as e:
# Handle the InputException here with proper lo…
is it real time or any lag applied to OI data.?
We broadcast all the ticks that we receive from the exchange. OI field don't change as frequently as LTP and other fields from the exchange tick stream.
Can you please add an attribute freeze-limit in the instrument token file itself?
Yes, it's added in the new instrument file and is under testing. Will be made available soon.
for CM symbols for one month at a time, the server sometimes returns
empty response
Can you give us some contracts, on which you are facing issues? Are all of the BSE exchange?
kite.quote is randomly failing once in while
Might be network related. There are very few time-outs in kiteconnect app logs overall. You need to handle these time-outs with re-try.
ERROR:root:Exception occurred in BankNiftySpot function at 2023-06-06 14:30:32
This is the internal exception message, which may have been generated while handling KiteConnect exceptions. To identify the source of this message, you will need to revi…
Connection error: 0 - error parsing request
You seem to be using the wrong instrument token. You can get all instrument detail from the instruments list.
No, bid-specific detail won't be available in the historical data APIs, but the total volume. All fields available for the historical chart data can be referred to in the documentation.
TypeError: 'NoneType' object is not subscriptable
order_id = self.session.post(f"{self.root_url}/orders/{variety}",
You seem to be parsing fields from the empty/null response. You can use the Python client.
Will the tick data be returned only once after market hours.
Yes, exchanges don't stream ticks post-market hours, so here we show the last cached tick streamed by the exchange(you can refer to the timestamp). You can check for an MCX contract, as t…
The instrument you are placing an order for has either expired or does not exist.
'tradingsymbol=NATURALGAS JUN FUT'
There shouldn't be any space in the trading symbol. You need to use correct trading symbol from the instruments list.
is there a Simple API/Script to exit any manually taken orders
No, there is no out-of-box API end for exiting orders based on the stocks pnl. You will need to build this at your end, making use of holdings/positions & order placement APIs.
It's a raw binary tick packets. The documentation explains more about this.
PHPkiteconnect client don't have Websocket streaming implementation by default. You can take reference from this PHP ticker implementation package.
Is this error coming only on the place order API? Or on all requests. Go through the Orders FAQs here: https://kite.trade/forum/discussion/4732/frequently-asked-questions-faqs#login
However, once the password was successfully reset, and TOTP 2FA also reset, still I got the capcha on a fresh login when I tried to login.
Yes, the captcha will come till you have made successful login once with the correct userID, password, and 2FA…
I just checked $kite->getInstruments("NFO") and it's rendering fine including both exchange-wise and all. Make sure, you are using the latest PHP kiteconnect version.
[9766] => stdClass Object
(
[instrument_token] => 171…
I am getting forbidden (403).
You need to check if you are using the correct authentication values (access token, API key, etc.), and also ensure that your historical data subscription has not expired.
Hi @JeetKumar
We have not added any image captcha on the login flow. The image captcha only occurs if you enter the wrong userID or password more than 4 times. In such cases, you will need to enter the correct userID, password, and captcha for a su…
https://kite.trade/docs/connect/v3/websocket/#quote-packet-structure
But in this url quote structure of websocket respose is given different.
The quote packet structure mentions the exchange broadcasted binary packet message structure.
When receivin…
requests.exceptions.ReadTimeout: HTTPSConnectionPool(host='api.kite.trade', port=443): Read timed out. (read timeout=7)
You need to handle timeout here.
I have almost waited for more than 30 sec and even is_connected() returns true but no new ticks receiving
Is it possible, to check the same contract ticks from another source? Maybe check kite web marketwatch depth during the same time, just to veri…
My query is data stops receiving after some time in ticker.
If the contract is active (with ticks) and there is no disconnection, this scenario won't occur. However, there might be disconnections due to errors, which would be displayed in the on_err…
undefined reference to `uS::Node::run()'
undefined reference to `uWS::WebSocket::close(int, char const*, unsigned long)'
These errors occurs, if your code is not complied properly or if compiled with different C++ standards.
So will both the instances receive order postback update? Or only one which was subscribed first?
Both, if you have added order update callbacks in both.
I would like to inquire if Zerodha provides historical data
Continuous data can be fetched for the day interval from the 2011 start for FUTs. For OPTs and intra-day intervals, you may contact these exchange-authorized data vendors.
Does it mean terminating kws connections explicitly is pointless, as it will die anyway as main exits ?
In any case, if i have some post process to do and I want to close connections, closing any one kws will close all other connections ? (all kws a…
So it appears to me that, closing 1 WS closes rest all connections ? is this true ?
Yes, if you close the main thread connection, all daemon threads created using threaded instances would be self-closed.
As this is a large file stream, there could be possible network-related issues such as network congestion or connection dropouts, which could lead to a disruption in the data transmission. So, it's recommended to request it once a day (ideally at ar…