文档库 最新最全的文档下载
当前位置:文档库 › 文华财经 程序化指标

文华财经 程序化指标

文华财经 程序化指标
文华财经 程序化指标

(一)简介

(二)函数分类

1、引用数据

A VPRICE 引用均价(在盘后对于国内三个期货交易所指结算价)

SETTLE 引用结算价(如果用在周期小于'日'的K线上如5分钟K线,一小时k线,每根k 线返回的值表示这根k线当日开盘时到这根k线的为止的结算价(均价)

如果用在周期大于等于'日'的K线上,返回当根K线结束时间所在日的结算价.)

CLOSE 引用收盘价(在盘中指最新价),也可简写为C。

HIGH 引用最高价,也可简写为H。

LOW 引用最低价,也可简写为L。

OPEN 引用开盘价,也可简写为O。

OPI 引用持仓量

REF(X,N) 引用X在N个周期前的值

例:REF(CLOSE,5);

表示引用当前周期前第5个周期的收盘价

REFX(X,N) 引用N个周期后的数据。(N为大于等于1的整数)

『未来函数』

例:REFX(CLOSE,5);

表示引用自当前周期后第5个周期的收盘价

VOL 引用成交量,也可简写为V。

GETPRICE(N) 根据文华码取出某一品种的最新价。

例子:

GETPRICE(1209);返回文华码为1209的合约品种的最新价。

2、金融统计

BACKSET(X,N) 若X条件成立,则将当前位置到N周期前的数值设为1。『未来函数』例:BACKSET(CLOSE>OPEN,3);表示当K线收阳时,自当前位置到3周期前的数值设为1 该函数参数支持变量计算如BACKSET(CLOSE>OPEN,V AR1);//V AR1是变量

BARSLAST(X) 求上一次条件成立到当前的周期数。

例:

BARSLAST(X):上一次满足X条件到现在的K线根数。如果本根K线满足X条件,则BARSLAST(X)返回0.

COUNT(X,N) 表示统计在N周期内满足X条件的周期数。若N=0则从本地数据的第一个有效值开始。

例:WR:=-100*(HHV(HIGH,N)-CLOSE)/(HHV(HIGH,N)-LLV(LOW,N));COUNT(WR>80,5); 表示统计在5个周期内满足WR>80的次数。

DMA(X,N) 返回X的动态移动平均,其中N必须介于0及1之间。

计算方法:DMA(N)=DMA(N-1)*(1-A)+X(N)*A

其中DMA(N-1)为第(N-1)天的DMA值。

EMA(X,N) 表示求X在N周期内的平滑移动平均。(指数加权)

计算方法:EMA(X,N)=[2*X+(N-1)*EMA(X,(N-1))]/(N+1)

其中EMA(X,(N-1))为第(N-1)天的EMA值。

EMA2(X,N) 表示求X在N周期内的加权平均。(线性加权)

计算方法:EMA2(X,N)=(N*X0+(N-1)*X1+(N-2)*X2+...+1*XN)/(N+(N-1)+(N-2)+...+1),X0表示本周期值,X1表示上一周期值。

HHV(X,N) 得到X在N周期内的最高值,如果N=0,则从本地数据的第一个有效周期开始算起。

例:HHV(HIGH,13);求13个周期内的最高价的最大值。

HHVBARS(X,N) 得到X在N周期内的最高值位置到当前的周期数。如果N=0,则从本地数据的第一个有效周期开始算起。

例:HHVBARS(VOL,0); 求历史成交量最大的周期到当前的周期数。

LLV(X,N) 得到X在N周期内的最小值,如果N=0,则从本地数据的第一个有效周期开始算起。

例:LLV(LOW,25);表示求25个周期内最低价的最小值。

LLVBARS(X,N) 得到X在N周期内的最小值的位置到当前的周期数。如果N=0则从本地数据的第一个有效周期开始算起。

例:LLVBARS(VOL,0);求历史成交量最小的周期到当前的周期数。

MA(X,N) 求X在N周期内的简单移动平均。

计算方法:MA=(A1+A2+A3+A4+A5)/5,求A在5个周期内的简单移动平均

ZIGZAG(X,P,N) 之字转向,当X变化量超过P时转向,当N取1,P为百分比数;当N取0,P 为价位差值绝对值。『未来函数』

例:ZIGZAG(HIGH,10,1);表示最高价的10%的之字转向

ZIGZAG(MA(HIGH,34),100,0);

表示34个周期内最高价均线的100个价位的之字转向

PEAK(X,P,M,N) 取得ZIGZAG前M个波峰的值。其中X为数据,P为转折值(如果N为1,这个值为百分比数,否则为价位差值绝对值),M为大于等于1的整数。『未来函数』例:PEAK(HIGH,10,1,1);表示最高价的10%的之字转向的上一个波峰的数值;

PEAK(MA(HIGH,34),100,1,0);

表示34个周期内最高价均线的100个价位的之字转向的上一个波峰的数值。

PEAKBARS(X,P,M,N) 取得ZIGZAG前M个波峰到当前周期的周期数。其中X为数据,P 为转折值(如果N为1,这个值为百分比数,否则为价位差值绝对值),M为大于等于1的

整数。『未来函数』

例:PEAKBARS(HIGH,10,1,1);表示最高价的10%的之字转向的上一个波峰到当前的周期数。

PEAKBARS(MA(HIGH,34),100,1,0);表示34个周期内最高价均线的100个价位的之字转向的上一个波峰到当前的周期数。

TROUGH(X,P,M,N) 取得ZIGZAG前M个波谷的值。其中X为数据,P为转折值(如果N为1,这个值为百分比数,否则为价位差值绝对值),M为大于等于1的整数。『未来函数』例:TROUGH(LOW,10,1,1);

表示最低价的10%的之字转向的上一个波谷的数值。

TROUGH (MA(LOW,34),100,1,0);

表示34个周期内最低价均线的100个价位的之字转向的上一个波谷的数值。

TROUGHBARS(X,P,M,N) 取得ZIGZAG前M个波谷到当前周期的周期数。其中X为数据,P为转折值(如果N为1,这个值为百分比数,否则为价位差值绝对值),M为大于等于1的整数。『未来函数』

TROUGH(LOW,10,1,1);

表示最低价的10%的之字转向的上一个波谷到当前的周期数。

TROUGH (MA(LOW,34),100,1,0);

表示34个周期内最低价均线的100个价位的之字转向的上一个波谷到当前的周期数。

SAR(N,Step,Max) 得到抛物转向值。N为计算周期,Step为步长,Max为极值。

(系统函数,计算步骤后台自动完成)

例:SAR(17,0.03,0.3);表示计算17个周期抛物转向,步长为3%,极限值为30%。

SMA(X,N,M) 得到X在N个周期内的移动平均,M为权重(M为常数)。

计算方法:SMA(N)=SMA(N-1)*(N-M)/N+X(N)*M/N。

SUM(X,N) 得到X在N周期内的总和,如果N=0,则从第一个有效周期开始算起。

例: SUM(VOL,10);表示统计10周期内的成交量总和。

SUMBARS(X,A) 得到X向前累加直到大于A时的周期数。

TRMA(X,N) 求X在N周期内的三角移动平均。

TSMA(X,N) 求X在N周期内的时间序列移动平均。

计算方法:TSMA(X,N)= FOCAST(X,N)+SLOPE(X,N)。

3、数理统计

A VEDEV(X,N) 求X在N周期内的平均绝对偏差。

DEVSQ(X,N) 数据偏差平方和。

FORCAST(X,N) 得到X的N周期线性回归预测值。

例:FORCAST(CLOSE,5);表示求5周期线性回归预测

SLOPE(X,N) 得到X在N周期内的线性回归的斜率

例:SLOPE(CLOSE,5);表示求5周期线性回归线的斜率

STD(X,N) 得到X在N周期内的标准差

STDP(X,N) 得到X在N周期内的总体标准差

V AR(X,N) 得到X在N周期内的样本方差

V ARP(X,N) 得到X在N周期内的总体样本方差

数理统计举例说明:设一个数列,数列中数据的总个数为N,以今天(2005-10-14)五天内的A0605收盘价为例,N就为5。数列的内容为:{2766,2805,2814,2886,2885}。1、算术平均值MA(CLOSE,5):数据总和除以总个数N。(2766+2805+2814+2886+2885)/5=2831.20。可以用公式MA(CLOSE,5),从今天的值上看出。

2、偏差:每个数据,减去算术平均值的结果。2766-2831.20=-65.2,2805-2831.20=-26.2, 2814-2831.20=-17.2, 2886-2831.20=54.8, 2885-2831.20=53.8, 各偏差相加,应该是等于0的。

3、平均绝对偏差A VEDEV(X,N):将偏差的绝对值相加,除以总个数N。

(65.2+26.2+17.2+54.8+53.8)/5=43.44。

4、数据偏差平方和DEVSQ(X,N):将偏差的平方相加。(-65.2)2+ (-26.2)2+ (-17.2)2+ (54.8)2+ (53.8)2=11130.80。

5、总体样本方差V ARP(X,N):将偏差的平方相加,总和除以总个数N。用公式可以这样算:(-65.2)2+ (-26.2)2+ (-17.2)2+ (54.8)2+ (53.8)2/5=2226.16。

6、样本方差V AR(X,N):是总体方差的N/(N-1)倍。2226.16*5/(5-1)=2782.70 估算样本方差,总比总体样本方差大一点,当N够大时,两者趋于相等。

7、总体标准差STDP(X,N):方差的开方。[(-65.2)2+ (-26.2)2+ (-17.2)2+ (54.8)2+ (53.8)2/5]?=47.18。

8、标准差STD(X,N):估算样本方差的开方。[2226.16*5/(5-1)]?=52.75 同样,估算标准差也比总体标准差大一点,当N够大时,两者趋于相等。

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日均线

EXIST(COND,N) 判断N个周期内是否有满足条件COND的情况发生。

例:EXIST(CLOSE>REF(HIGH,1),10);

表示10个周期中是否存在收盘价大于前一个周期的最高价

EVERY(COND,N) 判断过去N个周期内是否一直满足条件COND。

例:EVERY(CLOSE>OPEN,5);表示5个周期内一直是阳线

LAST(COND,N1,N2) 判断过去N1到N2周期内是否一直满足条件COND。

例:LAST(CLOSE>OPEN,10,5);

表示从过去第10个周期到第5个周期内一直是阳线

LONGCROSS(A,B,N) 如果A在前N个周期内都小于B,本周期上穿B,则返回1。否则返回0。

例:LONGCROSS(CLOSE,MA(CLOSE,10),20);

表示收盘线在10日均线之下持续20周期后从下向上穿过10日均线。

NOFILTER 交易模型买卖指令信号过滤函数。(仅适用于交易模型的过滤)

设置模型对产生的交易指令不过滤,则出现的任何交易指令都会执行,如果没有设置“不过滤”,则产生的指令将按照如下规则过滤:

1.连续的同方向指令只有第一个有效,其他的将被过滤;

2.交易指令必须配对出现(例如:前面已经有了买开指令,则后面只允许出现卖平指令,其他的指令都被滤掉。这也就意味着,第一个指令只能是买开或者卖开指令,其他的都被过滤);

3.但是在进行模型效果测试及优化时,无论设置过滤与否,都按照前面的规则对指令进行了过滤。

IFELSE(C,A,B) (08版等以前版本里用IF函数表示)。

如果条件C成立则返回A值,否则返回B值.

例:IFELSE(CLOSE>REF(CLOSE,1),1,0);

表示若今日收盘价高于前一日收盘价,则返回1,否则返回0

ISDOWN判断该周期是否收阴。

ISEQUAL 判断该周期是否平盘。

ISUP 判断该周期是否收阳。

ISLASTBAR 判断当前周期是否为最后一根K线。

例:ISLASTBAR; 如果是最后一个K线返回1(Yes),否则返回0(No)。

V ALUEWHEN(COND,DATA) 当条件COND满足时,取当时的DATA的值,否则取得前面一个满足条件COND的值。

例:V ALUEWHEN(HIGH>REF(HIGH,5),HIGH);

表示当前最高价大于前五个周期最高价的最大值时返回当前最高价。

5、数学运算

ABS(X) 求X的绝对值

例:ABS(SAR(17,0.03,0.3));返回抛物转向SAR(17,0.03,0.3)的绝对值。

ACOS(X) 求X的反余弦值

ASIN(X) 求X的反正弦值

ATAN(X) 求X的反正切值

COS(X) 返回X的余弦值

EXP(X) 返回e的X次幂

CEILING(X) 向上舍入,返回沿X数值增大方向最接近的整数。

FLOOR(X) 向下舍入,返回沿X数值减小方向最接近的整数。

INTPART(X) 取X的整数部分,返回沿X绝对值减小方向最接近的整数。

LN(X) 得到X的自然对数,以e为底的对数。

例:LN(OPEN);求开盘价的自然对数。

LOG(X) 得到X的常用对数,取得X的以10为底的对数。

例:LOG(OPEN);求开盘价的以10为底的对数。

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,OPEN);收盘价除以开盘价所得余数

NOT(X) 当X为0时返回1,否则返回0。

例:NOT(TIME=090530);表示该周期对应的时间不是9:05:30AM。

POW(A,B) 得到A的B次幂。

例:POW(CLOSE,2);求得收盘价的2次方。

REVERSE(X) 取反,返回符号相反的数值。

例:REVERSE(LOW);返回-LOW。

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、时间函数

BARPOS 取得当前K线的位置。

DA TE 取得当前周期的日数(700101-341231)。

DAY 取得当前周期的日数(1-31)。

HOUR 取得当前周期的小时数(0-23)。

MINUTE 取得当前周期的分钟数(0-59)。

MONTH 取得当前周期的月数(1-12)。

TIME 取得当前周期的时间数(0-2359),

秒级周期返回值范围为:0-235959。

WEEKDAY 取得当前周期的星期数(0-6)。

YEAR 取得当前周期的年数(1970-2034)。

7、绘图

DRAWLINE(C1,P1,C2,P2,COLOR) 当条件C1及C2均满足时,从P1画直线到P2,颜色为COLOR。

例:

DRAWLINE(MA18CLOSE,CLOSE,COLORCY AN);

表示当收盘价大于18日均线并且小于5日均线时,从开盘价画青色直线到收盘价。

DRAWTEXT(C,P,TEXT) 表示当条件C满足时在P上写TEXT文字。

例:DRAWTEXT(CLOSE< OPEN&&REF(CLOSE,1)< REF(OPEN,1) &&REF(VOL,1)*1.1< VOL,LOW,'注');

表示连续两日收阴并且成交量比前一日至少多10%时,在最低价上写“注”字。

DRAWSL

(COND,DATA,SLOPE,LEN,EXPAND,COLOR) 画斜线,当条件COND满足时,从DATA开始以每个周期相差SLOPE个点的斜率画斜线,划线长度为LEN个周期,EXPAND为线段的延长方式(0:不延伸;1:向左延伸;2:向右延伸;3:双向延伸)。

例:DRAWSL(LOW=LLV(LOW,50),LOW,5,3,2,COLORRED);

表示当前最低价等于50周期内的最小值时,从当前最小值开始以每隔5个点的斜率画长度为3个周期向右延伸的斜线,颜色为红色。

DRAWNUMBER

(COND,DATA,NUMBER,PRECISION,COLOR) 画数字。当条件COND满足时,在DATA位置写数字NUMBER(为数组),精度为PRECISION(小数点后有几位数字)。

例:DRAWNUMBER(CLOSE/OPEN>1.08,HIGH,(CLOSE-OPEN)/OPEN*100,2,COLORRED);

表示当日涨幅大于8%时在最高价位置显示涨幅(相对开盘价的百分比)。

FILLRGN

(COND,DATA1,DA TA2,COLOR) 填充区域,当条件COND满足时,填充DATA1及DATA2包围的区域。

例:FILLRGN(MA5>MA10,MA5,MA10,COLORRED);

表示MA5>MA10时以红色填充MA5和MA10之间的区域。

POL YLINE

(COND,DATA,COLOR) 画折线,当条件COND满足时,连接各个DATA点。

例:POL YLINE(CLOSE>=HHV(CLOSE,100),CLOSE,COLORRED);

表示在收盘价创100天新高点之间画折线。

PARTLINE

(COND,DATA,COLOR) 画线段,条件COND满足时,以COLOR颜色的直线连接DA TA各点。

例:PARTLINE(HIGH>REF(HIGH,1),HIGH,COLORRED);

表示当期最高价大于前期最高价用红色绘制最高价线段。

STICKLINE

(C,P1,P2,COLOR,EMPTY) 如果条件C满足时,从P1到P2画柱线,颜色为Color,如果Empty 取1,则为空心柱;如果Empty取0,则为实心柱。

例:STICKLINE(OPEN-CLOSE>0,OPEN,CLOSE,COLORCYAN,0);

表示当开盘价大于收盘价时,从开盘价到收盘价画青色的实心柱,即K线阴线的实体部分。

VERTLINE

(COND,COLOR) 画垂直线,当条件COND满足时,画垂直线。

例:VERTLINE(HIGH>=HHV(HIGH,30),COLORRED);

表示在价格创30天新高时画垂直线。

8、08版本与09版本函数区别

08版本函数09版本函数

SETTLE 日线周期只有盘后才能引用当日的结算价。其他周期计算结果等同于A VPRICE 引用结算价(如果用在周期小于'日'的K线上如5分钟K线,一小时k线,每根k线返回的值表示这根k线当日开盘时到这根k线的为止的结算价(均价)

如果用在周期大于等于'日'的K线上,返回当根K线结束时间所在日的结算价.) BACKSET(X,N) 『未来函数』函数参数不支持变量计算函数参数支持变量计算如:BACKSET(CLOSE>OPEN,V AR1);//V AR1是变量

DMA 函数参数不支持变量计算DMA(X,N)返回X的动态移动平均,其中N必须介于0及1之间。N 支持变量。

计算方法:DMA(N)=DMA(N-1)*(1-A)+X(N)*A

其中DMA(N-1)为第(N-1)天的DMA值。

HHV(X,N) 函数参数N不支持变量计算函数参数N支持变量计算

LLV(X,N) 函数参数N不支持变量计算函数参数N支持变量计算

COUNT(X,N) 函数参数N不支持变量计算函数参数N支持变量计算

09版本新增函数:

GETPRICE(N) 根据文华码取出某一品种的最新价。

例:

GETPRICE(1209);返回文华码为1209的合约品种的最新价。

RGB(R,G,B) 自定义颜色函数。

R,G,B的数值范围都在0~255之间,例:RGB(225,225,225)表示白色

PARAM[参数名称,最小值,最大值,缺省值] 在源码中定义参数。

例:PARAM[N,1,100,12]

MAN:MA(CLOSE,N);

表示参数为N,最小值为1,最大值为100,缺省值为12.

IF(COND)

A,COLOR;

ELSE

B, COLOR; 条件循环函数。多层次循环时使用“{}”套用。

例:取得MA5、MA10、MA30三者中最大的数值

MA5:=MA(CLOSE,5);

MA10:=MA(CLOSE,10);

MA30:=MA(CLOSE,30);

IF(MA5>MA10)

MA5,COLORRED;

ELSE

{

IF(MA10>MA30)

MA10,COLORMAGENTA;

ELSE

MA30,COLORGREEN;

}

注意:区别于IFELSE函数,为了使多层次套用看的清楚,以上示例中将“{}”单独空行,实际使用中可以不必这样使用。

#IMPORT [CODE,PERIOD,FORMULA] AS V AR 跨周期、跨合约取数据函数。

语句格式:

#IMPORT [CODE,PERIOD,FORMULA] AS V AR

CODE 文华码

(文华码见https://www.wendangku.net/doc/a317823703.html,/guide/guide.htm 其他—>期货品种代码表)PERIOD 被引用的周期

FORMULA 被引用指标名称

例:引用[豆粕1005]合约日K线图周期的指标[KDJ.FML] 中K值、D值:

#IMPORT [1205,DAY,KDJ] AS V ARKDJ

K1:KDJ.K;

D1:KDJ.D;

注意点:

1.只能引用一个当前存在的‘.FML文件’(指标文件)中的变量,不支持同时引用多个指标和多个周期。

2.只能引用如下周期MIN1 MIN3 MIN5 MIN10 MIN15 MIN30 HOUR1 HOUR3 HOUR8 DAY WEEK MONTH;

3.只能短周期引用长周期指标数据,分钟周期上可引用小时、日周期数据,不能日线周期上加载引用分钟数据的指标;

4.被引用的指标中不能存在引用。

5.如果不写文华码,默认引用当前合约。

模型注释符号在2009版本中修改为“//”。2008版本中模型注释语句使用在2009版本中时在{}前面增加//即可。

(三)编辑平台可以使用的常数

常数意义

COLORRED 红色

COLORGREEN 绿色

COLORBLUE 蓝色

COLORMAGENTA 紫色

COLORYELLOW 黄色

COLORLIGHTGREY 浅灰色

COLORLIGHTRED 浅红色

COLORLIGHTGREEN 浅绿色

COLORLIGHTBLUE 浅蓝色

COLORBLACK 黑色

COLORWHITE 白色

COLORCYAN 青色

COLORSTICK 画彩色柱线

VOLUMESTICK 画成交量线

BAMBOOLINE 画竹线

CIRCLEDOT 画圆

OPISTICK 画持仓量柱线

RGB(R,G,B) 自定义颜色函数。

R,G,B的数值范围都在0~255之间。

例:RGB(225,225,225)表示白色

PARAM[参数名称,最小值,最大值,缺省值] 在源码中定义参数。

例:PARAM[N,1,100,12]

MAN:MA(CLOSE,N);

表示参数为N,最小值为1,最大值为100,缺省值为12.

注意:在公式内即使你定义了某种颜色,在显示的时候也未必是此种颜色,取决于背景颜色当前页面里是否保了该指标的颜色及您是否在显示的时候改变了该指标的颜色设置。

欢迎交流:

QQ:419549257

Q群:138709040

(四)编辑平台的语法

1、关于公式名称:

公式的名称不可以和已经存在的公式重复。

2、关于参数:

每个自编公式最多可以定义四个参数,参数的定义如下,首先是参数名称,然后是参数的最小值,最大值,最后是参数的默认值。在定义参数时要注意的是参数名称不可以重复。

3、关于变量名称:

变量名称不可以互相重复,不可以和参数名重复,不可以和函数名称重复。

4、关于公式内容:

公式的每个语句应该以分号结束,包括最后一条语句。在数据公式的时候请您注意一定要使用半角输入。在编写公式的过程中,如果您不记得某个函数的确切写法,可以选择插入函数来插入函数。

5、如果您在编写公式之后,想给这个公式加上注释,说明之类的东西,可以使用公式说明来输入。

(五)编辑平台使用的交易指令

交易模型中的交易指令如下:

图示指令意义

BK 买开指令

BP 买平指令

SK 卖开指令

SP 卖平指令

BPK 买平同时等价等量买开指令

SPK 卖平同时等价等量卖开指令

套利模型中的交易指令如下:

图示指令意义

BKSK 甲合约买开;乙合约卖开信号

BPSP 甲合约买平;乙合约卖平信号

SKBK 甲合约卖开;乙合约买开信号

SPBP 甲合约卖平;乙合约买平信号

请注意,在效果测试使用如下机制:

连续的开仓指令只使用第一个指令进行开仓,开仓时使用当时的全部资金,连续的平仓指令,只有第一个有效,平掉当时的全部持仓,其他的平仓指令算做错误指令!

(六)快速入门

1、如何把熟悉的技术指标转换成交易模型?

第一步:把KDJ指标公式COPY过来。

RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;//{算出(收盘价-N周期内的最低价)/(N周期的最高价—N周期内的最低价)*100的值,用RSV来表示。} BACKGROUNDSTYLE(1);{确定背景的样式,(钝化)}

K:SMA(RSV,M1,1),COLORWHITE;//{RSV的移动加权平均的值用K表示,并且画白色的线。}

D:SMA(K,M2,1),COLORYELLOW;//{K的移动加权平均的值用D表示,并且画黄色的线。} J:3*K-2*D,COLORMAGENTA;//{3倍的K减去2倍的D的值用J表示,并且画紫色的线。}

第二步:原有公式主要是画线,所以稍作修改。如下:

RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100;//{第一行不需要修改}

//{第二行删除,在交易模型中不用钝化}

K:=SMA(RSV,M1,1);//{在“:”后加上“=”变为只定义不用画线,所以把后面的颜色函数(COLORWHITE)也去掉}

D:=SMA(K,M2,1);//{同上}

J:=3*K-2*D;//{同上}

第三步:把自己总结的交易条件写上,就可完成交易模型。如下:

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;

CROSS(K,D),BK;//{K向上穿越D,发出买开交易指令}

CROSS(J,100),SP;//{J向上穿越100,发出卖平交易指令}

CROSS(D,K),SK;//{K向下穿越D,发出卖开交易指令}

CROSS(0,J),BP;//{J向下穿越0,发出买平交易指令}

//后为文字说明,编写模型时不用写出

2、如何编制交叉(金叉/死叉)类型的交易模型?

MA5:=MA(CLOSE,5);//{5个周期收盘价的简单移动平均}

MA10:=MA(CLOSE,10);//{10个周期收盘价的简单移动平均}

MA20:=MA(CLOSE,20);//{20个周期收盘价的简单移动平均}

CROSS(MA10,MA20),BK;//{当MA10上穿MA20时,发出买入开仓交易指令}

CROSS(MA10,MA5),SP;//{当MA10上穿MA5时,发出卖出平仓交易指令}

CROSS(MA20,MA10),SK;//{当MA20上穿MA10时,发出卖出开仓交易指令}

CROSS(MA5,MA10),BP;//{当MA5上穿MA10时,发出买入平仓交易指令} //后为文字说明,编写模型时不用写出}

3、如何编制多条件类型的交易模型?

RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;

K:=SMA(RSV,3,1);

D:=SMA(K,3,1);

J:=3*K-2*D;//{以上为KDJ公式}

MA5:=MA(CLOSE,5);

MA10:=MA(CLOSE,10);//{以上为定义5个周期收盘价的简单移动平均和10个周期收盘价的简单移动平均}

(CROSS(MA5,MA10)&&REF(J,1)<70)||(CROSS(K,D)&&J<30),BK;//{5周期均线上穿10周期均线并且前一个周期的J值(KDJ)少于70或者KD金叉时并且J值小于30时发出买入开仓交易指令}

CROSS(D,K)&&REF(J,1)>70,SP;//{KD出现死叉并且前一个周期J值大于70时发出卖出平仓交易指令}

(CROSS(MA10,MA5)&&REF(J,1)>30)||(CROSS(D,K)&&J>70),SK;//{5周期均线下叉10周期均线并且前一个周期的J值(KDJ)大于30或者KD死叉时并且J值大于70时发出卖出开仓交易指令}

CROSS(K,D)&&REF(J,1)<30,BP;//{KD出现金叉并且前一个周期J值小于30时发出买入平仓交易指令} {{}内为文字说明,编写模型时不用写出}

4、如何编制REF(X,N)类型的交易模型?

A:=OPEN-(((REF(HIGH,1)-REF(LOW,1))+(REF(HIGH,2)-REF(LOW,2))+(REF(HIGH,3)-REF

(LOW,3))+(REF(HIGH,4)-REF(LOW,4)))/4)*1.8;//{A=当前周期的开盘价-[ (一个周期前的最高价减最低价的差+两个周期前的最高价减最低价的差+三个周期前的最高价减最低价的差+四个周期前的最高价减最低价的差)/4]*1.8 }

REF(CLOSE,1)< REF(CLOSE,2)&&REF(CLOSE,2)< REF(CLOSE,3)&&REF(CLOSE,3)< REF(CLOSE,4)&&CLOSE >A,BPK;//{连续四个周期的收盘价小于前一周期的收盘价并且当前周期的收盘价大于A时,发出买平并且买开(反手)交易指令}

REF(CLOSE,1)>REF(CLOSE,2)&&REF(CLOSE,2) >REF(CLOSE,3)&&REF(CLOSE,3)>REF( CLOSE,

4)&&CLOSE<=A,SPK;//{连续四个周期的收盘价大于前一周期的收盘价并且当前周期的收盘价小于等于A时,发出卖平并且卖开(反手)交易指令}{{}内为文字说明,编写模型时不用写出}

5、如何编制价差类型的交易模型?

MA5:=MA(CLOSE,5);//{5个周期收盘价的简单移动平均}

MA10:=MA(CLOSE,10);//{10个周期收盘价的简单移动平均}

CROSS(MA10,MA5)||(CLOSE-MA5)>8,SK;//{10周期均线上穿5周期均线或者收盘价与5周期均线的差值大于8时,发出卖出开仓交易指令}

(MA5-CLOSE)>6,BP;//{5周期均线与收盘价的差值大于6时,发出买入平仓交易指令} CROSS(MA5,MA10)||(MA5-CLOSE)>8,BK;//{5周期均线上穿10周期均线或者收盘价与5周期均线的差值大于8时,发出买入开仓交易指令}

(CLOSE-MA5)>6,SP;//{收盘价与5周期均线的差值大于6时,发出卖出平仓交易指令}{{}内为

文字说明,编写模型时不用写出}

6、如何编制简单价差类型的套利模型?

CROSS(300,CLOSE),BKSK; //{CLOSE为两个品种的价差。当价差小于300时,买入开仓前一品种,卖出开仓后一品种}

CROSS(CLOSE,500),SPBP;//{当价差大于500时,卖出平仓前一品种,买入平仓后一品种} CROSS(CLOSE,600),SKBK;//{当价差大于600时,卖出开仓前一品种,买入开仓后一品种} CROSS(400,CLOSE),BPSP;//{当价差小于400时,买入平仓前一品种,卖出平仓后一品种}

7、如何编制组合类型的套利模型?

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;//{以上为KDJ公式}

CLOSE<300&&CROSS(K,D),BKSK;//{当价差小于300并且K上穿D时,买入开仓前一品种,卖出开仓后一品种}

CROSS(CLOSE,500)||CROSS(D,K),SPBP;//{当价差上穿500或者D上穿K时,卖出平仓前一品种,买入平仓后一品种}

CLOSE>600&&CROSS(D,K),SKBK;//{当价差大于600并且D上穿K时,卖出开仓前一品种,买入开仓后一品种}

CROSS(400,CLOSE)||CROSS(K,D),BPSP;//{当价差下穿400或者K上穿D时,买入平仓前一品种,卖出平仓后一品种}

(七)技术指标模型大全

1 ADTM模型

DTM:=IFELSE(OPEN<=REF(OPEN,1),0,MAX((HIGH-OPEN),(OPEN-REF(OPEN,1)))); DBM:=IFELSE(OPEN>=REF(OPEN,1),0,MAX((OPEN-LOW),(OPEN-REF(OPEN,1)))); STM:=SUM(DTM,N);

SBM:=SUM(DBM,N);

ADTM:=IFELSE(STM>SBM,(STM-SBM)/STM,IFELSE(STM=SBM,0,(STM-SBM)/SBM)); ADTMMA:=MA(ADTM,M);

ADTMMA

ADTMMA>Q,SPK;

2 ARBR模型

AR := SUM(HIGH-OPEN,N)/SUM(OPEN-LOW,N)*100;

BR := SUM(MAX(0,HIGH-REF(CLOSE,1)),N)/SUM(MAX(0,REF(CLOSE,1)-LOW),N)*100; (BRP && AR-REF(AR,M)

3 ASI模型

LC:=REF(CLOSE,1);

AA:=ABS(HIGH-LC);

BB:=ABS(LOW-LC);

CC:=ABS(HIGH-REF(LOW,1));

DD:=ABS(LC-REF(OPEN,1));

R:=IFELSE(AA>BB&&AA>CC,AA+BB/2+DD/4,IFELSE(BB>CC&&BB>AA,BB+AA/2+DD/ 4,CC+DD/4));

X:=(CLOSE-LC+(CLOSE-OPEN)/2+LC-REF(OPEN,1));

SI:=16*X/R*MAX(AA,BB);

ASI:=SUM(SI,0);

ASI>REF(ASI,1),BPK;//当前周期ASI指标数值大于前一周期开多;

ASI

4 ATR模型

TR := MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW)); ATR := MA(TR,N);

C>MA(C,10) && CROSS(TR,ATR) && ATR>REF(ATR,1) && ISDOWN,BK;//在上升通道中,ATR真实波幅向上时,且白线上穿黄线,此时K线收阴者买入开仓;

CROSS(MA(C,10),C),SP;//当价格下穿10周期均线平多仓。

5 B3612模型

B36 := MA(CLOSE,3)-MA(CLOSE,6);

B612 := MA(CLOSE,6)-MA(CLOSE,12);

B36

B36>REF(B36,1) && B612>REF(B612,1) ,BPK;//本周期B36与B612分别小于前一周期B36与B612时平多开空。

6 BBI模型

BBI1:=(MA(CLOSE,N1)+MA(CLOSE,N2)+MA(CLOSE,N3)+MA(CLOSE,N4))/4;

MA54:=MA(C,54);//以MA54来判断当前价格处于高价区还是低价区。

C

C>MA54 && CROSS(BBI1,C),SPK;

7 BIAS模型

BIAS1 := (CLOSE-MA(CLOSE,L1))/MA(CLOSE,L1)*100;

BIAS1>M1 && MA(C,54)REF(C,54),SK;

BIAS1<-1*P && MA(C,54)P && MA(C,54)>REF(C,54),BP;

BIAS1M2 && MA(C,54)>REF(C,54),BK;

BIAS1>P && MA(C,54)REF(C,54),SP;

8 BOLL模型

MID:=MA(CLOSE,N);

TMP2:=STD(CLOSE,M);

TOP:=MID+P*TMP2;

BOTTOM:=MID-P*TMP2;

A:=TOP-C;

B:=C-BOTTOM;

CROSS(C,BOTTOM),BPK;

CROSS(TOP,C),SPK;

9 CCI模型

TYP:=(CLOSE+HIGH+LOW)/3;

CCI:=(TYP-MA(TYP,N))/(0.015*A VEDEV(TYP,N));

CROSS(CCI,100),BK;//CCI从+100~-100的常态区,由下往上突破+100天线时,为买入开仓。

CROSS(100,CCI),SP;//CCI从+100天线之上,由上往下跌破天线时,为卖出平仓。CROSS(100,CCI),SK;//CCI从+100~-100的常态区,由上往下跌破-100地线时,为卖出开仓。

CROSS(CCI,100),BP;//CCI从-100下方,由下往上突破-100地线时,为买入平仓。

10 CDPV日内模型

PT := REF(HIGH,1)-REF(LOW,1);

CDP := (REF(HIGH,1) + REF(LOW,1) + REF(CLOSE,1))/3;

AH :=MA(CDP + PT,N);

AL :=MA(CDP - PT,N);

NH :=MA(2*CDP-LOW,N);

NL :=MA(2*CDP-HIGH,N);

NQ:=(AH+AL+NH+NL)/4;//计算出CDP中四条指标线的均值NQ

NQ>LLV(NQ,M)*(1+M1*0.001) && TIME>=0900 && TIME<1455,BP;//当NQ上涨超过前M 周期最低值的千分之M1,买开;

NQ=1455,SP;//当NQ下跌超过前M周期最高值的千分之M1,卖开;

NQ=0900 && TIME<1455,SK;//当NQ下跌超过前M 周期最高值的千分之M1,卖开;

NQ>LLV(NQ,M)*(1+M1*0.001) || TIME>=1455,BP;//当NQ上涨超过前M周期最低值的千分之M1,买开。

11 CDP日内模型

PT := REF(HIGH,1)-REF(LOW,1);

CDP := (REF(HIGH,1) + REF(LOW,1) + REF(CLOSE,1))/3;

AH :=MA(CDP + PT,N);

AL :=MA(CDP - PT,N);

NH :=MA(2*CDP-LOW,N);

NL :=MA(2*CDP-HIGH,N);

NQ:=(AH+AL+NH+NL)/4;//计算出CDP中四条指标线的均值NQ

NQ>LLV(NQ,M)*(1+M1*0.001),BPK;//当NQ上涨超过前M周期最低值的千分之P,买平开;NQ

12 CDP模型

PT := REF(HIGH,1)-REF(LOW,1);

CDP := (REF(HIGH,1) + REF(LOW,1) + REF(CLOSE,1))/3;

AH :=MA(CDP + PT,N);

AL :=MA(CDP - PT,N);

NH :=MA(2*CDP-LOW,N);

NL :=MA(2*CDP-HIGH,N);

NQ:=(AH+AL+NH+NL)/4;//计算出CDP中四条指标线的均值NQ

NQ>LLV(NQ,M)*(1+M1*0.001),BPK;//当NQ上涨超过前M周期最低值的千分之M1,买平开;

NQ

13 CR模型

MID := (HIGH+LOW+CLOSE)/3;

CR:=SUM(MAX(0,HIGH-REF(MID,1)),N)/SUM(MAX(0,REF(MID,1)-LOW),N)*100;

CR

CR>N2,SPK;//CR下跌超过N2时,卖平开。

14说明文中“//”后面的文字是解说,实际编写与测试过程中,不用编写。

15 DBCD模型

BIAS:=(CLOSE-MA(CLOSE,N))/MA(CLOSE,N);

DIF:=(BIAS-REF(BIAS,M));

DBCD:=SMA(DIF,T,1);

MM:=100000*MA(DBCD,5);

MM>REF(MM,1),BPK;

MM

16 DDI模型

TR:=MAX(ABS(HIGH-REF(HIGH,1)),ABS(LOW-REF(LOW,1)));

DMZ:=IFELSE((HIGH+LOW)<=(REF(HIGH,1)+REF(LOW,1)),0,MAX(ABS(HIGH-REF(HIG H,1)),ABS(LOW-REF(LOW,1))));

DMF:=IFELSE((HIGH+LOW)>=(REF(HIGH,1)+REF(LOW,1)),0,MAX(ABS(HIGH-REF(HIG H,1)),ABS(LOW-REF(LOW,1))));

DIZ:=SUM(DMZ,N)/(SUM(DMZ,N)+SUM(DMF,N));

DIF:=SUM(DMF,N)/(SUM(DMF,N)+SUM(DMZ,N));

DDI:=DIZ-DIF;

DDI>0,BPK;//DDI大于零平空开多;

DDI<0,SPK;//DDI小于零平多开空。

17 DMA模型

DDD := (MA(CLOSE,SHORT)-MA(CLOSE,LONG));

AMA := MA(DDD,M);

CROSS(DDD,AMA),BPK;//DMA向上交叉AMA,买进;

CROSS(AMA,DDD),SPK;//DMA向下交叉AMA,卖出。

18 DMI-QL模型

TR := SMA(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),N,1) ;

HD := HIGH-REF(HIGH,1);

LD := REF(LOW,1)-LOW;

DMP:= SMA(IFELSE(HD>0&&HD>LD,HD,0),N,1);

DMM:= SMA(IFELSE(LD>0&&LD>HD,LD,0),N,1);

PDI:= DMP*100/TR;

MDI:= DMM*100/TR;

ADX:= SMA(ABS(MDI-PDI)/(MDI+PDI)*100,N,1);

ADXR:=(ADX+REF(ADX,M))/2;

CROSS(PDI,MDI),BK;//PDI上穿MDI开多仓。

CROSS(MDI,PDI),SK;//PDI下穿MDI开空仓。

ADX

19 DMI日内模型

TR := SMA(MAX(MAX(HIGH-LOW,ABS(HIGH-REF(CLOSE,1))),ABS(LOW-REF(CLOSE,1))),N,1) ;

HD := HIGH-REF(HIGH,1);

LD := REF(LOW,1)-LOW;

DMP:= SMA(IFELSE(HD>0&&HD>LD,HD,0),N,1);

DMM:= SMA(IFELSE(LD>0&&LD>HD,LD,0),N,1);

PDI:= DMP*100/TR;

MDI:= DMM*100/TR;

ADX:= SMA(ABS(MDI-PDI)/(MDI+PDI)*100,N,1);

ADXR:=(ADX+REF(ADX,M))/2;

CROSS(PDI,MDI) && TIME>0900 && TIME<1450,BK;//PDI上穿MDI开多仓。

CROSS(MDI,PDI) && TIME>0900 && TIME<1450,SK;//PDI下穿MDI开空仓。

ADX=1450,BP;//当ADX回落超过前N0周期内的M0%时平多仓。或收盘前平仓。

ADX=1450,SP;//当ADX回落超过前N0周期内的M0%时平空仓。或收盘前平仓

20 DPO模型

DPO:=CLOSE-REF(MA(CLOSE,20),11);

CROSS(DPO,O),BK;//当DPO指标数值上穿0线,开多仓。

DPO

DPO>LLV(DPO,N)*(1-0.01*M),BP;//当DPO指标上涨超过N日最低点的M%时平空仓。

21 EMA2模型

EMA210:=EMA2(CLOSE,10);//定义10周期收盘价的加权平均值。

EMA220:=EMA2(CLOSE,20);//定义20周期收盘价的加权平均值。

CROSS(EMA210,EMA220),BK;//10周期均线上穿20周期均线,发出买入开仓指令。CROSS(EMA220,EMA210),SK;//10周期均线下穿20周期均线,发出卖出开仓指令。

EMA210

EMA210>REF(EMA210,1)&&EMA220>REF(EMA220,1),BP;//10周期均线和20周期均线都下降时,发出平空仓指令。

22 EMA模型

EMA10:=EMA(CLOSE,10);//定义10周期收盘价的指数平滑移动平均值。

EMA20:=EMA(CLOSE,20);//定义20周期收盘价的指数平滑移动平均值。

CROSS(EMA10,EMA20),BK;//10周期均线上穿20周期均线,发出买入开仓指令。CROSS(EMA20,EMA10),SK;//10周期均线下穿20周期均线,发出卖出开仓指令。

EMA10

EMA10>REF(EMA10,1)&&EMA20>REF(EMA20,1),BP;//10周期均线和20周期均线都上升时,发出平空仓指令。

23 ENV模型

UPPER := MA(CLOSE,N1)*(1+N2/100);

LOWER := MA(CLOSE,N1)*(1-N2/100);

//以上为ENV公式

CROSS(CLOSE,UPPER),BPK;//收盘价上穿UPPER,买平并买开。

CROSS(LOWER,CLOSE),SPK;//收盘价下穿LOWER,卖平并卖开。

24 EXPMA模型

MA1:=EMA(CLOSE,P1);

MA2:=EMA(CLOSE,P2);

MA3:=EMA(CLOSE,P3);

MA4:=EMA(CLOSE,P4);

//以上为EXPMA指标

CROSS(MA2,MA3)&&CLOSE>MA4,BK;//当MA2上穿MA3,并且收盘价大于MA4,发出买入开仓交易指令。

CROSS(MA2,MA1),SP;//当MA2上穿MA1,发出卖出平仓交易指令。

CROSS(MA3,MA2)&&CLOSE

CROSS(MA1,MA2),BP;//当MA1上穿MA2,发出买入平仓交易指令。

25 HCL模型

MAH:=MA(HIGH,N);

MAL:=MA(LOW,N);

MAC:=MA(CLOSE,N);

//以上为HCL指标公式

MAH>REF(MAH,1)&&MAL>REF(MAL,1)&&MAC>REF(MAC,1),BPK;//MAH,MAL,MAC 同时上涨,买平并买开。

MAH

波段交易文华财经指标源码

波段交易文华财经指标(源码)HH1:=IFELSE(HREF(L,1)&&REF(L,1)>REF(L,2),REF(L,2),0); HH2:=VALUEWHEN(HH1>0,HH1); LL2:=VALUEWHEN(LL1>0,LL1); K1:=IFELSE(CLOSE>HH2,-3,IFELSE(CLOSE0,K1); G:=IFELSE(K2=1,HH2,LL2); G1:=VALUEWHEN(ISLASTBAR,G); DRAWNUMBER(L>0,G1,G1,0,COLORCYAN); W1:=K2; W2:=OPEN-CLOSE; HT:=IFELSE(OPEN>CLOSE,OPEN,CLOSE); LT:=IFELSE(OPEN

DRAWLINE(W1=-3,HIGH,W1=-3,HT,COLORRED); DRAWLINE(W1=-3,LOW,W1=-3,LT,COLORRED); STICKLINE(W1>0,OPEN,CLOSE,COLORCYAN,1); STICKLINE(W1<=0,OPEN,CLOSE,COLORRED,1); STICKLINE(W2>0&&W1<=0,OPEN,CLOSE,COLORRED,0); STICKLINE(W2>0&&W1>0,OPEN,CLOSE,COLORCYAN,0); DRAWLINE(W1=1&&REF(W1,1)=1,G,W1=1&&REF(W1,1)=1,REF(G,1),COLORGREEN); DRAWLINE(W1=-3&&REF(W1,1)=-3,G,W1=-3&&REF(W1,1)=-3,REF(G,1),COLORYELLOW); DRAWSL(K2=1,G,0,1,0,COLORGREEN); DRAWSL(K2=-3,G,0,1,0,COLORYELLOW);

文华财经程序化系统的赢家法则

程序化交易的6个系统模型 俗话说的好:思路决定出路,眼界决定境界。作为一名程序化交易爱好者,仅仅依靠已经掌握了模型编写平台的基本语法和函数,是远远不够的。要想编写出一个真正具有实战价值的自动交易系统模型,设计思想的重要性不言而喻,而设计思想实质上是集成了交易理念、交易思路、交易方法,甚至包括交易经验在内的一种积累与沉淀,绝非一日之功。为缩短程序化交易爱好者的学习探索之路,解决普通投资者缺乏系统设计思路等问题,本文拟从系统入市、离市等两个方面,尝试讨论交易系统模型的常规设计思路。 【入市设计】 系统模型入市的设计思路,事实上应与投资者的交易风格喜好、交易时间框架密切相关,可以分别是趋势跟踪、震荡交易、套利交易等,近年来甚至也出现了基于基本面分析数据的量化模型,以及带有人工智能性质的神经网络、遗传算法等具备自学习、自适应市场能力的高级交易系统模型。不过,最简单、最实用、最适合普通投资者的交易系统入市设计思路仍然是趋势跟踪,而趋势跟踪的实质就是追涨杀跌或者美其名曰:顺势而为。突破,是趋势跟踪系统设计中最为简洁实用的设计思路,具体应用设计思路可能包括: ⒈通道突破。最著名的此类程式设计代表作为:海龟交易法则与四周规则。其入市信号触发设计为:价格突破最近N根K线的高低点。长期来看,这种设计思路虽然简单,但永远也不会失效或显得过时。事实上,越简单的反而越有效! ⒉均线突破。该设计思路的代表作品有:克罗均线,它由4、9、18等三条均线组成;鳄鱼组线,它由5、8、13等三条移中平均线组成;自适应均线,它由考夫曼博士提出,以市场效率生成弹性浮动参数,以均线拐头为信号触发,而非普通的均线金叉、死叉,有兴趣的读者可以参考其系统交易专著《精明交易者》。 ⒊指标突破。常见的技术分析指标,如MACD、KDJ、RSI、BOLL、SAR、WR、ADX等,均可独立构成一个简单的趋势跟踪系统,当然,是使用系统默认参数,还是使用优化参数,是使用其常规用法,还是使用创新用法,可能存在仁者见仁、智者见智的分歧。笔者可能更倾向于具有一定技术分析功力的投资者,以自创技术分析指标为最佳,这样可以确保你所使用的交易系统模型的专属性。 ⒋形态突破。形态突破,包括K线形态组合突破、经典技术分析形态突破等,K线形态组合的突破,以酒田战法为最经典,著名的红三兵、黑三兵、希望之星等经典K线形态均源于此,共分为酒田战法70型。至于经典的双顶、双底、趋势线突破、横盘突破、头肩顶底、三角形态、楔形、旗形、钻石型、圆弧顶底等技术形态,因普通的模型编写语言较难精确描述而存在一定的设计使用障碍,需要使用转向函数及图形模糊识别技术来克服。 ⒌波动性突破。波动性可以定义为:最高价与最低价、当根K线的最高价与昨收盘、当根K线的最低价与昨收盘,这三组价格差额的最大者即该品种的波动性值,波动性既可以进行横向比较品种间的波动性水平,也可以用于纵向判断价格波动的异常,并作为入市信号的触发器。我们可以直接从文华财经内置指标公式中得到如下源码:

文华财经指标公式波段最准确的指标最准的实战指标macd代表的意思

N:=13; M:=3; VAR2:=CLOSE*VOL; MID:=EMA((EMA(VAR2,3)/EMA(VOL,3)+EMA(VAR2,6)/EMA(VOL,6)+EMA(VAR2,12)/EMA(VOL,12) +EMA(VAR2,24)/EMA(VOL,24))/4,N); 主趋势线1:MID; MID2:=MID*1.01; SDN:=MID*0.94; {WM} SDN3:=REF(CLOSE,1800),COLORYELLOW; SUP:=1.06*MID,COLORBLUE; VAR4:=EMA(CLOSE,9); B9:=COUNT(HIGH>SUP,5); VAR1:=MID; PARTLINE1(VAR1>REF(VAR1,1),VAR1),LINETHICK2,COLORRED; PARTLINE1(VAR1

TMP:=MA1-MAAA*MA1; 短期趋势线:TMP,LINETHICK2,COLORYELLOW; PARTLINE1(TMP<=MID,MID),LINETHICK2,COLORCYAN; PARTLINE1(TMP<=REF(TMP,1),TMP),LINETHICK2,COLORWHITE; PARTLINE1(TMP<=MID,TMP),LINETHICK2,COLORGREEN; PARTLINE1(TMP>=REF(TMP,1) AND TMP

文华财经指标公式波段最准确的指标最准的实战指标赢顺云WH6赢智WH8

VAR1:=IF(OPEN<=REF(OPEN,1),0,MAX(HIGH-OPEN,OPEN-REF(OPEN,1))); VAR2:=IF(OPEN>=REF(OPEN,1),0,MAX(OPEN-LOW,OPEN-REF(OPEN,1))); VAR3:=SUM(VAR1,5); VAR4:=SUM(VAR2,5); VAR5:=IF(VAR3>VAR4,(VAR3-VAR4)/VAR3,IF(VAR3=VAR4,0,(VAR3-VAR4)/VAR4)); VAR6:=MA(VAR5,5); VAR8:=IF(OPEN<=REF(OPEN,1),0,MAX(HIGH-OPEN,OPEN-REF(OPEN,1))); VAR9:=IF(OPEN>=REF(OPEN,1),0,MAX(OPEN-LOW,OPEN-REF(OPEN,1))); VARA:=SUM(VAR8,3); VARB:=SUM(VAR9,3); VARC:=IF(VARA>VARB,(VARA-VARB)/VARA,IF(VARA=VARB,0,(VARA-VARB)/VARB)); VARD:=MA(VARC,3); 火: BARSLAST(EMA(CLOSE,5)=1,LLV(VARE,VARF),LOW); VAR11:=VAR10+VAR10*VARF*0.5/100; VAR12:=IF(VAR11REF(EMA(CLOSE,5),1),5); VAR14:=IF(OPEN<=REF(OPEN,1),0,MAX(HIGH-OPEN,OPEN-REF(OPEN,1))); VAR15:=IF(OPEN>=REF(OPEN,1),0,MAX(OPEN-LOW,OPEN-REF(OPEN,1))); VAR16:=SUM(VAR8,3); VAR17:=SUM(VAR9,3); VAR18:=IF(VARA>VARB,(VARA-VARB)/VARA,IF(VARA=VARB,0,(VARA-VARB)/VARB)); VAR19:=MA(VARC,3); RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100;

股票程序化案例

股票程序化案例 2018-11 上海文华财经资讯股份有限公司Webstock Information Systems Co.,Ltd

股票程序化: (1) 1、选股回测 (1) 2、模组对一篮子合约做程序化 (3) 案例:在波段中实现低买高卖 (3) 3、T+1股票程序化交易案例 (7) 案例:高抛低吸,共用资金 (7) 股票程序化: 股票交易中,盲目地进行买卖并不是明智的做法。要想在股市中取得较好的收益,要有正确的理论来指导。传统的股票交易方式着眼于对于单只股票的选择,投资者在一次交易中只能买入或者卖出同一只股票。程序化交易为股票交易提供了新的投资策略。股票程序化的优势体现在以下几点: 1、股票程序化可以帮助投资者同时管理一篮子股票的运行情况,并且在买入某些股票的同时投资者还可以卖出其他股票。通过这种组合交易的方式,投资者可以更为方便的构建、持有以及更改投资组合,以达到分散风险的目的。 2、程序化交易利用计算机高速、快捷的处理能力,抓住股市上价格的瞬间变化,获得利润。 1、选股回测 公式选股是我们在股票交易过程中常用的工具,是否能选出入场位置优越的股票,是评判选股公式优劣的唯一标准。我们如果确定一个选股公式是否有效呢?下面我们看看如何使用选股回测功能对选股公式进行历史检测的。 例: 利用选股公式,选出指定的历史时间段中每天符合选股条件的股票,并且可以逐日查看股票明细及K线图 如:选出满足5日内阳线根数多于阴线的股票 选股公式:COUNT(ISDOWN,5)

还可以在这次选股结果的基础上,进一步使用其他选股公式进行筛选 选股公式: B:=VOL>REF(VOL,1); COUNT(B,3)=3,SELECT; 在进一步优选中选择该选股公式,即可之前选股基础上再次选股 我们通过对历史数据中选出的股票进行分析,便会很快的对选股公式进行判断,是否可以使

文华财经期货软件指标公式源码赢顺云指标波段买卖抄底逃顶顶底主力

VAR1:=PEAKBARS(L,13,1,1)<10; VAR2:=IF(VAR1=1,2,0); 顶1:= IF(VAR2=2,1,0); 顶B:IF(顶1>REF(顶1,1),78,100),COLORBLUE,LINETHICK2; VAR3:=PEAKBARS(C,8,1,1)<10; VAR5:=IF(VAR3=1,2,0); 顶:= IF(VAR5=2,1,0); 顶A:IF(顶>REF(顶,1),78,100),COLORYELLOW,LINETHICK2; DRAWTEXT(顶A=5,4.5,'↓'),COLORYELLOW; V ARC:=(ZIGZAG(C,8,1)>REF(ZIGZAG(C,8,1),1)) AND (REF(ZIGZAG(C,8,1),1)<=REF(ZIGZAG(C,8,1),2)) AND REF(ZIGZAG(C,8,1),2)<=REF(ZIGZAG(C,8,1),3); STICKLINE1((V ARC=1),18,0,8,1),COLORMAGENTA; DRAWTEXT((V ARC=1),8,'+买'),COLORWHITE; LL:=EMA (100*(C-LLV(LOW,34))/(HHV(H,34)-LLV(LOW,34)),3); FILLRGN(LL>90,LL,90,RGB(0,255,0)); FILLRGN(LL<10,LL,10,RGB(255,0,0)); 风险值:EMA (100*(C-LLV(LOW,34))/(HHV(H,34)-LLV(LOW,34)),3),LINETHICK2,COLORCYAN; 预警:90,LINETHICK1;

期货指标大全汇总文华财经指标技术分析指标大全 期货日内短线好指标

VAR2:=REF(LOW,1); VAR3:=SMA(ABS(LOW-VAR2),3,1)/SMA(MAX(LOW-VAR2,0),3,1)*100; VAR4:=EMA(VAR3*10,3); VAR5:=LLV(LOW,13); VAR6:=HHV(VAR4,13); CURRBARSCOUNT:=DATACOUNT-BARPOS+1; VAR7:=IF(CURRBARSCOUNT>34,1,0); VAR8:=EMA(IF(LOW<=VAR5,(VAR4+VAR6*2)/2,0),3)/618*VAR7; VAR9:=IF(VAR8>100,100,VAR8); 吸筹:VAR9,LINETHICK1,COLOREE00EE; STICKLINE1(VAR9>-120,0,VAR9,3,1); RSV:=(CLOSE-LLV(LOW,9))/(HHV(HIGH,9)-LLV(LOW,9))*100; K:=SMA(RSV,3,1); D:=SMA(K,3,1); J:=3*K-2*D; STICKLINE1(VAR9>1 AND J>REF(J,1) AND REF(J,1)0.1 AND VAR9<1 AND J>REF(J,1) AND REF(J,1)MAX(EMA(C,13),EMA(C,55)),1,IF(EMA(C,3)1,1,0),COLORRED; 熊:IF(NX=-1 AND V>1,1,0),COLORGREEN; 马:IF(NX=0 AND V>1,1,0),COLORBLUE;

文华财经程序化策略加载步骤

文华财经程序化策略加载步骤 河北稳升软件科技有限公司云量网文华8.2版本策略加载步骤: 加载策略可按以下要点进行: 导入策略—打开K线—补充数据—设置手数—设置时间—加载策略下面介绍具体操作方法: 1. 启动软件,单击“账户”|“登录”|“国内期货下单” 菜单,登录账号。 4. 在弹出的窗口中选择“文件”|“导入”命令。

2. 弹出登录窗口,输入资金账号、密码及验证码,单击“注册/找回模拟交易登录账号”超链接,在弹出的网页里注册模拟账号。 5. 选择发给您的策略,单击“打开”按钮(不用解压缩)。导入成功后关闭策略编写窗口。 3. 单击“编写”|“编写趋势策略”命令 河北稳升软件科技有限公司云量网

6. 打开合约,系统默认为日K线,在K线图空白位置10. 返回K线图,再次右击,选择“补充历史数据”命 令右击,在弹出的快捷菜单中选择“分析周期”|“自定义 分析周期”命令。(常用周期可在“分析周期”子菜单下 直接选择) 11. 单击“下载”按钮,使本机数据至少在30天以上。 7. 启用自定义分析周期,输入周期数,这里设置为2

分钟周期,单击“应用”按钮,关闭该对话框。 8. 切换到2分钟周期上,在K线图空白位置右击,在弹出的快捷菜单中选择“设置技术指标”命令。 12. 下载完毕单击“确定”按钮。 13. 返回K线图,在回测工作区中单击“重设回测参数” 9. 弹出对话框,选择“MA组合”选项,单击“卸载”按钮。 按钮,单击“确定”按钮。

河北稳升软件科技有限公司云量网 14. 设置回测手数,或者需要开仓的手数。实盘中,资 金和手续费不用管。 18. 设置完毕,单击“重新回测”按钮。

文华财经程序化交易 操盘必会技巧

操盘必会技巧 1、发现趋势 关于技术分析,您首先听说的可能会是下面这句箴言:“趋势是您的朋友”。找到主导趋势将帮助您统观市场全局导向,并且能赋予您更加敏锐的洞察力--特别是当更短期的市场波动搅乱市场全局时。每周和每月的图表分析最适合用于识别较长期的趋势。一旦发现整体趋势,您就能在希望交易的时间跨度中选择走势。这样,您能够在涨势中买跌,并且在跌势中卖涨。 2、支撑和阻力你我必须承认:在这世界上,100%保证能绝对赚钱的交易方法是不存在的。如果有这样的方法,那么满街都是百万富翁了,但留心便可发现,市场中总有那么一部分人能稳定赢利、在长期交易中不败……难道他们都是能预知未来的交易之神?请百度搜索“云易汇智能交易系统”为您独家揭秘! 支撑和阻力水准是图表中经受持续向上或向下压力的点。支撑水准通常是所有图表模式(每小时、每周或者每年)中的最低点,而阻力水准是图表中的最高点(峰点)。当这些点显示出再现的趋势时,它们即被识别为支撑和阻力。买入/卖出的最佳时机就是在不易被打破的支撑/阻力水准附近。一旦这些水准被打破,它们就会趋向于成为反向障碍。因此,在涨势市场中,被打破的阻力水准可能成为对向上趋势的支撑;然而在跌势市场中,一旦支撑水准被打破,它就会转变成阻力。 3、线条和通道 趋势线在识别市场趋势方向方面是简单而实用的工具。向上直线由至少两个连继低点相连接而成。很自然,第二点必须高于第一点。直线的延伸帮助判断市场将沿以运动的路径。向上趋势是一种用于识别支持线/水准的具体方法。反而言之,向下线条是通过连接两点或更多点绘成。交易线条的易变性在一定程度上与连接点的数量有关。然而值得一提的是,各个点不必靠得过近。通道被定义为与相应向下趋势线平行的向上趋势线。两条线可表示价格向上、向下或者水平的走廊。支持趋势线连接点的通道的常见属性应位于其反向线条的两连接点之间。 4、平均线 如果您相信技术分析中“趋势是您的朋友”的信条,那么移动平均线将使您获益匪浅。移动平均线显示了在特定周期内某一特定时间的平均价格。它们被称作“移动”,因为它们依照同一时间度量,且反映了最新平均线。 移动平均线的不足之一在于它们滞后于市场,因此并不一定能作为趋势转变的标志。为解决这一问题,使用5或10天的较短周期移动平均线将比40或200天的移动平均线更能反映出近期价格动向。或者,移动平均线也可以通过组合两种不同时间跨度的平均线加以使用。无论使用5和20天的移动平均线,还是40和200天的移动平均线,买入信号通常在较短期平均线向上穿过较长期平均线时

准确率100的技术指标文华财经指标公式期货软件顶底之王指标

A:=AVPRICE/100; VARA:=EMA((((A-EMA(A,13))/EMA(A,13))*(0-100)),5); QQ:=EMA(((VARA/10)+EMA(A,13)),0); 行情线:=MA(A,1); 重心:=(C+0.618*REF(C,1)+0.382*REF(C,1)+0.236*REF(C,3)+0.146*REF(C,4))/2.382; 【操盘线】:EMA(((SLOPE(C,22)*20)+C),55),COLORYELLOW,LINETHICK4; 【黄金线】:IF(重心>=【操盘线】,【操盘线】,NULL),COLORRED,LINETHICK2; 【空仓线】:IF(重心<【操盘线】,【操盘线】,NULL),COLORCYAN,LINETHICK2; DRAWTEXT(ISLASTBAR,【操盘线】,'【操盘线】'),COLORRED; 引:EMA(CLOSE,2),LINETHICK1,COLORMAGENTA; 探:MA(CLOSE,5),LINETHICK1; 变:EMA(CLOSE,5),LINETHICK2,COLORYELLOW; 金:IF(变>REF(变,1),变,NULL),COLORRED,LINETHICK2; 空:IF(变REF(辅助线,1),辅助线,NULL),COLORMAGENTA,LINETHICK2; 下降:IF(辅助线REF(DA,2),【操盘线】,9);

《期货交易软件之文华一键通交易系统操作指南附图(追价下单、超价下单、止损止盈、条件单) 》

《期货交易软件之文华一键通交易系统操作指南附图(追价下单、超价下单、止损止盈、条件单) 》中国最著名博客女王干群精美作品编号2016061601 中国最著名博客女王干群精美作品编号2016061601 《期货交易软件之文华一键通交易系统操作指南附图(追价下单、超价下单、止损止盈、条件单) 》 期货交易软件之文华一键通交易系统操作指南附图(追价下单、超价下单、止损止盈、条件单) 一、如何下单 方法:点击“买卖”按钮可以下单。 二、如何指定价格下单 方法:在价格输入框输入价格,下单按钮会自动显示您输入的价格,然后点击“买入”或者“卖出”即可。 三、如何撤单 方法:如需撤掉挂单,只要双击挂单列表中的挂单即可。也可选择挂单合约后点击撤单按钮实现撤单 四、如何平仓 方法一:鼠标点击持仓,光标焦点会根据持仓方向落在“买

卖”按钮上,点击“买卖”按钮即可平仓。同时可以调节数量和价格微调按钮,对平仓手数和平仓价格进行设置 方法二:鼠标点击持仓,点击“平仓”按钮进行平仓。 方法三:双击持仓,实现快速平仓。 五、如何设置默认下单手数 方法:点击一键通交易软件中“数量”后面的“…”即可针对合约设置默认的下单手数 六、如何使用追价下单? 追价下单启动后,系统会自动撤单然后自动按照最新报价重新发出委托,直到完全成交。 方法:将一键通交易界面右上角的“追价下单”勾选即可。可以点击“追价下单” 后面的“…设置触发条件、追价范围和追价机制。 追价触发条件:以时间为条件,即下单后N秒钟没有成交就触发追价下单。 手动开仓、平仓追价范围:系统可以对手动下单设置追价范围,如果价格变化超过设置的追价范围,就停止追价。 追价机制:即对追价触发自动发出委托的委托价格进行设置。

文华财经指标源码

最高价连线与最低价连线 TMP:=OPEN-CLOSE; DRAWLINE(TMP>0.00001,HIGH,TMP>0.00001,OPEN,COLORCYAN); DRAWLINE(TMP>0.00001,LOW,TMP>0.00001,CLOSE,COLORCYAN); DRAWLINE(TMP<-0.00001,HIGH,TMP<-0.00001,CLOSE,COLORRED); DRAWLINE(TMP<-0.00001,LOW,TMP<-0.00001,OPEN,COLORRED); DRAWLINE(ABS(TMP)<0.00001,LOW,ABS(TMP)<0.00001,OPEN,COLORWHITE); DRAWLINE(ABS(TMP)<0.00001,HIGH,ABS(TMP)<0.00001,OPEN,COLORWHITE); STICKLINE(TMP>0,OPEN,CLOSE,COLORCYAN,0); STICKLINE(TMP<=0,OPEN,CLOSE,COLORRED,1); A:HHV(HIGH,10); B:LLV(LOW,10); 自编KDJ RSV:=(CLOSE-LLV(LOW,N))/(HHV(HIGH,N)-LLV(LOW,N))*100; BACKGROUNDSTYLE(1); K1:SMA(RSV,M1,1); D1:SMA(K1,M2,1); J1:3*K1-2*D1; KDR:MAX((K1-D1)/ABS(K1-D1),0)*90 5; RSV4:=(CLOSE-LLV(LOW,N*4))/(HHV(HIGH,N*4)-LLV(LOW,N*4))*100; K4:SMA(RSV4,12,1);

文华程序化交易说明文档

国海良时期货 文华财经 程序化交易系统 使用说明书

程序化交易是一种在计算机和网络技术的支持下,瞬间完成你预先设置好的组合交易指令的一种交易手段。您可以将您的交易思路,通过文华提供的函数、语法及编辑平台,编写成交易模型,实现自动开仓、自动止损、自动止赢。程序化交易在投资实战中不仅可以提高下单速度,而且可以帮助投资者在交易过程中避免受到情绪波动的影响,实现理性投资。 Mytrader2009的程序化交易功能在Webstock2008的基础上增加了追踪止损功能、在全自动状态下系统默认按照最后的信号方向执行,解决了交易指令消失不做任何处理的问题、使用算法交易确保下单成交、并且升级了效果测试和参数优化的功能,使程序化交易又前进了一步,让投资更加的轻松和快乐。 启动程序化交易进行自动交易 打开交易软件,输入账号和密码 启动自动交易模型,选择模型后点击加载或新建模型。

使用算法交易 可以选择是否启用“追价下单”“分批下单”“超价下单” 追价下单: 如果下单没有成交,可以设置追价下单,单子在几秒钟之内没有成交,系统会自动撤单并按市场最新价追价下单,直至预设手数全部成交(也可设置追价范围,防范风险)。(模型触发、价格价格条件单、画线条件单都可以支持追价下单)

分批下单: 如果下单手数过大,启动分批下单,系统会根据默认的分批下单手数,将总手数分批下单超价下单:在市价基础上调整[ ]最小变动价位,以提高成交几率。 算法交易参数的设置 点击图中程序化交易窗口的红色方框可以对算法交易功能进行设置 在下图中对算法交易参数进行设置

“程序化交易自动下单”的其他设置说明: “按市价下单,下单手数” :模型每次下单的数量 “只进行多头交易”:选择此项设置后,模型自动过滤掉卖开和买平的交易指令,只进行多头交易。 “只进行空头交易”:选择此项设置后,模型自动过滤掉买开和卖平的交易指令,只进行空头交易。 “双向交易”:选择此项设置后,模型可以发出买开、卖平、卖开和买平指令,进行双向交易。 “下单方式”:可以选择全自动(不需要确认)、半自动(需要确认)或者只显示信号。 “信号确认”:可以设置信号出现后几秒钟发出委托。 在全自动状态下,系统默认使用“程序化交易按最后信号方向执行”来解决指令反复的问题,设置如下图:

已破解的交易策略源码[文华财经公式]

已破解的交易策略源码: DIRECTION:=CLOSE-REF(CLOSE,10); VOLATILITY:=SUM(ABS((CLOSE-REF(CLOSE,1))),10); ER:=ABS(DIRECTION/VOLATILITY); FASTSC:=2/(2 + 1); SLOWSC:=2/(30 + 1); SSC:=ER*(FASTSC-SLOWSC)+SLOWSC; https://www.wendangku.net/doc/a317823703.html,:c,nodraw; CONSTANT:=SSC*SSC; AMAHIGH:=REF(EMA(HIGH,100),1)+CONSTANT*(HIGH- EMA(HIGH,100)); AMACLOSE:=REF(EMA(CLOSE,100),1)+CONSTANT*(CLOSE- REF(EMA(CLOSE,100),1)); AMALOW:=REF(EMA(LOW,100),1)+CONSTANT*(LOW- EMA(LOW,100)); REF(LOW>AMAHIGH,1),BK; REF(CLOSEAMACLOSE OR CLOSE>=1.005*SKPRICE,1),BP; AUTOFILTER; 源码解析: DIRECTION赋值:收盘价-10日前的收盘价 VOLATILITY赋值:(收盘价-昨收)的绝对值的10日累和 ER赋值:DIRECTION/VOLATILITY的绝对值 FASTSC赋值:2/(2 + 1) SLOWSC赋值:2/(30 + 1)

文华财经指标源码

阳光心情 MA1:EMA(CLOSE,6),COLORWHITE; MA2:EMA(CLOSE,25),COLORRED ; STICKLINE(MA1>MA2,MA1,MA2,COLORMAGENTA,0) ; STICKLINE(MA2>MA1,MA1,MA2,COLORGREEN,0); DRAWTEXT(MA2-MA1>0&&MA1/LOW>1.15,LOW,'▼'); DRAWTEXT(MA1-MA2>0&&HIGH/MA1>1.15,HIGH,'▲'); 无敌MACD文华版 DIFF : EMA(CLOSE,12) - EMA(CLOSE,26); DEA : EMA(DIFF,9); 2*(DIFF-DEA),COLORSTICK; L1:=(EMA(CLOSE,8) - EMA(CLOSE,13)); L2:=EMA(L1,13); DRAWTEXT(CROSS(L1,L2),DIFF ,'买'),COLORRED; DRAWTEXT(CROSS(L2,L1),DIFF ,'卖'),COLORGREEN; 稳坐钓鱼台 ZJX:MA(C,61)-2*STD(C,71),COLORRED; CJX:MA(C,125)-2*STD(C,145),COLORMAGENTA; A:(EMA(C,13)+MA(C,26)+MA(C,52))/3,COLORYELLOW;

TMP:=OPEN-CLOSE; DRAWLINE(TMP>0.00001,HIGH,TMP>0.00001,OPEN,COLORCYAN); DRAWLINE(TMP>0.00001,LOW,TMP>0.00001,CLOSE,COLORCYAN); DRAWLINE(TMP<-0.00001,HIGH,TMP<-0.00001,CLOSE,COLORRED); DRAWLINE(TMP<-0.00001,LOW,TMP<-0.00001,OPEN,COLORRED); DRAWLINE(ABS(TMP)<0.00001,LOW,ABS(TMP)<0.00001,OPEN,COLORWHITE); DRAWLINE(ABS(TMP)<0.00001,HIGH,ABS(TMP)<0.00001,OPEN,COLORWHITE); STICKLINE(TMP>0,OPEN,CLOSE,COLORCYAN,0); STICKLINE(TMP<=0,OPEN,CLOSE,COLORRED,1); 稳赢趋势 HH:=HHV(HIGH,13); LL:=LLV(LOW,13); HH1:=BARSLAST((HH>REF(HH,1))); LL1:=BARSLAST((LL LL1),-1,0)); AA:IFELSE(A>=0,LL,HH),COLORYELLOW; DRAWTEXT(CROSS(HH1,LL1),HH,'开空'); DRAWTEXT(CROSS(LL1,HH1),LL,'开多'); DRAWLINE(HH1>LL1,HIGH,HH1>LL1,OPEN,COLORCYAN); DRAWLINE(HH1>LL1,LOW,HH1>LL1,CLOSE,COLORCYAN); DRAWLINE(HH1<=LL1,HIGH,HH1<=LL1,CLOSE,COLORRED);

文华财经模型与函数详解

文华财经模型与函数详解一[程序化新手] 自编公式支持的操作符: ⒈+操作符,表示“加法运算”。 ⒉-操作符,表示“减法运算”。 ⒊* 操作符,表示“乘法运算”。 ⒋/ 操作符,表示“除法运算”。 例如: CLOSE+OPEN表示求收盘价及开盘价的和。 CLOSE-OPEN表示求收盘价及开盘价的差。 CLOSE*OPEN 表示求收盘价及开盘价的积。 CLOSE/OPEN 表示求收盘价及开盘价的商。 ⒌&&操作符,表示“与运算”。 ⒍|| 操作符,表示“或运算”。 ⒎> 操作符,表示“大于运算”。 ⒏< 操作符,表示“小于运算”。 ⒐>=操作符,表示“大于等于运算”。 ⒑<=操作符,表示“小于等于运算”。 ⒒<>操作符,表示“不等于运算”。 ⒓= 操作符,表示“等于操作符”。 例如: CLOSE>OPEN表示判断当前周期是否收阳。 CLOSE=OPEN表示判断当前周期是否平盘。

⒔:=操作符,表示定义一个局部变量(这个变量在画图时是不画的)。 ⒕: 操作符,表示声明了一个变量,并且在画图时画出它并且按这个名字显示。 例如: TMP1:=(OPEN CLOSE)/2; MA(TMP1,10); 上面的公式的第一个语句定义了一个局部变量TMP1,在下面一行中引用了这个局部变量,但是要注意的是这个公式在画图的时候只画了第二条语句所求出的结果。 相反下面这个公式则需要画出两条线,第一条是自己定义的均价线,同时显示了均价的名称为AVP,第二条线是均价的简单移动平均线。 AVP:(OPEN CLOSE)/2; MA(AVP,10); 1.引用数据 AVPRICE 取得均价(在盘后对于国内三个期货交易所指结算价) SETTLE 取得结算价(只有在日线周期盘后才能取得当日的结算价) 说明:如果用在周期小于'日'的K线上如5分钟K线,一小时k线,每根k线返回的值表示这根k线当日开盘时到这根k线的为止的结算价(均价) 如果用在周期大于等于'日'的K线上,返回当根K线结束时间所在日的结算价. CLOSE

文华财经公式集(源码)开放

文华财经公式 判断趋势 MA50:MA(CLOSE,50); STICKLINE(CLOSEMA50,OPEN,CLOSE,COLORRED,0); DRAWLINE(CLOSE>MA50,HIGH,CLOSE>MA50,LOW,COLORRED); 每日均价 A1:=IF(DAY=1,CLOSE,0); A2:=IF(DAY=2,CLOSE,0); A3:=IF(DAY=3,CLOSE,0); A4:=IF(DAY=4,CLOSE,0); A5:=IF(DAY=5,CLOSE,0); A6:=IF(DAY=6,CLOSE,0); A7:=IF(DAY=7,CLOSE,0); A8:=IF(DAY=8,CLOSE,0); A9:=IF(DAY=9,CLOSE,0); A10:=IF(DAY=10,CLOSE,0); A11:=IF(DAY=11,CLOSE,0); A12:=IF(DAY=12,CLOSE,0); A13:=IF(DAY=13,CLOSE,0); A14:=IF(DAY=14,CLOSE,0); A15:=IF(DAY=15,CLOSE,0); A16:=IF(DAY=16,CLOSE,0); A17:=IF(DAY=17,CLOSE,0); A18:=IF(DAY=18,CLOSE,0); A19:=IF(DAY=19,CLOSE,0); A20:=IF(DAY=20,CLOSE,0); A21:=IF(DAY=21,CLOSE,0); A22:=IF(DAY=22,CLOSE,0); A23:=IF(DAY=23,CLOSE,0); A24:=IF(DAY=24,CLOSE,0); A25:=IF(DAY=25,CLOSE,0); A26:=IF(DAY=26,CLOSE,0); A27:=IF(DAY=27,CLOSE,0); A28:=IF(DAY=28,CLOSE,0); A29:=IF(DAY=29,CLOSE,0); A30:=IF(DAY=30,CLOSE,0); A31:=IF(DAY=31,CLOSE,0); B1:=IF(DAY=1,VOL,0); B2:=IF(DAY=2,VOL,0); B3:=IF(DAY=3,VOL,0); B4:=IF(DAY=4,VOL,0); B5:=IF(DAY=5,VOL,0);

期货指标大全汇总文华财经指标技术分析指标大全铁矿恒指买卖点绝技指标

STICKLINE(C>=O,O,C,8,0),COLORBLACK; STICKLINE(C>=O,H,L,8,0),COLORBLACK; STICKLINE(C<=O,O,C,8,0),COLORBLACK; STICKLINE(C<=O,H,L,8,0),COLORBLACK; A1:=(EMA((OPEN+HIGH+LOW+CLOSE)/4,3)+EMA((OPEN+HIGH+LOW+CLOSE)/4,6)+EMA((OPEN+HI GH+LOW+CLOSE)/4,9))/3; A2:=(EMA((OPEN+HIGH+LOW+CLOSE)/4,5)+EMA((OPEN+HIGH+LOW+CLOSE)/4,10)+EMA((OPEN+ HIGH+LOW+CLOSE)/4,20))/3; A3:=(EMA((OPEN+HIGH+LOW+CLOSE)/4,7)+EMA((OPEN+HIGH+LOW+CLOSE)/4,14)+EMA((OPEN+ HIGH+LOW+CLOSE)/4,28))/3; A4:=(EMA((OPEN+HIGH+LOW+CLOSE)/4,9)+EMA((OPEN+HIGH+LOW+CLOSE)/4,18)+EMA((OPEN+ HIGH+LOW+CLOSE)/4,36))/3; A5:=(EMA((OPEN+HIGH+LOW+CLOSE)/4,11)+EMA((OPEN+HIGH+LOW+CLOSE)/4,22)+EMA((OPEN +HIGH+LOW+CLOSE)/4,44))/3; A6:=(EMA((OPEN+HIGH+LOW+CLOSE)/4,13)+EMA((OPEN+HIGH+LOW+CLOSE)/4,26)+EMA((OPEN +HIGH+LOW+CLOSE)/4,52))/3; A7:=(EMA((OPEN+HIGH+LOW+CLOSE)/4,21)+EMA((OPEN+HIGH+LOW+CLOSE)/4,34)+EMA((OPEN +HIGH+LOW+CLOSE)/4,68))/3; VAR1:=FORCAST(A1,6); VAR2:=FORCAST(A2,6); VAR3:=FORCAST(A3,6); VAR4:=FORCAST(A4,6); VAR5:=FORCAST(A5,6);

文华财经程序化交易

1、趋势转变如何表示?以均线拐头为例: MA10:=MA(CLOSE,10);{定义10周期均线} MA10>REF(MA10,1)&&REF(MA10,1)>REF(MA10,2)&&REF(MA10,3)>REF(MA10,2)&&R EF(MA10,4)>REF(MA10,3);{表示上拐} MA108,SK;{10周期均线上穿5周期均线或者收盘价与5周期均线的差值大于8时,发出卖出开仓交易指令} (MA5-CLOSE)>6,BP;{5周期均线与收盘价的差值大于6时,发出买入平仓交易指令} CROSS(MA5,MA10)||(MA5-CLOSE)>8,BK;{5周期均线上穿10周期均线或者收盘价与5周期均线的差值大于8时,发出买入开仓交易指令} (CLOSE-MA5)>6,SP;{收盘价与5周期均线的差值大于6时,发出卖出平仓交易指令}{{}内为文字说明,编写模型时不用写出} 4、如何在模型中限制开平仓时间? MA5:=MA(CLOSE,5); {定义5周期的简单移动平均线} MA10:=MA(CLOSE,10); {定义10周期的简单移动平均线} TIME>=0905&&CROSS(MA5,MA10),BK;{在9点05分后出现5周期线金*10周期线后买开} CROSS(TIME,1457),BP;{当时间到14点58分时自动发出买平指令} TIME>=0905&&CROSS(MA10,MA5),SK;{在9点05分后出现5周期线死*10周期线后卖开} CROSS(TIME,1457),SP;{当时间到14点58分时自动发出卖平指令} 5、KDJ模型雏形

相关文档
相关文档 最新文档