Introducing: Webhooks as Order Type on Dhan. Now do Options Trading on Dhan Charts


I am able to fetch data only for commodity segment, I am not able to fetch data of Equity cash segment. I tried multiple times for the cash segment . But I am not receiving any ticker data for that.

Hello @Akash_Prasad

Looks like you added this on wrong thread. To answer the issue, can you check if the added instrument is correct along with the exchange also in the Security ID master list?

The instrument added has not been subscribed as well, which implies it should be incorrect.

Both security Id and exchange ID are available

@Akash_Prasad

Over here, you are trying to fetch BSE_EQ instrument, which has exchange segment as 4 with NSE_EQ exchange segment 1. Hence, no data is being fetched here.

There is a work around. From mobile browser select “Desktop site option” and then login to web.dhan.co. Then browse to web.dhan.co/index/orders/webhooks. Bingo, now we can manage webhooks and generate basket json from mobile browser… :clap:

@Hardik @Shylaja
Hi,
Thanks to Dhan for coming up with automated trade, consistent updates and support. I never imagined about a signal based automated trading to be available for retail traders.
I need a help in setting up my strategy from any one of you guys here. I went through all 400+ messages in Webhook introduction thread and this thread together. I also went through videos shared by you guys. But couldn’t exactly get what I am looking for. One post shared by @Shylaja about dynamic options strike order placement is closest one to my need. But I am not sure how exactly use that in my case.
Here is what I need. Whenever I get buy signal from my pine script, I need to place Nifty FUT Long trade and along with that one Nifty PUT OPT with closest ITM strike (monthly expiry). Vice versa for sell. Nifty FUT short and Nifty CALL OPT with closet ITM (monthly expiry). I want to do this so that I can limit my loss and drawdown though it reduces my profit. Another advantage is it needs 1/3 of naked FUT trade margin. Typically one trade will be open for 1-3 days. So, this works well for me except for last week of expiry where premium reduction is sharper.

Can someone help me to set this up?

Thanks and Regards,
Shrinidhi

1 Like

Hey @shrinidhibhat

Welcome to MadeForTrade community!

Great to see you are working with webhooks in your own unique way. We have @t7support who is a pinescript legend and community members like @Shylaja who will be great to assist you here.

The title is great but as a perpetual student am unworthy of it :sweat_smile:

@shrinidhibhat free resource from my side is here. To do what u want to do u need to modify the alert strings in code to reflect the instruments u want to trade in. You can use the multi leg order JSON string from Dhan and make the necessary mods in it.

1 Like

Thanks for the response. I will check with these guys :slight_smile: :slight_smile:

@t7support thank you for the response. I will go over the video in weekend. Do you have simple example code lines for pine script alert side? In Dhan I only see fixed option strike price under multi leg order. Couldn’t understand how to use dynamic strike price for this. A sample would be great help. I will take care of actual implementation in Pine script

@shrinidhibhat the sample code is here. It has the code to auto-select the strike based on the depth set by you in the script settings from GUI.

1 Like

Hello Dear,

You may still alter the below snippet script for Futures as well.

Just set the 2nd step to false. and follow as per the instruction mentioned in the said link.

However if you still need the overall flow of creating a mutli leg strategy with either futures or options you may refer below open source script of mine which is done for Crude Oil MCX.

If you still have questions you may plz ping me here or via telegram @Pavan_BreathEasy

1 Like

Hello @Hardik - thank you Dhan for this webhook feature - it’s awesome. I’m able to place the buy and sell in separate alerts from trading view.

Can we send trailing stop loss along with buy alert. If yes - can you please help me with template json with parameters.

If no - can you please help do the same with alternative way.

Hi @Hardik, How can I add delay of 10 seconds between 2 trades. Like after existing long position it should wait for 10 seconds before entering short position and vice versa. This is required to use funds effectively. Currently there is no delay, exitLongCondition and shortCondition are getting executed at same time. It will reject order due to short of fund as funds are not yet released from previous exitLongCondition.

if (exitLongCondition)
strategy.close(“Long”)

if (shortCondition)
strategy.entry(“Short”, strategy.short)

if (exitShortCondition)
strategy.close(“Short”)

if (longCondition)
strategy.entry(“Long”, strategy.long)

@Lata_Vanmore

https://www.tradingcode.net/tradingview/countdown-till-bar-close/

You could calc and place some delay in code by using barstate, timeclose, timenow and fire orders

Hi @t7support, I have tried many combinations with timenow, time_close, bar_index but it is not seems to be working. Does Dhan have built-in function allowing time delay between orders?

No there is no bulit in function with Dhan to delay orders from tradingview alerts. What u r asking for must be done in pine script only as the script is firing orders based on it’s logic.

If u see the link below u can see that there is a piece of code which closes all orders after a delay. In a strategy file, code generates a signal at the close of a candle. So u can fire first order at first tick of the next candle. Then apply the delay condition along with next signal condition to fire the next order. In short what u r asking for can be done in pine.

https://www.tradingcode.net/tradingview/countdown-price-bar/

Hi @t7support, I tried below. Still exitlongcondition and shortcondition are getting executed at same time.

timeLeft = barstate.isrealtime ?
(time_close - timenow) / 1000 :
na

// Translate seconds left into minutes and seconds
minsLeft = math.floor(timeLeft / 60)
secsLeft = timeLeft % 60

if (exitlongcondition and minsLeft <= 58)
strategy.entry(“short1”, strategy.short)

if (shortcondition and minsLeft <= 58)
strategy.entry(“short2”, strategy.short)

if (exitshortcondition and minsLeft <= 58)
strategy.entry(“long1”, strategy.long)

if (longcondition and minsLeft <= 58)
strategy.entry(“long2”, strategy.long)

Every condition is <= 58 and so everything will execute at the same time. There should be differential delay between orders.

Also, please note that in this forum I can point you to relevant resources to get u r task done. Debugging your or any one else’s code over different iterations is really out of scope of what this forum is meant to do.

Hi Everyone, I have been successfully using Banknifty chart in TV, to trade in Options in Dhan. My strategy is a simple one, when buy signal comes it should exit from any previous long in put option and place a long in call option, and when sell signal comes, the reverse happens.
But there’s one issue, since the expiry and strike price are calculated dynamically in Pinescript, the exit position order doesn’t always go through, since my code just stores the last alert message and before placing a new order, changes the transaction type from ‘B’ to ‘S’. This is because, sometimes I update my alert after changing parameters which also includes quantity, or I might have managed my positions directly in Dhan.
To achieve full automation, i want all existing position for BankNifty options to be exited before placing new order. What would be the json message to achieve this exit requirement?
Kindly help