Currently, no such function available in our KiteNet DLL.
But Kite API provides this information.
Text/Csv Format: https://howutrade.in/brokerdata/symbol_list/equity_margin.txt
Html Format (T…
Make sure you called SubscribeQuotes.
Did you get any error while calling SubscribeQuotes(Exch_Index, Symbol_Index)? Post the output of this formula.
Could you post the Exch_Index and Symbol_Index you tried?
(Copy and paste from the ex…
This is the default limit set in KiteNet.
We have removed this limit for XU9837, now you can subscribe to the maximum permissible tickers i.e. 3000.
In order for the changes to take effect, pls close and re-login in excel.
We haven't released any new updates.
Regarding the 'Version Update message', this popup will come only when new updates are available and will go off once, you update the DLL. Ideally it should not popup now as no updates are there.
The best way to do this, virtually trail your mtm in excel and when your PnL crosses below your trailmtm, then call ExitBO to close your BO position.
But if still want to modify all SL order, then you can use the below code;
'This is gene…
Most of the discount broker's are started offering rest API.
We have tried all, but when it comes to reliability and stability, then Kite API is at top.
We agree that some time you may face tech glitch with Kite API, but if compare wit…
Looks like, you are using old DLL.
Could you install latest DLL from here and try?
For testing, you can just use the ModifyOrder window from dashboard sheet.
Try modifying the BO stoploss order using ModifyOrder window.
GetRTD is a UDF which wraps the complex excel RTD function, so that you can easily use it in a excel cell. Post market hours, you will get 0 for most of the field.
Excel RTD is weird. Below are the some of the reason's that lead…
This 'net' and 'day' positions mainly affects Futures positions/trades.
Yesterday, you bought 1 lot of Nifty
Today, you sold that 1 lot of Nifty
Nifty Qty = 0
Nifty Qty = -75
If you are getting data in MarketDepth Window (Excel) or GetLtp method, then Excel RTD might have corrupted. Excel RTD may corrupt for many reasons, the best solution is repair MS Office.
You can refer this thread https://kite.tr…
The difference in the OI at 1530 Hrs & after 1630 Hrs is due to "the clearing member trade settlements" that happens after normal market close. Trade volume remains same, only the OI changes based on the clearing and settlement.…
You should pass the order id of the stoploss.
For the error, this may be due to the one of the reasons mentioned below;
1. You are passing Invalid order id (Error: OrderId is not found)
2. You are passing Wrong order id (Error: Order is …
Is it possible?
But it may (will) not work efficiently. Because,
1. Excel is single threaded.
2. Frequent reading/writing values from/to excel cell will drastically affect performance.
3. Tracking multiple symbols will reduc…
GetSymbol returns a very large string for NFO (appx 70000 symbols), so excel can't handle such a large string.
GetAvgVolume returns average volume (Day) for the last 3 months. This function depends on nseindia.com data and available Nif…
We are also experiencing this.
Initially, thought this may be due to some temp network issues.
But the delay is consistent, we hope Kite team might have added some delay in order requests.
Earlier we used to place a order i…
Yes, KiteNet will work only after successful validation of client id.
(Part-1) You (KiteNet/KiteXL) will receive order updates directly from Kite server, then if email or SMS alert is enabled, (Part-2) KiteNet/KiteXL will…
Of-course, you will get Greetings for next Diwali also, as this general notices are retrieved during login. This feature enables us to communicate not only greetings, but also updates and other important things. Only few people regularly checks foru…
It is answered here
Every API calls happens between you (Excel) and Kite server, nothing is involved in between.
Regarding the monetize part, we are going to charge Rs 100/month to use KiteNet as Maintenance/Developer charges from Jan/F…
We totally forgot this, I'm writing a short version here.
Data involved with KiteNet:
*On successful login, client id will be checked in our data base for custom algo and enables/disables algo accordingly. (Automatic)
*If email alerts i…
You can subscribe up to the maximum permissible limit set by Kite API.
As per the screenshot, it looks like the limit is 3000 per socket.
So you can subscribe up to 3000 ticker per instance (process) in KiteNet
GetShortSignal is just opposite of GetBuySignal.
GetSellSignal and GetCoverSignal are same as above except that it takes additional parameters target & stoploss price, will return SELL & COVER respectively when LTP crosess target…
Multiple web-socket connections is not possible in KiteNet.
KiteNet supports only single web-socket connection per instance (process), so effectively you can subscribe up to 1000 symbols (API Limit) per instance (process).
You can run 2…
We have changed the name of this function in the test version.
Do as follows;
Go to the Bridge module of VBA and search for the UDF 'Sleep'
Option1: If you don't need this UDF, then delete the entire UDF
Option2: Just change the line Br…
GetOrderStatus is a function, so you (Excel) have to call this function whenever you need latest data. To auto-update like RTD, make this UDF volatile or add dynamic dummy parameter.
Hope you already know this, so there exists only two …
When you run your system in cloud server, your chances of failure are greatly reduced.
But still, no software/cloud/Program are guaranteed to run 100% without fail.
Last month there is a network failure in AWS for 3mins, which lead to …
Our 50+ clients are using cloud server only and don't know what other users are using.
Server is not required during development of system, once you developed a full trading system without any error, then you should run it in cloud serv…
Download the latest sample KiteXL.xlsm from the below link
We have added a UDF to Cance/Exit/Close Regular/BO/CO positions and hooked this UDF to buttons in Dashboard sheet. You can use …
You can reduce your cost (AWS) by running the server during market hours only. i.e 0700AM to 0500PM (10hours daily and full shutdown on market holidays) This way it will cost $79 + GST for 4Core + 8Gb RAM.
Otherwise you can go for mon…
Yes, when you modify a LIMIT order to MARKET, price is irrelevant, your order will always executed at the best price available.
For the sake of clarity, just pass Ltp or your original price while sending modify request.
But make su…
If you mean real-time price data, Kite Server streams one second snapshot data. So ideally price will be updating every second (for liquid stocks).
If order latency, we are able to place a single order in ~30ms during normal network tra…
It's technically difficult to implement.
Since the stop orders are placed by OMS, KiteNet don't have any reference to hook it.
You may have multiple BO in a symbol
Each BO may have Multiple child orders
Each child orders may complete at…
Case 1: If the modify Qty is less than Filled Qty (for whatever reason), then the order will not be modified and last order status before modify request will hold good. Means
Order Status : OPEN
Order Qty : 100
Filled Qty : 61
Taking your example case
Stock : XYZ
Qty : 100
Filled : 60
There are two options to cancel the order, pls note you are just cancelling the unfilled qty, you have already open position for filled qty.
1. Normal Cancel of Order
You have to explicitly call ResetBOSignals before firing same signal.
Since the exit orders are handled by OMS, KiteNet can't monitor and reset automatically.
But we are testing reset of signals with ExitBOBridge
We are adding a additio…
The syntax is same GETRTD(Exch, TrdSym, Field)
For NSE Indices, the Exch is NSE_INDEX
For list of indices refer the below file
Trade Symbol is in the third column of the above file.
For partially filled order, GetOrderStatus will return "UPDATE" as status.
GetOrderStatus returns data from web-socket only.
You can also compare
GetOrderQty and GetOrderFilledQty
GetOrderQty : Total quantity you placed
It will not change automatically.
GetOrderStatus ("order Id") is a function (Not RTD), so you (Excel) have to call this function whenever you need value.
To make auto update:
You can make this function volatile or add a dummy dynamic param…
The GetSymbol returns very large string, so excel may throw error.
There is no practical use for this function in Excel.
Just ignore this function.
DOM returns 0, may be due to off-market hours.
Try during live market hours, and make su…
When we add a symbol to Market Watch sheet, the formula in Column 'AH' calls the SubscribeQuotes function of KiteNet and the symbol is added to the 'TickerListKiteNet.txt' file which is located in the app directory (in ca…
Yes, you can convert any existing UDF to dynamic by adding additional parameters.
But make sure that, the additional parameters is dynamic and updates automatically without any intervention. In other words, you should have at-least one c…
We added a extra parameter in the Excel UDF which wraps the GetMtmBridge funtion, to make it auto update in excel cell.(Dynamic dummy parameter, which will force excel to re-calculate the formula whenever Ltp changes)
GetAtp will not be recalculated automatically by Excel as the parameters are static.
You have to
make this GetAtp UDF as Volatile
or Add dynamic dummy parameter to UDF to force excel to re-calculate.
Right now, with Paper mode you will just get the Profit/Loss simulation.
So, GetOrder* functions will work only with real order id's.
Next week we will release,
1. Excel ORB
2. AmiBroker MA Crossover
Yes, VWAP == AVGPRICE
GetRTD(Exch,TrdSym,"AVGPRICE") and GetAtp(Exch,TrdSym) both returns same values.
This is a excel UDF which wraps the complex Excel RTD function as mentioned here https://howutrade.in/docs/kitenet/html/Intro…
#1 KiteNet RTD client-server is using Udp to send/receive data.
Udp can receive only certain number of packets in a second and it depends on the user physical hardware/infra. We found that the ideal capacity of Udp is 5000 pps.
If you se…
We checked the logs.
ModifyBOSl function checks for the order type of the passed OrderId, if it is other than SL, then this function will throw error 'Order is not BO stoploss order'
There are two possibilities in your case;
1. You are …
1. Make sure the downloaded file is not blocked.
2. Extract the contents of the downloaded zip file to some folder (Ex: Kite) in Desktop or MyDocuments
3. Make sure the extracted folder doesn't contain brackets '(' ')'
4. Run the reg…