available_cash - = target_value

available_cash 是 QMT 内置 Python 文档中的= target_value参考条目。

提示

  • market-data-vip

条目定义

类型: 附录参考

官方名称: available_cash

本条目不是独立可调用函数,用于说明对象属性、数据字段、枚举、日志或平台约定。

释义

available_cash 是 QMT 内置 Python 文档中的= target_value参考条目。

研究:官方目录未明确;回测:官方目录未明确;模拟:官方目录未明确;实盘:官方目录未明确。

参数

本条目没有独立函数参数。字段、取值或对象属性请查看下方官方详细说明。

返回值

本条目不是独立可调用函数,没有单独返回值。

示例

当前官方章节未提供独立示例;本页重点保留字段、对象或约定定义。

详细说明

#打印函数运行耗时 定时器间隔应大于该值

print(f"下单判断函数运行完成 耗时{time.time() - t0}秒")

def refresh_waiting_dict(C):

"""更新委托状态 入参为ContextInfo对象"""

#获取委托信息

order_list = get_trade_detail_data(A.acct,A.acct_type,'order')

#取出委托对象的 投资备注 : 委托状态

ref_dict = {i.m_strRemark : int(i.m_nOrderStatus) for i in order_list}

del_list = []

for stock in A.waiting_dict:

if A.waiting_dict[stock] in ref_dict and ref_dict[A.waiting_dict[stock]] in [56, 53, 54]:

#查到对应投资备注 且状态为成交 / 已撤 / 部撤, 从等待字典中删除

print(f'查到投资备注 {A.waiting_dict[stock]},的委托 状态{ref_dict[A.waiting_dict[stock]]} (56已成 53部撤 54已撤)从等待等待字典中删除')

del_list.append(stock)

if A.waiting_dict[stock] in ref_dict and ref_dict[A.waiting_dict[stock]] == 57:

#委托状态是废单的 也停止等待 从等待字典中删除

print(f"投资备注为{A.waiting_dict[stock]}的委托状态为废单 停止等待")

del_list.append(stock)

for stock in del_list:

del A.waiting_dict[stock]

获取融资融券账户可融资买入标的

python

#coding:gbk

def init(C):

r = get_assure_contract('123456789')

if len(r) == 0:

print('未取到担保明细')

else:

finable = [o.m_strInstrumentID+'.'+o.m_strExchangeID for o in r if o.m_eFinStatus==48]

print('可融资买入标的:', finable)

获取两融账号信息示例

python

#coding:gbk

def init(C):

account_str = '11800028'

credit_account = query_credit_account(account_str, 1234, C)

def credit_account_callback(C,seq,result):

print('可买担保品资金', result.m_dAssureEnbuyBalance)

直接还款示例

该示例演示使用python进行融资融券账户的还款操作。

python

#coding:gbk

def init(ContextInfo):

用passorder函数进行融资融券账号的直接还款操作

money = 10000 #还款金额

#account='123456'

s = '000001.SZ' # 代码填任意股票,占位用

passorder(32, 1101, account, s, 5, 0, money, 2, ContextInfo)

passorder(75, 1101, account, s, 5, 0, money, 2, ContextInfo) 专项直接还款

交易数据查询示例

python

#coding:gbk

def to_dict(obj):

attr_dict = {}

for attr in dir(obj):

try:

if attr[:2] == 'm_':

attr_dict[attr] = getattr(obj, attr)

except:

pass

return attr_dict

def init(C):

pass

#orders, deals, positions, accounts = query_info(C)

def handlebar(C):

if not C.is_last_bar():

return

orders, deals, positions, accounts = query_info(C)

def query_info(C):

orders = get_trade_detail_data('8000000213', 'stock', 'order')

for o in orders:

print(f'股票代码: {o.m_strInstrumentID}, 市场类型: {o.m_strExchangeID}, 证券名称: {o.m_strInstrumentName}, 买卖方向: {o.m_nOffsetFlag}',

f'委托数量: {o.m_nVolumeTotalOriginal}, 成交均价: {o.m_dTradedPrice}, 成交数量: {o.m_nVolumeTraded}, 成交金额:{o.m_dTradeAmount}')

deals = get_trade_detail_data('8000000213', 'stock', 'deal')

for dt in deals:

print(f'股票代码: {dt.m_strInstrumentID}, 市场类型: {dt.m_strExchangeID}, 证券名称: {dt.m_strInstrumentName}, 买卖方向: {dt.m_nOffsetFlag}',

f'成交价格: {dt.m_dPrice}, 成交数量: {dt.m_nVolume}, 成交金额: {dt.m_dTradeAmount}')

positions = get_trade_detail_data('8000000213', 'stock', 'position')

for dt in positions:

print(f'股票代码: {dt.m_strInstrumentID}, 市场类型: {dt.m_strExchangeID}, 证券名称: {dt.m_strInstrumentName}, 持仓量: {dt.m_nVolume}, 可用数量: {dt.m_nCanUseVolume}',

f'成本价: {dt.m_dOpenPrice:.2f}, 市值: {dt.m_dInstrumentValue:.2f}, 持仓成本: {dt.m_dPositionCost:.2f}, 盈亏: {dt.m_dPositionProfit:.2f}')

accounts = get_trade_detail_data('8000000213', 'stock', 'account')

for dt in accounts:

print(f'总资产: {dt.m_dBalance:.2f}, 净资产: {dt.m_dAssureAsset:.2f}, 总市值: {dt.m_dInstrumentValue:.2f}',

f'总负债: {dt.m_dTotalDebit:.2f}, 可用金额: {dt.m_dAvailable:.2f}, 盈亏: {dt.m_dPositionProfit:.2f}')

return orders, deals, positions, accounts

上次更新: 2024/12/5 14:46:38

邀请注册送VIP优惠券