using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using System.Text;
using System.Threading.Tasks;
namespace TdxHqDemoCSharp
{
internal class Program
{
///
/// 连接通达信行情服务器,服务器地址可在券商软件登录界面中的通讯设置中查得
///
/// 服务器IP
/// 服务器端口
/// 账号,普通行情是guest, L2行情是L2账号
/// 密码,普通行情是空串, L2行情是L2账号的密码
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回 ConnectionID, 失败返回-1
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
public static extern int TdxHq_Connect(string IP, ushort Port, string Account, string Password, StringBuilder Result, StringBuilder ErrInfo);
///
/// 断开同服务器的连接
///
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
public static extern void TdxHq_Disconnect(int ConnectionID);
///
/// 获取逐笔成交数据
///
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// K线开始位置,最后一条K线位置是0, 前一条是1, 依此类推
/// API执行前,表示用户要请求的K线数目, API执行后,保存了实际返回的K线数目
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetDetailTransactionData(int ConnectionID, byte Market, string Zqdm, int Start, ref ushort Count, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取逐笔还原数据
///
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// K线开始位置,最后一条K线位置是0, 前一条是1, 依此类推
/// API执行前,表示用户要请求的K线数目, API执行后,保存了实际返回的K线数目
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetDetailOriginalTransactionData(int ConnectionID, byte Market, string Zqdm, int Start, ref ushort Count, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取深圳逐笔委托数据
///
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// K线开始位置,最后一条K线位置是0, 前一条是1, 依此类推
/// API执行前,表示用户要请求的K线数目, API执行后,保存了实际返回的K线数目
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetDetailOrderData(int ConnectionID, byte Market, string Zqdm, int Start, ref ushort Count, StringBuilder Result, StringBuilder ErrInfo);
///
/// 批量获取多个证券的十档报价数据
///
/// 市场代码, 0->深圳 1->上海, 第i个元素表示第i个证券的市场代码
/// 证券代码, Count个证券代码组成的数组
/// API执行前,表示用户要请求的证券数目,最大50, API执行后,保存了实际返回的数目
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetSecurityQuotes10(int ConnectionID, byte[] Market, string[] Zqdm, ref ushort Count, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取买卖队列数据
///
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetBuySellQueue(int ConnectionID, byte[] Market, string[] Zqdm, int Count, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取市场内所有证券的数量
///
/// 连接ID
/// 市场代码, 0->深圳 1->上海
/// 此API执行返回后,Result内保存了返回的证券数量
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetSecurityCount(int ConnectionID, byte Market, ref ushort Result, StringBuilder ErrInfo);
///
/// 获取市场内从某个位置开始的1000支股票的股票代码
///
/// 连接ID
/// 市场代码, 0->深圳 1->上海
/// 股票开始位置,第一个股票是0, 第二个是1, 依此类推,位置信息依据TdxHq_GetSecurityCount返回的证券总数确定
/// API执行后,保存了实际返回的股票数目,
/// 此API执行返回后,Result内保存了返回的证券代码信息,形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetSecurityList(int ConnectionID, byte Market, ushort Start, ref ushort Count, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取证券的K线数据
///
/// 连接ID
/// K线种类, 0->5分钟K线 1->15分钟K线 2->30分钟K线 3->1小时K线 4->日K线 5->周K线 6->月K线 7->1分钟 10->季K线 11->年K线< / param>
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// K线开始位置,最后一条K线位置是0, 前一条是1, 依此类推
/// API执行前,表示用户要请求的K线数目, API执行后,保存了实际返回的K线数目, 最大值800
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetSecurityBars(int ConnectionID, byte Category, byte Market, string Zqdm, ushort Start, ref ushort Count, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取指数的K线数据
///
/// 连接ID
/// K线种类, 0->5分钟K线 1->15分钟K线 2->30分钟K线 3->1小时K线 4->日K线 5->周K线 6->月K线 7->1分钟 8->1分钟K线 9->日K线 10->季K线 11->年K线< / param>
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// K线开始位置,最后一条K线位置是0, 前一条是1, 依此类推
/// API执行前,表示用户要请求的K线数目, API执行后,保存了实际返回的K线数目, 最大值800
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetIndexBars(int ConnectionID, byte Category, byte Market, string Zqdm, ushort Start, ref ushort Count, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取分时数据
///
/// 连接ID
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetMinuteTimeData(int ConnectionID, byte Market, string Zqdm, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取历史分时数据
///
/// 连接ID
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// 日期, 比如2014年1月1日为整数20140101
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetHistoryMinuteTimeData(int ConnectionID, byte Market, string Zqdm, int Date, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取F10资料的分类
///
/// 连接ID
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
///
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetCompanyInfoCategory(int ConnectionID, byte Market, string Zqdm, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取F10资料的某一分类的内容
///
/// 连接ID
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// 类目的文件名, 由TdxHq_GetCompanyInfoCategory返回信息中获取
/// 类目的开始位置, 由TdxHq_GetCompanyInfoCategory返回信息中获取
/// 类目的长度, 由TdxHq_GetCompanyInfoCategory返回信息中获取
/// 此API执行返回后,Result内保存了返回的查询数据,出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetCompanyInfoContent(int ConnectionID, byte Market, string Zqdm, string FileName, int Start, int Length, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取除权除息信息
///
/// 连接ID
/// 市场代码, 0->深圳 1->上海, 第i个元素表示第i个证券的市场代码
/// 证券代码, Count个证券代码组成的数组
/// API执行前,表示用户要请求的证券数目, API执行后,保存了实际返回的数目
/// 此API执行返回后,Result内保存了返回的查询数据,出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetXDXRInfo(int ConnectionID, byte[] Market, string[] Zqdm, int Count, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取财务信息
///
/// 连接ID
/// 市场代码, 0->深圳 1->上海, 第i个元素表示第i个证券的市场代码
/// 证券代码, Count个证券代码组成的数组
/// API执行前,表示用户要请求的证券数目, API执行后,保存了实际返回的数目
/// 此API执行返回后,Result内保存了返回的查询数据,出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetFinanceInfo(int ConnectionID, byte[] Market, string[] Zqdm,int Count, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取分时成交数据
///
/// 连接ID
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// K线开始位置,最后一条K线位置是0, 前一条是1, 依此类推
/// API执行前,表示用户要请求的记录数目, API执行后,保存了实际返回的记录数目
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetTransactionData(int ConnectionID, byte Market, string Zqdm, ushort Start, ref ushort Count, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取历史分时成交数据
///
/// 连接ID
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// K线开始位置,最后一条K线位置是0, 前一条是1, 依此类推
/// API执行前,表示用户要请求的记录数目, API执行后,保存了实际返回的记录数目
/// 日期, 比如2014年1月1日为整数20140101
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetHistoryTransactionData(int ConnectionID, byte Market, string Zqdm, ushort Start, ref ushort Count, int Date, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取五档报价
///
/// 连接ID
/// 市场代码, 0->深圳 1->上海, 第i个元素表示第i个证券的市场代码
/// 证券代码, Count个证券代码组成的数组
/// API执行前,表示证券代码的记录数目, API执行后,保存了实际返回的记录数目
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetSecurityQuotes(int ConnectionID, byte[] Market, string[] Zqdm, ref ushort Count, StringBuilder Result, StringBuilder ErrInfo);
///
/// 获取集合竞价数据
///
/// 连接ID
/// 市场代码, 0->深圳 1->上海
/// 证券代码
/// 开始位置
/// 欲获取的条数,API执行后,保存了实际返回的条数
/// 此API执行返回后,Result内保存了返回的查询数据, 形式为表格数据,行数据之间通过\n字符分割,列数据之间通过\t分隔。一般要分配1024*1024字节的空间。出错时为空字符串。
/// 此API执行返回后,如果出错,保存了错误信息说明。一般要分配256字节的空间。没出错时为空字符串。
/// 成功返回true, 失败返回false
[DllImport("TdxHqApi.dll", CharSet = CharSet.Ansi)]
[return: MarshalAs(UnmanagedType.I1)]
public static extern bool TdxHq_GetCallAuctionData(int ConnectionID, byte Market, string Zqdm, int Start, ref int Count, StringBuilder Result, StringBuilder ErrInfo);
static void Main(string[] args)
{
//开始获取行情数据
StringBuilder Result = new StringBuilder(1024 * 1024);
StringBuilder ErrInfo = new StringBuilder(256);
//连接服务器
string[] ServerAddress = {
"高级行情_深圳双线1|112.74.31.192|7719",
"高级行情_深圳双线2|124.71.222.84|7719",
"高级行情_深圳双线3|139.9.2.221|7719",
"高级行情_深圳双线4|47.112.105.142|7719",
"高级行情_深圳双线5|120.24.189.167|7719",
"高级行情_上海双线1|139.196.174.113|7719",
"高级行情_上海双线2|47.103.108.38|7719",
"高级行情_上海双线3|139.196.175.118|7719",
"高级行情_武汉电信1|119.97.185.49|7719",
"高级行情_武汉电信2|59.175.238.45|7719",
"高级行情_北京双线1|123.249.28.184|7719",
"高级行情_北京双线2|39.98.108.148|7719",
"高级行情_深圳双线6|139.9.208.12|7719",
"高级行情_深圳双线7|120.76.118.89|7719",
"高级行情_深圳双线8|139.9.211.54|7719",
"高级行情_上海双线4|123.60.164.170|7719",
"高级行情_上海双线5|106.14.221.88|7719",
"高级行情_上海双线6|123.60.162.102|7719",
"高级行情_上海双线7|47.116.113.0|7719",
"高级行情_上海双线8|47.116.113.74|7719",
"高级行情_上海双线9|47.100.220.104|7719",
"高级行情_深圳双线9|139.9.1.206|7719",
"高级行情_北京双线3|39.99.132.128|7719",
"高级行情_深圳双线10|47.112.243.219|7719",
"高级行情_深圳双线11|47.112.176.254|7719",
"高级行情_深圳双线12|47.112.102.66|7719",
"高级行情_北京双线4|119.3.183.88|7719",
"高级行情_北京双线5|139.9.143.183|7719",
"高级行情_北京双线6|120.46.206.187|7719",
"高级行情_上海双线10|47.100.176.37|7719",
"高级行情_上海双线11|101.132.115.34|7719",
"高级行情_上海双线12|106.14.195.70|7719",
"高级行情_深圳双线13|116.205.235.110|7719",
"高级行情_深圳双线14|116.205.238.42|7719",
"高级行情_深圳双线15|116.205.239.160|7719",
};
int ConnectionID = -1;
foreach (string it in ServerAddress)
{
int k1 = it.IndexOf("|", 0);
int k2 = it.IndexOf("|", k1 + 1);
string Name = it.Substring(0, k1);
string IP = it.Substring(k1 + 1, k2 - 1 - k1);
ushort Port = ushort.Parse(it.Substring(k2 + 1));
Console.WriteLine( "连接{0} [{1}:{2}]", Name, IP, Port);
ConnectionID = TdxHq_Connect(IP, Port, "L2账号", "L2密码", Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_Connect", Result, ErrInfo);
if (ConnectionID != -1)
{
break;
}
}
if (ConnectionID == -1)
{
return;
}
//获取证券数量
byte Market = 0;
ushort Count = 0;
bool bool1 = TdxHq_GetSecurityCount(ConnectionID, Market, ref Count, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetSecurityCount", Count, ErrInfo);
//获取证券列表
ushort Start = 0;
Count = 0;
bool1 = TdxHq_GetSecurityList(ConnectionID, Market, Start, ref Count, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetSecurityList", Result, ErrInfo);
//获取股票K线
byte Category = 4;
string Zqdm = "000001";
Start = 0;
Count = 10;
bool1 = TdxHq_GetSecurityBars(ConnectionID, Category, Market, Zqdm, Start, ref Count, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetSecurityBars", Result, ErrInfo);//数据种类, 0->5分钟K线 1->15分钟K线 2->30分钟K线 3->1小时K线 4->日K线 5->周K线 6->月K线 7->1分钟K线 8->1分钟K线 9->日K线 10->季K线 11->年K线
//获取指数K线
Start = 0;
Count = 10;
bool1 = TdxHq_GetIndexBars(ConnectionID, Category, Market, "399001", Start, ref Count, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetIndexBars", Result, ErrInfo);//数据种类, 0->5分钟K线 1->15分钟K线 2->30分钟K线 3->1小时K线 4->日K线 5->周K线 6->月K线 7->1分钟K线 8->1分钟K线 9->日K线 10->季K线 11->年K线
//获取分时图数据
bool1 = TdxHq_GetMinuteTimeData(ConnectionID, Market, Zqdm, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetMinuteTimeData", Result, ErrInfo);
//获取历史分时图数据
bool1 = TdxHq_GetHistoryMinuteTimeData(ConnectionID, Market, Zqdm, 20230904, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetHistoryMinuteTimeData", Result, ErrInfo);
//获取分笔图数据
Start = 0;
Count = 10;
bool1 = TdxHq_GetTransactionData(ConnectionID, Market, Zqdm, Start, ref Count, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetTransactionData", Result, ErrInfo);
//获取历史分笔图数据
Start = 0;
Count = 10;
bool1 = TdxHq_GetHistoryTransactionData(ConnectionID, Market, Zqdm, Start, ref Count, 20140904, Result, ErrInfo); ; Console.WriteLine("{0}:{1}{2}", "TdxHq_GetHistoryTransactionData", Result, ErrInfo);
//获取五档报价数据
ushort ZqdmCount = 2;
byte[] Markets = { 0, 1 };
string[] Zqdms = { "000001", "600000" };
bool1 = TdxHq_GetSecurityQuotes(ConnectionID, Markets, Zqdms, ref ZqdmCount, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetSecurityQuotes", Result, ErrInfo);
//获取F10数据的类别
bool1 = TdxHq_GetCompanyInfoCategory(ConnectionID, Market, Zqdm, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetCompanyInfoCategory", Result, ErrInfo);
//获取F10数据的某类别的内容
bool1 = TdxHq_GetCompanyInfoContent(ConnectionID, Market, Zqdm, "000001.txt", 0, 100000, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetCompanyInfoContent", Result, ErrInfo);
//获取除权除息信息
bool1 = TdxHq_GetXDXRInfo(ConnectionID, Markets, Zqdms, 2, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetXDXRInfo", Result, ErrInfo);
//获取财务信息
bool1 = TdxHq_GetFinanceInfo(ConnectionID, Markets, Zqdms, 2, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetFinanceInfo", Result, ErrInfo);
//获取集合竞价数据
int nCount = 500;
bool1 = TdxHq_GetCallAuctionData(ConnectionID, Market, Zqdm, 0, ref nCount, Result, ErrInfo);Console.WriteLine("{0}:{1}{2}", "TdxHq_GetFinanceInfo", Result, ErrInfo);
//获取十档报价数据
bool1 = TdxHq_GetSecurityQuotes10(ConnectionID, Markets, Zqdms, ref ZqdmCount, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetSecurityQuotes10", Result, ErrInfo);
//获取买卖队列数据
bool1 = TdxHq_GetBuySellQueue(ConnectionID, Markets, Zqdms, ZqdmCount, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetBuySellQueue", Result, ErrInfo);
//获取逐笔成交数据
int nStart = 0;
Count = 10;
bool1 = TdxHq_GetDetailTransactionData(ConnectionID, Market, Zqdm, nStart, ref Count, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetDetailTransactionData", Result, ErrInfo);
//获取逐笔还原数据
nStart = 0;
Count = 10;
bool1 = TdxHq_GetDetailOriginalTransactionData(ConnectionID, Market, Zqdm, nStart, ref Count, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetDetailOriginalTransactionData", Result, ErrInfo);
////获取逐笔委托数据
nStart = 0;
Count = 10;
bool1 = TdxHq_GetDetailOrderData(ConnectionID, Market, Zqdm, nStart, ref Count, Result, ErrInfo); Console.WriteLine("{0}:{1}{2}", "TdxHq_GetDetailOrderData", Result, ErrInfo);
TdxHq_Disconnect(ConnectionID);
}
}
}