TickToChart 轉分線規格

張貼日期:Mar 09, 2011 1:49:37 AM

轉檔程式提供三種操作方式

GMDS可透過LinkDog安排每間隔時間(例如15分鐘)自動作日排程轉分線之處理,

每次轉檔動作進行時只要Tick於上次轉檔之後有異動過便會持續更新轉檔內容

以PATS為例資料位置與檔名如

Tick檔:

D:\FileDS\YYYYMMDD\Tick\PATS\<Exchange>\<Symbol>

XML檔:

D:\FileDS\YYYYMMDD\KChart\PATS\<Exchange>\<Symbol>

Tick延伸附檔名為 .tic

XML延伸附檔名為 .##Min.xml

 (##為1,5,10,…為指定轉出之幾分線類型)

Usage1:

        TickToChart <MinSet> <TickFile> <XMLfile>

Example:

        TickToChart "1,5,60" "1103MINI S&P.tic" "1103MINI S&P"

Example Output file(s):

 1103MINI S&P.1Min.xml

 1103MINI S&P.5Min.xml

 1103MINI S&P.60Min.xml

Usage1針對指定之Tick檔, 轉出指定檔名之XML分K資料

不作是否有異動的檢查,一律進行轉檔置換內容

Usage2:

        TickToChart <MinSet> /PATH TheTickPathWhereForTrans

Example:

        TickToChart <MinSet> /PATH D:\FileDS\20110308\

Example Output file(s):

 All *.tic in 'D:\FileDS\20110308\Tick\'

 will trans to *.##Min.xml in 'D:\FileDS\20110308\KChart\'

Usage2指定資料夾進行轉檔

針對該資料夾下的Tick\資料夾內所有的*.tic包含子路徑

若比對檔案有異動都將重新轉檔至

指定資料夾下的KChar\中,與Tick\之檔名相對應之檔案

Usage3:

        TickToChart <MinSet> /DAY TheTickRootWhereForTrans

Example:

        TickToChart <MinSet> /DAY D:\FileDS\

Example Output file(s):

 All *.tic in 'D:\FileDS\YYYYMMDD\Tick\'

 will trans to *.##Min.xml in 'D:\FileDS\YYYYMMDD\KChart\'

 where YYYYMMDD is Today and Yestarday

Usage3指定根路徑將當日與昨日的資料夾進行指定資料夾轉檔處理

(2017-12-18新增)

Advence <MinSet> Using:

        <MinSet[,para1[,para2[,...]]]>

Example:

        1,5,60,/json

This will make JSON output instead of XML output,

 and ext .xml will replace as .json too.

於<MinSet>的部分有擴充參數設定功能,例如 /json 可改用 .json 檔之輸出取代 .xml 檔

每日資料Tick與KChart存檔位置範例

檔名與路徑位置範例

GMDS上TickToChart排程處理

Tick檔案

內容為純文字,每行為一筆Tick,欄位以','隔開(如同EXCEL的CSV檔)

欄位依序為 時間,買價,賣價,成交價,單量,總量

時間為DEC格式, 如 08:10:20 則為 81020 半夜 00:12:34 為 001234

這裡以CME之習慣 CST (GMT - 06:00) 作為Tick時間依據便於比對,

取PATS上CME之商品MINI S&P觀察,此商品開盤約是 15:30 CST 為24HR可交易商品

擷取附近Tick內容

151527,1300,1300.25,1300,3,1392922

151527,1300,1300.25,1300,5,1392927  <== 總量最大的最後一筆Tick

153028,1300,1300.25,1300.25,10,188  <== 15:30:28 總量變小,重新累計

153028,1300,1300.25,1300,20,208

153030,1300,1300.25,1300,1,209

如先前示範,GMDS可以透過Bias之設定,讓商品於正確的區域時間下正確作交易明細之分日

此商品之 Bias 應該會是 -150,以此為設定值

商品的交易時間會變為 00:00~23:45 (GMT + 02:30)

而上面紅色151527的Tick會成為23:45:27總量最大的當日最後一根

目前時間的部份實際上已改為採用GMT,便於依據各時區重新調整以當地時間顯示

分線資料檔

內容如

<?xml version="1.0" encoding="utf-8" ?>

<QUOTES>

<QUOTE>

<CHARTDATA TYPE="1Min" TIME="2011-02-03 06:00:00.000 GMT">1Min</CHARTDATA>

<CHARTITEM T="0001" O="1302.25" H="1302.25" L="1302.25" C="1302.25" V="45985" N="5" />

<CHARTITEM T="0002" O="1302.25" H="1302.25" L="1302.25" C="1302.25" V="30" N="2" />

...

</QUOTES>

</QUOTE>

CHARTITEM中

T 為 時間(HHMM)

O 為 Open

H 為 High

L 為 Low

C 為 Close

V 為 增量

N 為 成交筆數

轉檔程式 ( 下載 )

限制指定

可轉1~59 Min任意指定之分線資料,

可轉1440分鐘以下 60 Min的倍數資料

例如 <MinSet> 為 "1,5,60" 則轉出 1分鐘,五分鐘,1小時 三個分線XML資料檔

轉檔程式針對時間或總量有發生換日的狀況皆有作安排處置,

發生總量換日的狀況說明,轉出結果為

<CHARTITEM T="0001" O="1302.25" H="1302.25" L="1302.25" C="1302.25" V="45985" N="5" />

<CHARTITEM T="0002" O="1302.25" H="1302.25" L="1302.25" C="1302.25" V="30" N="2" />

...

<CHARTITEM T="1515" O="1301.5" H="1301.5" L="1300.25" C="1300.25" V="7875" N="143" />

<CHARTITEM T="1516" O="1300" H="1300.5" L="1299.75" C="1300" V="4139" N="114" />   <== 總量最大的最後一筆Tick在這裡面

<CHARTITEM T="1531" O="1300.25" H="1300.25" L="1300" C="1300" V="500" N="28" />

<CHARTITEM T="1532" O="1300" H="1300" L="1299.75" C="1300" V="202" N="20" />

<CHARTITEM T="1533" O="1299.75" H="1300" L="1299.5" C="1299.5" V="396" N="17" />

...

<CHARTITEM T="2359" O="1299" H="1299" L="1299" C="1299" V="5" N="2" />

<CHARTITEM T="2400" O="1299" H="1299" L="1298.75" C="1299" V="46" N="6" />

發生時間換日的狀況說明,轉出結果為

<CHARTITEM T="1531" O="1300.25" H="1300.25" L="1300" C="1300" V="500" N="28" />

<CHARTITEM T="1532" O="1300" H="1300" L="1299.75" C="1300" V="202" N="20" />

...

<CHARTITEM T="2359" O="1299" H="1299" L="1299" C="1299" V="5" N="2" />

<CHARTITEM T="2400" O="1299" H="1299" L="1298.75" C="1299" V="46" N="6" />

<CHARTITEM T="0001" O="1302.25" H="1302.25" L="1302.25" C="1302.25" V="19813" N="5" />

<CHARTITEM T="0002" O="1302.25" H="1302.25" L="1302.25" C="1302.25" V="30" N="2" />

...

<CHARTITEM T="1515" O="1301.5" H="1301.5" L="1300.25" C="1300.25" V="7875" N="143" />

<CHARTITEM T="1516" O="1300" H="1300.5" L="1299.75" C="1300" V="4139" N="114" />

以上兩個結果除了時間序不一樣外,其餘結果一致,僅01:00這一筆會因為計算點依據不同而有量不一樣的結果

改以日K作比對,僅有開和收(應該)會有不一樣而已, 高、低、量與成交筆數都會一致

1103MINI S&P.tic

<CHARTITEM T="2400" O="1302.25" H="1305.5" L="1296.75" C="1299" V="1392927" N="33815" />

1103MINI Test.tic

<CHARTITEM T="2400" O="1300.25" H="1305.5" L="1296.75" C="1300" V="1392927" N="33815" />

轉檔依據

1. 轉檔程式轉出之XML檔會依據來源Tick檔案時間做標記,作為轉檔判斷依據,

    當GMDS週期性檢查XML檔不存在或Tick檔有異動時則進行轉檔

2. KD的價位主要依據成交價,若是外匯之類無成交價的會自動改以買賣均價替代成交價

GMDS上的設定範例