<轉>股軟 擴展數(shù)據(jù) EXTDATA 功能與使用簡介(2009-02-16 08:52:00)
http://bbs./read-htm-tid-145087.html
擴展數(shù)據(jù)(EXTDATA)的建立
擴展數(shù)據(jù)庫的用處
由于存儲容量的限制,一般分析軟件每天收盤時,只收錄當天的開盤價、最高價、最低價、收盤價、成交量和成交額。大量隱藏在當日分時數(shù)據(jù)中的交易細節(jié)到第二天就被清除,這是一個非常大的損失!

利用分析家(大智慧、飛狐)的擴展數(shù)據(jù)庫功能,可以將每天交易細節(jié)中的一些重要數(shù)據(jù)在收盤時一起收錄,隨日線檔案永久保存。要保存的數(shù)據(jù)的種類由用戶通過分析家公式系統(tǒng)來自由設置,例如可以設定保存每日的主動性買盤量、成交筆數(shù)等等。最多可設置11組數(shù)據(jù)。
擴展數(shù)據(jù)就是將任意技術指標的數(shù)值同日線數(shù)據(jù)一同保存。該技術指標可以工作在任意分析周期上。
有了分析家的擴展數(shù)據(jù)庫功能,在原始數(shù)據(jù)資源上,您也更勝一籌了。另外,一些特別復雜的公式的計算值也可以轉化到擴展庫保存起來,盤中若需要用到這種公式的計算值,直接去擴展數(shù)據(jù)庫中取就行了,不用臨時計算,這樣就節(jié)約了盤中的分分秒秒。
如何設定擴展數(shù)據(jù)
從菜單『工具』→『擴展數(shù)據(jù)管理』,進入到擴展數(shù)據(jù)管理器中。如果是第一次使用擴展數(shù)據(jù)管理器,第1到11組數(shù)據(jù)均為空。
點擊一組數(shù)據(jù),選中它,然后點擊〖修改按鈕〗,將彈出擴展數(shù)據(jù)屬性對話框

在指標樹形列表窗中選擇一個指標公式、計算參數(shù)、分析周期,系統(tǒng)將按公式規(guī)定的算法,根據(jù)系統(tǒng)內(nèi)部保存的所有的原始數(shù)據(jù),包括歷史回憶中存儲的分筆成交數(shù)據(jù),來計算擴展數(shù)據(jù)。
數(shù)據(jù)名稱:每一個擴展數(shù)據(jù)均需要一個名稱,用于使用時辨別。
缺省數(shù)值:由于數(shù)據(jù)原因,可能某一天沒有計算出擴展數(shù)據(jù),此時系統(tǒng)將缺省數(shù)值保存到擴展數(shù)據(jù)中。
除權處理方法:用戶可以決定計算擴展數(shù)據(jù)時是否采用除權數(shù)據(jù)。使用除權數(shù)據(jù)可以保證價格的連續(xù)性,但不能保證真實性,因此需要對不同情況分別加以區(qū)分。
設置好擴展數(shù)據(jù)屬性后,點擊確定按鈕,系統(tǒng)自動將能夠轉換得到的數(shù)據(jù)加入到擴展庫中,一般說來這組數(shù)據(jù)的長度將小于原始日線數(shù)據(jù)的長度,因此在作圖時你可能會發(fā)現(xiàn)該組數(shù)據(jù)只在日線圖的后半部分出現(xiàn),這無大礙,隨著時間的推移,您的擴展庫數(shù)據(jù)會日漸豐富的。
擴展數(shù)據(jù)同步更新
在擴展數(shù)據(jù)管理對話框中,可以選擇『同步更新動態(tài)數(shù)據(jù)』,表示在使用擴展數(shù)據(jù)時,若當日接收到新的動態(tài)行情,當日的擴展數(shù)據(jù)在使用時是否用新數(shù)據(jù)臨時計算。選中該選項會使您的指標公式隨著動態(tài)行情的變化而同步變化,但這會增加系統(tǒng)的計算負擔,因為每次用到擴展數(shù)據(jù)時均會造成一次重新計算,所以對于算法復雜的擴展數(shù)據(jù)請不要使用該選項。
如何在公式中調(diào)用擴展數(shù)據(jù)
當您設置了擴展數(shù)據(jù)后,就可以在公式系統(tǒng)中使用擴展數(shù)據(jù)庫了。擴展數(shù)據(jù)庫中的數(shù)據(jù)的引用方法為:
EXTDATA(N) ,N=1,2……,指明引用第幾組擴展數(shù)據(jù)
注意事項
需要注意的是,若中途更改某組擴展數(shù)據(jù)的設置,系統(tǒng)會先將這組擴展數(shù)據(jù)從擴展數(shù)據(jù)庫中全部清除掉,然后再根據(jù)新算法重新計算。所以設置擴展數(shù)據(jù)時,一定要規(guī)劃周全,避免日后因更改設置而丟失日記月累來的寶貴數(shù)據(jù)。
在擴展數(shù)據(jù)設置對話框中,按〖刷新〗按鈕系統(tǒng)會重新計算擴展數(shù)據(jù),此時您可以選擇是否將原來的數(shù)據(jù)清除,若選“是”,則系統(tǒng)先將這組擴展數(shù)據(jù)全部清除,然后再根據(jù)系統(tǒng)內(nèi)部目前有的日線數(shù)據(jù)和分筆成交數(shù)據(jù)來計算擴展數(shù)據(jù);若選擇“否”,系統(tǒng)保留原來的擴展數(shù)據(jù),將新數(shù)據(jù)補充到庫中。
同時還應當注意,由于不同用戶的擴展數(shù)據(jù)庫設置不完全一樣,因此造成使用了擴展數(shù)據(jù)的公式不具有通用性。在公式輸出時,系統(tǒng)會特別提示您輸出的公式是否使用了擴展數(shù)據(jù)。
另外由于標準版不具有擴展數(shù)據(jù)功能,因此使用擴展數(shù)據(jù)的公式在標準版中不能使用。
利用擴展數(shù)據(jù)庫來排序
有些用戶想知道某只股票在歷史上某一天的指標排名情況,例如需要得到2000/7/15深發(fā)展的漲幅在深交所的排名,分析家為了滿足這部分用戶的需要,在擴展數(shù)據(jù)庫里設定了排序功能。
在擴展數(shù)據(jù)設置對話框中,選擇“生成橫向排名數(shù)據(jù)”將生成橫向排名數(shù)據(jù),也就是說保存在擴展數(shù)據(jù)庫種的不是指標數(shù)值,而是該指標的排名情況。
若選擇“僅計算A股”,則僅對A股進行排序;
若選擇“全市場排名”,則排名不僅僅包含在本交易所內(nèi),而是對兩個市場的所有股票進行排序;
若選擇“包括指數(shù)”,則指數(shù)的計算也將計算在內(nèi)。
生成橫向排名數(shù)據(jù)后,系統(tǒng)將指標的排名情況保存在數(shù)據(jù)庫內(nèi),用戶在公式中調(diào)用的方法與一般擴展數(shù)據(jù)相同。
在進行排序時,有兩種排序方式,一種為0-N自然排序,一種為1-1000歸一化排序,這兩種排序方式的區(qū)別在于:0桸的自然排序:按照自然數(shù)來排列名次,排名在第幾結果就是幾;而0—1000的歸一化排序時將排序歸一化到0—1000之間,第一位為0,最后一位為1000,采用公式“排名*1000/參加排名的股票數(shù)”來進行計算。歸一化排序有個好處,他不隨股票數(shù)目的增加而對排序結果有較大的影響。
例如:我們實驗性地建立一個測算增減倉的公式
公式分兩部分是
第一部分:
[增倉金額計算]:
input:OFF(0,0,1), N(30,1,10000);
流通:=CAPITAL;
牛熊:=IF(OFF=1,1,0.6);
M1:=8;
M2:=6;
M3:=4.5;
M4:=3.5;
M5:=2.5;
M6:=1.8;
M7:=1.2;
M8:=0.6;
系數(shù):=IF(流通<1500,M1,IF(流通>=1500 AND 流通<2500,M2,IF(流通>=2500 AND 流通<3500,M3,IF(流通>=3500 AND 流通<5000,M4,IF(流通>=5000 AND 流通<6500,M5,IF(流通>=6500 AND 流通<8000,M6,IF(流通>=8000 AND 流通<12000,M7,IF(流通>=12000,M8,0))))))));
大單門限:=N*10000*牛熊/系數(shù);
大買總額:SUM(IF(ISBUYORDER and amount>大單門限 or
(ISBUYORDER=0 and amount<大單門限 and BIDVOL(1)*BIDPRICE(1)*100>5*大單門限 and
ASKVOL(1)=0),amount,0),0);
大賣總額:SUM(IF(ISBUYORDER=0 and amount>大單門限 or
(ISBUYORDER and amount<大單門限 and ASKVOL(1)*ASKPRICE(1)*100>5*大單門限 and
BIDVOL(1)=0),amount,0),0);
增倉金額:大買總額-大賣總額;
減倉金額:大賣總額-大買總額;
第二部分是
[增倉統(tǒng)計]
增倉金額:=EXTDATA(10);
日增:增倉金額;
三天倉:=SUM(日增,3);
周倉:=SUM(日增,5);
月倉:=SUM(日增,20);
季倉:=SUM(日增,60);
上三天:=REF(三天倉,3);
上周:=REF(周倉,5);
上月:=REF(月倉,20);
上季:=REF(季倉,60);
三天增:(三天倉-上三天);
周增:(周倉-上周);
月增:(月倉-上月);
季增:(季倉-上季);
http:///viewthread.php?tid=4464
擴展數(shù)據(jù)
一般情況下,軟件只是將每天部分數(shù)據(jù)轉入歷史檔案,本軟件的擴展數(shù)據(jù)功能可以用戶自己設定,將最多13組數(shù)據(jù)保存到日線歷史存檔中,這些數(shù)據(jù)可以用公式系統(tǒng)里的函數(shù)"extdata(n)"自由調(diào)用,在數(shù)據(jù)提供更詳細的資料給您分析。
飛狐擴展數(shù)據(jù)庫:
一、 擴展數(shù)據(jù)庫的功效:
1、在公式設計時,由于系統(tǒng)的限制,無法在公式中直接實現(xiàn)橫向排名的功能,例如,在公式中無法知道某股票的漲幅的排名,這時可將漲幅數(shù)據(jù)放入擴展數(shù)據(jù)庫中,讓飛狐自動對漲幅數(shù)據(jù)進行排序,從而獲得股票的漲幅排名數(shù)據(jù)。
2、由于考慮到磁盤空間及系統(tǒng)的效率,飛狐收盤時,保存的數(shù)據(jù)并未包含實時接收的全部數(shù)據(jù),出于研究股票的需要,您可能需要其中的某些數(shù)據(jù),這時可以把這些數(shù)據(jù)存入擴展數(shù)據(jù)庫,以供調(diào)用。
3、由于系統(tǒng)及磁盤空間的限制,一般保存的短周期的數(shù)據(jù)有時段的限制,例如設置了只保存10天的分筆數(shù)據(jù),超過10天的分筆數(shù)據(jù)將被自動刪除,此時若想對分筆數(shù)據(jù)進行統(tǒng)計研究,將無法進行,這時可將分筆統(tǒng)計數(shù)據(jù)存入擴展數(shù)據(jù)庫。
4、 由于系統(tǒng)的限制,公式中無法從長周期引用短周期的指標數(shù)據(jù),這時可將短周期的指標數(shù)據(jù)存入擴展數(shù)據(jù)庫。
二、擴展數(shù)據(jù)庫的調(diào)用:
飛狐的擴展數(shù)據(jù)庫,最多可以保存13組數(shù)據(jù),保存在擴展數(shù)據(jù)庫中的數(shù)據(jù),使用函數(shù)extdata(n)來調(diào)用,其中n表示第n組數(shù)據(jù)。
三、 使用擴展數(shù)據(jù)庫示例:
例:如何知道股票在a股板塊中的漲幅排名:
1、設計一個公式,設公式名稱為“漲幅”,公式代碼如下:
漲幅:(c/ref(c,1)-1)*100;

2、鼠標點菜單“管理/管理擴展數(shù)據(jù)”,彈出如圖所示擴展數(shù)據(jù)管理框

由于是新增的一組數(shù)據(jù),雙擊其中某組尚未設置的數(shù)據(jù)名稱,如圖2所示,步驟如下:
?、?選擇我們剛才設計的“漲幅”公式
② 修改數(shù)據(jù)名稱為“漲幅排名”
?、?選擇“生成排名數(shù)據(jù)(從大到小排)”
?、?去掉“使用除權后的數(shù)據(jù)”選項(避免漲幅失真)
⑤ “排序方法”選“0-n自然排序”
?、?“設置范圍”選a股板塊。
?、?圖中,“漲幅排名”的擴展數(shù)據(jù),是第1組數(shù)據(jù),因此調(diào)用的函數(shù)為extdata(1)
3、設計一個調(diào)用漲幅排名數(shù)據(jù)的公式,調(diào)公式名稱為“調(diào)用漲幅排名”,參考代碼如下:
zfpm:extdata(1)+1;

在k線圖中,調(diào)用“調(diào)用漲幅排名”公式,即可獲知該股票的當日在a股板塊中排列第幾名。
說明:在第1步設計的公式中,由于本例中僅需要計算排序的結果,因此公式可以簡化(優(yōu)化),以便減少運算量。
zf:c/ref(c,1);

如何將分筆指標中的數(shù)據(jù)讀出并建立擴展數(shù)據(jù)