⑴ 大智慧日K線的數據結構
大智慧日K線的數據結構 大智慧股票行情軟體是目前應用廣泛的一個炒股工具,有時我們需要自編炒股的演算法進行研究,如提取某隻股票的收盤價,成交量等,這時候如果能直接讀大智慧股票分析系統的數據格式,將對軟體的編制帶來極大的方便。(註:大智慧用的錢龍數據格式,本文適用於錢龍股票行情軟體中的日k線數據)。
一、數據文件和數據結構:
大智慧數據文件和數據結構:(假設大智慧股票行情軟體安裝在D:dzh目錄下)
上海日線存儲路徑為:D:dzhDATASHaseDay,文件擴展名為:.day
上海周線存儲路徑為:D:dzhDATASHaseweek,文件擴展名為: .wek
上海月線存儲路徑為:D:dzhDATASHasemonth,文件擴展名為: .mnt
深圳日線存儲路徑為:D:dzhDATASZnseDay
深圳周線存儲路徑為:D:dzhDATASZnseweek
深圳月線存儲路徑為:D:dzhDATASZnsemonth
周線,月線格式與日線格式一致.
以深發展日線為例:
1A76:0100 D6 CD 2F 01 52 07 01 00-52 07 01 00 52 07 01 00
1A76:0110 52 07 01 00 86 0F 00 00-4D 02 00 00 00 00 00 00
1A76:0120 00 00 00 00 00 00 00 00-D7 CD 2F 01 60 03 01 00
1A76:0130 60 03 01 00 60 03 01 00-60 03 01 00 82 05 00 00
1A76:0140 D4 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00
每一條記錄的長度為40位元組:
1-4位元組為日期,D6 CD 2F 01轉換為十進制是:19910102
5-8位元組=開盤價(元)*1000
9-12位元組=最高價(元)*1000
13-16位元組=最低價(元)*1000
17-20位元組=收盤價(元)*1000
21-24位元組=成交金額(元)/1000
25-28位元組=成交量(手)
其餘12位元組未使用
實現步驟:
1、先定義日線數據結構數組
2、再以實際記錄數分配動態數組空間
3、然後把數據讀入相應數組中
日線數據放在:%app_dir%\DATA\SHase\Day(上證A股) 以及 %app_dir%\DATA\SZnse\Day(深圳A股)
#pragma once
struct DZH5Day
{
unsigned long date;//date的格式:20070423
unsigned long open;//開盤價
unsigned long high;//最高價
unsigned long low;//最低價
unsigned long close;//收盤價
unsigned long moneysum;//成交金額
unsigned long turnover;//成交數量
char unused[12];//保留
};
整個結構共40個位元組,讀者可以查看所有的日線文件,大小肯定是40的倍數
這樣很容易讀出相應的數據:
如:
FILE* pFile = fopen("600001.day", "rb");
if (NULL != pFile)
{
while(!feof(pFile))
{
DZH5Day dayK;
fread(&dayK, sizeof(DZH5Day), 1, pFile);
......
}
}
⑵ 股票里的源碼是什麼意思
股票里的源碼是指股票交易所的軟體源代碼,是股票交易所維護股票交易流程的核心代碼。源代碼通常包含了關鍵演算法、數據結構、網路通信、交易規則等一系列技術細節,是股票交易系統的靈魂之一。
源代碼的維護和優化對於股票市場的健康發展非常重要。優秀的源代碼可以提高交易系統的穩定性和安全性,減少系統錯誤和故障,推進股票市場信息化進程。因此,各家交易所經常對源代碼進行更新和維護,以滿足市場變化和技術需求。
盡管源代碼十分重要,然而只有擁有足夠的軟硬體配套和技術團隊才能充分發揮其價值。這也是為什麼大多數小型股票交易所很難與大型交易所相比。在全球化和數字化的今天,進行信息化建設成為股票交易所必不可少的戰略手段之一,不斷加強對源代碼的投入和管理,是推動產業升級和增強競爭力的重要途徑。
⑶ 買賣股票的數據結構 - 訂單簿
證券交易所使用訂單簿(Order Book)作為買賣股票的數據結構。訂單簿是按照價格排列的訂單隊列,包含一個買入簿和一個賣出簿。匹配訂單遵循先進先出原則。
下圖展示了一個簡單的訂單簿數據結構示例。
若出現一個買入2700股的市價單,那麼此訂單將與賣出訂單進行匹配。當買入與賣出價格相同時,雙方訂單立即成交。若價格不等,則該買入訂單將在買入簿等待,直至找到合適的賣出訂單。
訂單簿的高效設計需滿足以下條件:
高效的訂單簿設計能提高市場流動性,減少交易延遲,保證交易的快速執行和公平性。