3 分钟快速生成代码
输入想法,AI 即刻生成可运行代码
在 ptrade 量化交易平台中,针对融资融券(两融)业务,实时监控信用账户的资产与负债状况是防范爆仓风险、精细化资金管理的核心。要获取当前账户的可用融券额度和负债总额,可以使用 ptrade 提供的专用信用资产查询接口 get_margin_assert()。
get_margin_assertget_margin_assert() 接口专门用于查询信用账户的资产信息。该函数无需传入参数,调用成功后会返回一个包含所有信用资产及负债明细的字典(dict)。
其中,您最关心的两个字段为:
total_debit:负债总额(单位:元,float 类型)slo_enable_quota:融券可用额度(单位:元,float 类型)此外,该接口还返回以下重要字段:
assure_asset:担保资产enable_bail_balance:可用保证金fin_enable_quota:融资可用额度fin_compact_balance:融资合约金额以下是一个完整的 ptrade 策略示例,展示了如何在盘中交易时间(handle_data)实时获取并打印当前的负债总额与可用融券额度:
def initialize(context):
# 初始化策略,设置标的股票池
g.security = '600570.SS' # 恒生电子
set_universe(g.security)
def handle_data(context, data):
# 获取信用账户资产信息
margin_assert = get_margin_assert()
if margin_assert:
# 提取负债总额
total_debit = margin_assert.get('total_debit', 0.0)
# 提取可用融券额度
slo_enable_quota = margin_assert.get('slo_enable_quota', 0.0)
# 提取可用保证金(可选)
enable_bail_balance = margin_assert.get('enable_bail_balance', 0.0)
# 打印日志信息
log.info("====== 信用账户资产监控 ======")
log.info("当前账户负债总额: %.2f 元" % total_debit)
log.info("当前可用融券额度: %.2f 元" % slo_enable_quota)
log.info("当前可用保证金: %.2f 元" % enable_bail_balance)
log.info("============================")
# 策略逻辑:例如当可用融券额度充足且满足技术指标时,执行融券卖出
# if slo_enable_quota > 100000:
# marginsec_open('600030.SS', 100) # 融券卖出中信证券
else:
log.error("获取信用资产信息失败,请检查是否为两融实盘/模拟盘环境。")
get_margin_assert 接口仅支持 PTrade 客户端,且必须在两融交易模块(信用账户环境)下调用。在普通股票账户或回测环境中调用此接口将无法获取正确数据。