設為首頁加入收藏

微信關注
官方微信號:qingfeng7777777a
加關注獲取每日精選資訊
股票入門歡迎您加入
廣告服務聯系我們網站地圖

【通達信指標公式】通達信指標公式編寫教程

2019-06-25 21:23:34 技術分析知識庫

公式系統(初級)

 

1.公式類型說明

調出公式管理器: 功能à專家系統à公式管理器

公式類型分為四大類:技術指標公式、條件選股公式、交易系統公式、五彩K線公式。

 

1.1技術指標公式

我們在技術分析界面中見到的指標為技術指標公式,比如MA, KDJ , MACD  等;可以通過公式管理器編寫技術指標公式,在公式管理器界面選擇技術指標公式,點擊右邊的“新建”就可進入技術指標公式編輯區。如下圖:

在指標公式編輯區,可以通過“引入指標公式”,在已有指標的基礎上修改指標公式,也可以通過插入函數來實現指標公式的編寫;編寫完后測試公式,測試通過后退出,輸入公式名稱就可調出指標公式使用。

 

1.2條件選股公式

利用條件選股公式可以把符合一定技術形態的個股選出來,首先在公式管理器中建立條件選股公式,再通過“條件選股”調用條件選股公式。

條件選股調出:功能à選股器à條件選股

 

 

1.3交易系統公式

編寫好交易系統公式后,可以疊加到K線上,交易系統自動列出買賣操作信號。

交易系統公式調出操作如下:

在K線界面點擊鼠標右鍵,選擇交易系統指標,如下圖:

選擇一交易系統,點擊“確定”,交易系統就會疊加在K線上面了。如下圖:

1.4.五彩K線公式

編寫好五彩公式后,可以疊加到K線上,會把特殊的K線形態用不同的顏色標識出來。

五彩K線公式調出操作如下:

在K線界面點擊鼠標右鍵,選擇五彩K線指示,如下圖:


選擇一五彩K線,點擊“確定”,五彩K線就會疊加在K線上面了。如下圖:

 

2.公式函數的使用

函數在公式編寫非常重要,如果作個比喻,我們用一種語言去告訴電腦我的想法,并且讓它去幫我做,那么函數就是這種語言的單詞。

   我們在公式編輯器中選擇插入函數,就可以看到里面有許多的函數,我們在附錄中有一個簡表,大家可以到那里去檢索。如下圖:

 

例一:

一根K線有四個價格組成:

最高價:HIGH 

收盤價:CLOSE 

最低價:LOW 

開盤價:OPEN 

成交量:VOL

成交額:AMO

例二:

兩條均線不斷地交叉,就專門設定了一條函數來描述兩條線交叉:CROSS(X,Y)

假如下圖中的兩條均線一條名叫X,另外一條叫Y

CROSS(X,Y)表示X向上穿過了Y

CROSS(Y,X)表示Y向上穿過了X

例三:

前面的CLOSE,還是VOL,都表示當天,或者您使用的不是日線,那就表示本周期的數據,那么前幾天的怎么表示呢?

REF(X,M)

例如:

REF(Close,5)表示5天前的收盤;

REF(Vol,10)表示10天前的成交量;

這里的M就是參數。

什么是參數?

比如講:10日均線,您可以把10日當作參數,好處在于,您覺得需要修改成5日的時候,就可以使用一些簡單的方法,例如參數精靈來很方便的修改和調整。參數需要名字,例如M就不錯。還要規定參數的范圍,例如1日至260日。這樣我們就可以在1到260之間任意調節M的值了,M最常用的數填在“缺省”一欄,例如你最喜歡用10日均線,那就填10吧。

例四:

如果我想把兩個條件并列在一起怎么辦?

AND

X AND Y就表示條件X和條件Y

3.公式編寫舉例

3.1 均線指標編寫

進入公式管理器,新建一技術指標公式

依次點擊菜單“功能à專家系統à公式管理器”,進入公式管理器界面。如下圖:

 

左邊的樹型列表中選擇技術指標公式下面的“均線型”,點擊右邊的“新建”,就會進入公式編輯界面,如下圖:

 

填寫完公式名稱,公式描述,點擊“插入函數”,選擇“簡單移動平均”,簡單移動平均函數的用法會在對話框下邊列出來,點擊“確定”按鈕,對應的函數會在公式編輯框內顯示出來。如下圖所示:

填寫完 MA函數的兩個參數,第一個參數填寫收盤價,收盤價在公式函數中用 C 表示,第二個參數填寫均線日期,可以直接錄入一數字,最后用分號結尾(注:公式編寫涉及到符號時用英文字符)。如下圖所示:

錄入后,下面的動態翻譯區會自動翻譯公式的意義,“收盤價的10日簡單移動平均”,這樣一條10日均線的指標就形成了。

編輯器區的相關說明如下

公式類型:對應的公式可選擇加入不同的類型,設定后查看公式時將會在對應的分類項下列出來;

畫線方法

選擇副圖,指標將會在副圖區顯示,選擇主圖疊加,指標將會在主圖區顯示(如常用指標MA就是主圖指標),也可選擇在副圖上疊加K線,美國線,收盤站線。

坐標線位置:默認的是自動,系統自動根據指標值的范圍設定的區間,如上圖的 0.60,0.40,0.2,0, -0.2, 0.00 , -0.2  ;可以手動的設置坐標間隔,用分號分開,手動設置后,默認的將會沒有。

 

額外Y軸分界:在指標上加上一些白色的橫線,如上圖所示。

 

點擊 “測試公式”,若顯示測試通過,點擊“確定”按鈕保存公式。

調出公式時,鍵盤輸入公式名字  JX1  回車,如下圖所示:

 

3.2簡單條件選股公式編寫

下面編寫一選股公式,要求選出“股價小于每股凈資產”的個股。

進入公式管理器,新建一條件選股公式

依次點擊菜單“功能à專家系統à公式管理器”,進入公式管理器界面。如下圖:

 

選擇左邊樹型列表中條件選股公式下面的其它類型,點擊“新建”,如下圖:

 

輸入公式名稱,公式描述, 如下圖所示:

點“插入函數”,選擇“收盤價”,點擊“確定”,對應的函數就到了編輯區,如下圖所示:

錄入空格 ,輸入小于號, 再點“插入函數”,在財務函數中找到每股凈資產放到后面,以分號結尾,如下圖所示:


點擊 “測試公式”,若顯示測試通過,點擊“確定”按鈕保存公式。

 

4.附公式函數列表

4.1行情函數

 

HIGH 最高價

返回該周期最高價。

用法: HIGH

H 最高價

返回該周期最高價。

用法: H

LOW 最低價

返回該周期最低價。

用法: LOW

L 最低價

返回該周期最低價。

用法: L

CLOSE 收盤價

返回該周期收盤價。

用法: CLOSE

C 收盤價

返回該周期收盤價。

用法: C

VOL 成交量

返回該周期成交量。

用法: VOL

V 成交量

返回該周期成交量。

用法: V

OPEN 開盤價

返回該周期開盤價。

用法: OPEN

O:開盤價

返回該周期開盤價。

用法: O

ADVANCE 上漲家數

返回該周期上漲家數。

用法: ADVANCE(本函數僅對大盤有效)

DECLINE 下跌家數

返回該周期下跌家數。

用法: DECLINE(本函數僅對大盤有效)

AMOUNT 成交額

返回該周期成交額。

用法: AMOUNT

ASKPRICE 委賣價

返回委賣1--委賣3價格。

用法: ASKPRICE(N)N取1—3。

(本函數僅個股在分筆成交分析周期有效)

ASKVOL 委賣量

返回委賣1--委賣3量。

用法: ASKVOL(N)N取1—3。

(本函數僅個股在分筆成交分析周期有效)

BIDPRICE 委買價

返回委買1--委買3價格。

用法: BIDPRICE(N)N取1—3。

(本函數僅個股在分筆成交分析周期有效)

BIDVOL 委買量

返回委買1--委買3量。

用法: BIDVOL(N)N取1—3。

(本函數僅個股在分筆成交分析周期有效)

BUYVOL 主動性買盤

返回主動性買單量。

用法: BUYVOL 當本筆成交為主動性買盤時,其數值等于成交量,否則為0。

(本函數僅個股在分筆成交分析周期有效)

SELLVOL 主動性賣盤

返回主動性賣單量。

用法: SELLVOL 當本筆成交為主動性賣盤時,其數值等于成交量,否則為0。

(本函數僅個股在分筆成交分析周期有效)

ISBUYORDER 主動性買單

返回該成交是否為主動性買單。

用法: ISBUYORDER 當本筆成交為主動性買盤時,返回1,否則為0。

(本函數僅個股在分筆成交分析周期有效)

ISSELLORDER 主動性賣單

返回該成交是否為主動性賣單。

用法: ISSELLORDER 當本筆成交為主動性賣盤時,返回1,否則為0。

(本函數僅個股在分筆成交分析周期有效)]

 

4.2時間函數

 

DATE 日期

取得該周期從1900以來的年月日。

用法: DATE 例如函數返回1000101,表示2000年1月1日。

TIME 時間

取得該周期的時分秒。

用法: TIME 函數返回有效值范圍為(000000-235959)。

YEAR 年份

取得該周期的年份。

用法:YEAR

MONTH 月份

取得該周期的月份。

用法:MONTH 函數返回有效值范圍為(1-12)。

WEEK 星期

取得該周期的星期數。

用法: WEEK 函數返回有效值范圍為(0-6),0表示星期天。

DAY 日期

取得該周期的日期。

用法: DAY 函數返回有效值范圍為(1-31)。

HOUR 小時

取得該周期的小時數。

用法: HOUR 函數返回有效值范圍為(0-23),對于日線及更長的分析周期值為0。

MINUTE 分鐘

取得該周期的分鐘數。

用法: MINUTE 函數返回有效值范圍為(0-59),對于日線及更長的分析周期值為0。

FROMOPEN 分鐘

求當前時刻距開盤有多長時間。

用法: FROMOPEN 返回當前時刻距開盤有多長時間,單位為分鐘。

例如: FROMOPEN 當前時刻為早上十點,則返回31。

 

4.3引用函數

 

DRAWNULL 無效數

返回無效數。

用法: DRAWNULL

例如: IF(CLOSE>REF(CLOSE,1),CLOSE,DRAWNULL) 表示下跌時分析圖上不畫線。

BACKSET 向前賦值

將當前位置到若干周期前的數據設為1。

用法: BACKSET(X,N) 若X非0,則將當前位置到N周期前的數值設為1。

例如: BACKSET(CLOSE>OPEN,2) 若收陽則將該周期及前一周期數值設為1,否則為0。

BARSCOUNT 有效數據周期數

求總的周期數。

用法: BARSCOUNT(X) 第一個有效數據到當前的天數。

例如: BARSCOUNT(CLOSE) 對于日線數據取得上市以來總交易日數,對于分筆成交取得當日成交筆數,對于1分鐘線取得當日交易分鐘數。

CURRBARSCOUNT 到最后交易日的周期數

求到最后交易日的周期數.

用法:

CURRBARSCOUNT 求到最后交易日的周期數

TOTALBARSCOUNT 總的周期數

求總的周期數.

用法:

TOTALBARSCOUNT 求總的周期數

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周期內收陽的周期數。

HHV 最高值

求最高值。

用法: HHV(X,N) 求N周期內X最高值,N=0則從第一個有效值開始。

例如: HHV(HIGH,30) 表示求30日最高價。

HHVBARS 上一高點位置

求上一高點到當前的周期數。

用法: HHVBARS(X,N) 求N周期內X最高值到當前周期數,N=0表示從第一個有效值開始統計。

例如: HHVBARS(HIGH,0) 求得歷史新高到到當前的周期數。

LLV 最低值

求最低值。

用法: LLV(X,N) 求N周期內X最低值,N=0則從第一個有效值開始。

例如: LLV(LOW,0) 表示求歷史最低價。

LLVBARS 上一低點位置

求上一低點到當前的周期數。

用法: LLVBARS(X,N) 求N周期內X最低值到當前周期數,N=0表示從第一個有效值開始統計。

例如: LLVBARS(HIGH,20) 求得20日最低點到當前的周期數。

REVERSE 求相反數

求相反數。

用法: REVERSE(X) 返回-X。

例如: REVERSE(CLOSE) 返回-CLOSE。

REF 向前引用

引用若干周期前的數據。

用法: REF(X,A) 引用A周期前的X值。

例如: REF(CLOSE,1) 表示上一周期的收盤價,在日線上就是昨收。

REFDATE 指定引用

引用指定日期的數據。

用法: REFDATE(X,A) 引用A日期的X值。

例如: REF(CLOSE,20011208) 表示2001年12月08日的收盤價。

SUM 總和

求總和。

用法: SUM(X,N) 統計N周期中X的總和,N=0則從第一個有效值開始。

例如: SUM(VOL,0) 表示統計從上市第一天以來的成交量總和。

FILTER 過濾

過濾連續出現的信號。

用法: FILTER(X,N)X滿足條件后,刪除其后N周期內的數據置為0。

例如: FILTER(CLOSE>OPEN,5) 查找陽線,5天內再次出現的陽線不被記錄在內。

SUMBARS 累加到指定值的周期數

向前累加到指定值到現在的周期數。

用法: SUMBARS(X,A) 將X向前累加直到大于等于A,返回這個區間的周期數。

例如: SUMBARS(VOL,CAPITAL) 求完全換手到現在的周期數。

SMA 移動平均

返回移動平均。

用法: SMA(X,N,M)X的M日移動平均,M為權重,如Y=(X*M+Y'*(N-M))/N

MA 簡單移動平均

返回簡單移動平均。

用法: MA(X,M)X的M日簡單移動平均。

DMA 動態移動平均

求動態移動平均。

用法: DMA(X,A) 求X的動態移動平均。

算法: 若Y=DMA(X,A)則Y=A*X+(1-A)*Y',其中Y'表示上一周期Y值,A必須小于1。

例如: DMA(CLOSE,VOL/CAPITAL) 表示求以換手率作平滑因子的平均價。

EMA(或EXPMA) 指數移動平均

返回指數移動平均。

用法: EMA(X,M)X的M日指數移動平均。

MEMA 平滑移動平均

返回平滑移動平均

用法: MEMA(X,M)X的M日平滑移動平均。

MEMA(X,N)與MA的差別在于起始值為一平滑值,而不是初始值

EXPMEMA 指數平滑移動平均

返回指數平滑移動平均。

用法: EXPMEMA(X,M)X的M日指數平滑移動平均。

EXPMEMA同EMA(即EXPMA)的差別在于他的起始值為一平滑值

RANGE 介于某個范圍之間

用法: RANGE(A,B,C)A在B和C。

例如: RANGE(A,B,C)表示A大于B同時小于C時返回1,否則返回0。

CONST 取值設為常數

用法: CONST(A) 取A最后的值為常量.

例如: CONST(INDEXC)表示取大盤現價。

 

4.4邏輯函數

 

CROSS 上穿

兩條線交叉。

用法: CROSS(A,B) 表示當A從下方向上穿過B時返回1,否則返回0。

例如: CROSS(MA(CLOSE,5),MA(CLOSE,10)) 表示5日均線與10日均線交金叉。

LONGCROSS 維持一定周期后上穿

兩條線維持一定周期后交叉。

用法: LONGCROSS(A,B,N) 表示A在N周期內都小于B,本周期從下方向上穿過B時返回1,否則返回0。

UPNDAY 連漲

返回是否連漲周期數。

用法: UPNDAY(CLOSE,M) 表示連漲M個周期。

DOWNNDAY 連跌

返回是否連跌周期。

用法: DOWNNDAY(CLOSE,M) 表示連跌M個周期。

NDAY 連大

返回是否持續存在X>Y。

用法: NDAY(CLOSE,OPEN,3) 表示連續3日收陽線。

EXIST 存在

是否存在。

用法: EXIST(CLOSE>OPEN,10) 表示前10日內存在著陽線。

EVERY 一直存在

一直存在。

用法: EVERY(CLOSE>OPEN,10) 表示前10日內一直陽線。

LAST 持續存在

用法: LAST(X,A,B) A>B,表示從前A日到前B日一直滿足X條件。若A為0,表示從第一天開始,B為0,表示到最后日止。

例如: LAST(CLOSE>OPEN,10,5) 表示從前10日到前5日內一直陽線。

 

4.5算術函數

 

NOT 取反

求邏輯非。

用法: NOT(X) 返回非X,即當X=0時返回1,否則返回0。

例如: NOT(ISUP) 表示平盤或收陰。

IF 邏輯判斷

根據條件求不同的值。

用法: IF(X,A,B) 若X不為0則返回A,否則返回B。

例如: IF(CLOSE>OPEN,HIGH,LOW)表示該周期收陽則返回最高值,否則返回最低值。

IFF 邏輯判斷

根據條件求不同的值。

用法: IFF(X,A,B) 若X不為0則返回A,否則返回B。

例如: IFF(CLOSE>OPEN,HIGH,LOW) 表示該周期收陽則返回最高值,否則返回最低值。

IFN 邏輯判斷

根據條件求不同的值。

用法: IFN(X,A,B) 若X不為0則返回B,否則返回A。

例如: IFN(CLOSE>OPEN,HIGH,LOW) 表示該周期收陰則返回最高值,否則返回最低值。

MAX 較大值

求最大值。

用法: MAX(A,B) 返回A和B中的較大值。

例如: MAX(CLOSE-OPEN,0) 表示若收盤價大于開盤價返回它們的差值,否則返回0。

MIN 較小值

求最小值。

用法: MIN(A,B) 返回A和B中的較小值。

例如: MIN(CLOSE,OPEN) 返回開盤價和收盤價中的較小值。

 

 

4.6數學函數

 

ACOS 反余弦

反余弦值。

用法: ACOS(X) 返回X的反余弦值。

ASIN 反正弦

反正弦值。

用法: ASIN(X) 返回X的反正弦值。

ATAN 反正切

反正切值。

用法: ATAN(X) 返回X的反正切值。

COS 余弦

余弦值。

用法: COS(X) 返回X的余弦值。

SIN 正弦

正弦值。

用法: SIN(X) 返回X的正弦值。

TAN 正切

正切值。

用法: TAN(X) 返回X的正切值。

EXP 指數

指數。

用法: EXP(X)e的X次冪。

例如: EXP(CLOSE) 返回e的CLOSE次冪。

LN 自然對數

求自然對數。

用法: LN(X) 以e為底的對數。

例如: LN(CLOSE) 求收盤價的對數。

LOG 對數

求10為底的對數。

用法: LOG(X) 取得X的對數。

例如: LOG(100) 等于2。

SQRT 開方

開平方。

用法: SQRT(X) 求X的平方根。

例如: SQRT(CLOSE) 收盤價的平方根。

ABS 絕對值

求絕對值。

用法: ABS(X) 返回X的絕對值。

例如: ABS(-34) 返回34。

POW 乘冪

乘冪。

用法: POW(A,B) 返回A的B次冪。

例如: POW(CLOSE,3) 求得收盤價的3次方。

CEILING 向上舍入

向上舍入。

用法: CEILING(A) 返回沿A數值增大方向最接近的整數。

例如: CEILING(12.3) 求得13,CEILING(-3.5)求得-3。

FLOOR 向下舍入

向下舍入。

用法: FLOOR(A) 返回沿A數值減小方向最接近的整數。

例如: FLOOR(12.3) 求得12,FLOOR(-3.5)求得-4。

INTPART 取整

用法: INTPART(A) 返回沿A絕對值減小方向最接近的整數。

例如: INTPART(12.3) 求得12,INTPART(-3.5)求得-3。

BETWEEN: 介于

介于。

用法: BETWEEN(A,B,C) 表示A處于B和C之間時返回1,否則返回0。

例如: BETWEEN(CLOSE,MA(CLOSE,10),MA(CLOSE,5))表示收盤價介于5日均線和10日均線之間。

 

4.7統計函數

AVEDEV 平均絕對方差

AVEDEV(X,N)  返回平均絕對方差。

DEVSQ 數據偏差平方和

DEVSQ(X,N)  返回數據偏差平方和。

FORCAST 線性回歸預測值

FORCAST(X,N)返回線性回歸預測值。

SLOPE 線性回歸斜率

SLOPE(X,N)返回線性回歸斜率。

STD 估算標準差

STD(X,N)返回估算標準差。

STDP 總體標準差

STDP(X,N)返回總體標準差。

VAR 估算樣本方差

VAR(X,N)返回估算樣本方差。

VARP 總體樣本方差

VARP(X,N)返回總體樣本方差 。

 

4.8橫向統計

BLOCKSETNUM 板塊股票個數

用法: BLOCKSETNUM(板塊名稱) 返回該板塊股票個數。

HORCALC 多股統計

用法: HORCALC(板塊名稱,數據項,計算方式,權重)

數據項:100-HIGH,101-OPEN,102-LOW,103-CLOSE,104-VOL,105-漲幅

計算方式: 0-累加,1-排名次

權重: 0-總股本,1-流通股本,2-等同權重,3-流通市值

 

4.9形態函數

 

COST 成本分布

成本分布情況。

用法: COST(10),表示10%獲利盤的價格是多少,即有10%的持倉量在該價格以下,其余90%在該價格以上,為套牢盤。

該函數僅對日線分析周期有效。

PEAK 波峰值

前M個ZIG轉向波峰值。

用法: PEAK(K,N,M) 表示之字轉向ZIG(K,N)的前M個波峰的數值,M必須大于等于1。

例如: PEAK(1,5,1) 表示%5最高價ZIG轉向的上一個波峰的數值。

PEAKBARS 波峰位置

前M個ZIG轉向波峰到當前距離。

用法: PEAKBARS(K,N,M) 表示之字轉向ZIG(K,N)的前M個波峰到當前的周期數,M必須大于等于1。

例如: PEAKBARS (0,5,1) 表示%5開盤價ZIG轉向的上一個波峰到當前的周期數。

SAR 拋物轉向

拋物轉向。

用法:  SAR(N,S,M),N為計算周期,S為步長,M為極值。

例如: SAR(10,2,20) 表示計算10日拋物轉向,步長為2%,極限值為20%。

SARTURN 拋物轉向點

拋物轉向點。

用法: SARTURN(N,S,M)N為計算周期,S為步長,M為極值,若發生向上轉向則返回1,若發生向下轉向則返回-1,否則為0。

其用法與SAR函數相同。

TROUGH 波谷值

前M個ZIG轉向波谷值。

用法: TROUGH(K,N,M) 表示之字轉向ZIG(K,N)的前M個波谷的數值,M必須大于等于1。

例如: TROUGH(2,5,2) 表示%5最低價ZIG轉向的前2個波谷的數值。

TROUGHBARS 波谷位置

前M個ZIG轉向波谷到當前距離。

用法: TROUGHBARS(K,N,M) 表示之字轉向ZIG(K,N)的前M個波谷到當前的周期數,M必須大于等于1。

例如: TROUGH(2,5,2) 表示%5最低價ZIG轉向的前2個波谷到當前的周期數。

WINNER 獲利盤比例

獲利盤比例。

用法: WINNER(CLOSE) 表示以當前收市價賣出的獲利盤比例。

例如: 返回0.1表示10%獲利盤,WINNER(10.5)表示10.5元價格的獲利盤比例。

該函數僅對日線分析周期有效。

LWINNER 近期獲利盤比例

近期獲利盤比例。

用法: LWINNER(5,CLOSE) 表示最近5天的那部分成本以當前收市價賣出的獲利盤比例。例如返回0.1表示10%獲利盤。

PWINNER 遠期獲利盤比例

遠期獲利盤比例。

用法: PWINNER(5,CLOSE) 表示5天前的那部分成本以當前收市價賣出的獲利盤比例。例如返回0.1表示10%獲利盤。

COSTEX 區間成本

區間成本。

用法: COSTEX(CLOSE,REF(CLOSE)),表示近兩日收盤價格間籌碼的成本,例如返回10表示區間成本為20元。

該函數僅對日線分析周期有效。

PPART 遠期成本分布比例

遠期成本分布比例。

用法: PPART(10),表示10前的成本占總成本的比例,0.2表示20%。

ZIG 之字轉向

之字轉向。

用法: ZIG(K,N) 當價格變化量超過N%時轉向,K表示0:開盤價,1:最高價,2:最低價,3:收盤價,其余:數組信息

例如: ZIG(3,5) 表示收盤價的5%的ZIG轉向。

 

4.10 大盤函數

 

INDEXA  返回大盤成交額

INDEXADV 返回上漲家數

INDEXDEC 返回下跌家數

INDEXC  返回大盤收盤價

INDEXH  返回大盤最高價

INDEXL  返回大盤最低價

INDEXO  返回大盤開盤價

INDEXV  返回大盤成交量

 

4.11繪圖函數

PLOYLINE 折線段

在圖形上繪制折線段。

用法: PLOYLINE(COND,PRICE),當COND條件滿足時,以PRICE位置為頂點畫折線連接。

例如: PLOYLINE(HIGH>=HHV(HIGH,20),HIGH)表示在創20天新高點之間畫折線。

DRAWLINE 繪制直線段

在圖形上繪制直線段。

用法: DRAWLINE(COND1,PRICE1,COND2,PRICE2,EXPAND)

當COND1條件滿足時,在PRICE1位置畫直線起點,當COND2條件滿足時,在PRICE2位置畫直線終點,EXPAND為延長類型。

例如: DRAWLINE(HIGH>=HHV(HIGH,20),HIGH,LOW<=LLV(LOW,20),LOW,1) 表示在創20天新高與創20天新低之間畫直線并且向右延長。

DRAWKLINE 繪制K線

用法: DRAWKLINE(HIGH,OPEN,LOW,CLOSE) 以HIGH為最高價,OPEN為開盤價,LOW為最低,CLOSE收盤畫K線。

STICKLINE 繪制柱線

在圖形上繪制柱線。

用法: STICKLINE(COND,PRICE1,PRICE2,WIDTH,EMPTY),當COND條件滿足時,在PRICE1和PRICE2位置之間畫柱狀線,寬度為WIDTH(10為標準間距),EMPTH不為0則畫空心柱。

例如: STICKLINE(CLOSE>OPEN,CLOSE,OPEN,0.8,1)表示畫K線中陽線的空心柱體部分。

DRAWICON 繪制圖標

在圖形上繪制小圖標。

用法: DRAWICON(COND,PRICE,TYPE),當COND條件滿足時,在PRICE位置畫TYPE號圖標。

例如: DRAWICON(CLOSE>OPEN,LOW,1) 表示當收陽時在最低價位置畫1號圖標。圖標一共有九個,圖形如附圖。序號,最下面的是“1”號,最上面的是“9”號。

DRAWTEXT 顯示文字

在圖形上顯示文字。

用法: DRAWTEXT(COND,PRICE,TEXT),當COND條件滿足時,在PRICE位置書寫文字TEXT。

例如: DRAWTEXT(CLOSE/OPEN>1.08,LOW,'大陽線')表示當日漲幅大于8%時在最低價位置顯示'大陽線'字樣。

 

4.12財務函數

FINANCE(1) 總股本(萬股)

FINANCE(2) 國家股(萬股)

FINANCE(3) 發起人法人股(萬股)

FINANCE(4) 法人股(萬股)

FINANCE(5)B股(萬股)

FINANCE(6)H股(萬股)

FINANCE(7) 流通股本(萬股)

CAPITAL  流通股本(手)

FINANCE(8) 職工股(萬股)

FINANCE(10)  總資產

FINANCE(11)  流動資產

FINANCE(12)  固定資產

FINANCE(13)  無形資產

FINANCE(14)  長期投資

FINANCE(15)  流動負債

FINANCE(16)  長期負債

FINANCE(17)  資本公積金

FINANCE(18)  每股公積金

FINANCE(19)  股東權益

FINANCE(20)  主營收入

FINANCE(21)  主營利益

FINANCE(22)  其它利益

FINANCE(23)  營業利益

FINANCE(24)  投資收益

FINANCE(25)  補貼收入

FINANCE(26)  營業外收支

FINANCE(27)  上年損益調整

FINANCE(28) 利益總額

FINANCE(29)  稅后利益

FINANCE(30)  凈利益

FINANCE(31)  未分配利益

FINANCE(32)  每股未分配利潤

FINANCE(33)  每股收益

FINANCE(34) 每股凈資產

FINANCE(35) 調整每股凈資產

FINANCE(36) 股東權益比

FINANCE(40)  流通市值

FINANCE(41)  總市值

FINANCE(42)  上市日期

 

4.13動態行情函數

DYNAINFO(3)  前收盤價

DYNAINFO(4)  今開

DYNAINFO(5)  最高

DYNAINFO(6)  最低

DYNAINFO(7)  現價

DYNAINFO(8)  總手

DYNAINFO(9)  現手

DYNAINFO(10) 總成交金額

DYNAINFO(11) 均價

DYNAINFO(12) 日升跌

DYNAINFO(13) 振幅度

DYNAINFO(14) 漲幅度

DYNAINFO(15) 委托比

DYNAINFO(16) 委量差

DYNAINFO(17) 量比

DYNAINFO(20) 最新叫買價

DYNAINFO(21) 最新叫賣價

DYNAINFO(22) 內盤

DYNAINFO(23) 外盤

DYNAINFO(25) 買一量

DYNAINFO(26) 買二量

DYNAINFO(27) 買三量

DYNAINFO(28) 買一價

DYNAINFO(29) 買二價

DYNAINFO(30) 買三價

DYNAINFO(31) 賣一量

DYNAINFO(32) 賣二量

DYNAINFO(33) 賣三量

DYNAINFO(34) 賣一價

DYNAINFO(35) 賣二價

DYNAINFO(36) 賣三價

DYNAINFO(37) 換手率

DYNAINFO(39) 市盈率

DYNAINFO(40) 成交方向

DYNAINFO(50) 采樣點數

DYNAINFO(51) 內外比

DYNAINFO(52) 多空平衡

DYNAINFO(53) 多頭獲利

DYNAINFO(54) 空頭回補

DYNAINFO(55) 多頭止損

DYNAINFO(56) 空頭止損

DYNAINFO(57) 筆升跌

 

4.14線形和顏色屬性

COLOR 自定義色

格式為COLOR+“RRGGBB”:RR、GG、BB表示紅色、綠色和藍色的分量,每種顏色的取值范圍是00-FF,采用了16進制。

例如:MA5:MA(CLOSE,5),COLOR00FFFF 表示純紅色與純綠色的混合色:COLOR808000表示淡藍色和淡綠色的混合色。

COLORBLACK   畫黑色

COLORBLUE    畫藍色

COLORGREEN   畫綠色

COLORCYAN    畫青色

COLORRED     畫紅色

COLORMAGENTA 畫洋紅色

COLORBROWN   畫棕色

COLORLIGRAY  畫淡灰色

COLORGRAY 畫深灰色

COLORLIBLUE  畫淡藍色

COLORLIGREEN 畫淡綠色

COLORLICYAN  畫淡青色

COLORLIRED   畫淡紅色

COLORLIMAGENTA 畫淡洋紅色

COLORYELLOW  畫黃色

COLORWHITE   畫白色

LINETHICK    線型粗細

格式:“LINETHICK+(1-9)” 參數的取值范圍在1—9之間,“LINETHICK1”表示最細的線,而“LINETHICK9”表示最粗的線。

STICK      畫柱狀線

COLORSTICK 畫彩色柱狀線

VOLSTICK   畫彩色柱狀線

成交量柱狀線,當股價上漲時顯示紅色空心柱,則顯示綠色實心柱

LINESTICK  同時畫出柱狀線和指標線

CROSSDOT   畫小叉線

CIRCLEDOT  畫小圓圈線

POINTDOT   畫小圓點線

 

 

公式系統(中級)

 

1.基本公式編寫實例

在前面的學習當中,我們見到了一些基本的表達方法、方式,今天我們的任務是學習一些常見的概念如何編寫,例如上面所列出來的放量、上漲等等,因為這些都是在公式編寫過程當中要用到的基本形態特征,許多的技術指標的選股條件都是由它們組成的。

1.1 放量

1、今日比昨日的成交量放大了1倍:

VOL/REF(VOL,1)>2;

2、今日的五日均量比五天前的五日均量放大了3倍:

AA:=MA(VOL,5);

BB:=REF(AA,5);

AA/BB>4;

3、今天的成交量達到了整個流通盤的10%以上:

VOL/CAPITAL>10/100;

(注意,10%的表達式是10/100,或者0.1)

1.2  縮量

1、 今日比昨日的成交量縮小了1倍:

VOL/REF(VOL,1)<0.5;

 

2、  今日的五日均量比五天前的五日均量縮小了一半:

AA:=MA(VOL,5);

BB:=REF(AA,5);

AA/BB<0.5;

 

3、  今天的成交量不足整個流通盤的0.5%:

VOL/CAPITAL<0.5/100;

 

 

1.3 上漲

1、今日漲幅達到了7%以上:

CLOSE/REF(CLOSE,1)>1.07;

2、十日均價繼續上漲:

AA:=MA(CLOSE,10);

BB:=REE(AA,1);

AA>BB;

 

1.4 下跌

收陽、收陰:

1、當天收陽:CLOSE>OPEN;

2、當天收陰:CLOSE<OPEN;

1.5 高開、低開

1、當天股價高開,即開盤高于昨日收盤:OPEN>REF(CLOSE,1);

2、當天股價低開:OPEN<REF(CLOSE,1);

1.6 跳空

跳空亦有向上和向下兩種:

當日開盤在昨日最高之上,即為向上跳空:OPEN>REF(HIGH,1);

反之,開盤小于昨日的最高價,為向下跳空:OPEN<REF(LOW,1);

 

1.7 放量上攻

AA:=VOL/REF(VOL,1)>2;{成交量是昨日的兩倍}

BB:=CLOSE/REF(CLOSE,1)>1.07;{漲幅大于7%}

AA AND BB;

1.8  高開高走

AA:=OPEN>REF(CLOSE,1);{開盤價大于昨收}

BB:=CLOSE>OPEN;{當日收陽線}

AA AND BB;

 

1.9 創新高

創新高指當日最高價是最近一段時間的最高價:

HIGH=HHV(HIGH,N);

其中的HIGH為當期最高價,HHV(X,N)是求N周期內X最高值。因此該公式的含義是當日最高價創N日新高時返回值為1,否則為0。

 

1.10 橫盤整理

橫盤整理指最近一段時期價格在一定幅度之內擺動:

(HHV(CLOSE,10)-LLV(CLOSE,10))/CLOSE<0.05;

其中的LLV(X,N)是求N周期內X最低值。因此該公式表示10日收盤價振幅振幅在5%以內。

 

 

2. 公式組合實例

下面介紹如何對基本公式進行組合,描述一些簡單的K線形態。在編寫公示前,需要準確對K線形態進行定義。

2.1 向上跳空之后兩天內并未回補

定義:實際上就是昨天發生了跳空缺口,這兩天的最低價一直在兩天前的最高價之上。

 

AA:=REF(OPEN,1)>REF(HIGH,2);

BB:=REF(LOW,1)>REF(HIGH,2);

CC:=LOW>REF(HIGH,2);

AA AND BB AND CC;

仔細一想,若BB成立,AA一定成立,AA實際上沒有存在的必要。

更簡單的方法,下面的一句話可以的上面的四句:

COUNT(LOW>REF(HIGH,2),2)=2;

2.2     5日,10日,30日均線多頭排列

 

定義:均線多頭排列,是指從短周期到長周期均線,從上而下的依次排列

 

AA:=MA(CLOSE,5);

BB:=MA(CLOSE,10);

CC:=MA(CLOSE,30);

T1:=AA>BB AND BB>CC;

以上情況維持一段時間,假設我們這里定為4天以上:

COUNT(T1,4)=4;

COUNT(X,N)表示統計在N天內滿足條件X的有幾天。

最終的結果就是如下所示:

AA:=MA(CLOSE,5);

BB:=MA(CLOSE,10);

CC:=MA(CLOSE,30);

T1:=AA>BB AND BB>CC;

COUNT(T1,4 )=4;

2.3逃頂K線形態之--黃昏之星

定義:當市場出現一條大陽線后,通常會產生跳空高開的情況,有時便會出現十字星或類似十字星的小陰線(小陽線),當該形態出現在一段上升行情的當中,就很容易形成經典K線形態--黃昏之星。

 

為了結構簡單起見,首先將二天的高開低收用中間表達式表達出來,因為我們在后面的編寫過程中會分別使用到這些數據。

1、今日K線的:

開-a1, a1:=open;

收-a2, a2:=close;

高-a3, a3:=high;

2、昨天K線的:

開-b1, b1:=ref(open,1);

收-b2, b2:=ref(close,1);

高-b3, b3:=ref(high,1);

低-b4, b4:=ref(low,1);

3、前天K線的:

開-c1, c1:=ref(open,2);

收-c2, c2:=ref(close,2);

高-c3, c3:=ref(high,2);

低-c4, c4:=ref(low,2);

4、我們將會分別描述出三天的K線形態,然后匯總,首先我們觀察今日K線的特征,今天 是一根低開低走的大陰線,我們給它一些數字上的定義:

 a、今日開盤價小于昨日收盤價: aa:=a1<b2 and

 b、今日的陰線實體較長,我們用開盤價和收盤價相比,長度大于4%:a1/a2>1.04;

5、昨日K線的特征,是一根十字形態的K線,并且在左右兩根K線之上,分別表達為:

 a、昨日跳開,高于前天的收盤: bb:=b1>c3

 b、昨日收盤同樣在缺口之上: and b2>c3

 c、線形實體長度很小,也就是昨日開盤和收盤之差比昨日開盤的值小于0.01:

and abs(b1-b2)/b1<0.01

d、K線有上下影線,可以表示為最高價和最低價不等于收盤價也不等于開盤價:

and b3>b1 and b3>b2 and b4<b1 and b4<b2

e、當日的最高價為20天以來的最高價: and b3=hhv(high,20);

6、前日K線的特征:股價大幅上揚,幅度較前一日收盤高出4%并且收盤大于開盤:cc:=c2/ref(close,3)>1.04 and c2>c1;

綜合選股條件:最后我們將三天的K線特征結合起來,合成一個最后的條件就是由圖所示內容: aa and bb and cc

最終結果就是(可以直接加進通達信公式編輯器):

a1:=open;

a2:=close;

a3:=high;

b1:=ref(open,1);

b2:=ref(close,1);

b3:=ref(high,1);

b4:=ref(low,1);

c1:=ref(open,2);

c2:=ref(close,2);

c3:=ref(high,2);

c4:=ref(low,2);

aa:=a1<b2 and a1/a2>1.04;

bb:=b1>c3 and b2>c3 and abs(b1-b2)/b1<0.01 and b3>b1 and b3>b2 andb4<b1 and b4<b2 and b3=hhv(high,20);

cc:=c2/ref(close,3)>1.04 and c2>c1;

aa and bb and cc;

如果我們想把這個選股公式改為指標公式,修改最后一個語句就可以了。

將aaand bb and cc; 改為DRAWICON((AAAND BB AND CC),HIGH*1.02,2);

這時在符合條件的K線上方出現了一個綠色的向下箭頭,提示賣出。效果如下:

 黃昏之星是一個賣出信號,與之相對應的是一個買入信號,稱為早晨之星,如下圖:

指標源碼請參考通達信中的相關選股公式。

2.4突破底部橫盤整理創新高

 

定義:股價突破長期盤整區間,之后放量上攻進入主升段。“長期”設定為150天;“橫盤”設定股價在150日均線上下15%波動;放量;并且股價創下150天以來的歷史新高。

 

首先用公式描述放量

a、將會使用5日均量來進行比較,成交量比昨日成交量放大兩倍;

b、V1是五日均量,REF(V1,1)就是昨日的均量;

V1:=MA(VOL,5);

V2:=VOL/REF(V1,1)>2;

長期橫盤

a、PZ1是當天150日均價: PZ1:=MA(CLOSE,M);

b、PZ2是150日的最高價; PZ2:=HHV(HIGH,M);

c、PZ3是150日的最低價; PZ3:=LLV(LOW,M);

d、PZ4是150日的最高價和150日均價的距離的百分比,PZ5剛好相反是最低價和均價的差的百分比; PZ4:=(PZ2-PZ1)/PZ1; PZ5:=(PZ1-PZ3)/PZ1;

e、設為股價在150日均線上下15%波動,也就是PZ4、PZ5都小于0.15;

PZ:=REF(PZ4,1)<0.15 AND REF(PZ5,1)<0.15;

3、今天創下歷史新高,也就是今天的最高價是150天內的最高價!

TP1:HHV(HIGH,M); TP:=HIGH=TP1;

綜合三個條件的最后的邏輯判斷式就是我們的最后結論:

V2 AND PZ AND TP(參數M=150天)

最終結果就是:

(參數M=150天)

V1:=MA(VOL,5);

V2:=VOL/REF(V1,1)>2;

PZ1:=MA(CLOSE,M);

PZ2:=HHV(HIGH,M);

PZ3:=LLV(LOW,M);

PZ4:=(PZ2-PZ1)/PZ1;

PZ5:=(PZ1-PZ3)/PZ1;

PZ:=REF(PZ4,1)<0.15 AND REF(PZ5,1)<0.15;

TP1:HHV(HIGH,M);

TP:=HIGH=TP1;

V2 AND PZ AND TP;

 

注意:如果源碼加入到公式編輯器后顯示錯誤,請多注意標點符號,需要將中文模式下的標點改成英文模式下的標點,例如:“:”改成“:”, “,”改成“,”以及括號等等。

3. 各種指標公式編輯器的詳細區別

公式管理器可管理四種類型的公式:指標 公 式: 用于指標圖形的繪制。條件選股公式:用于條件選股。交易系統公式:用于專家指示及測參、測指。五彩K線公式:用于K線模式指示。這四種公式相互獨立,名稱可以相同,但其內容和作用不同。每種類型的公式包括四種形式: 系統加密公式:用綠色圖標和鎖形符號顯示,要進行密碼確認系統公式:用綠色圖標顯示,可進行刪改 用戶加密公式:用紅色圖標和鎖形符號顯示,要進行密碼確認 用戶公式:用紅色圖標顯示,可進行刪改指標公式附加買賣邏輯判斷式,得到交易系統公式;指標公式附加選股條件邏輯判斷式,得到條件選股公式。指標公式附加色彩邏輯判斷,得到五彩K線公式。 

3.1 技術指標公式編輯器

技術指標公式即通常所說畫線指標,此類公式的主要目的是通過對數據采取一定的運算,將輸出結果直觀的顯現在分析圖上,為投資者提供研判行情的基本依據。此類指標至少要有一條輸出線,輸出包括文字,圖標等,本系統老版本允許最多6條的輸出線,新版本可以輸出50條輸出線。技術指標公式編輯器實現對技術圖表分析中各類技術指標和自我定義的技術分析指標的編寫,并且通過TDX的分析界面形成圖表、曲線,以方便和尋找有意義的技術圖形和技術特征。

 

3.2 條件選股公式編輯器

也就是通常意義上解釋的智能選股。但我們的目的在于建立一個完全開放、自由的選股平臺,可以通過對該平臺的熟練使用,借助計算機的高速和準確的檢索功能尋找滿足您的理解的股票形態和技術特征,如果和預警系統結合起來用,將可以在盤中實時提示符合條件的股票。條件選股公式有且僅有一個輸出,這是它和技術指標不同的地方。

 

3.3 五彩K線公式編輯器

準確講,該編輯器的功能是附屬于條件選股功能之上的,我們可以通過該功能將滿足條件的連續K線形態賦予顏色,區別了其它的K線。 條件選股公式與五彩K線公式的區別:條件選股公式和五彩K線公式都有且僅有一個輸出,其目的都是為投資者提供買入或賣出點的指示,不同之處在于:條件選股公式僅對最近數據提示買入或賣出,而五彩K線公式則對輸入的所有歷史數據進行提示。另外,五彩K線公式的輸出是在K線圖上,通過各種顏色對提示數據進行標識,條件選股公式的輸出是找出符合最近條件的所有股票。

 

3.4 交易系統公式編輯器

交易系統公式是通過設定買入和賣出點(有且僅有這兩個輸出),由計算機進行模擬操作。以此為依據,系統一方面可以進行五彩K線公式的功能,同時提示買入和賣出;另一方面可以通過模擬操作,對指標買賣的收益、指標的最佳參數及最佳指標等各情形進行測試。交易系統是在條件選股功能上的一次大的延伸,旨在建立一套完整的交易規則體系,通過該編輯器對各個相關的交易環節,包括買入的切入、賣出、止損以及整體的交易性能檢驗等等作出定量的規定,幫助投資者建立一套屬于自己的買賣規則和理論。

 

 

 

 

公式系統(高級)

 

 

1. 特殊公式腳本編寫

要編寫一個公式,必須要明確這個公式對應的理論知識。一套完整的理論知識且能在通達信的公式平臺上做成公式還要滿足如下要求:

1.  從該理論應能分析出公式啟動的起始數據。如股票的開高低收價格、成交量、各財務數據、各即時數據、時間數據、一些常見的技術分析概念、其他理論的結果等,這些數據大部分是系統提供的,而最后兩項則要從其他公式中得來也就是對應于公式編寫中的指標引用操作(當然在這公式編寫前要確保該要引用的指標已實現)。

2.  從理論中應能分析出起始數據到結果的明確運算過程。在公式平臺中提供了一些系統函數,這些函數包含了部分常用的運算過程(如HHV(X,N) 可求N周期內X最高值)。如果理論中的運算過程拆解完全后,能由公式平臺中的函數及允許的基本運算全部組成就可以編寫成公式了。

 

在之前的學習當中,我們已經對公式系統、公式腳本編輯有了基本的認識。公式系統提供給我們的基本函數、系統公式,就是我們運用公式系統編寫自己的公式時的基本元素。對于一些常見的技術分析概念的編寫在上一章節已經給出了介紹和示例,本章節主要來介紹一下在公式腳本編寫如果用系統函數及基本運算來解決一些特殊難題。

 

1.1在分鐘周期下劃分交易日

 

1. 均線(分鐘):

 

指標名稱:均線(分鐘)

指標原理:均價=累加自當日開市到當前K線時間內的成交金額/累加自當日開市到當前K線時間內的成交量。

編寫分析:

1.確定交易日內第一根K線的位置(難點);

      2.自1中確定的位置累加成交金額、成交量(由系統函數SUM實現);

      3.由成交金額、成交量求均價(由除法操作符實現)。

公式腳本:

FIRST:=IF(PERIOD=0,HOUR=9 AND MINUTE=31,

IF(PERIOD=1,HOUR=9 AND MINUTE=35,

IF(PERIOD=2,HOUR=9 AND MINUTE=45,

IF(PERIOD=3,HOUR=10 AND MINUTE=0,

IF(PERIOD=4,HOUR=10 AND MINUTE=30,0)))));

SUM(AMO,BARSLAST(FIRST)+1)/SUM(VOL,BARSLAST(FIRST)+1);

 

上面的公式適用于1分鐘,5分鐘,15分鐘,30分鐘,60分鐘等五個周期下。將給出每個交易日中各周期下均線的走勢。公式腳本編寫中的重點就是First變量的確定,這也是這段腳本的亮點。First變量表示的是當日當前周期的第一根K線位置,是通過IF函數的嵌套使用結合各分鐘周期的第一根K線的時間得來的。

 

1.2 跨周期引用數據

在同一個公式腳本中,所有變量的數據周期都是相同的,就是調用公式時設置的周期。在公式腳本中要用其它周期的數據,共有兩種方式:

 1)  對變量用變周期符號(#),改變其周期。這種方式有局限性,只能在小周期公式中得到大周期數據,且僅適用于一些基本數據,如close,high,low,open等。

示例腳本:

日最高價:H;

周最高價:H#WEEK;

運行示例:

2)  在公式腳本中調用其它公式以取得其它周期的數據。調用其它公式,并用#設置其周期。如,公式腳本在日線下運行時,可用Kdj.k#week;來獲得kdj在周線下的k值,另屬于于同一周線的日線將獲得相同的K值。

示例腳本:

公式1:

公式名稱:JBSJ

公式描述:基本數據

公式腳本:

JC:C;{當前周期收盤價}

JH:H;{當前周期最高價}

JL:L;{當前周期最低價}

JO:O;{當前周期開盤價}

JYC:REF(C,1);{前一個周期收盤價}

 

公式2:

公式名稱:TEST049

公式腳本:

日線開盤價:JBSJ.JO#DAY;

周線開盤價:O;

月線開盤價:JBSJ.JO#MONTH;

 

運行示例:

 

使用跨周期引用數據時要注意:

 

1.可供引用的周期類型有:

MIN1,MIN5,MIN15,MIN30,MIN60,DAY,WEEK,MONTH

 

分別表示將1,5,15,30,60分鐘K線數據,以及日,周,月K線數據,代入被引用的公式,進行運算。

 

2.意義:

可將大周期內跑的數據,引用到小周期內來跑;也可將小周期內跑的數據,引用到大周期內來跑。

 

3.切勿對開高低收以外的數據直接使用變周期轉換!

 

4.切勿對大周期內跑的數據使用小周期轉換!無論是開高低收等基本數據、還是自定義變量,都無法從大周期數據直接轉換成小周期數據,只能通過公式引用來獲得小周期數據。

 

1.3 對某個時間段統計

1)某絕對時間段最高價

       此腳本段求1998年8月3日到1998年12月20日間的最高價:

      HH:=IF(YEAR=1998AND (MONTH>8 OR (MONTH=8 AND DAY>=3) ) AND (MONTH<12 OR (MONTH=12 ANDDAY<=20) ),H,0);{HH變量在該時間段內等于H,其他時間為0}

HHV(HH,0);{此例求1998年8月3日到1998年12月20日間的最高價}

2)某相對時間段最高價

      60天前到40天前之間的最高價

REF(HHV(H,60-40),40);

1.4 在某個時間段內某條件滿足

TT:=C/REF(C,1)>1.095;{是否漲停} 

COUNT(TT,20)>0;{二十個交易日內時候漲停過}

上面的腳本配合1.3中示例可以寫出歷史某絕對時間段,或相對時間內是否漲停過的選股公式。

 

上圖中的效果還可以借助Filter這個函數來實現。

1.5 K線繪制

示例公式:博弈K線

公式名稱:博弈K線

公式腳本:

BKO:WINNER(O),NODRAW;

BKH:WINNER(H),NODRAW;

BKL:WINNER(L),NODRAW;

BKC:WINNER(C),NODRAW;

DRAWKLINE(BKH,BKO,BKL,BKC);

運行示例:

1.6 創新高周期數

成交量創新高周期數腳本:

FV:=IF(BARSCOUNT(C)=0,9999999999,VOL);

量創新高周期數:SUMBARS(REF(FV,1)-FV,0);

{這里的關鍵是 REF(FV,1)-FV ,想想看寫成 FV-REF(FV,1) 行不行?};

1.7腳本控制

在通達信的公式腳本中沒有專門的控制語句,一切都是變量(僅有輸出與不輸出的區別),所以要實現應用于多種情況的腳本也要依靠變量來控制。

系統函數中有幾個重要的函數就是IF,IFF,IFN,TESTSKIP.請大家注意的是通達信的函數的參數都是先計算出結果然后將參數傳給函數的。因此對于TESTSKIP,最好作為一條單獨的語句來使用。

公式腳本1:同1.2中的JBSJ公式。

{用于引用股票的基本數據。}

公式腳本2:FZMN分鐘模擬

{用于通過幾種分鐘周期的數據模擬出當天對應于改周期的各項數據}

N:=IF(PERIOD=0,1,

IF(PERIOD=1,5,

IF(PERIOD=2,15,

IF(PERIOD=3,30,

IF(PERIOD=4,60,0)))));

CTRL:=TESTSKIP(N=0);{僅用于分鐘周期}

 

TTIME1:=(TIME/100);

TTIME2:=IF(TTIME1<1000,TTIME1-930,

      IF(TTIME1<1100,TTIME1-1000+30,

      IF(TTIME1<1131,TTIME1-1100+90,

      IF(TTIME1<1300,120,

      IF(TTIME1<1400,TTIME1-1300+120,

      IF(TTIME1<1500,TTIME1-1400+180,

      240))))));

 

TTIME:=TTIME2/N;

YTC:="JBSJ.JYC#DAY";

YTDPC:="399300$CLOSE#DAY";

ZFS:=(C*1000/YTC)-1000;

AC:="399300$CLOSE";

ZFA:=(AC*1000/YTDPC)-1000;

 

DJC:(ZFS-ZFA)*YTC/1000+YTC;

DJH:IF(TTIME<2,DJC,HHV(DJC,TTIME-1));

DJL:IF(TTIME<2,DJC,LLV(DJC,TTIME-1));

DJO:REFV(DJC,TTIME-1);

{DRAWKLINE(DJH,DJO,DJL,DJC);};

 

公式腳本3:

在日線周期下,引用公式2中的數據(通過引用指標設置周期的方法來獲得分鐘周期的數據),通過K線繪制的函數就可以畫出模擬 的K線了。

JH:="FZMN.DJH#MIN5";

JO:=" FZMN.DJO#MIN5";

JLC:=" FZMN.DJL#MIN5";

JC:=" FZMN.DJC#MIN5";

DRAWKLINE(JH,JO,JLC,JC);

【通達信指標公式】通達信指標公式編寫教程

[!--temp.sitename--]聲明:資訊來源于互聯網,屬作者個人觀點,僅供投資者參考,并不構成投資建議。投資者據此操作,風險自擔。

p3开机号最近10期