Hi Team ,
I am facing issue in login with Dhan API Connection
please check the code # Dhan-Tradehull · PyPI
from Dhan_Tradehull import Tradehull
from rich import print
import pandas_ta as ta
import pandas as pd
import talib
client_code = “”
token_id = “”
tsl = Tradehull(client_code,token_id)
watchlist = [“BAJAJFINSV”,“RELIANCE”, ‘NIFTY’ ,“SBILIFE”, “LT”, “HINDUNILVR”, “ADANIENT”, “JIOFIN”, “BAJAJFINSV”, “BAJAJ-AUTO”, “KOTAKBANK”, “ITC”, “EICHERMOT”, “TATACONSUM”, “TECHM”, “ADANIPORTS”, “HEROMOTOCO”, “INFY”, “ASIANPAINT”, “HDFCLIFE”, “TRENT”, “NTPC”, “ETERNAL”, “AXISBANK”, “GRASIM”, “ULTRACEMCO”, “TITAN”, “HCLTECH”, “ONGC”, “MARUTI”, “TCS”, “HINDALCO”, “DRREDDY”, “WIPRO”, “CIPLA”, “SBIN”, “NESTLEIND”, “SHRIRAMFIN”, “SUNPHARMA”, “POWERGRID”, “RELIANCE”, “JSWSTEEL”, “HDFCBANK”, “BEL”, “COALINDIA”, “BHARTIARTL”, “INDUSINDBK”, “ICICIBANK”, “BAJFINANCE”, “M&M”, “APOLLOHOSP”,“NIFTY”]
nifty_ltp = tsl.get_ltp_data(names=[‘NIFTY’])
data_ltp = tsl.get_ohlc_data(names=watchlist)
data_ltp = tsl.get_ohlc_data(names=watchlist)
quote_data = tsl.get_quote_data(names=watchlist)
chart = tsl.get_historical_data(tradingsymbol=‘NIFTY’, exchange=‘INDEX’, timeframe=“5”)
chart = tsl.get_historical_data(tradingsymbol=‘ACC’, exchange=‘NSE’, timeframe=“15”)
chart = tsl.get_historical_data(tradingsymbol=‘NIFTY 17 MAR 23200 PUT’, exchange=‘NFO’, timeframe=“15”)
bt_chart = tsl.get_long_term_historical_data(tradingsymbol=‘RELIANCE’,exchange=‘NSE’,timeframe=‘5’,from_date=‘2021-01-01’,to_date=‘2026-03-14’)
ce_name, pe_name, strike_price = tsl.ATM_Strike_Selection(Underlying=‘NIFTY’, Expiry=0)
ce_name, pe_name, strike_ce, strike_pe = tsl.OTM_Strike_Selection(Underlying=‘NIFTY’, Expiry=0, OTM_count=5)
lot_size = tsl.get_lot_size(tradingsymbol = ce_name)
margin = tsl.margin_calculator(tradingsymbol=ce_name, exchange=‘NFO’, transaction_type=‘BUY’, quantity=lot_size, trade_type=‘MARGIN’, price=strike_price, trigger_price=0)
atm, option_chain = tsl.get_option_chain(Underlying=“NIFTY”, exchange=“INDEX”, expiry=0, num_strikes=70)
pcr = option_chain[‘PE OI’].sum() / option_chain[‘CE OI’].sum()
ltp_based_strike = option_chain.iloc[(option_chain[‘CE LTP’] - 30).abs().argmin()]
delta_based_strike = option_chain.iloc[(option_chain[‘CE Delta’] - 0.3).abs().argmin()]
available_balance = tsl.get_balance()
pnl = tsl.get_live_pnl()
bot_token = “8059847390:AAECSnQK-yOaGJ-clJchb1cx8CDhx2VQq-M”
receiver_chat_id = “1918451082”
tsl.send_telegram_alert(message=“Order executed: BUY NIFTY 23500 CE”, receiver_chat_id=receiver_chat_id, bot_token=bot_token)
Orders
for x in range(10):
orderid = tsl.order_placement(tradingsymbol = ‘TRIDENT’, exchange = ‘NSE’, quantity = 1, price = 0, trigger_price = 0, order_type = ‘MARKET’, transaction_type = ‘BUY’, after_market_order = True, amo_time = ‘OPEN’, trade_type = ‘MIS’)
tsl.enable_pnl_based_exit(profit_value=1000, loss_value=800, product_types=(“INTRADAY”,“DELIVERY”), enable_kill_switch=True)

