通达信里的概念数据在哪里
时间: 2024-02-06 19:03:35 浏览: 342
通达信软件中的概念数据可以在以下路径中找到:
```
通达信安装路径\T0002\hq_cache\gn.dat
```
其中,`通达信安装路径` 是指您安装通达信软件的路径。`hq_cache` 文件夹中存储了通达信的行情数据缓存文件,`gn.dat` 文件就是概念数据文件。
您可以使用记事本等文本编辑器打开 `gn.dat` 文件,查看其中的概念数据。每行数据由概念代码、概念名称和概念成分股票列表组成,各字段之间使用制表符(TAB)分隔。例如:
```
GN001 新能源汽车 000625 000550 000957 000903 600104 ...
GN002 券商信托 000166 600030 600109 600999 601066 ...
GN003 石墨烯 002185 600876 300034 300080 300384 ...
... ... ...
```
上述示例中,第一列为概念代码,第二列为概念名称,后面的列为概念成分股票列表,以股票代码表示。
需要注意的是,在通达信中,概念数据是经过编码压缩的,需要使用相应的 API 或工具进行解码。如果您需要在自己的程序中使用概念数据,可以考虑使用通达信提供的相关 API 或第三方工具来获取和解码数据。
相关问题
如何解码通达信的概念数据
通达信的概念数据采用了编码压缩方式,需要使用相应的算法进行解码。以下是使用 Python 解码通达信概念数据的示例代码:
```python
import struct
def decode_concept_data(data):
"""
解码通达信概念数据
:param data: 概念数据字节串
:return: 概念数据列表,每个元素为一个字典,包含概念代码、概念名称和成分股票代码列表
"""
# 计算概念数量
num_concepts = len(data) // 292
# 定义解码格式
fmt = '<6s80s40s240s'
# 解码数据
concepts = []
for i in range(num_concepts):
offset = i * 292
concept_data = data[offset:offset+292]
concept_code, concept_name, _, stock_codes = struct.unpack(fmt, concept_data)
concept = {
'code': concept_code.decode('gbk').rstrip('\x00'),
'name': concept_name.decode('gbk').rstrip('\x00'),
'stocks': [s.decode('gbk').rstrip('\x00') for s in stock_codes.split(b'\x00') if s]
}
concepts.append(concept)
return concepts
```
在上述代码中,`data` 参数为通达信概念数据的字节串,函数返回一个包含概念信息的列表,每个元素为一个字典,包含 `code`、`name` 和 `stocks` 三个字段,分别表示概念代码、概念名称和成分股票代码列表。
需要注意的是,通达信的概念数据使用了 GBK 编码,因此在解码时需要使用 `decode('gbk')` 方法进行解码,并去除末尾的空字符。此外,概念数据中的股票代码使用了 NULL 字符分隔,需要使用 `split(b'\x00')` 方法进行分割。
使用上述代码,可以轻松地解码通达信的概念数据并进行进一步的处理。
通达信block_zs.dat中的数据是什么数据?
block_zs.dat是通达信软件中一个自定义板块数据文件,其中存储了用户自定义的股票板块信息,包括板块名称、板块成分股票代码等数据。通达信软件中的板块功能可以让用户自定义各种股票板块,比如行业板块、概念板块等,方便用户对股票进行分类、筛选和监控。block_zs.dat就是这些板块数据的存储文件。
阅读全文