資訊系統/架構/產品‎ > ‎KGQ‎ > ‎GMDS相關文章‎ > ‎GMDS‎ > ‎

Tick設計與清盤

張貼者:2011年1月10日 上午1:18Wei-Xiuang Wang   [ 已更新 2011年1月10日 上午2:09 ]

一般來說清盤是清掉開高低收等報價欄位,備份昨日相關資料作為今日的參考(例如昨收,昨量)

平台上針對市場或商品會提供交易日的欄位,當市場交易日變更即可進行市場全商品清盤,
如果是商品本身的交易日的欄位變更,則處理單一商品的清盤

Tick的設計可分為有量與無量兩種,一般TIck指的是有量的成交明細,
因此只要攔截到商品總量異動,就依據當時報價狀態取所需的對應資訊紀錄一筆Tick,
設計上可以簡化為即時的Append紀錄,規劃時以交易日作為紀錄分隔,
以檔案系統的方式來說每一個交易日儲存於不同的路徑下,因此不須要有(Tick)清盤的動作,
無量的設計更為簡單,針對有興趣的欄位發生異動時便作與上述成交明細的類似處理即可

API CallBack模式範例 設計成交明細作說明,
當商品異動時,Callback ItemProcessFunction 只須針對總量的Tag,
透過API抓取目前值(fnDbfTCdll_GetCurrTagValue)與更新前之值(fnDbfTCdll_GetPrevTagValue)判斷是否相異,
如果是則透過交易日的Tag取得交易日期配合Symbol產生要儲存的對應檔案名稱或DB Table,
再針對所有欲紀錄的欄位取得現值或前值或作計算,再將明細所需資料Append上去即完成

這樣以交易日為概念運行的系統,並不需要清盤,
當產生一個新的交易日時,所有對應交易日的市場資訊為'空'的狀態,
依據來源資訊提供當日的相關資料才陸續生成商品對應與資料狀態,
因此這樣的系統也沒有商品過期下市的問題,
但必須考慮的是部份欄位預設值的問題


註解