資料讀取與最大引用

在設定新的進階警示時,有兩個跟讀取資料量多寡有關的項目,必須正確的加以填寫,這兩個項目,一個是資料讀取,一個是最大引用。




要怎麼去解釋資料讀取及最大引用這兩個設定呢?  要從XS的運算流程來談起 。

當我們把一個腳本應用到一組商品時,電腦會幫我們去準備資料,而這些資料,原本都是存在XQ程式所在的硬碟中,資料讀取的意義在於讓電腦知道要把原本存在硬碟中,非常長的時間序列,到底要拿多少去放在快閃記憶體中,讓XS要開始根據腳本運算時,有比較好的效率。所以資料讀取要設多少,基本上就看腳本在計算時,會用到多少資料而定。

所以資料讀取就是英文中所謂的max bars for reference,電腦在我們通知它去幫某個商品作運算時,它必須先把這個商品的開高低收成交量準備好,從硬碟把這些資料都先抓來放在快閃記憶體中,所以我們必須設定一下我們要叫電腦幫我們準備多少資料,如果我們只是在拿最近的這幾個K棒,來計算這幾根K棒有沒有符合酒田戰法中的那些型態,那為了節省快閃記憶體的空間,並且加快電腦運算的速度,我們在資料讀取這個地方最好不必設太長。



最大引用(MaxBarsBack)

至於最大引用,則是從Maxbarsback翻譯過來的,它的意思是在我們啟動運算的第一根bar時,我們還必須準備多少根bar來協助這第一根bar的運算。
以上圖為例,若我們在腳本中須要用到五日均線,那在我們運算的第一根bar時,我們前面至少還要準備5根bar,這樣才能算出運算啟動時的第一個五日均線值,這些被多準備的5根bar,並沒有實際被拿去運算,只是拿來作為第一根被運算bar時引用的數字,這時最大引用就可以設為5,代表在開始被運算的第一根bar之前,還有5根bar是被拿來引用加入第一根bar的運算的。

也因此,透過資料讀取及最大引用的設定,我們就可以確定一個腳本是從第幾根bar開始運算起,以上圖為例 ,資料讀取是十根,最大引用是五根,那麼開始運算的第一根bar就是資料讀取減去最大引用,也就是10-5,就是從最後一根往回算第五根是腳本開始運算的第一根,我們如果用currentbar這個函數來表示,那currentbar=1指的就是這一根K棒。