章  股票市場資料庫之特殊用法

<回「入門講義」>

 

4.1  股票市場資料庫使用上的特點

第二章介紹的基本檢索資料方法可適用於一般 AREMOS/Windows 資料庫。但「台灣股票市場資料庫」較特殊,在使用上稍有一點變化。特別在本章中講解。

就資料檢索而言,股票市場資料庫有三個特點:

    (1)「日資料之檢索」:股票市場資料主要是「日」 (d)頻率在操作上有關 per 的設定略有不同。
            (2)「跨資料庫之檢索」:由於股票市場資料庫資料量過於龐大,我們分三個電腦檔儲存:

    STOCK70:含 1971 年 1 月 1 日-1979 年 12 月 31 日。

    STOCK80:含 1980 年 1 月 1 日-1989 年 12 月 31 日。

    STOCK90:含 1990 年 1 月 1 日-1999 年 12 月 31 日。

    STOCK00:含 2000 年 1 月 1 日-目前。 

因此,如果需要檢索跨越不同電腦檔的時間序列,在方法上很不相同。

    (3)「collapse(or conv) 方法的設定」:在第二章範例(三)已介紹 collapse 指令可叫取資料並同時轉換成不同頻率。但日資料一定要先 collapse 成月資料,才能再繼續 collapse 成季或年資料。AREMOS/Windows 無法由日資料直接 conv 成季或年資料。

以下我們已三個實際範例來說明股票市場資料庫的使用方法。

<回頁首>

 

4.2  範例():檢索時間序列日資料

假定我們要叫取 1976 年 1 月 1 日至 3 月 15 日之「台泥收盤價」、「台泥成交量」及「發行量加權股價指數」等三筆資料。由「EPS/AREMOS 台灣股票市場資料庫檢索手冊」查知其檢索代號分別為:s1101@cl,s1101@vol,js。進入 AREMOS/Windows 後,其操作滑鼠如下:

(1)Options → Set → Period → (Frequency:Daily, From 1976:1:1 to 1976:3:15) → OK

(2)Data → Bank → Open → Files → 磁碟機(看看自己的資料庫在哪一槽) →stock70.bnk → 確定 → Open → Cancel 跳回主畫面

(3)Report → Print → 鍵入指令 s1101@cl, s1101@vol, js (在 Expression 處) → Execute

說明:

(1)此指令設定頻率為「日」(d),期間是 1976 年 1 月 1 日至 1976 年 3 月 15 日(1976:1:1 1976:3:15)。這是 AREMOS/Windows特定要求的期間設定方法,一定要年:月:日。此外,AREMOS/Windows 也接受 1976d1  1976d75,代表 1976 年第 1 天至 1976 年第 75 天。

<回頁首>

 

4.3  範例():跨資料庫之時間序列檢索方法

假定我們要叫取「台鳳收盤價」與「國壽收盤價」兩筆資料,期間是 1989 年 12 月 1 日到 1990 年 1 月 20 日。由「檢索手冊」查知此二筆資料之檢索代號為 s1206@cl 與 s2805@cl。由於所要叫取的期間跨越 1989 年與 1990 年,1989 年部分資料存於stock80,而 1990 年部分則存於 stock90,因此檢索方法略有變化。假定我們已進入 AREMOS/Windows,操作滑鼠如下:

(1)Options → Set → Period → (Frequency: Daily, From 1989:12:1 to 1990:1:20) → OK

(2)Data → Bank → Open → Files → 磁碟機(看看資料那一槽) 分別叫取 stock80.bnk 和 stock90.bnk  → 確定 → Open → Cancel 跳回主畫面

(3)鍵入指令 series<1989:12:1 1989:12:31>x1=stock80:s1206@cl; (在主畫面 Aremos Command 下)

(4)鍵入指令 series<1990:1:1 1990:1:20>x1=stock90:s1206@cl;

(5)鍵入指令 series<1989:12:1 1989:12:31>x2=stock80:s2805@cl;

(6)鍵入指令 series<1990:1:1 1990:1:20>x2=stock90:s2805@cl;

(7)鍵入指令 print<dec 2>x1,x2;

說明:

    (1):此操作是在設定頻率與期間。見範例(四)之說明。

    (3):series 指令可讓我們產生一個新的 series,在此這個新 series 命名為 x1,而所產生的 x1 會自動存在我們「目前所運作」的 bank (AREMOS 術語稱此為 primary bank)。通常我們一進入 AREMOS/Windows,即會進入一個 primary bank。除非您別有指定,此 primary bank 通常叫做 work bank。在運作過程中,如有產生任何新 series(或任何新的 object),都會自動存放在 work bank堙Cseries x1=stock80:s1206@cl 乃是產生一個新 series,名叫 x1,而其值在所設定的期間內等於 stock80 堛 s1206@cl。為何要特別指定 stock80?因為 stock90 資料庫堨蝳 s1206@cl,故需以「bankname:」來指定那一個 bank 堛 s1206@cl。在< >堳定期間為 stock80 所涵蓋之部分,及 1989:12:1 到 1989:12:31。因為 stock80 僅含我們所需要之 1989 年部分資料,如果不把期間如此設定來執行 series 指令,會產生一大堆 missing(m) 值。使用< >來設定 per,是 local setting,其設定時效僅限於此指令。在第(1)式堥洏姠et 方式設定 per 則是 global setting,其時效會繼續為維持下去,除非你再到 Set Frequency & Period 畫面去重新設定。(有關 global與 local setting 請參考第 6 章 6.2 節)。注意:local 設定 period,不需打 per 1989:12:1 1989:12:31,只打 1989:12:1 1989:12:31 即可。

    (4):此指令在 local 所設定的期間內(即 1990:1:1 到 1990:1:20)給予 x1 值,而令其值為 stock90 堣 s1206@cl。我們以< >設定期間為 1990:1:1 到 1990:1:20 乃 stock90 所涵蓋部分。執行完此指令,我們在 work bank 堬ㄔ秅F一個完整的時間序叫 x1,其在 global 所設定的期間內( 1989 年 12 月 1 日至 1990 年 1 月 20 日)含有由資料庫 stock80 與 stock90 所叫取出之台鳳收盤價 (s1206@cl)。

    (5)(6):見(3)(4)之說明。執行完此 2 個指令,我們產生了一個完整的時間序列叫 x2,代表國壽收盤價 (s2805@cl)。

    (7):此指令可印出資料。由於我們已回到 global setting,因此所印出的期間為第(1)式所 set 之 1989:12:1 到 1990:1:20。在此以<dex 2>設定印出小數點後兩位。

 <回頁首>

 

4.4  範例():轉換日資料之頻率並做迴歸分析

假定我們要對發行量加權股價指數(檢索代號 js )與國內生產毛額 (gdp)、俠義貨幣供給額 (m1a) 與一月期定期存款利率(rmtd@1st) 進行迴歸計量分析。分析頻率是季 (q),期間為 1971 年第 1 季到 1991 年第 4 季(1971:1 1991:4)。我們也已知 gdp,m1a與 rmtd1@1st 分別存於 AREMOS/Windows 經濟統計資料庫系統堨t外兩個資料庫:gdp 在國民所得季資料庫(庫名:niaq),m1a 與rmtd1@1st 則在金融統計資料庫(庫名:fsm)。其操作滑鼠如下:

(1)Options → Set → Period → (Frequency:Monthly, From 1971:1 to 1991:12) → OK

(2)Data → Bank → Files → 磁碟機(看看資料庫放在那一槽) →  stock70.bnk , stock80.bnk, stock90.bnk → 確定 → Open → Cancel跳回主畫面 

(3)鍵入指令 conv<1971:1 1979:12 tolerate=99>js=stock70:js.d ave;

(4)鍵入指令 conv<1980:1 1989:12 tolerate=99>js=stock80:js.d ave;

(5)鍵入指令 conv<1990:1 1991:12 tolerate=99>js=stock90:js.d ave;

(6)Options → Set → Period → (Frequency:Quarterly, From 1971:1 to 1991:4) → OK

(7)鍵入指令 conv js=js.m ave;

(8)Data → Bank → Open → Files →磁碟機(看看資料庫放在那一槽) 分別叫取  niaq.bnk 和 fsm.bnk → 確定 → Open → Cancel跳回主畫面         

(9)鍵入指令 conv m1a=m1a.m ave;

(10)  Econ → Equation → OLS → 鍵入 equ1 (在 Name 處) → 鍵入 js (在 Dependent 處) → 鍵入 gdp (在 Independent 處) → Execute

(11)  Econ → Equation → OLS → 鍵入 equ2 (在 Name 處) → 鍵入 js (在 Dependent 處) → 鍵入 m1a (在 Independent 處) → Execute

(12)  鍵入指令 conv rmtd1@1st@f=rmtd1@1st@f.m ave;

(13)  Econ → Equation → OLS → 鍵入 equ3 (在 Name 處) → 鍵入 js (在 Dependent 處) → 鍵入 m1a,rmtd1@1st@f (在Independent 處) → Execute

說明:

    (1):js 在資料庫堿O日資料。AREMOS/Windows 無法直接由日資料 conv 成季資料,需先 conv 成月資料,再由月資料 conv成季資料。此指令先 globally 設定月的頻率與期間。

    (3):conv 指令把資料庫堛漱曏禤ぃ鋮出來轉換成目前所設定的月頻率,而再 work bank 塈峖角@個新的月資料 series,也取名叫 js。由於是跨資料庫資料,正如範例(五),必須分 3 個指令來執行。本指令限於從 stock70 轉換出 1971 年 1 月到 1979 年 12 月 (1971:1 1979:12) 期間的資料。在< > locally 設定 1971:1 1979:12 期間乃是 stock70 所涵蓋部分。
                     在此指令中,資料庫堛滬鴝l日資料必須寫明其「完整名稱」bankname:objectname.versionname (亦即 stock70:js.d)。有兩個原因:(i)我們需要標明 bankname:(stock70:),因為在已 open 的另外兩個資料庫(即 stock80,stock90)中存放有同一  objectname(js) 之資料。(ii)我們也必須標明 versionname (即頻率 .d),因為目前所設 freq 是 m,而原始資料是日資料。如果不標明 js.d,電腦會當作 js.m 來處理,但 stock70 堥繭L js.m 這筆資料。一般說來,使用 collapse 指令一定要標明「被 collapse」資料的 versionname。在範例(三)已碰過此種情形。

    註:tolerate=99 是因轉換日資料當中可能期間會有 na 的情況(如星期天不交易,所以沒有值);如此電腦語言可略過 na 做轉換,最大的容忍度是 99 設定值。

    (4)(5):此二指令各從 stock80,stock90 轉換出所需的 js 資料。在< > local 設定 stock80 與 stock90 各自所涵蓋的期間。執行至此,我們的 work bank 堣w存在一筆月資料,名叫 js,期間是 1971 年 1 月到 1991 年 12 月。

    (6):global 設定季頻率與期間。

    (7):把 work bank 堛 js 月資料(以 js.m 代表)轉換成季資料。執行完此指令,我們 work bank 埵h了一筆 series,即是 js.q季資料。對 AREMOS 而言,js.m 與 js.q 是兩個不同的 objects。

    (8)(9)(10)(11)(12)(13):參考前面範例(三)之說明。

 <回頁首>

 

4.5  有關「上市公司股票報酬率統計資料庫」  

由於 AREMOS/Windows 能處理日資料之長度有限制,因此「上市公司股票報酬率統計資料庫」也分 4 個檔案儲存:

(1)STOCKRR:含所有年、季、月與週資料。

(2)STOCKRR7:含 1972 年 1 月 1 日 - 1979 年 12 月 31 日之日資料。

(3)STOCKRR8:含 1980 年 1 月 1 日 - 1989 年 12 月 31 日之日資料。

(4)STOCKRR9:含 1990 年 1 月 1 日 - 目前更新之日資料。

讀者如要對日資料作跨資料庫之檢索,可參考本章 4.3 節範例(五)的操作方法。

此資料庫資料之檢索代號亦採組合方式,例入「台積電的週報率」為 s2330@wrr,其中 2330 為「台積電」的公司代號,wrr 代表 weekly rate of return。又如「南亞的日報酬率」為 s1303@drr 其中 1303 為「南亞」的公司代號,drr 則代表 daily rate of return,以此類推。詳細可參考本資料庫之檢索手冊簡介。

 <回頁首>

<回入門講義>