《同花顺公式编写基础教程.docx》由会员分享,可在线阅读,更多相关《同花顺公式编写基础教程.docx(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、同花顺公式编写基础教程同花顺小星来自浙江省一、首先是打开公式编辑器,选择“工具”“公式管理”。二、选择“新建”按钮,选择想要编写的公式类型,然后点击“确定”。三、然后在公式编辑器逐项输入内容。四、在公式文本编辑区输入公式代码。五、可以在“曲线属性”“坐标类型”,选择“主图”或者“副图”。六、编写完成以后可以通过公式管理“用户”分类的菜单里找到自己编写的公式,也可以修改公式。同花顺公式系统可以编辑多种类型的公式,分别是技术指标、预警公式、交易系统、条件选股、五彩 K 线、自定公式。公式编写步骤:1. 设定公式名称:每个公式都有自己的名称,它由字母、汉字、下划线或数字组成,首字母是字母、汉字或 者
2、下划线。请注意,公式名称在同类公式中不能重复,且不能为空。2. 描述公式:用于简单描述该公式的含义。3. 注释公式:用于描述一个公式如何使用、计算方法等内容。输入后在相关窗口按“指标说明”按钮可以查看 公式注释(可省略)。4. 变量是一个随着时间变化而变化的数据,例如收盘价;常量是一个不随时间变化而变的数据。5. 设计技术指标公式语句: 公式的形式由若干语句组成。每个语句得到一个计算结果,对于技术指标,就是一条指标线,语句间用分号(;)隔开。一个语句由若干函数通过四则运算或逻辑运算而组成。函数是公式系 统的基本成分,它是对数据做某种操作,如 CLOSE()函数表示调用该分析周期的收盘价。6.
3、函数由函数名称和参数组成,参数用函数名后的括号括起来,每个函数调用的参数可以是变量或常量。例如函数 REF(X,N)用于引用 N 周期前的 X 值,X 是一个变量,N 是一个常量,REF(close,1)表示计算上一周期的收盘价。函数若需调用几个参数,则它们在括号内是有顺序的,函数计算得到的结果是一个变量,运算符 将函数连接成为语句。7. 运算符分为算术计算符和逻辑计算符。算术计算符有+、-、*、/,分别是对计算符两边的数值进行加减乘除计算;逻辑计算符有、=、1 的逻辑运算结果等于 1,12 的逻辑运算结果就等于 0。语句得到的计算结果连成线就是所谓的指标线,不同的语句就得到不同的线,为了在指
4、标图形中互相区分, 不同的线有不同的颜色,而且语句还可以有自己的名称,在指标图形中显示在左上角位置。语句名写在语句的前面,用一个冒号(“:”)将它与语句隔开。语句“昨日收盘价:REF(close,1)”就表示该语句 REF(close,1)的名称为“昨日收盘价”。语言规范:在自定义公式里面的各种符号(如,“;” )只能用半角不能用全角。关键字: if else while break continue return (无大小写之分)常数: 浮点数、整数、字符串分隔符: “ ” ( ) ; 注释:/* */运算符(优先级从高到低排列,同级同行)* /+ -!= = =And Or语句 赋值 a
5、= b条件 IF (a=b) c=d; 循环 while a=b c=d; 函数调用 func(a,b)赋值语句的一般形式为: a=b; 含义为将 b 的值付给 a。注意:“”和“:=”两个运算符的意义、用法完全相同。这样做主要是为了更好地兼容市场上目前的各种带有 公式编辑功能的分析软件。简单的公式开始编写,这里举一些最简单的例子,有些只有一条语句且函数简单,较复杂的公式中函数复杂 且语句较多。均线系统的编写:MA1: MA (CLOSE,5),coloryellow;(5 日收盘价的均线,颜色为黄色) MA2:MA(C,20),color0000ff;(20 日收盘价均线,颜色为红色) MA
6、3:MA(c,250),color00ff00;(年线,绿色)均线:MA(c,N);(周期 N 可设置最大,最小,缺省)乖离率的编写:当前股价与均线的偏差的程度。 乖离率:(c-ma(c,20)/ma(c,20)*100;量比的编写:当期成交量与 5 日均量的比例。lb:vol/ma(vol,5);涨幅的编写:涨幅指今日收盘价相对于昨日收盘价的变动幅度,即(今日收盘价昨日收盘价)昨日收盘 价*100%。涨幅:(CLOSE-REF(CLOSE,1)/REF(CLOSE,1)创新高的编写:创新高指当日最高价是最近一段时间的最高价。HIGH=HHV(HIGH,N);其中的HIGH 为当期最高价,HH
7、V(X,N)是求 N 周期内 X 最高值,因此该公式的含义是当日最高价创日新高时返回值为,否则为。横盘整理的编写:横盘整理指最近一段时期价格在一定幅度之内摆动。(HHV(CLOSE,10)-LLV(CLOSE,10)/CLOSE2b. 今天成交量较 10 个交易日平均成交量放大了 1 倍,vol/ma(vol,10)2;c. 今日的 5 日均量较 10 个交易日平均成交量放大了 1 倍,a:=ma(vol,10); b:=ma(vol,5); b/a2;B、缩量a. 今日成交量较昨日减少了一半,vol/ref(vol,1)0.5;b. 今日成交量较 10 个交易日平均成交量减少一倍,vol/m
8、a(vol,10)2;c. 今日的 5 日均量较 10 个交易日平均成交量减少 1 倍,a:=ma(vol,10); b:=ref(a,5); a/bref(close,1)1.05; 5 日均价连续上涨,表示如下: a:=ma(close,5); b:=ref(a,1);下跌: 今天的跌幅达到 5以上,表示如下: close/ref(close,1)0.95; 5 日均价连续下跌,表示如下: a:=ma(close,5); b:=ref(a,1); aopen; 阴线 closeref(close,1); 低开 openref(high,1); 跳空低开(low 为最低价) open=OPE
9、N*1.04; Var2:=CLOSE(REF(HIGH,1)+REF(LOW,1)/2;买入:Var1 AND Var2,STICK,colorgreen;Var3:=REF(CLOSE,1); Var4:=SMA(MAX(CLOSE-Var3,0),6,1)/SMA(ABS(CLOSE-Var3),6,1)*100;卖出:CROSS(80,Var4),STICK;诚挚请教:我的目的是编一个 5 日、10 日和 20 日等三条均线同时向上时,标出“买”。MA1: MA (CLOSE,5),coloryellow;MA2:MA(C,10),color0000ff; MA3:MA(C,20),c
10、olor00ff00;我编到这里就编不下去了,请教哪位好心的老师,帮帮我好吗?引用原帖由 小蜜蜂 27797 于 2011-02-27 15:55:20 发表于 5 楼诚挚请教:我的目的是编一个 5 日、10 日和 20 日等三条均线同时向上时,标出“买”。MA1: MA (CLOSE,5),coloryellow;MA2:MA(C,10),color0000ff; MA3:MA(C,20),color00ff00;我编到这里就编不下去了,请教哪位好心的老师,帮帮我好吗?DRAWTEXT(CROSS(MA1,MA2) AND(MA1 REF(MA1,1),MA1,买),colorred;把股价
11、当菜,把均线当锅,进锅就炒,翻锅就跑,其乐无穷。 安全线: 20;平衡线: 50,colorffff00 , ;风 险 线 : 80; Var1:=LLV(LOW,18); Var2:=HHV(HIGH,18);Var3:=EMA(CLOSE-Var1)/(Var2-Var1)*100,13);目前态势: EMA(0.618*REF(Var3,1)+0.382*Var3,3), colorff9900, ; Var3:=(CLOSE+HIGH+LOW)/3; Var4:=EMA(EMA(EMA(Var3,1),13),21);控盘度:(Var4-REF(Var4,1)/REF(Var4,1)*
12、100,COLORSTICK,LINETHICK3; 强弱分界:0,COLORYELLOW,LINETHICK3;Var5:=LLV(LOW,33); Var6:=HHV(HIGH,17);Var7:=EMA(CLOSE-Var5)/(Var6-Var5)*100,20)*0.998; Var8:=EMA(0.667*REF(Var7,1)+0.333*Var7,1);Var9:=EMA(100*(HHV(HIGH,20)-CLOSE)/(HHV(HIGH,20)-LLV(LOW,33),20); VarA:=EMA(Var9,1);VarB:=VOL/CAPITAL*100; VarC:=S
13、UM(VarB,5)=3; VarD:=VarC/REF(VarB,10)=2; VarE:=HHV(CLOSE,5); VarF:=VarE/REF(CLOSE,5)=1.01; Var10:=VarA 20;Var11:=HIGH/REF(LOW,20) 0.85 AND CLOSESUM(VOL,10)/CAPITAL 0.2 OR SUM(VOL,3)/CAPITAL 0.1 OR CLOSE/REF(CLOSE,20)=1.9; Var16:=Var15 0.85 AND (CLOSE 0.2 OR SUM(VOL,3)/CAPITAL 0.1) OR CLOSE/REF(CLOSE
14、,20)=1.9;DRAWTEXT(Var16,0.5,主力出货迹象!),COLORYELLOW,LINETHICK3;Var1:=0;多头买入 ENTERLONG: ZIG(3,DATA)REF(ZIG(3,DATA),1) AND REF(ZIG(3,DATA),1)=REF(ZIG(3,DATA),2) AND REF(ZIG(3,DATA),2)=REF(ZIG(3,DATA),3);Var1:=0;多头买入 ENTERLONG: ZIG(3,DATA)REF(ZIG(3,DATA),1) AND REF(ZIG(3,DATA),1)=REF(ZIG(3,DATA),2) AND RE
15、F(ZIG(3,DATA),2)=REF(ZIG(3,DATA),3);80,COLORRED;20; VAR1:=HHV(HIGH,9)-LLV(LOW,9);VAR2:=HHV(HIGH,9)-C; VAR3:=C-LLV(LOW,9); VAR4:=VAR2/VAR1*100-70;VAR5:=(C-LLV(LOW,60)/(HHV(HIGH,60)-LLV(LOW,60)*100; VAR6:=(2*C+H+L)/4;VAR7:=SMA(VAR3/VAR1*100,3,1); VAR8:=LLV(LOW,34);VAR9:=SMA(VAR7 ,3 ,1 )-SMA(VAR4 ,9 ,1
16、); VAR10:=IF(VAR9100 ,VAR9-100 ,0 ); VAR11:=HHV(HIGH,34);VAR12:=EMA(VAR6- VAR8)/(VAR11-VAR8)*100,13 ); VAR13:=EMA(0.667*REF(VAR12 ,1) +0.333*VAR12,2 ); VAR13,COLORRED;STICKLINE(VAR12-VAR13 0,VAR12 ,VAR13 ,8 ,0 ),COLOR00FF0F; STICKLINE(VAR12-VAR13 =0 ,0 ,差值 ,4 ,0 ),COLORYELLOW;STICKLINE( 差值=0 ,0 ,差值*
17、0.8 ,4 ,0),COLORFFAA66;STICKLINE( 差值=0 ,0 ,差值*0.6 ,4 ,0),COLORFFBB99;STICKLINE( 差值=0 ,0 ,差值*0.4 ,4 ,0),COLORFFCCCC;STICKLINE( 差值=0 ,0 ,差值*0.2 ,4 ,0),COLORFFDDDD; STICKLINE( 差值=0 ,0 ,差值*1 ,4 , 0),COLORGREEN; STICKLINE( 差值=0 ,0 ,差值*0.8 ,4 ,0),COLOR33CC00;STICKLINE( 差值=0 ,0 ,差值*0.6 ,4 ,0),COLOR339900;S
18、TICKLINE( 差值=0 ,0 ,差值*0.4 ,4 ,0),COLOR337700;STICKLINE( 差值Var1,CLOSE,Var1,9,0), COLORRED; STICKLINE(CLOSE10,50,0,10,0),coloryellow,LINETHICK1;建仓: IF(Var790),10,0), , linethick2 color6699ff;大户:sma(c-llv(l,27)/(hhv(h,27)-llv(l,27)*100,9,1); 散户:sma(大户,3,1), , colorff9933;主力:3*大户-2*散户, , COLORRED;头部:89.
19、307,pointdot; 底线:6.788,COLORFFFF00;强 弱 线 :49,COLORGREEN,pointdot; BBI:(MA(CLOSE,3)+MA(CLOSE,6)+MA(CLOSE,12)+MA(CLOSE,24)/4; UPR:BBI+3*STD(BBI,10);DWN:BBI-3*STD(BBI,10);A1:(EMA(CLOSE,2.7)+MA(CLOSE,6)+MA(CLOSE,10.8)/3; A2:(EMA(CLOSE,3)+MA(CLOSE,7.5)+MA(CLOSE,13)/3; A3:(EMA(CLOSE,4)+MA(CLOSE,8.5)+MA(CL
20、OSE,16.5)/3;A4:(EMA(CLOSE,4.8)+MA(CLOSE,10.2)+MA(CLOSE,18.6)/3; A5:(EMA(CLOSE,6.5)+MA(CLOSE,11.8)+MA(CLOSE,21)/3; A6:(EMA(CLOSE,7)+MA(CLOSE,13.5)+MA(CLOSE,23)/3;安全线:MA(CLOSE,60); LC:=REF(CLOSE,1);RSI:=SMA(MAX(CLOSE-LC,0),6,1)/SMA(ABS(CLOSE-LC),6,1)*100; DRAWTEXT(DATE700101 and CROSS(84,RSI) , HIGH,卖
21、出) COLORff9966; A7:=(2*C+H+L)/4;Var1:=LLV(LOW,34); Var2:=HHV(HIGH,34);SK:=EMA(A7-Var1)/(Var2-Var1)*100,n); SD:=EMA(0.667*REF(SK,1)+0.333*SK,p);Var3:=LLV(LOW,120); Var4:=HHV(HIGH,60);Var5:=Var4-Var3;最低价: Var3;最 高 价 : Var4; DRAWTEXT(IF(count(closeq/10 and vol=1.5*ma(vol,5) andcount(sk=sd,3) and ref(lo
22、w,1)=LLV(Low,120),1,0),LOW,买进) COLOR0099ff;DRAWTEXT(IF(count(close6/10 andcount(sksd,6) and ref(low,5)=LLV(Low,120) and ref(close=open,4) and ref(closeopen,3) and REF(CLOSEOPEN,2) AND ref(openclose,1) and openref(close,1),1,0),LOW,买进) COLOryellow;D:=MA(CLOSE,80)-MA(CLOSE,10)/3; DRAWTEXT(if(CLOSEMA(V
23、OL,5)/240 AND CLOSEREF(CLOSE,1)*1.08 AND CLOSEVar1:=999999999999999999999999999; Var2:=(HHV(HIGH,21)-CLOSE)/(HHV(HIGH,21)-LLV(LOW,21)*100-10;Var3:=(CLOSE-LLV(LOW,21)/(HHV(HIGH,21)-LLV(LOW,21)*100; Var4:=SMA(Var3,13,8);高抛: 90, POINTDOT;低吸: 0, POINTDOT;多方能量: SMA(Var4,13,8);空方能量: SMA(Var2,21,8);买进: IF(CROSS(多方能量,45),18,-4);卖出: IF(CROSS(45,多方能量),18,-4);强弱分界: 45, CIRCLEDOT;X1:EMA(C,7),color0088ff;X2:EMA(c,21),color44bbff; X3:EMA(X2,21),color0088ff;x4:ema(x3,27),color009900; x5:ema(x2,100),colorFFAA00; x6:ema(x5,100),color009900;第 23 横 CLOSE SUM 写成了 CLOSESUM,然后还缺少一个;,但是本人技术水平不行,还是没弄明白,希望楼主自己检查一下
限制150内