📄 stock.c.txt
字号:
#define RCV_REPORT 0x3f001234
#define RCV_FILEDATA 0x3f001235
#define TS_StockDrv_IdTxt "TongShi_StockDrv_2.00" // 通视
//==================================== 数据 =================================================
// 证券
#define SH_MARKET_EX 'HS' // 上海
#define SZ_MARKET_EX 'ZS' // 深圳
#define HK_MARKET_EX 'KH' // 香港
// 文?
// 结构数组形式的文件数据
#define FILE_HISTORY_EX 2 // 补日
#define FILE_MINUTE_EX 4 // 补分
#define FILE_POWER_EX 6 // 补充
#define FILE_BASE_EX 0x1000 // 钱龙,m_szFileName仅包
#define FILE_NEWS_EX 0x1002 // 新闻,其类型由m_szFileName中子
#define FILE_HTML_EX 0x1004 // HTML文件,m_szFileName为URL
#define FILE_SOFTWARE_EX 0x2000 // 升级
#define FILE_SHAZQDATA_EX 0x3000 // 上海
#define FILE_TYPE_RES -1 // 保留
// 消?
#define News_Sha_Ex 2 // 上证
#define News_Szn_Ex 4 // 深证
#define News_Fin_Ex 6 // 财经
#define News_TVSta_Ex 8 // 电视
#define News_Unknown_Ex -1 // 未知
//Definition For nInfo of Function GetStockDrvInfo(int nInfo,void * pBuf);
#define RI_IDSTRING 1 // 厂商,返回(LPCSTR)厂
#define RI_IDCODE 2 // 卡号
#define RI_VERSION 3 // 驱动
#define RI_ERRRATE 4 // 取信
#define RI_STKNUM 5 // 取上
#define RI_SUPPORTEXTHQ 6 // 是否
JSJ格式
#define RI_ENABLEDZHTRANS 7 // 支持
#define RI_ENABLETS3FILE 8 // 支持
#define STKLABEL_LEN 10 // 股号,国内市场股号编码兼容钱龙
#define STKNAME_LEN 32 // 股名
#pragma pack(1)
//////////////////////////////////////////////////////////////////////////////////
//国债
typedef struct GzLxBINData {
WORD m_wMarket; // 股票
char m_szLabel[STKLABEL_LEN]; // 股票,以'\0'结尾
DWORD m_LiXiDate; //开始
double m_fMoney100; //每100元的
DWORD m_DayNum;; //利息
float m_fShowPrice; //票面
}GZLXBINDATA,*PGZLXBINDATA;
//PART 2 //////////////////////////////////////////////////////////////////////////////////
//行情
typedef struct tagRCV_REPORT_STRUCTEx
{
WORD m_cbSize; // 结构
time_t m_time; // 交易
WORD m_wMarket; // 股票
char m_szLabel[STKLABEL_LEN]; // 股票,以'\0'结尾
char m_szName[STKNAME_LEN]; // 股票,以'\0'结尾
float m_fLastClose; // 昨收
float m_fOpen; // 今开
float m_fHigh; // 最高
float m_fLow; // 最低
float m_fNewPrice; // 最新
float m_fVolume; // 成交
float m_fAmount; // 成交
float m_fBuyPrice[3]; // 申买1,2,3
float m_fBuyVolume[3]; // 申买1,2,3
float m_fSellPrice[3]; // 申卖1,2,3
float m_fSellVolume[3]; // 申卖1,2,3
float m_fBuyPrice4; // 申买4
float m_fBuyVolume4; // 申买4
float m_fSellPrice4; // 申卖4
float m_fSellVolume4; // 申卖4
float m_fBuyPrice5; // 申买5
float m_fBuyVolume5; // 申买5
float m_fSellPrice5; // 申卖5
float m_fSellVolume5; // 申卖5
} RCV_REPORT_STRUCTEx, *PRCV_REPORT_STRUCTEx;
//////////////////////////////////////////////////////////////////////////////////
//补充
//数据头 m_dwHeadTag == EKE_HEAD_TAG
#define EKE_HEAD_TAG 0xffffffff
typedef struct tagRCV_EKE_HEADEx
{
DWORD m_dwHeadTag; // = EKE_HEAD_TAG
WORD m_wMarket; // 市场
char m_szLabel[STKLABEL_LEN]; // 股票
}RCV_EKE_HEADEx,*PRCV_EKE_HEADEx;
//补充
typedef union tagRCV_HISTORY_STRUCTEx
{
struct
{
time_t m_time; //UCT
float m_fOpen; //开盘
float m_fHigh; //最高
float m_fLow; //最低
float m_fClose; //收盘
float m_fVolume; //量
float m_fAmount; //额
WORD m_wAdvance; //涨数,?
WORD m_wDecline; //跌数,?
};
RCV_EKE_HEADEx m_head;
}RCV_HISTORY_STRUCTEx,*PRCV_HISTORY_STRUCTEx;
//补充
typedef union tagRCV_MINUTE_STRUCTEx
{
struct{
time_t m_time; // UCT
float m_fPrice;
float m_fVolume;
float m_fAmount;
};
RCV_EKE_HEADEx m_head;
}RCV_MINUTE_STRUCTEx,*PRCV_MINUTE_STRUCTEx;
//补充
typedef union tagRCV_POWER_STRUCTEx
{
struct
{
time_t m_time; // UCT
float m_fGive; // 每股
float m_fPei; // 每股
float m_fPeiPrice; // 配股,仅当 m_fPei!=0.0f 时有
float m_fProfit; // 每股
};
RCV_EKE_HEADEx m_head;
}RCV_POWER_STRUCTEx,*PRCV_POWER_STRUCTEx;
typedef struct tagRCV_SHAGZ_STRUCTEx
{
WORD m_wMarket; // 市场
char m_szLabel[STKLABEL_LEN]; // 股票
DWORD m_StartDate; //开始
YYMMDD format
double m_fLiXi100RMB; //票面100员?
DWORD m_DayNum;
float m_fPrice;
}RCV_SHAGZ,*PRCV_SHAGZ;
//PART 3 //////////////////////////////////////////////////////////////////////////////////
// 文件
// 注一:
// m_wDataType == FILE_BASE_EX
// m_dwAttrib = 股票,m_szFileName仅包
// m_FileTime = 基本
// m_wDataType == FILE_NEWS_EX
// m_dwAttrib = 消息,m_szFileName 包含,目录名为消息来源
// m_dwSerialNo = 序列
// 如: "上交\\0501Z012.TXT","新兰\\XLD0001.TXT"
// m_wDataType == FILE_HTML_EX
// m_dwAttrib 保留, m_szFileName为URL
// m_wDataType == FILE_SOFTWARE_EX
// m_dwAttrib 分析, 用于初步判断
// m_szFileName 分析 ID + '\\' + 文件
// 如 "TongShi\\TS\\RECEIVE\\RECEIVE.EXE",
// ID 特征 "TongShi", "TS\\RECEIVE\\RECEIVE.EXE" 为文
// 特征 和 文件名及其含义由分析软件商定义
// 注二:
// 数据,每个文件有唯一的序列号,以避免重复接收
typedef struct tagRCV_FILE_HEADEx
{
DWORD m_dwAttrib; // 文件
DWORD m_dwLen; // 文件
union
{
DWORD m_dwSerialNo; // 序列,对股评
time_t m_FileTime; // 文件
};
char m_szFileName[MAX_PATH]; // 文件
or URL
} RCV_FILE_HEADEx,*PRCV_FILE_HEADEx;
//综合
typedef struct tagMULTISORT_ITEM_STRUCTEx {
BYTE m_type; // stock's type
char m_code[6]; // stock code
long m_data1;
long m_data2;
} MULTISORT_ITEM_STRUCTEx;
typedef struct tagRCV_MULTISORT_STRUCTEx
{
DWORD m_class; // 1-涨幅 2-跌· 4-5分? 8-5分钟跌幅 16-委比前六 32-委比后六
// 64-震幅 128-量比 256-总金
WORD m_tag1; // 0xf0 00
WORD m_tag2; // 0x06 00
MULTISORT_ITEM_STRUCTEx m_stocks[6];
}RCV_MULTISORT_STRUCTEx,*PRCV_MULTISORT_STRUCTEx;
//////////////////////////////////////////////////////////////////////////////////
// 数据
//查询方式通知消息
// wParam = MsgPara_StkData 有股
// wParam = MsgPara_File 有文
//直接数据引用通知消息
// wParam = RCV_WPARAM;
// lParam 指向 RCV_DATA结构;
// 返回 1 已?, 0 未处理或不能处理,目前该返回值被忽略
// 注一:
// 记录(包括 Header)的,对文件类型数据, = 1
// 注:
// 若 m_bDISK = FALSE, m_pData 为数
// ******** 数据,不能修改数据 **********
// m_bDISK = TRUE, m_pData 为该,一般情况只有
// 升级
typedef struct tagRCV_DATA
{
int m_wDataType; // 文件
int m_nPacketNum; // 记录,参见注一
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -