一,技術指標公式基礎
技術指標公式編輯器是澎博軟件公式系統的第一類編輯器,是最基礎的編輯器,通過該編輯器將單調的數據行情轉換成為有形的圖形世界,轉換成為易觀察,視覺效果強烈的曲線,或者其它的圖形,方便我們獲取有益的信息.公式系統有以下特點: 用戶只需要描述一個數據是如何計算的,公式系統就能將所有數據計算出來,并以曲線的形式顯示出來. 公式系統以時間序列為基礎,其計算對象是一組沿時間遞增的數據序列,每一個時間周期包含一組數據,公式系統能對其中的任何數據進行操作.
1,技術指標公式界面內容
A:每一個指標公式必須有一個名稱,這個名稱由字母和數字組成,公式
名稱在公式中必須是唯一的,公式名稱最多15個字符.
B:公式描述是一段文字,用來簡單描述該公式的含義,在公式列表時顯
示這段文字,這段文字不宜過長.
C:主圖疊加和副圖選項定義了指標顯示的位置,是在主圖上與K線疊加
還是顯示在副圖上.
D:參數定義區:每一個公式可以設計所需的參數,參數用來替代公式中
所需要的常數,在使用時可以方便地調節參數,不必修改公式就可以對計算
方法進行調節.參數包括參數名稱,最小值,最大值,缺省值,步進值五個
部分,參數名稱用于標識參數,計算公式時采用缺省值計算,而最小值和最
大值是參數的調整范圍,步進值一般取1.
E:密碼,選中該欄目為指標公式加密.
F:指標公式,為公式編輯的文本區.
G:用法說明,主要用來描述一個公式如何使用,注意事項,計算方法,
判斷方法等等.
2,技術指標公式編寫格式和法則
所有的公式系統都是遵守統一的運算法則,統一的格式進行函數之間的
計算,只要我們掌握了技術指標公式的基本原理,其他的指標公式百變不離
其中.
例如我們在指標公式系統內寫下公式:
A:=X+Y; B:=A/Z; C:=B*0.618;
分析以上公式,我們可以引出以下相關的格式和法則的結論:
A,數據引用:
a,數據來源
公式中的基本數據來源于接收的每日行情數據,這些數據有行情函數從
數據庫中按照一定的方式提取,例如,高開低收,成交量,成交額等等.
b,數據類型
按照公式使用的數據類型,系統可以處理的數據分為兩類:變量和常量.
所謂變量就是一個隨著時間變化而變化的數據,例如成交量;常量就是
一個永遠不變的數據.例如:每個函數需要的參數可能是變量也可能是常量,
不能隨便亂用,函數計算的結果一般是一個變量.
例如計算收盤價均線MA(CLOSE,5),MA函數要求第一個參數為變量,
而CLOSE函數返回的正是一個變量;MA函數要求的第二個參數是常量,5就
是一個常量,所以我們就不能這樣書寫:MA(5,CLOSE).
B,特殊數據引用:
經常地編制公式的過程當中,需要使用另外一個指標的值,如果按照通
常的做法,重新編寫過這個指標顯得很麻煩,因此有必要學習使用如何調用
別的指標公式.
基本格式為:"指標,指標線"(參數)
a,指標和指標線之間用逗號分開,一個指標不一定只有一條指標線,所
以有必要在指標后標注指標線的名稱,但是如果缺失則表示引用最后一條指
標線.
b,參數在表達式的末尾,必須用括號括起來,參數之間用逗號分開,通
過參數設置可以選擇設定該指標的參數,如果參數缺失則表示使用該指標的
默認參數設置.
c,整個表達式用引號引在其中,除參數以外.
例如:"MACD,DEF"(26,12,9)表示計算MACD指標的DEA指標線,
計算參數為26,12,9,"MACD"(26,12,9)表示該指標的最后一條指標
線,計算參數是26,12,9,"MACD"表示該指標的最后一條指標線并且使用
公式的默認參數.
二,公式的構成
1,公式語句
所有的公式體由若干語句按照一定的格式組成,每個語句表示一個計算
結果,根據各個語句的功能分為兩大類語句,一類是賦值語句,一類是中間
表達式.
A,賦值語句:在技術指標"B;A/Z"和"C;B*0.618"就是分別兩條指
標線,語言間用分號隔開 .該語句被稱為賦值語句,在技術指標當中,賦值
語句的計算結果將會被計算機執行并形成相應的圖形.每個語句可以有一個
名稱,該名稱寫在語句的最前面,并用一個冒號將它與語句分隔開.例如:
ST:MA(CLOSE,5);表示該語句求收盤價的五日均線,語句的名稱為ST,
在該語句后的語句中可以直接用ST來替代MA(CLOSE,5),例如:MA(ST,
5)表示對收盤價的五日均線再求五日平均.
B,中間語句:
一個語句如果不需要顯示,可以將它定義為中間語句,例如在上例當中
的第一句"A:=X+Y;",這樣該語句就不會被系統辨認為是指標線了,中間
語句用":="替代冒號,其他與一般語句完全一樣,使用中間語句可以有效
降低公式的書寫難度,還可以將需要重復使用的語句定義成中間語句以減少
計算量.
每個公式最多可以分6個語句,中間公式數量沒有限制,所有語句之間
需要使用分號隔開.
2,公式計算符
公式計算符將函數連接成為公式,計算分為算術計算符和邏輯計算苻.
A,算術計算符:包括+,-,*,/,它們分別對計算符兩邊的數據進行加
減乘除計算,這同一般意義上的算術計算沒有差異.
B,邏輯計算苻:包括>,<,,≥,≤,=,AND,OR八種,分別
表示大于,小于,不等于,大于等于,小于等于,等于,邏輯與,邏輯或運
算,如果條件成立計算結果就等于1,否則等于0,例如:3+4等于7,4>3
就等于1,3≤12就等于0,"邏輯與"表示兩個條件都成立時結果才成立;
"邏輯或"表示兩個條件中只要有一個成立結果成立.例如,4>3AND12≥4
的結果等于1,4>3OR3>12的結果等于1.
3,線形描述符
對于技術指標公式可以在語句加上線形描述符,用來表示如何畫該語句
描述的指標線.
線形描述符號包括以下7種.描述符寫在語句后分號前,用逗號將它們
與語句分隔開,例如在上例當中加入一句線形描述符,C:B*0.618,
COLORSTICK;該語句在被執行時,會在圖中添加色彩柱線,該功能在編制MACD
等指標的時候會顯出它的用處.
柱狀線 STICK
彩色柱狀線,當值為正時顯示虹色,否則顯示綠色 COLORSTICK
為線形賦色,RED表示紅色 COLORRED
為線形賦色,BLUE表示藍色 COLORBLUE
為線形賦色,YELLOW表示黃色 COLORYELLOW
成交量柱狀線,當股價上漲時顯示紅色空心柱,則顯示綠
色實心柱
VOLSTICK
同時畫出柱狀線和指標線 LINESTICK
對線體的粗細作出描述 LINETHICK
小叉線 CROSSDOT
小圓圈線 CIRCLEDOT
小圓點線 POINTDOT
A,COLORRED等三個線形描述符還可以自定義顏色,格式為
COLOR+"BBGGRR";BB,GG,RR表示藍色,綠色和紅色的分量,每種顏色的
取值范圍是00-FF,采用了16進制,例如:MA5:MA(CLOSE,5)COLOR00FFFF
表示純紅色與純綠色的混合色;COLOR808000表示淡藍色和淡綠色的混合色.
B,LINETHICK可以允許對線型的粗細進行自定義的描述,格式
"LINETHICK+(0/7)":參數的取值范圍在0-7之間,"LINETHICK0"表示
最細的線,而"LINETHICK7"表示最粗的線.
三,指標公式編寫技巧
1,同圖繪制多條指標線
例一:同圖繪制5日,10日,20日,和60日均線
指標原理:移動平均線(MA)是將一段時間的股票價格用數理統計的方法加以平
均,再將這些平均價標于圖上并用線連接起來即可.它可以用來觀察股價的趨勢.
其中,一段時間常使用的有3日,6日,10日,12日,24日,30日等.移動平
均線可以用來確定這段時間持股的平均成本并使股民能據此判斷行情.
計算方法
N日移動平均線=N日收市價之和/N
編寫要點
均線指標是求股票收市價的移動平均線,函數CLOSE的功能是求當日收市價,函
數MA(X,N)的功能是求X的N日移動平均線,所以10日均線指標的公式這樣
寫:MA(CLOSE,10)
上面兩個例子都是在一個圖上只繪一條指標線如果您想在同一個圖上繪多條指
標線,請看下圖,做起來非常簡單,您只需用分號將各指標公式隔開就行了,公
式這樣寫:
MA(CLOSE,5);
MA(CLOSE,10);
MA(CLOSE,20);
MA(CLOSE,60);
這個公式內部包含四個小公式,小公式間以分號隔開,我們稱這種公式為組合公
式,可同圖繪制多達16條指標線,我們可以為每一條指標線取一個名字,這樣
就可以在圖上區分它們.具體方法是在指標公式前寫上名稱并加一個冒號,如上
面所示.
用當一條指標線有了名字以后,其后面的指標線就可以將該指標線作為一個函數
來使用.請看下例,求收市價的5日移動平均價的10日移動平均線,寫成:MA
(MA(CLOSE,5),10),若給收市價5日移動平均線取個名字,我們又能這樣寫:
MA5:MA(CLOSE,5);
MA(MA5,10);
與前者不同的是,后者同圖繪出兩條指標線.
2,函數的加減乘除和中間表達式
例一, 多空指數(BBI)
指標原理
是一種關于不同日數移動平均線的綜合指標,長期以來理論界一直為中短期的移
動平均線采用多少天數而爭論不休,從而衍生出了BBI指標.多空指數就是通過
幾條不同日數的移動平均線加權平均的方法來解決這一問題.多空指數是將3
天,6天,12天,24天4種平均股價(或指數)相加后除以4得出的數值.
計算方法
BBI=(3日MA+6日MA+12日MA+24日MA)/4
編寫要點
中間表達式之一:
MA的表達方式如上,假設我們需要引用一條均線,但是不需要顯示出來,所以
在冒號后面加上等號將它們表達為中間表達式.
MA5:=MA(CLOSE,5);
中間表達式之二:
用當中一條指標線有了名字以后,其后面的指標線就可以將該指標線作為一個中
間表達式來使用.請看下例,求收市價的5日移動平均價的再次計算10日移動
平均線,寫成:MA(MA(CLOSE,5),10)若給收市價5日移動平均線取個名字,
我們又能這樣寫:
MA5:MA(CLOSE,5);
MA(MA5,10);
與前者不同的是,后者同圖繪出兩條指標線,澎博軟件中的計算符號同一般算術
符號相通,所以BBI計算如下:
指標內容和使用解析
MA3:=MA(CLOSE,5);
MA6:=MA(CLOSE,10);
MA12:=MA(CLOSE,20);
MA24:=MA(CLOSE,60);
BBI:(MA3+MA6+MA12+MA24)/4;
主圖疊加指標
加6日平均價加12日平均價加24日平均價,其和除以四
用法:
a,同移動平均線
b,高價區收盤價跌破BBI線,賣出信號
c,底價區收盤價突破BBI線,買入信號
d,BBI線向上,股價在BBI線之上,多頭勢強
e,BBI線向下,股價在BBI線之下,空頭勢強
3,參數的使用
參數的引進目標在于方便我們在設計和優化指標的過程當中,以簡單的方式改變
不同的周期,價位等等目標數據達到尋找到最優的參數數據.
例一,BIAS乖離率
指標原理
BIAS是運用股價指數與移動平均值的比值關系,觀測股價偏離移動平均線的程
度,以此決定投資者的買賣行為.
計算方法
(當日收盤價―當日MA均線值)/當日MA均線值*100
編寫要點
在參數表內設定好相應的3個參數,在澎博軟件的公式系統內可以設置一共4
個參數,從最大值到最小值為參數的變動范圍,缺省值為當前指標的取值.
參數名 最小值 最大值 缺省值
L1 1 100 6
L2 1 100 12
L3 1 100 24
注意:在澎博軟件中的百分比的表達方式不可以是"%"而是"/100";
注意:以下的表達式中的函數嵌套關系的表達方法,不存在大括號,中括號等等,
全部是用小括號相互嵌套而成;
指標內容和使用解析
BIAS1:(CLOSE―MA(CLOSE,L1))/MA(CLOSE,L1)*100;
BIAS2:(CLOSE―MA(CLOSE,L2))/MA(CLOSE,L2)*100;
BIAS3:(CLOSE―MA(CLOSE,L3))/MA(CLOSE,L3)*100;
應用原則:偏離率與移動平均值一致時,偏率為0,偏離率為正值時,偏離率在
移動平均線上方,說明股市呈上升趨勢;偏離率為負值時,偏離率在移動平均線
下方,說明股市有下跌趨勢;Y值偏離移動移動平均線的界定范圍大體在-15%至
15%,即:當Y值在0-15%時,可適當賣出股票,股價有可能反跌,當Y值在-15%-0
時,可適當買入股票,股價有可能反彈.
4,指標線形設計
在澎博軟件當中為了突出一些指標的顯示效果,設計了一套指標線形用于指標的
特殊表現形式.
例一,MACD(柱線的編寫實例)
指標原理:MACD是根據移動平均線較易掌握趨勢變動的方向之優點所發展出來
的,它是利用二條不同速度(一條變動的速率快--短期的移動平均線,另一條較
慢--長期的移動平均線)的指數平滑移動平均線來計算,二者之間的差異狀況
(DIF)作為研判行情的基礎,然后再求其DIF之9日平滑移動平均線,即MACD
線,MACD實際就是運用快速與慢速移動平均線聚合與分離的征兆,來研判買進
與賣出的時機和訊號.
計算方法:EMA:指數平滑移動平均線
N:周期
DIFF:乖離率
DEA:離差平均值
移動平均線(12日EMA)=前一日EMA*/1-2/(N+1)+今日收盤價*2/(N+1)
注:a,第一日的EMA取第一日的收盤價
b,在一般情況下,快速EMA選12日,慢速EMA取26日.計算得出的DIFF與
DEA為正值或負值,因而形成在0軸上下移動的兩條快速與慢速線.
編制要點:在函數中可以查到移動平均線的函數表達式為EMA(X,M)所以應先
行計算出快速移動平均線(12日EMA)與慢速移動平均線(26日EMA),并以這
兩個數值,作為測量兩者(快速與慢速線)間的"差離值"依據,所謂"差離值"
(DIFF),即12日EMA的數值減去26日EMA的數值,然后將參數M天內的DIFF
的移動平均線的值計算出來.
參數名 最小值 最大值 缺省值
LONG 20 100 26
SHORT 5 40 12
M 2 60 9
DIFF:EMA(CLOSE,SHORT)-EMA(CLOSE,LONG);
DEA:EMA(DIFF,M);
MACD:2*(DIFF-DEA),COLORSTICK;
在最后一句話當中,2是實際一個常數參數,它在這里的作用在于放大效果 ,
然后我們通過將它表示為紅綠的柱線,表示成形象的紅翻綠的情形了,請結合前
面的基礎介紹觀察其寫法.
指標內容和使用解析:
1,DIFF與DEA均為正值時,大勢屬多頭市場;
2,DIFF與DEA均為負值時,大勢屬空頭市場;
3,DIFF向上突破DEA時,可買入;
4,DIFF向下突破DEA時,應賣出;
四,指標公式編寫舉例
例一,RSI指標編寫
指標原理:Wellcs wilder jr.在著作new conccpts in technical trading
systems中所提出的交易方法之一,所謂RSI英文全名為relative strenth
index,中文名稱為相對強弱指標.該指標根據估價"擇強汰弱"的原理,以特
定時期內股價的變動情況推測價格未來的變動方向,并根據股價漲跌幅度顯示市
場的強弱,通過比較一段時期內的平均收益漲數和平均收盤跌數來分析市場買賣
盤的意向和實力,從而作出未來市場的走勢的分析.
計算方法
計算公式為:RSI=n日內收盤漲幅平均值/n日內收盤漲跌幅絕對值的平均值的平
均值*100.
編寫要點:
該指標由兩條指標線組成,編寫出其一,其他的依次類推;漲幅的表達用"今日
收盤-前日收盤",即"LC:=CLOSE-REF(CLOSE,1)"表示;ABS(X)表示求得
絕對值;MAX(CLOSE-LC,0),表示如果本周期上漲即得上漲值,否則取0,很
多時候我們利用MAX函數使變量和0進行比較,然后求得變量中的正值.
SMA的具體含義參見函數參考
以下我們拆分一條指標線來演示編寫過程,RSI1
昨日收盤:LC:=REF(CLOSE,1);
上漲幅度:AA:=MAX(CLOSE-LC,0);
收盤價振動幅度:AB:=ABS(CLOSE-LC,0);
N1日的上漲幅度的指數移動平均:AC:=SMA(AA,N1,1);
N1日的漲幅的指數移動平均:AD:=SMA(AB,N1,1);
RSI:AC/AD*100
參數名 最小值 最大值 缺省值
N1 2 100 6
N2 2 100 12
N3 2 100 24
將上面各個表達式綜合起來就可以得到以下的RSI的指標公式:
LC:=REF(CLOSE,1);
RSI1:SMA(MAX(CLOSE-LC,0),N1,1)/SMA(ABS(CLOSE-LC),N1,1)*100;
RSI2:SMA(MAX(CLOSE-LC,0),N2,1)/SMA(ABS(CLOSE-LC),N2,1)*100;
RSI3:SMA(MAX(CLOSE-LC,0),N3,1)/SMA(ABS(CLOSE-LC),N3,1)*100;
應用原理:
RSI取值超過50,表明市場進入強勢.RSI低于50,表明市場處于弱勢.
短天期的RSI在20以下的水平,由下往上交叉長期的RSI時,為買進訊號.短
天期的RSI在80以上的水平,由上往下交叉長期的RSI時,為賣出訊號.
從RSI與股價的背離方面判斷行情,RSI處于高位,并形成一峰比一峰低的兩個
峰,而此時,股價卻對應的是一峰比一峰高,這叫頂背離.股價這一漲是最后的
衰竭動作.這是比較強烈的賣出信號.RSI在低位形成兩個依次上升的谷底,而
股價還在下降,這是最后一跌或者說是接近最后一跌,是可以開始建倉的信號.
連接RSI連續的兩個底部,劃出一條由左向右上方傾斜的切線,當RSI向下跌破
這條切線時,是一個很好的賣出訊號.連接RSI連續的兩個峰頂,劃出一條由左
向右下方傾斜的切線,當RSI向上突破這條切線時,是一個很好的買進訊號.
例二,KDJ指標編寫
KDJ隨機指標(短期)KD指標是由dr.reorge lane所創造的,是歐美期貨常用
的一套技術分析工具.由于期貨風險性波動較大,需要比較短期且靈敏的指標工
具,因此中短期股票的技術分析也頗為適用.隨機指標綜合了動量觀念,強弱指
標與移動平均線的優點,用來度量股價脫離價格正常范圍的變異程度.KD線的
隨機觀念,遠比移動平均線實用很多.因為移動平均線在習慣上其以收盤價來計
算,無法表現出一段行情的真正波幅.
計算方法:KD指標的計算公式和理論上的依據.產生KD以前,先產生未成熟隨
機值RSV(row stocbastic value),RSV實際上就是WMS%,可能是這兩者產生
的途徑不同,各自取了不同的名字.對RSV(WMS%)進行指數平滑,就得到K指
標,對K值進行指數平滑,就得到D值.
RSV=(本日收盤價-N日的最低價)/(N日最高-N日最低)*100;
K=昨日RSV*1/12+今日的RSV*1/12;
D=昨日K*25/26+今日的RSV*1/26;
J=3*K-2*D;
參數名 最小值 最大值 缺省值
N 1 100 9
M1 2 40 3
M2 2 40 3
編寫要點:RSV的計算方法為收盤價和N天內的最高和最低的差的比值,使用函
數HHV,LLV可以輕松地得到最高和最低;
N天內最高價:HHV(HIGH,N);
N天內最低價:LLV(LOW,N);
指標內容和使用解析
RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;
K:SMA(RSV,M1,1);
D:SMA(K,M2,1);
J:3*K-2*D;
買賣原則:K值由右邊向下交叉D值作賣,K值由右邊向上交叉D值作買.
D值80%超買;J>100%超買,J<100%超賣,KD值于50%左右徘徊
或交叉時,無意義.
例三,OBV指標編寫
指標原理:OBV的英文全稱是On Ralancc Volumc,中文名稱直譯是平衡成交量,
有些人把每一天的成交量看作像海里的潮汐一樣,形象地稱OBV為能量潮,OBV
是由Granville與六十年代發明并廣泛流行的.我們可以利用OBV驗證當前股價
走勢的可靠性,并可以由OBV得到趨勢可能反轉的信號,對于準確預測未來是很
有用的,比起單獨使用成交量,OBV比成交量看得清楚.
計算方法:OBV構成的基本原理,是根據潮漲潮落的原理.每一天的成交量可以
理解成潮水,但這股潮水是向上還是向下,是保持原來的方法,還是中途回落
這個問題就有當天的收盤價與昨天的收盤價的大小比較而決定.
1,如果今收盤價≥昨收盤價,則這一潮水屬于多方的潮水,
2,如果今收盤價<昨收盤價,則這一潮水屬于空方的潮水.
編寫要點:
第一步,如果今收盤價≥昨收盤價,那么成交量為正:
AA:=IF(CLOSE≥REF(VOL,1),VOL,0);
第二步,如果今收盤價<昨收盤價,那么成交量為負:
BB:=IF(CLOSE
第三步,將所有的成交量加和:
CC:=AA+BB;
第四步,統計所有的周期上的成交量即得OBV.
OBV:SUM(OBV,0)
從上面編寫的例子使用了IF函數,AA計算了多方力量同時將空方的成交量忽略
為0,同樣在計算空方成交量的同時我們又忽略了多方的力量,將兩者加和就得
到了我們所需要的OBV.
買賣原則:OBV不能單獨使用,必須用股價曲線結合使用才能發揮作用.從OBV
的取值大小不能得到任何結論.我們關心的只是近日的OBV曲線的相對走勢,而
OBV的取值的絕對數字對我們是沒有用處的.OBV曲線的上升和下降對我們進一
步確認當前股價的趨勢有著很重要的作用.股價上升(或下降),而OBV也相應
地上升(或下降),則我們可以更相信當前的上升(或下降)趨勢.股價上升(或
下降),但OBV并未相應的上升(或下降),則我們對目前的上升(或下降)趨勢
的認可程度就要打折扣.這就是背離現象.OBV已經提前告訴我們趨勢的后勁不
足,有反轉的可能.在別的技術指標中適用的形態學和切線理論的內容也同樣可
用于OBV曲線.W底M頭等著名的形態學結果在OBV身上也能使用.在股價進入
盤整區后,OBV曲線會率先顯露出脫離盤整的信號,,向上或向下突破.
例四,BOLL指標編寫
指標原理:布林線(bollinger hands)由john bollinger創制,它利用統計學
原理,求出股價的標準差及其信賴區間,其上下限的范圍不被固定,隨股價的變
動而表動.
計算方法:利用統計學原理,先規定一個標準差,再求算出一個上下限波動區間,
其波動的上下限隨股價浮動.
MID=N天的收盤價的均價;
STD=N天的收盤價的標準差;
UPPER=MID+離差系數*STD;
LOWER= MID -離差系數*STD;
編寫要點:STD(X,N)表示計算標準差.首先得到一段時間N天的MA,然后按
照您要設定的參數賦與標準差之后加減即得到上下兩根BOLL線,中間的通道為
BOLL通道.
MID:MA(CLOSE,N);
UPPER:MID+P*STD(CLOSE,N);
LOWER:MID-P*STD(CLOSE,N);
買賣原則:
1,當布林通道由寬變窄時,說明股價逐漸向中值回歸,股市進入一個整理區間,
投資者應以觀望為主.
2,當通道由窄變寬時,意味著行情開始發生變化,如果股價逼近或穿過上限值,
表明超買力量增強,股市可能會短期下跌,此時應賣出股票,反之,當股價逼近
或穿過下限值時,表明超賣力量增強,股市可能會短期反彈,此時應買進股票.
3,柱體在布林通道中沿上限線運行,意味漲幅會持續.
例五,EXPMA指標編寫
EXPMA(Exponential Moving Average)即指數平均數指標,該指標屬于均線型
指標,在實際應用上也是根據它們的各自移動及交叉作為判別買賣的依據.expma
指數平均數克服了macd指標信號滯后,dma指標信號提前的弱點,在計算均數
時加重了當天行情的權重,可以迅速地反映出股價的漲跌.
編寫要點:首先,介紹EXPMA的計算公式與計算方法.原本該指標采用了移動平
均算法,但是在澎博軟件中本身有一個函數EMA就是計算移動平均,在函數介紹
當中和前面的指標中我們都已有見過,所以可以很簡單地表達為EMA的形式.
參數名 最小值 最大值 缺省值
P1 1 300 5
P2 1 300 10
P3 1 300 20
P4 1 300 60
MA1:EMA(CLOSE,P1);
MA2:EMA(CLOSE,P2);
MA3:EMA(CLOSE,P3);
MA4:EMA(CLOSE,P4);
買賣原則:書中將其歸于趨向性指標,EXPMA是以交叉為主要訊號,股價由下往
上碰觸EXPMA時,將受到強大的阻力,有上朝下碰觸EXPMA時,將受到強有力的
支撐,實際運用中并非這么簡單,并且注意其粘滯狀態的變化.
例六,威廉指標W&R
指標原理:威廉指標由tarry williams創造,是一種利用振蕩點來反映市場超
買超賣現象,預測循環周期內的高點和低點,從而提出有效的信號來分析市場短
期行情走勢,判斷股市強弱分界的技術指標.
計算方法:
HY=N天中的最高價;
LY=N天中的最低價;
Q=HY-今天的收盤價;
R=HY-LY;
故威廉指標WR=Q/R*100
指標內容和使用解析
AA:=(HHV(HIGH,N)-CLOSE);
BB:=(HHV(HIGH,N)-LLV(LOW,N));
W&R:100*AA/BB
買賣原則:當W&R高于80%,即處于超賣狀態,行情即將見底,應當考慮買入.
W&R低于20%,即處于超買狀態,行情即將見頂,應當考慮賣出.在W&R進入高
位后,一般要回頭,如果這時股價還繼續下跌,這就產生背離,是進貨的信號.
在W&R進入低位后,一般要反轉,如果這時股價還繼續上升,這就產生背離,是
賣出的信號.W&R連續幾次撞頂(底),局部形成雙重或多重底(頂)則是(進
貨)出貨的信號.
例七,MTM動力指標(momentum)
指標原理:動力指標是利用恒速緩沖的原則,來觀察股價漲跌速度的本質從而決
定投資的行為.股價上升下降既然是恒速緩沖的,從理論上講,在此期間內,股
價的漲跌區間相對一致,動量指標就是盡量反映出漲跌區間位移.
應用原則:一般講,股指上升動力值會隨之上升排除其它非技術因素,MTM大體
可反映出股市速度快慢,MTM應與MA配合使用:在股指上升時,MTM下降曲線與
MA上升曲線互相交叉時,在交叉點處投資者應及時賣出股票,在股指下降時,
MTM上升曲線與MA下降曲線互相交叉時,在交叉點處投資者應及時買進股票.
編寫要點:公式原理使用本周期收盤價和N周期以前的收盤價之差來描述股價的
變動情況,兩條指標線,其一是收盤價N周期以前的收盤價;其二為前一條指標
線的N1周期的均價,兩條指標線的變動速率反映股市的變化,所以有:
參數名 最小值 最大值 缺省值
N 1 100 6
N1 1 100 6
MTM:CLOSE-REF(CLOSE,N);
MTMMA:MA(MTM,N1);
五,函數列表
一,行情函數
名 稱 定義 用法舉例 解釋
AMOUNT 成交額 AMOUNT 取得該周期成交額.
BARSTATUS
數據位置狀
態
例如:BARSTATUS=2表示當天是
該股票數據的最后一個周期.
BARSTATUS返回數據位置信息,1
表示第一根K線,2表示最后一
個數據,0表示中間位置.
CLOSE
收盤價(簡
寫C)
CLOSE 取得該周期收盤價.
HIGH
最高價(簡
寫H)
HIGH 取得該周期最高價.
LOW
最低價(簡
寫L)
LOW 取得該周期最低價.
ISDOWN
該周期是否
收陰
當收盤開盤時,返回值為1,否
則為0
OPEN
開盤價(簡
寫O)
OPEN 取得該周期開盤價.
VOL
成交量(簡
寫V)
VOL 取得該周期成交量.
二,常數函數
名 稱 定義 用法解釋 舉例
CATEGORY 證券類型
返回證券類型,指數=0,股票=1,基金=2,債券=3,其它=4,
期權=5,外匯=6,期貨=7.
注意:該函數返
回常數
CURRENTDATE
計算時的當
前日期
CURRENTDATE,返回計算時的日期,該日期是從1900年
開始的日期,例如2003年1月1日表示為1030101.
注意:該函數返
回常數
CURRENTTIME
計算時的當
前時間
CURRENTTIME,返回計算時的時間,格式為時分秒,有效
范圍(000000-235959).
注意:該函數返
回常數
DATATYPE
當前分析的
數據類型
ATATYPE,返回數據類型,分時線=1,分筆成交=2,1分鐘
線=3,5分鐘線=4,15分鐘線=5,30分鐘線=6,60分鐘線
=7,日線=8,周線=9,月線=10,多日線=11,年線=12.
注意:該函數返
回常數
MINDIFF
最小價格變
動
MINDIFF,返回當前股票價格最小變動量,對于股票是
0.01元,基金是0.001.
注意:該函數返
回常數
VOLUNIT 每手股數
用法: VOLUNIT,返回每手股數. 對于股票值為100,
債券為10
三,時間函數
名 稱 定義 用法解釋
BARPOS
取得該周期在所有數據中
的位置
BARPOS
對于日線來說,函數返回上市以來的天數
D1970TODATE(X) 1970日轉換為日期 用法:D1970TODATE(X),得到1970日期X的日期值.
DATE 年月日
DATE 函數返回有效值范圍為(700101-1341231),表示
19700101-20341231 取得該周期從1900以來的年月日.
DATETOD1970(X) 日期轉換為1970日
用法:DATETOD1970(X),得到日期X距離1970年1月1日
以來的天數
例如:DATETOD1970(DATE)就返回今天距離1970年1月1
日的天數.
DAY 日期 DAY 函數返回有效值范圍為(1-31) 取得該周期的日期.
DAYS1970
取得該周期從1970以來
的天數
用法:DAYS1970.函數返回自從1970年1月1日以來的天
數,
例如在1971年1月1日返回365
HOUR 小時
HOUR 函數返回有效值范圍為(0-23),對于日線及更長的分
析周期值為0 取得該周期的小時數
MINUTE 分鐘
INUTE 函數返回有效值范圍為(0-59),對于日線及更長的
分析周期值為0 取得該周期的分鐘數
MONTH 月份 MONTH 函數返回有效值范圍為(1-12) 取得該周期的月份.
T0TOTIME(X) 秒數轉換為時間 T0TOTIME(X),得到從0點開始X秒后的時間值.
TIME 取得該周期的時分秒 TIME 函數返回有效值范圍為(000000-235959)
TIME0
取得該周期從當日0點以
來的秒數
TIME0 函數返回自從當日0點以來的秒數,對于日線以上
的分析周期,返回0
TIMETOT0(X) 時間轉化為秒數 TIMETOT0(X),得到時間X距離當日0點的秒數.
WEEKDAY 取得該周期的星期數 WEEKDAY 函數返回有效值范圍為(0-6),0表示星期天
YEAR 取得該周期的年份 YEAR 函數返回有效值范圍為(1970-2038)
四,引用函數
名 稱 定義 用法解釋
ALL(X,N)
一直滿足
條件
是否一直滿足條件
用法:ALL(X,N),統計N周期中是否一直都滿足X條件,若N=0則從第一個有效
值開始.
例如:ALL(CLOSE>OPEN,20)表示是否20周期內全部都收陽線.
ANY(X,N)
至少一次
滿足條件
至少一次滿足條件
用法:ANY(X,N),統計N周期中是否至少有一次滿足X條件,若N=0則從第一個
有效值開始.
例如:ANY(CLOSE>OPEN,20)表示是否20周期內是否存在一根陽線
BACKSET 向前賦值
將當前位置到若干周期前的數據設為1.
用法: BACKSET(X,N),X非0,則將當前位置到N周期前的數值設為1.
例如:BACKSET(CLOSE>OPEN,2)若收陽則將該周期及前一周期數值設為1,否則
為0
BARSCOUNT
有效值周
期數
求總的周期數.
用法: BARSCOUNT(X)第一個有效數據到當前的天數.
例如:BARSCOUNT(CLOSE)對于日線數據取得上市以來總交易日數,對于分筆
成交取得當日成交筆數,對于1分鐘線取得當日交易分鐘數
BARSLAST
上一次條
件成立位
置
上一次條件成立到當前的周期數.
用法: BARSLAST(X):上一次X不為0到現在的天數 .
例如:BARSLAST(CLOSE/REF(CLOSE,1)>=1.1)表示上一個漲停板到當前的周期
數
BARSSINCE
第一個條
件成立位
置
第一個條件成立到當前的周期數.
用法: BARSSINCE(X):第一次X不為0到現在的天數.
例如:BARSSINCE(HIGH>10)表示股價超過10元時到當前的周期數
COUNT 統計總數
統計滿足條件的周期數.
用法: COUNT(X,N),統計N周期中滿足X條件的周期數,若N=0則從第一個有
效值開始.
例如:COUNT(CLOSE>OPEN,20)表示統計20周期內收陽的周期數
DMA
動態移動
平均
求動態移動平均.
用法: DMA(X,A),求X的動態移動平均.
算法: 若Y=DMA(X,A) 則 Y=A*X+(1-A)*Y',其中Y'表示上一周期Y值,A必須
小于1.
例如:DMA(CLOSE,VOL/CAPITAL)表示求以換手率作平滑因子的平均價
EMA
指數平滑
移動平均
賣一價求指數平滑移動平均.
用法: EMA(X,N),求X的N日指數平滑移動平均.
算法:若Y=EMA(X,N) 則Y=[2*X+(N-1)*Y']/(N+1),其中Y'表示上一周期Y值.
例如:EMA(CLOSE,30)表示求30日指數平滑均價
FILTER 信號過濾
過濾連續出現的信號.
用法: FILTER(X,N):X滿足條件后,刪除其后N周期內的數據置為0 .
例如:FILTER(CLOSE>OPEN,5)查找陽線,5天內再次出現的陽線不被記錄在內
HHV 最高值
求最高值.
用法: HHV(X,N),求N周期內X最高值,N=0則從第一個有效值開始.
例如:HHV(HIGH,30)表示求30日最高價
HHVBARS
上一高點
位置
求上一高點到當前的周期數.
用法: HHVBARS(X,N):求N周期內X最高值到當前周期數,N=0表示從第一個
有效值
開始統計 .
例如:HHVBARS(HIGH,0)求得歷史新高到到當前的周期數
LAST(X)
連續滿足
條件的周
期數
用法:LAST(X),統計連續滿足X條件的周期數.
例如:LAST(CLOSE>OPEN)表示到目前為止連續收陽的周期數.
LLV 最低值
求最低值.
用法: LLV(X,N),求N周期內X最低值,N=0則從第一個有效值開始.
例如:LLV(LOW,0)表示求歷史最低價
LLVBARS
上一低點
位置
求上一低點到當前的周期數.
用法: LLVBARS(X,N):求N周期內X最低值到當前周期數,N=0表示從第一個
有效值開始統計 .
例如:LLVBARS(HIGH,20)求得20日最低點到當前的周期數
MA(X,N)
簡單移動
平均
求簡單移動平均.
用法: MA(X,N),求X的N日移動平均值.算法:(X1+X2+X3+...+Xn)/N
例如:MA(CLOSE,10)表示求10日均價
REF(X,A) 向前引用
引用若干周期前的數據.
用法: REF(X,A),引用A周期前的X值.
例如:REF(CLOSE,1)表示上一周期的收盤價,在日線上就是昨收 .
SMA
移動平均
求移動平均.
用法: SMA(X,N,M),求X的N日移動平均,M為權重.
算法: 若Y=SMA(X,N,M) 則 Y=[M*X+(N-M)*Y')/N,其中Y'表示上一周期Y
值,N必須大于M.
例如:SMA(CLOSE,30,1)表示求30日移動平均價
SUM 求和
求總和.
用法: SUM(X,N),統計N周期中X的總和,N=0則從第一個有效值開始.
例如:SUM(VOL,0)表示統計從上市第一天以來的成交量總和
SUMBARS
累加到指
定周期數
向前累加到指定值到現在的周期數.
用法: SUMBARS(X,A):將X向前累加直到大于等于A,返回這個區間的周期數
例如:SUMBARS(VOL,CAPITAL)求完全換手到現在的周期數
五,邏輯函數
名 稱 定義 用法解釋
BETWEEN
介于兩
個數之
間
用法:BETWEEN(A,B,C)表示A處于B和C之間時返回1,否則返回0
例如:BETWEEN(CLOSE,MA(CLOSE,10),MA(CLOSE,5))表示收盤價介于5日均線
和10日均線之間
CROSS
交叉函
數
CROSS(A,B)
A:變量或常量,判斷交叉的第一條線
B:變量或常量,判斷交叉的第二條線
例 CROSS(MA(CLOSE,5),MA(CLOSE,10)):5日均線與10日均線金叉
CROSS(CLOSE,12):價格下好突破12元.
IF
條件函
數
根據條件求不同的值.
用法: IF(X,A,B)若X不為0則返回A,否則返回B
例如:IF(CLOSE>OPEN,HIGH,LOW)表示該周期收陽則返回最高值,否則返回最低
值
LONGCROSS
維持-交
叉函數
兩條線維持一定周期后交叉
用法:LONGCROSS(A,B,N)表示A在N周期內都小于B,本周期從下方向上穿過B
時返回1,否則返回0
例如:LONGCROSS(MA(CLOSE,5),MA(CLOSE,10),5)表示5日均線維持5周期后
與10日均線交金叉
RANGE 范圍
介于某個范圍之間
用法:RANGE(A,B,C)表示A大于B同時小于C時返回1,否則返回0
例如:RANGE(CLOSE,MA(CLOSE,5),MA(CLOSE,10))表示收盤價大于5日均線并
且小于10日均線
六,數學函數
名 稱 定義 用法解釋 用法舉例
ABS
絕對值
求絕對值.用法: ABS(X)返回X的
絕對值
例如:ABS(-34)返回34
ACOS
反余弦值
用法:ACOS(X)返回X的反余弦值
AND
邏輯與運算
用法:A AND B 表示條件A與條件B
同時成立
ASIN
反正弦值
用法:ASIN(X)返回X的反正弦值
ATAN
反正切值
用法:ATAN(X)返回X的反正切值
CEILING
向上舍入
向數值增大方向舍入.
用法:CEILING(A)返回沿A數值增
大方向最接近的整數
例如:CEILING(12.3)求得13,CEILING(-3.5)求得-3
COS
余弦值
用法:COS(X)返回X的余弦值
EXP 指數 用法:EXP(X)為e的X次冪 例如:EXP(CLOSE)返回e的CLOSE次冪
FLOOR
向下舍入
向數值減小方向舍入
用法:FLOOR(A)返回沿A數值減小
方向最接近的整數
例如:FLOOR(12.3)求得12,FLOOR(-3.5)求得-4
FRACPART
取得小數部分
用法:FRACPART(A)返回數值的小數
部分
例如:FRACPART(12.3)求得0.3,FRACPART(-3.5)求
得-0.5
INTPART 取整
絕對值減小取整,即取得數據的整
數部分.
用法:INTPART(A)返回沿A絕對值
減小方向最接近的整數
例如:INTPART(12.3)求得12,INTPART(-3.5)求得-3
LN
自然對數
求自然對數.
用法:LN(X)以e為底的對數
例如:LN(CLOSE)求收盤價的對數
LOG
10為
底的對數
求10為底的對數.
用法:LOG(X)取得X的對數
例如:LOG(100)等于2
MAX
最大值
用法:MAX(A,B...)返回所有參數的
中的最大值,參數數量可以有2―
16個
例如:MAX(CLOSE,OPEN,REF(CLOSE,1))表示返回昨
收,今開,收盤三個價格中最高的價格.
MIN
最小值
求最小值.
用法:MIN(A,B...)返回所有參數的
中的最小值,參數數量可以有2―
16個
例如:MIN(CLOSE,OPEN,REF(CLOSE,1))表示返回昨
收,今開,收盤三個價格中最低的價格.
MOD
求模運算
用法:MOD(A,B)返回A對B求模 例如:MOD(26,10)返回6
NOT
求邏輯非
用法:NOT(X)返回非X,即當X=0時
返回1,否則返回0
例如:NOT(ISUP)表示平盤或收陰
OR
邏輯或運算
邏輯或運算
用法:A OR B表示條件A與條件B
只要有一個成立即可
POW 乘冪 用法:POW(A,B)返回A的B次冪 例如:POW(CLOSE,3)求得收盤價的3次方
REVERSE
求相反數
用法:REVERSE(X)返回-X 例如: REVERSE(CLOSE)返回-CLOSE
SGN
求符號值
用法:SGN(X),當X>0,X=0,XOPEN,LOW,6),ALIGN1;表
示繪制6號圖標,采用中對齊
STICK 小圓圈線
輸出線型控制符
STICK,用逗號隔開放置在輸出
語句后,將該輸出繪制成小圓
圈線.
例如:VOL,CIRCLEDOT;
COLOR 輸出顏色
輸出顏色控制符
COLORbbggrr,用逗號隔開放置
在輸出語句后,用于設定繪制
指標線的顏色,rr,gg,bb分別
表示紅綠藍三色的份量,用十
六進制表示,00表示最小,FF
表示最大.
例如:CLOSE,COLOR0000FF;表示用紅色繪制收盤
價線
COLOR3D
陰陽顏色3D
柱線,輸出
線型控制符
S....
陰陽顏色3D柱線,輸出線型控
制符S....
COLORSTICK
陰陽顏色柱
線
輸出線型控制符
STICK,用逗號隔開放置在輸出
語句后,將該輸出繪制成陰陽
顏色柱線,若數值正則用陽線
顏色,否則用陰線顏色.
例如:CLOSE-CLOSE[1],COLORSTICK;表示繪制漲
跌陰陽柱線
CROSSDOT 斜叉線
輸出線型控制符
STICK,用逗號隔開放置在輸出
語句后,將該輸出繪制成斜叉
線.
例如:VOL,CROSSDOT;
LINESTICK 帶包絡柱線
輸出線型控制符
STICK,用逗號隔開放置在輸出
語句后,將該輸出繪制成柱線,
同時帶上包絡.
例如:VOL,LINESTICK;表示繪制成交量包絡柱線
LINETHICK 輸出線寬
輸出線寬控制符
LINETHICKx,用逗號隔開放置
在輸出語句后,用于設定繪制
指標線寬度,x可以為0-7,若
設為0則表示不顯示.
例如:CLOSE,LINETHICK6;表示用6點粗線繪制收
盤價線
MOVE 向后平移
向后平移控制符
MOVEx,用逗號隔開放置在輸出
語句后,用于設定輸出線向后
平移x周期,x=0―255
例如:CLOSE,MOVE10;表示繪制收盤價線向后移動
10周期
POINTDOT 點線
輸出線型控制符
STICK,用逗號隔開放置在輸出
語句后,將該輸出繪制成點線.
例如:VOL,POINTDOT;
PRECIS 輸出精度
輸精度出控制符
PRECISx,用逗號隔開放置在輸
出語句后,用于設定指標數值
精確到小數點后多少位,x可以
為0-6.
例如:
CLOSE,PRECIS6;表示收盤價線顯示6位小數精度
STICK 輸出柱線
輸出線型控制符
STICK,用逗號隔開放置在輸出
語句后,將該輸出繪制成柱線.
例如:
VOL,STICK;表示繪制成交量柱線
STICK3D 3D柱線
輸出線型控制符
STICK,用逗號隔開放置在輸出
語句后,將該輸出繪制成3D柱
線.
例如:
VOL,STICK3D;表示繪制成交量3D柱線
VALIGN
垂直對齊方
式
垂直對齊方式控制符
VALIGNx,用逗號隔開放置在
DrawIcon,DrawBmp,DrawText
語句后,用于設定對齊方式,
x=0表示上對齊,1表示中對齊,
2表示下對齊,缺省上對齊.
例如:
DrawIcon(CLOSE>OPEN,LOW,6),ALIGN1,VALIGN0;
表示繪制6號圖標,采用中對齊和上對齊
VOLSTICK
成交量顏色
柱線
輸出線型控制符
STICK,用逗號隔開放置在輸出
語句后,將該輸出繪制成與K
線同樣粗細的柱線.
例如:
VOL,VOLSTICK;表示繪制成交量柱線