天勤 get_account 资金字段读懂:下单前可用与保证金检查
前言策略信号对了却下不出去我第一反应看get_account()是available不够还是把balance当可用去和保证金比了。有次模拟盘「明明没下单」却报资金不足查了半天是字段读错还有一次夜盘加仓白天算好的最大手数到夜里保证金比例变了风控没刷新差点超仓。天勤把资金对象和行情放在同一wait_update帧里字段不复杂但各版本文档命名要对照。下面是我下单前的读法、is_changing更新时机、和get_position联动以及一段能直接抄的风控门槛思路。一、先搞清三个概念概念典型用途权益 balance资金曲线、总体盈亏可用 available还能不能开仓保证金 margin占用多少、是否接近上限不要用手动「权益减占用」代替官方可用仿真和实盘规则可能不一致以reference/tqsdk.objs.rst为准。二、最小订阅与刷新fromtqsdkimportTqApi,TqAuth,TqSim apiTqApi(TqSim(),authTqAuth(账户,密码))accapi.get_account()whileTrue:api.wait_update()ifapi.is_changing(acc):on_account_update(acc)首次连接后先等到is_changing(acc)确认对象已刷新再进入下单。别在冷启动瞬间用旧值开仓。三、下单前检查defcan_open(api,acc,need_margin:float)-bool:ifacc.availableneed_margin:returnFalsereturnTrueMAX_MARGIN_RATIO0.8defon_account_update(acc):globalallow_openifacc.margin/acc.balanceMAX_MARGIN_RATIO:allow_openFalseneed_margin可用合约乘数、保证金率粗算更稳的是模拟盘故意连续开仓看是否在阈值处停单。除零、balance 为 0 要 guard。四、和持仓联动posapi.get_position(trade_sym)账户级「还能开多少」 品种级「净仓是否超限」一起看。只盯 account 会漏掉单品种超限。五、日志与多账户每次下单意图打印available、目标手数、估算保证金、拒单原文。多账户时get_account与下单 account 一致。夜盘出入金单独打一行。总结get_account不复杂复杂的是下单前愿不愿意看一眼。我现在的规矩开仓必须过can_open()换月、节假日前在 TqSim 再压一遍保证金边界。资金不足报错时先打印 account 全字段和 margin 比例比改策略参数快。新人入职我会让他对照文档抄一遍字段说明枯燥但少踩「看错数」的坑。FAQ1多久刷新一次资金随 wait_update用 is_changing(acc)。2回测有 account 吗有规则与模拟不同要读说明。3多账户怎么读构造 TqApi 时的账户与 get 一致。4available 为 0 能平仓吗平仓规则看交易所与柜台常不同于开仓。5拒单仍要看 order 吗要资金够也可能因价格、交易状态拒单。风险提示本文用于期货量化技术实践讨论不构成投资建议。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2637010.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!