用途:该技能面向使用 Dhan-Tradehull(pip install Dhan-Tradehull)编写、调试 Python 算法交易代码的场景。核心是 TradeHull 对 Dhan API 的封装,需先导入并初始化,如 from Dhan_Tradehull import Tradehull。生成代码时要求遵循其编码风格(垂直对齐、bc1/bc2/sc1/sc2 条件、块注释、扁平结构),应先阅读 references/coding-style.md。
主要能力:认证支持三种模式,access_token(令牌每日过期,需开盘前重新生成)、api_key(浏览器登录流程)、pin_totp(PIN 长期有效,适合全自动算法);行情提供 LTP、Quote、OHLC、历史与长周期历史数据、板块数据,交易所取值含 NSE、BSE、NFO、BFO、MCX、INDEX;期权提供 ATM/OTM/ITM 行权价选择、期权链(含 Delta、Theta、Gamma、Vega、IV,get_option_greek() 已弃用);交易支持普通单、超级单(入场+目标+止损,含移动止损)、Forever/GTT 单(SINGLE 与 OCO);组合管理含持仓、头寸、订单簿、余额、实时盈亏、保证金计算与手数查询;还支持 20 档市场深度、已过期期权历史数据、基于盈亏的自动退出与 Telegram 提醒。
使用方式:按任务按需加载对应参考文件(认证、行情、期权、订单、组合、工具、错误日志、算法开发流程、扫描器、Flask UI、部署等)。下单需调 order_placement(),指定 tradingsymbol、exchange、quantity、price、order_type 等参数;大单可用 should_slice=True 切片。数据方法可加 debug="YES" 打印原始响应。
限制:资料明确自 2026 年 4 月 1 日起 F&O 不再允许 MARKET 单,须用 LIMIT 单(买入价高于 LTP、卖出价低于 LTP 以便成交);手数必须用 get_lot_size() 动态获取,不得硬编码;access_token 每日过期;不要把 place_conditional_trigger() 用于新代码,应改用历史数据加 TA-Lib 自行计算指标。上述为资料所载事实,更多细节见官方文档与参考文件。