文華財經(jīng)模型與函數(shù)詳解二[程序化新手]
4.邏輯判斷
| BETWEEN(A,B,C) |
判斷條件“A位于B及C之間”是否成立,如果條件成立則返回1 (yes),否則返回0 (no)。 例:BETWEEN(CLOSE,MA5,MA40); 表示收盤價介于5日均線與40日均線之間。 |
| CROSS(X,Y) |
表示X上穿Y。 例:CROSS(CLOSE,MA(CLOSE,5));表示收盤線從下方向上穿過5日均線 |
| FILTER(COND,N) | 過濾連續(xù)出現(xiàn)的信號。 用法: FILTER(COND,N) 當(dāng)COND條件成立時,將其后N周期內(nèi)的數(shù)據(jù)置為0。 例:FILTER(CLOSE>OPEN,3) 查找陽線,3天內(nèi)再次出現(xiàn)的陽線不被記錄在內(nèi) 注:不能與BKPRICE,BARSBK,SKPRICE,BARSSK一起使用 |
| EXIST(COND,N) |
判斷N個周期內(nèi)是否有滿足條件COND的情況發(fā)生。 例:EXIST(CLOSE>REF(HIGH,1),10);表示10個周期中是否存在收盤價大于前一個周期的最高價 |
| EVERY(COND,N) |
判斷過去N個周期內(nèi)是否一直滿足條件COND。 例:EVERY(CLOSE>OPEN,5);表示5個周期內(nèi)一直是陽線 |
| LAST(COND,N1,N2) |
判斷過去N1到N2周期內(nèi)是否一直滿足條件COND。 例:LAST(CLOSE>OPEN,10,5);表示從過去第10個周期到第5個周期內(nèi)一直是陽線 |
| LONGCROSS(A,B,N) |
如果A在前N個周期內(nèi)都小于B,本周期上穿B,則返回1。否則返回0。 例:LONGCROSS(CLOSE,MA(CLOSE,10),20);表示收盤線在10日均線之下持續(xù)20周期后從下向上穿過10日均線 |
| IFELSE(C,A,B) | 如果條件C成立則取A值,否則取B值 例:A:=IFELSE(MA5>MA10,CROSS(DIFF,DEA),IFELSE(CROSS(D,K),2,0));當(dāng)MA5>MA10時,取是否滿足DIFF上穿DEA,否則(MA5不大于MA10),當(dāng)K,D死叉時,令A(yù)賦值為2,若上述條件都不滿足,A賦值為0 A=1,BPK;//當(dāng)MA5>MA10,以DIFF上穿DEA作為開多倉條件 A=2,SPK;//當(dāng)MA5不大于MA10,以K D死叉作為開空倉條件 |
| ISDOWN |
判斷該周期是否收陰。 |
| ISEQUAL |
判斷該周期是否平盤。 |
| ISUP |
判斷該周期是否收陽。 |
| VALUEWHEN(COND,DATA) |
當(dāng)條件COND滿足時,取當(dāng)時的DATA的值,否則取得前面一個滿足條件COND的值。 例:VALUEWHEN(HIGH>REF(HIGH,5),HIGH);表示當(dāng)前最高價大于前五個周期最高價的最大值時返回當(dāng)前最高價。 |
5.數(shù)學(xué)運算
| ABS(X) |
求X的絕對值 例:ABS(SAR(17,0.03,0.3));返回拋物轉(zhuǎn)向SAR(17,0.03,0.3)的絕對值。 |
| ACOS(X) |
求X的反余弦值 |
| ASIN(X) |
求X的反正弦值 |
| ATAN(X) |
求X的反正切值 |
| COS(X) |
返回X的余弦值 |
| EXP(X) |
返回e的X次冪 |
| CUBE(X) | 返回X的三次方。 |
| CEILING(X) |
向上舍入,返回沿X數(shù)值增大方向最接近的整數(shù)。 |
| FLOOR(X) |
向下舍入,返回沿X數(shù)值減小方向最接近的整數(shù)。 |
| INTPART(X) |
取X的整數(shù)部分,返回沿X絕對值減小方向最接近的整數(shù)。 |
| LN(X) |
得到X的自然對數(shù),以e為底的對數(shù)。 例:LN(OPEN);求開盤價的自然對數(shù)。 |
| LOG(X) |
得到X的常用對數(shù),取得X的以10為底的對數(shù)。 例:LOG(OPEN);求開盤價的以10為底的對數(shù)。 |
| MAX(A,B) |
求A,B中的較大者。 例:MAX(CLOSE-OPEN,0);表示若收盤價大于開盤價返回它們的差值,否則返回0。 |
| MIN(A,B) |
求A,B中的較小者。 例:MIN(OPEN,CLOSE);返回開盤價和收盤價中的較小值。 |
| MOD(A,B) |
返回A對B得到模。 例:MOD(CLOSE,500);收盤價除以500所得余數(shù) |
| NOT(X) |
當(dāng)X為0時返回1,否則返回0。 例:NOT(TIME=090530);表示該周期對應(yīng)的時間不是9:05:30AM。 |
| POW(A,B) |
得到A的B次冪。 例:POW(CLOSE,2);求得收盤價的2次方。 |
| REVERSE(X) |
取反,返回符號相反的數(shù)值。 例:REVERSE(LOW);返回-LOW。 |
| RANGE(A,B,C) | 表示A大于B同時小于C時返回1,否則返回0 |
| SGN(X) |
得到X的符號,如果X>0則返回1,如果X<0則返回-1,否則返回0。 |
| SIN(X) |
得到X的正弦值。 |
| SQRT(X) |
得到X的平方根。 例:SQRT(CLOSE);收盤價的平方根。 |
| SQUARE(X) |
得到X的平方。 例:SQUARE(CLOSE);收盤價的平方。 |
| TAN(X) |
得到X的正切值。 |
6.時間函數(shù)
| BARPOS |
取得當(dāng)前K線的位置。 |
| DATE |
取得當(dāng)前周期的日數(shù)(700101-341231)。 |
| DAY |
取得當(dāng)前周期的日數(shù)(1-31)。 |
| HOUR |
取得當(dāng)前周期的小時數(shù)(0-23)。 |
| MINUTE |
取得當(dāng)前周期的分鐘數(shù)(0-59)。 |
| MONTH |
取得當(dāng)前周期的月數(shù)(1-12)。 |
| TIME |
取得當(dāng)前周期的時間數(shù)(0-2359),秒級周期返回值范圍為:0-235959。 |
| WEEKDAY |
取得當(dāng)前周期的星期數(shù)(0-6)。 |
| YEAR |
取得當(dāng)前周期的年數(shù)(1970-2034)。 |
| CLOSEMINUTE | 距收盤前時間。 用法: CLOSEMINUTE 返回當(dāng)前系統(tǒng)時間距收盤前的時間(單位:分鐘),方便收盤前及時平倉。 例:TIME>1445&&CLOSEMINUTE=1,SP;//距閉市還有1分鐘平多單。 |
7.繪圖
| BACKGROUNDSTYLE(i) | 設(shè)置背景的樣式。 用法: BACKGROUNDSTYLE(i)設(shè)置背景的樣式。 i = 0 或 1。 |
| DRAWLINE(C1,P1,C2,P2,COLOR) |
當(dāng)條件C1及C2均滿足時,從P1畫直線到P2,顏色為COLOR。 例:DRAWLINE(MA18< CLOSE,OPEN,MA5 >CLOSE,CLOSE,COLORCYAN); 表示當(dāng)收盤價大于18日均線并且小于5日均線時,從開盤價畫青色直線到收盤價。 |
| DRAWTEXT(C,P,TEXT) |
表示當(dāng)條件C滿足時在P上寫TEXT文字。 例:DRAWTEXT(CLOSE< OPEN&&REF(CLOSE,1)< REF(OPEN,1) &&REF(VOL,1)*1.1< VOL,LOW,'注'); 表示連續(xù)兩日收陰并且成交量比前一日至少多10%時,在最低價上寫“注”字。 |
| DRAWSL(COND,DATA,SLOPE,LEN,EXPAND, COLOR) |
畫斜線,當(dāng)條件COND滿足時,從DATA開始以每個周期相差SLOPE個點的斜率畫斜線,劃線長度為LEN個周期,EXPAND為線段的延長方式(0:不延伸;1:向左延伸;2:向右延伸;3:雙向延伸)。 例:DRAWSL(LOW=LLV(LOW,50),LOW,5,3,2,COLORRED); 表示當(dāng)前最低價等于50周期內(nèi)的最小值時,從當(dāng)前最小值開始以每隔5個點的斜率畫長度為3個周期向右延伸的斜線,顏色為紅色 |
| DRAWNUMBER (COND,DATA,NUMBER,PRECISION,COLOR) |
畫數(shù)字。當(dāng)條件COND滿足時,在DATA位置寫數(shù)字NUMBER(為數(shù)組),精度為PRECISION(小數(shù)點后有幾位數(shù)字)。 例:DRAWNUMBER(CLOSE/OPEN>1.08,HIGH,(CLOSE-OPEN)/OPEN*100,2,COLORRED); 表示當(dāng)日漲幅大于8%時在最高價位置顯示漲幅(相對開盤價的百分比)。 |
| FILLRGN (COND,DATA1,DATA2,COLOR) |
填充區(qū)域,當(dāng)條件COND滿足時,填充DATA1及DATA2包圍的區(qū)域。 例:FILLRGN(MA5>MA10,MA5,MA10,COLORRED); 表示MA5>MA10時以紅色填充MA5和MA10之間的區(qū)域。 |
| POLYLINE (COND,DATA,COLOR) |
畫折線,當(dāng)條件COND滿足時,連接各個DATA點。 例:POLYLINE(CLOSE>=HHV(CLOSE,100),CLOSE,COLORRED); 表示在收盤價創(chuàng)100天新高點之間畫折線。 |
| PARTLINE (COND,DATA,COLOR) |
同POLYLINE。 例:PARTLINE(HIGH>REF(HIGH,1),HIGH,COLORRED); 表示當(dāng)期最高價大于前期最高價用紅色繪制最高價連線線段。 |
| STICKLINE (C,P1,P2,Color,Empty) |
如果條件C滿足時,從P1到P2畫柱線,顏色為Color,如果Empty取1,則為空心柱;如果Empty取0,則為實心柱。 例:STICKLINE(OPEN-CLOSE>0,OPEN,CLOSE,COLORCYAN,0); 表示當(dāng)開盤價大于收盤價時,從開盤價到收盤價畫青色的實心柱,即K線陰線的實體部分。 |
| VERTLINE (COND,COLOR) |
畫垂直線,當(dāng)條件COND滿足時,畫垂直線。 例:VERTLINE(HIGH>=HHV(HIGH,30),COLORRED); 表示在價格創(chuàng)30天新高時畫垂直線。 |
| RGB(R,G,B) | 自定義顏色函數(shù)。R,G,B的數(shù)值范圍都在0~255之間,例:RGB(225,225,225)表示白色 |
| COLORSTICK | 畫彩色柱線 |
| VOLUMESTICK | 畫成交量線 |
| BAMBOOLINE | 畫竹線 |
| CIRCLEDOT | 畫圓 |
| OPISTICK | 畫持倉量柱線 |
| DRAWKLINE | 自定義K線顏色,實空心及寬度。 用法: DRAWKLINE(WidthRatio,COLOR1,EMPTY1,COLOR2,EMPTY2)。按照寬度比例WidthRatio畫線,陽線以COLOR1和EMPTY1判斷,陰線以COLOR2和EMPTY2判斷。WidthRadio從0到1,COLOR1、COLOR2代表顏色,Empty非0為空心。 例:DRAWKLINE(0.75,COLORRED,1,COLORCYAN,0);繪制K線寬度比例為0.75,陽線為紅色空心,陰線為藍綠色實心。 |
8、顏色常數(shù)
| COLORRED |
紅色 |
| COLORGREEN |
綠色 |
| COLORBLUE |
藍色 |
| COLORMAGENTA |
紅紫色 |
| COLORYELLOW |
黃色 |
| COLORLIGHTGREY |
淺灰色 |
| COLORLIGHTRED |
淺紅色 |
| COLORLIGHTGREEN |
淺綠色 |
| COLORLIGHTBLUE |
淺藍色 |
| COLORBLACK |
黑色 |
| COLORWHITE |
白色 |
| COLORCYAN |
青色 |
9、頭寸函數(shù)
| SETDEALPERCENT | 設(shè)置模型每次下單按資金的比例下單。 用法: SETDEALPERCENT(fPercent)表示每次按資金的fPercent下單。 例子:SETDEALPERCENT(0.2); //每次按資金比例的%20下單 注:不可與SETDEALVOL函數(shù)同時使用 交易系統(tǒng)必須啟動 效果測試不執(zhí)行此函數(shù) |
| SETDEALVOL | 設(shè)置模型每次下單按設(shè)置的手?jǐn)?shù)下單。 用法: SETDEALVOL(nVol)表示每次模型下nVol手單。 例子:SETDEALVOL(2); //模型每次下單2手 注:不可與SETDEALPERCENT函數(shù)同時使用 交易系統(tǒng)必須啟動 效果測試不執(zhí)行此函數(shù) |
10、信號記錄函數(shù)
| BKPRICE |
模型買開信號價位。 用法:BKPRICE返回上一次模型買開倉價。 |
| BARSBK |
上一次買開信號位置 用法:BARSBK返回上一次買開倉距離當(dāng)前k線的k線數(shù)。 |
| SKPRICE |
模型賣開信號價位。 用法:SKPRICE返回上一次模型賣開倉價。 |
| BARSSK |
上一次賣開信號位置 用法:BARSSK返回上一次賣開倉距離當(dāng)前k線的k線數(shù)。 |
11、畫線函數(shù)
| ANGLELINE | 角度返回值。 用法: ANGLELINE(COND1,DATA1,COND2,DATA2,RATIO); 從起始位置,以相距最近兩根分別滿足條件COND1的DATA1值和COND2的DATA2值構(gòu)成起止點,在角度線段高度比例為RATIO處形成角度線,函數(shù)返回K線對應(yīng)的角度值。。 例:ANGLELINE(C>O,H,O>C,L,1);相距最近的陽線最高價與陰線最低價構(gòu)成起止點形成角度線,返回K線對應(yīng)的角度值。 |
| GOLDENLINE | 黃金分割返回值。 用法: GOLDENLINE(COND1,DATA1,COND2,DATA2,RATIO); 從起始位置,以相距最近兩根分別滿足條件COND1的DATA1值和COND2的DATA2值構(gòu)成起止點,在差額的RATIO比率處形成黃金分割線,返回K線對應(yīng)的黃金分割值。 例:GOLDENLINE(O>C,H,C>O,H,0.3);相距最近的陰線和陽線,以各自最高價作為起止點,在差額區(qū)間內(nèi)的0.3比率處形成黃金分割線,函數(shù)返回K線對應(yīng)的黃金分割值。 |
| HORIZONTALLINE | 水平返回值。 用法: HORIZONTALLINE(COND,DATA); 從起始位置,滿足條件COND的DATA值形成水平線,函數(shù)返回K線對應(yīng)的水平值。 例:HORIZONTALLINE(C>O,H);以陽線的最高價為起點,截至下一根陽線為止,返回K線對應(yīng)的水平值。 |
| TRENDLINES |
趨勢返回值。 用法: TRENDLINES(COND1,DATA1,COND2,DATA2); 從起始位置,以相距最近兩根分別滿足條件COND1的DATA1值和COND2的DATA2值構(gòu)成起止點形成趨勢線,函數(shù)返回K線對應(yīng)的趨勢值。 例:TRENDLINES(O>C,H,C>O,H);相距最近的陰線和陽線最高價形成一條趨勢線,返回K線對應(yīng)的趨勢值。 |
| WAVERULER | 波浪尺返回值。 用法: WAVERULER(COND1,DATA1,COND2,DATA2,COND3,DATA3,RATIO); 從起始位置,以相距最近三根分別滿足條件COND1的DATA1值、COND2的DATA2值和COND3的DATA3值構(gòu)成三點,在第三點偏離前兩點差額的RATIO比率處形成波浪尺線,返回K線對應(yīng)的波浪尺值。 例:WAVERULER(C>O,H,C>O,H,C>O,H,0.3);相距最近的三根陽線,以各自最高價作為三個點,在第三點偏離前兩點差額的0.3比率處形成波浪尺線,返回K線對應(yīng)的波浪尺值。 |
| DRAWANGLELINE | 畫角度線。 用法: DRAWANGLELINE(COND1,DATA1,COND2,DATA2,RATIO,COLOR); 從起始位置,連接相距最近兩根分別滿足條件COND1的DATA1值和COND2的DATA2值構(gòu)成起止點,在線段高度比例RATIO處畫角度線,顏色為COLOR,截至下一根滿足COND1條件的K線處。 例:DRAWANGLELINE(C>O,H,O>C,L,1,COLORGREEN);連接相距最近的陽線最高價與陰線最低價為起止點,畫高度比例為1的綠色角度線,截至下一根陽線為止。 |
| DRAWGOLDENLINE | 畫黃金分割線。 用法: DRAWGOLDENLINE(COND1,DATA1,COND2,DATA2,RATIO,COLOR); 從起始位置,連接相距最近兩根分別滿足條件COND1的DATA1值和COND2的DATA2值構(gòu)成起止點,在差額RATIO比率處畫黃金分割線,顏色為COLOR,截至下一根滿足COND1條件的K線處。 例:DRAWGOLDENLINE(O>C,H,C>O,H,0.3,COLORGREEN);連接相距最近的陰線和陽線,以各自最高價作為起止點,在差額區(qū)間內(nèi)的0.3比率處畫綠色黃金分割線,截至下一根陰線為止。 |
| DRAWHORIZONTALLINE | 畫水平線。 用法: DRAWHORIZONTALLINE(COND,DATA,COLOR); 從起始位置,滿足COND條件K線的DATA值處畫水平線,顏色為COLOR,截至下一根滿足COND條件的K線處。 例:DRAWHORIZONTALLINE(C>O,H,COLORGREEN);以一根陽線的最高價為起點,畫綠色水平線,截至下一根陽線為止。 |
| DRAWTRENDLINE |
畫趨勢線。 用法: DRAWTRENDLINE(COND1,DATA1,COND2,DATA2,COLOR); 從起始位置,連接相距最近兩根分別滿足條件COND1的DATA1值和COND2的DATA2值構(gòu)成起止點,畫趨勢線,顏色為COLOR,截至下一根滿足COND1條件的K線處。 例:DRAWTRENDLINE(O>C,H,C>O,H,COLORGREEN);連接相距最近的陰線和陽線的最高價為起止點,畫綠色趨勢線,截至下一根陰線為止。 |
| DRAWWAVERULER |
畫波浪尺線。 用法: DRAWWAVERULER(COND1,DATA1,COND2,DATA2,COND3,DATA3,RATIO,COLOR); 從起始位置,連接相距最近兩根分別滿足條件COND1的DATA1值、COND2的DATA2值和COND3的DATA3值構(gòu)成三點,在第三點偏離前兩點差額的RATIO比率處畫波浪尺,顏色為COLOR,截至下一根滿足COND1條件的K線處。 例:DRAWWAVERULER(C>O,H,C>O,H,C>O,H,0.3,COLORGREEN);連接相距最近的三根陽線,以各自最高價作為三個點,在第三點偏離前兩點差額0.3比率處畫綠色波浪尺線,截至下一根陽線為止。 |
| WAVEPEAK | 返回K線圖波峰位置。 用法: WAVEPEAK(N) 如果當(dāng)前K線最高價大于前后N根K線的最高價返回1,否則返回0。 例:WAVEPEAK(10); //如果當(dāng)前K線最高價大于前10根K線最高價且大于后10根K線最高價返回1,否則返回0 |
| WAVEVALLEY |
返回K線圖波谷位置。 用法: WAVEVALLEY(N) 如果當(dāng)前K線最低價小于前后N根K線的最低價返回1,否則返回0。 例:WAVEVALLEY(10); //如果當(dāng)前K線最低價小于前10根K線最低價且小于后10根K線最低價返回1,否則返回0 |
12、未來函數(shù)
| #IMPORT |
引用某品種在某個周期上加載了某個指標(biāo)的數(shù)據(jù)。 用法: #IMPORT AS VAR。 引用 CODE 所對應(yīng)的合約 PERIOD 周期下指標(biāo) FORMULA 的數(shù)據(jù)。 CODE 文華碼,PERIOD 周期,F(xiàn)ORMULA 引用指標(biāo)名,VAR 定義變量名 注意:1.只能引用 .FML/.XFML文件 2.只能引用如下周期:MIN1 MIN3 MIN5 MIN15 MIN30 HOUR1 DAY WEEK MONTH 3.只能短周期引用長周期 4.被引用的指標(biāo)中不能存在引用 5.如果不寫文華碼,默認(rèn)引用當(dāng)前合約 |
| PEAK | 取波峰值。 用法: PEAK(X,P,M,C) 取得ZIGZAG的前M個波峰的值。 例:PEAK(HIGH,10,1,1);表示最高價的10%的之字轉(zhuǎn)向的上一個波峰的數(shù)值;PEAK(MA(HIGH,34),100,1,0);表示34個周期內(nèi)最高價均線的100個價位的之字轉(zhuǎn)向的上一個波峰的數(shù)值。 本函數(shù)運算量很大,將占用很多的CPU資源,導(dǎo)致行情刷新速度變慢,請謹(jǐn)慎使用! |
| PEAKBARS | 取波峰的位置。 用法: PEAKBARS(X,P,M,C) 取得ZIGZAG的前M個波峰的位置。 例:PEAKBARS(HIGH,10,1,1);表示最高價的10%的之字轉(zhuǎn)向的上一個波峰到當(dāng)前的周期數(shù); PEAKBARS(MA(HIGH,34),100,1,0);表示34個周期內(nèi)最高價均線的100個價位的之字轉(zhuǎn)向的上一個波峰到當(dāng)前的周期數(shù) 本函數(shù)運算量很大,將占用很多的CPU資源,導(dǎo)致行情刷新速度變慢,請謹(jǐn)慎使用! |
| TROUGH |
求前M個波谷的值。 用法: TROUGH(X,P,M,C) 求ZIGZAG前M個波谷的值。 例:TROUGH(LOW,10,1,1);表示最低價的10%的之字轉(zhuǎn)向的上一個波谷的數(shù)值; TROUGH (MA(LOW,34),100,1,0);表示34個周期內(nèi)最低價均線的100個價位的之字轉(zhuǎn)向的上一個波谷的數(shù)值 本函數(shù)運算量很大,將占用很多的CPU資源,導(dǎo)致行情刷新速度變慢,請謹(jǐn)慎使用 |
| TROUGHBARS | 求前M個波谷的位置。 用法: TROUGHBARS(X,P,M,C) 求前M個波谷的位置。 TROUGH(LOW,10,1,1);表示最低價的10%的之字轉(zhuǎn)向的上一個波谷到當(dāng)前的周期數(shù); TROUGH (MA(LOW,34),100,1,0);表示34個周期內(nèi)最低價均線的100個價位的之字轉(zhuǎn)向的上一個波谷到當(dāng)前的周期數(shù) 本函數(shù)運算量很大,將占用很多的CPU資源,導(dǎo)致行情刷新速度變慢,請謹(jǐn)慎使用! |
| ZIGZAG | 求之字轉(zhuǎn)向。 用法: ZIGZAG(X,N,C)求X的在條件N下的之字轉(zhuǎn)向值。 例:ZIGZAG(HIGH,10,1);表示最高價的10%的之字轉(zhuǎn)向ZIGZAG(MA(HIGH,34),100,0);表示34個周期內(nèi)最高價均線的100個價位的之字轉(zhuǎn)向 |
| ISLASTBAR |
判斷該周期是否為最后一根k線。 用法: ISLASTBAR 如果是最后一個K線返回1(Yes),否則返回0(No) 本函數(shù)運算量很大,將占用很多的CPU資源,導(dǎo)致行情刷新速度變慢,請謹(jǐn)慎使用! |
有思路,想編寫各種指標(biāo)公式,程序化交易模型,選股公式,預(yù)警公式的朋友
可聯(lián)系技術(shù)人員 QQ: 262069696 進行 有償 編寫!(不貴!點擊查看價格!)
- 上一篇:文華財經(jīng)模型與函數(shù)詳解一
- 下一篇:沒有了!
相關(guān)文章
-
沒有相關(guān)內(nèi)容

會員登錄/注冊