QMT获取持仓对象所有属性和属性值

该代码片段展示了如何使用Python库如pandas和ta-lib来获取并解析股票交易详情数据。通过对交易细节数据的遍历,展示了一系列与股票持仓、价格、利润等相关的属性,如m_dCloseProfit、m_dFloatProfit和m_dMarketValue等,帮助理解金融数据在股票交易中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#encoding:gbk

import pandas as pd
import numpy as np
import talib
import datetime

def init(ContextInfo):
	ContextInfo.accID='80*****6'
	ContextInfo.set_account(ContextInfo.accID)
	position_list=get_trade_detail_data(ContextInfo.accID,'STOCK','POSITION')
	for i in position_list:
		print('-'*30)
		for attr in dir(i):
			if attr[0:2]=='m_':
				print(attr,getattr(i,attr))

def handlebar(ContextInfo):
	pass

输出结果

m_bIsToday True
m_dAvgOpenPrice 11.87924050025
m_dCloseAmount 0.0
m_dCloseProfit 0.0
m_dFloatProfit -799.999999999983
m_dInstrumentValue 446800.0
m_dLastPrice 11.17
m_dLastSettlementPrice 0.0
m_dMargin 0.0
m_dMarketValue 446800.0
m_dOpenCost 475169.62
m_dOpenPrice 11.87924050025
m_dPositionCost 475169.62
m_dPositionProfit -28369.619999999995
m_dProfitRate -0.05970419573540917
m_dRealUsedMargin 0.0
m_dRedemptionVolume 0
m_dReferenceRate 0.0
m_dRoyalty 0.0
m_dSettlementPrice 11.17
m_dSingleCost 0.0
m_dStaticHoldMargin 1.7976931348623157e+308
m_dStockLastPrice 1.7976931348623157e+308
m_dStructFundVol 0
m_dTotalCost 0.0
m_eFutureTradeType 48
m_eSideFlag 0
m_nCanUseVolume 40000
m_nCidIncrease -334297547
m_nCidIsDelist -1175584696
m_nCidRateOfCurrentLine 808464384
m_nCidRateOfTotalValue 1395536178
m_nCloseVolume 0
m_nCoveredVolume 0
m_nDirection 48
m_nEnableExerciseVolume -1
m_nFrozenVolume 0
m_nHedgeFlag 49
m_nLegId 0
m_nOnRoadVolume 0
m_nOptCombUsedVolume 0
m_nPREnableVolume 40000
m_nSettledAmt 0
m_nStrategyID 5837400765440865603
m_nVolume 40000
m_nYesterdayVolume 40000
m_strAccountID 80041016
m_strAccountKey 2____10103____1000____49____80041016____
m_strComTradeID 
m_strExchangeID SH
m_strExchangeName 上证所
m_strExpireDate 
m_strInstrumentID 600305
m_strInstrumentName 恒顺醋业
m_strOpenDate 
m_strProductID 
m_strProductName 
m_strStockHolder A430576056
m_strTradeID 
m_strTradingDay 20230427
m_xtTag None

对照文档好好理解每个属性的意思吧。

### QMT API 获取全部股票代码的方法 在迅投QMT平台中,可以通过内置API来获取所有股票的代码列表。以下是实现这一目标的具体方式: #### 使用 `get_instrument_list` 接口 QMT提供了专门用于获取证券市场中所有可交易品种(包括股票、基金等)的接口——`get_instrument_list()` 函数[^1]。该函数可以返回指定市场的所有证券代码及其基本信息。 下面是一个完整的 Python 示例代码片段,展示如何利用此接口获取沪深A股市场的所有股票代码: ```python from xtquant import xtdata def get_all_stock_codes(): """ 获取沪深A股市场的所有股票代码 """ market = 'stock' # 市场类型:stock表示股票市场 stock_type = ['STOCK_A'] # 股票类别:STOCK_A 表示 A 股 instrument_list = xtdata.get_instrument_list(market=market, type=stock_type) all_stock_codes = [] for item in instrument_list: code = item['code'] name = item['name'] all_stock_codes.append((code, name)) return all_stock_codes if __name__ == "__main__": stocks = get_all_stock_codes() print(f"总共找到 {len(stocks)} 支股票") for i, (code, name) in enumerate(stocks[:10]): # 打印前10支股票作为示例 print(f"{i+1}. 股票代码: {code}, 名称: {name}") ``` 上述代码定义了一个名为 `get_all_stock_codes` 的函数,它会调用 `xtdata.get_instrument_list` 来获取特定类型的证券列表,并提取其中的股票代码名称[^2]。 #### 关键参数说明 - **`market` 参数**:指定了要查询的市场范围。对于中国股市而言,“stock”代表整个股票市场。 - **`type` 参数**:限定所关注的证券种类。“STOCK_A”特指上交所以及深交所提供的A股股票。 通过以上设置即可获得一份详尽的沪深两市A股清单[^3]。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值