同花顺编程教程.docx
- 文档编号:28537054
- 上传时间:2023-07-18
- 格式:DOCX
- 页数:20
- 大小:276.28KB
同花顺编程教程.docx
《同花顺编程教程.docx》由会员分享,可在线阅读,更多相关《同花顺编程教程.docx(20页珍藏版)》请在冰豆网上搜索。
同花顺编程教程
一、首先是打开公式编辑器,选择“工具”——“公式管理”。
二、选择“新建”按钮,选择想要编写的公式类型,然后点击“确定”。
三、然后在公式编辑器逐项输入内容。
四、在公式文本编辑区输入公式代码。
五、可以在“曲线属性”——“坐标类型”,选择“主图”或者“副图”。
六、编写完成以后可以通过公式管理——“用户”分类的菜单里找到自己编写的公式,也可以修改公式。
2011-02-2618:
50:
00|快速回复|引用回复|举报|管理
同花顺公式系统可以编辑多种类型的公式,分别是技术指标、预警公式、交易系统、条件选股、五彩K线、自定公式。
公式编写步骤:
1.设定公式名称:
每个公式都有自己的名称,它由字母、汉字、下划线或数字组成,首字母是字母、汉字或者下划线。
请注意,公式名称在同类公式中不能重复,且不能为空。
2.描述公式:
用于简单描述该公式的含义。
3.注释公式:
用于描述一个公式如何使用、计算方法等内容。
输入后在相关窗口按“指标说明”按钮可以查看公式注释(可省略)。
4.变量是一个随着时间变化而变化的数据,例如收盘价;常量是一个不随时间变化而变的数据。
5.设计技术指标公式语句:
公式的形式由若干语句组成。
每个语句得到一个计算结果,对于技术指标,就是一条指标线,语句间用分号(;)隔开。
一个语句由若干函数通过四则运算或逻辑运算而组成。
函数是公式系统的基本成分,它是对数据做某种操作,如CLOSE()函数表示调用该分析周期的收盘价。
6.函数由函数名称和参数组成,参数用函数名后的括号括起来,每个函数调用的参数可以是变量或常量。
例如函数REF(X,N)用于引用N周期前的X值,X是一个变量,N是一个常量,REF(close,1)表示计算上一周期的收盘价。
函数若需调用几个参数,则它们在括号内是有顺序的,函数计算得到的结果是一个变量,运算符将函数连接成为语句。
7.运算符分为算术计算符和逻辑计算符。
算术计算符有+、-、*、/,分别是对计算符两边的数值进行加减乘除计算;逻辑计算符有>、<、<>、>=、<=、=、AND(与)、OR(或),分别是对计算符两边的数值做大于、小于、不等于、大于等于、小于等于、等于、逻辑与、逻辑或的逻辑运算,如果逻辑条件成立返回的计算结果为1,否则为0。
例如:
2>1的逻辑运算结果等于1,1>2的逻辑运算结果就等于0。
语句得到的计算结果连成线就是所谓的指标线,不同的语句就得到不同的线,为了在指标图形中互相区分,不同的线有不同的颜色,而且语句还可以有自己的名称,在指标图形中显示在左上角位置。
语句名写在语句的前面,用一个冒号(“:
”)将它与语句隔开。
语句“昨日收盘价:
REF(close,1)”就表示该语句REF(close,1)的名称为“昨日收盘价”。
语言规范:
在自定义公式里面的各种符号(如,“;”)只能用半角不能用全角。
关键字:
ifelsewhilebreakcontinuereturn(无大小写之分)
常数:
浮点数、整数、字符串
分隔符:
“”‘’();{}
注释:
/**/
运算符(优先级从高到低排列,同级同行)
*/
+-
!
=><>=<=
And
Or
语句赋值a=b
条件IF(a==b)c=d;
循环whilea==bc=d;
函数调用func(a,b)
赋值语句的一般形式为:
a=b;含义为将b的值付给a。
注意:
“=”和“:
=”两个运算符的意义、用法完全相同。
这样做主要是为了更好地兼容市场上目前的各种带有公式编辑功能的分析软件。
简单的公式开始编写,这里举一些最简单的例子,有些只有一条语句且函数简单,较复杂的公式中函数复杂且语句较多。
均线系统的编写:
MA1:
MA(CLOSE,5),coloryellow;(5日收盘价的均线,颜色为黄色)
MA2:
MA(C,20),color0000ff;(20日收盘价均线,颜色为红色)
MA3:
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为当期最高价,HHV(X,N)是求N周期内X最高值,因此该公式的含义是当日最高价创N日新高时返回值为1,否则为0。
横盘整理的编写:
横盘整理指最近一段时期价格在一定幅度之内摆动。
(HHV(CLOSE,10)-LLV(CLOSE,10))/CLOSE<0.05;
其中LLV(X,N)是求N周期内X最低值,因此该公式表示10日收盘价振幅振幅在5%以内。
放量、缩量的编写(成交量函数为VOL)
A、放量
a.今天成交量较昨天增加了1倍,VOL/REF(VOL,1)>2
b.今天成交量较10个交易日平均成交量放大了1倍,vol/ma(vol,10)>2;
c.今日的5日均量较10个交易日平均成交量放大了1倍,a:
=ma(vol,10);b:
=ma(vol,5);b/a>2;
B、缩量
a.今日成交量较昨日减少了一半,vol/ref(vol,1)<0.5;
b.今日成交量较10个交易日平均成交量减少一倍,vol/ma(vol,10)<2;
c.今日的5日均量较10个交易日平均成交量减少1倍,a:
=ma(vol,10);b:
=ref(a,5);a/b<2;
上涨、下跌的编写
上涨:
今天的涨幅达到5%以上,表示如下:
close>ref(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);a
描述K线阳线close>open;阴线close 引用大盘数据 INDEXDATA(“N”,&X,K); 例: INDEXDATA("1a0001",&HIGH,n);上证综指N周期最高值 公式编写实例: Var1: =LLV(LOW,5)=LLV(LOW,45)ANDCLOSE>=OPEN*1.04; Var2: =CLOSE>(REF(HIGH,1)+REF(LOW,1))/2; 买入: Var1ANDVar2,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),color00ff00; 我编到这里就编不下去了,请教哪位好心的老师,帮帮我好吗? 引用原帖由小蜜蜂27797于2011-02-2715: 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; Var3: =(CLOSE+HIGH+LOW)/3; Var4: =EMA(EMA(EMA(Var3,1),13),21); 控盘度: (Var4-REF(Var4,1))/REF(Var4,1)*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: =SUM(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)<1.2; Var12: =WINNER(CLOSE)*100; Var13: =VarCANDVar10ANDVarDANDVar11ANDVarF; Var14: =FILTER(Var13,20); DRAWTEXT(Var14,-0.15,'有主力资金活动迹象! ! ! '),linethick3,colormagenta; Var15: =EMA(WINNER(CLOSE),20); {Var16: =Var15>0.85ANDCLOSESUM(VOL,10)/CAPITAL>0.2ORSUM(VOL,3)/CAPITAL>0.1ORCLOSE/REF(CLOSE,20)>=1.9;} Var16: =Var15>0.85AND(CLOSE>0.2ORSUM(VOL,3)/CAPITAL>0.1)ORCLOSE/REF(CLOSE,20)>=1.9; DRAWTEXT(Var16,0.5,'主力出货迹象! ! ! '),COLORYELLOW,LINETHICK3; 611111********* 来自天津市 主题数: 2 回帖数: 11 16楼 2011-03-0216: 22: 16|快速回复|引用回复|举报|管理 Var1: =0; {多头买入}ENTERLONG: ZIG(3,DATA)>REF(ZIG(3,DATA),1)ANDREF(ZIG(3,DATA),1)<=REF(ZIG(3,DATA),2)ANDREF(ZIG(3,DATA),2)<=REF(ZIG(3,DATA),3); {多头卖出}EXITLONG: ZIG(3,DATA)=REF(ZIG(3,DATA),2)ANDREF(ZIG(3,DATA),2)>=REF(ZIG(3,DATA),3); 611111********* 来自天津市 主题数: 2 回帖数: 11 17楼 2011-03-0216: 24: 13|快速回复|引用回复|举报|管理 Var1: =0; {多头买入}ENTERLONG: ZIG(3,DATA)>REF(ZIG(3,DATA),1)ANDREF(ZIG(3,DATA),1)<=REF(ZIG(3,DATA),2)ANDREF(ZIG(3,DATA),2)<=REF(ZIG(3,DATA),3); {多头卖出}EXITLONG: ZIG(3,DATA)=REF(ZIG(3,DATA),2)ANDREF(ZIG(3,DATA),2)>=REF(ZIG(3,DATA),3); 611111********* 来自天津市 主题数: 2 回帖数: 11 18楼 2011-03-0216: 27: 01|快速回复|引用回复|举报|管理 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); VAR10: =IF(VAR9>100,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,VAR12,VAR13,8,0),COLORRED; 差值: (VAR12-VAR13)*5,POINTDOT,COLOR33CC00; STICKLINE(差值>=0,0,差值,4,0),COLORYELLOW; STICKLINE(差值>=0,0,差值*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; STICKLINE(差值<=0,0,差值*0.4,4,0),COLOR337700; STICKLINE(差值<=0,0,差值*0.2,4,0),COLOR005500; 611111********* 来自天津市 主题数: 2 回帖数: 11 19楼 2011-03-0216: 29: 15|快速回复|引用回复|举报|管理 Var1: =(MA(CLOSE,N1)+MA(CLOSE,N2)+MA(CLOSE,N3)+MA(CLOSE,N4))/4; STICKLINE(CLOSE>Var1,CLOSE,Var1,9,0),COLORRED; STICKLINE(CLOSE MA(CLOSE,68); 611111********* 来自天津市 主题数: 2 回帖数: 11 20楼 2011-03-0216: 31: 43|快速回复|引用回复|举报|管理 Var1: =3*SMA((CLOSE-LLV(LOW,75))/(HHV(HIGH,75)-LLV(LOW,75))*100,20,1)-2*SMA(SMA((CLOSE-LLV(LOW,75))/(HHV(HIGH,75)-LLV(LOW,75))*100,20,1),15,1); Var2: =(CLOSE-LLV(LOW,26))/(HHV(HIGH,26)-LLV(LOW,26))*100; Var3: =SMA(SMA(Var2,3,1),3,1); Var4: =EMA(Var3,5); Var5: =LLV(LOW,26); Var6: =HHV(HIGH,34); Var7: =EMA((CLOSE-Var5)/(Var6-Var5)*4,4)*25; Var8: =100-Var1; Var9: =(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100; Var10: =SMA(Var9,3,1); Var11: =SMA(Var10,3,1); Var12: =EMA(3*Var10-2*Var11,3); Var13: =(-1)*(EMA(Var8,1)-50)+50; Var14: =EMA(100*(HHV(HIGH,14)-CLOSE)/(HHV(HIGH,14)-LLV(LOW,14)),6); 底部: STICKLINE(CROSS(Var4,10)ANDVar4>10,50,0,10,0),coloryellow,LINETHICK1; 建仓: IF((Var7<10),80,100),,linethick2color00ccff; 派发: IF((Var7>90),10,0),,linethick2color6699ff; 大户: sma((c-llv(l,27))/(hhv(h,27)-llv(l,27))*100,9,1); 散户: sma(大户,3,1),,colorff9933; 主力: 3*大户-2*散户,,COLORRED; 头部: 89.307,,pointdot; 底线: 6.788,,COLORFFFF00; 强弱线: 49,,COLORGREEN,pointdot; 611111********* 来自天津市 主题数: 2 回帖数: 11 21楼 2011-03-0216: 35: 25|快速回复|引用回复|举报|管理 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(CLOSE,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(DATE>700101andCROSS(84,RSI),HIGH,'卖出')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/10andvol>=1.5*ma(vol,5)and count(sk>=sd,3)andref(low,1)=LLV(Low,120),1,0),LOW,'买进')COLOR0099ff; DRAWTEXT(IF(count(close6/10and count(sk>sd,6)andref(low,5)=LLV(Low,120)andref(close>=open,4)and ref(close>open,3)andREF(CLOSE>OPEN,2)ANDref(open>close,1)and open>ref(close,1),1,0),LOW,'买进')COLOryellow; D: =MA(CLOSE,80)-MA(CLOSE,10)/3; DRAWTEXT(if(CLOSEMA(VOL,5)/240ANDCLOSE>REF(CLOSE,1)*1.08 ANDCLOSE<> 611111********* 来自天津市 主题数: 2 回帖数: 11 22楼 2011-03-0216: 36: 59|快速回复|引用回复|举报|管理 Var1: =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; 611111********* 来自天津市 主题数: 2 回帖数: 11 23楼 2011-03-0216: 41: 11|快速回复|引用回复|举报|管理 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; 顺风飞 来自辽宁省 主题数: 1 回帖数: 7 24楼 2011-03-0512: 31: 32|快速回复|引用回复|举报|管理 第23横CL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 同花顺 编程 教程