admin 管理员组

文章数量: 887021


2023年12月19日发(作者:js变量如何给jsp用)

自适应均线的源代码以及改良

根据考夫曼的自适应均线原理,利用文华财经编了一下,还是不错的,现把源代码公布出来给大家参考。

交易指标即自适应均线的源代码,我根据指标改良了一下交易系统,考夫曼原来是采用均线值的变化率发出买卖信号,我觉得不是很好,就用最高最低价构建了一个智能均线带,采用最低最高价突破来发出信号,大家一起探讨阿。

交易指标:

DIRECTION:=CLOSE-REF(CLOSE,N);

VOLATILITY:=SUM(ABS((CLOSE-REF(CLOSE,1))),N);

ER:=ABS(DIRECTION/VOLATILITY);

FASTSC:=2/(2 + 1);

SLOWSC:=2/(30 + 1);

SSC:=ER*(FASTSC-SLOWSC)+SLOWSC;

CONSTANT:=SSC*SSC;

AMAHIGH:REF(EMA(HIGH,N),1)+CONSTANT*(HIGH- REF(EMA(HIGH,N),1));

AMALOW:REF(EMA(LOW,N),1)+CONSTANT*(LOW- REF(EMA(LOW,N),1));

交易模型:

DIRECTION:=CLOSE-REF(CLOSE,N);

VOLATILITY:=SUM(ABS((CLOSE-REF(CLOSE,1))),N);

ER:=ABS(DIRECTION/VOLATILITY);

FASTSC:=2/(2 + 1);

SLOWSC:=2/(30 + 1);

SSC:=ER*(FASTSC-SLOWSC)+SLOWSC;

CONSTANT:=SSC*SSC;

AMAHIGH:=REF(EMA(HIGH,N),1)+CONSTANT*(HIGH- REF(EMA(HIGH,N),1));

AMACLOSE:=REF(EMA(CLOSE,N),1)+CONSTANT*(CLOSE- REF(EMA(CLOSE,N),1));

AMALOW:=REF(EMA(LOW,N),1)+CONSTANT*(LOW- REF(EMA(LOW,N),1));

LOW>AMAHIGH,BK;

CLOSE

HIGH

CLOSE>AMACLOSE,BP;

AMACLOSE:=REF(EMA(CLOSE,N),1)+CONSTANT*(CLOSE- REF(EMA(CLOSE,N),1));

这还不是原书中定义的自适应均线。按原书中定义,应该是:

AMA:=CONST*CLOSE+(1-CONST)*REF(AMA,1); 显然原书中的定义排除了人为的N,因此更加自然。可惜对AMA的定义需要向前引用

ref(AMA,1),在文化中无法得到支持,这是文化平台需要改进的一个重大缺陷。目前还想不出如何在文化中完整实现原书中的定义。

尝试用 AMA:=DMA(CLOSE, CONST); 得到的结果竟成了一直线

适应均线系统(四)

一、考夫曼的做法:

自适应均线系统的交易法则,根据考夫曼《精明交易者》一书中的介绍,其基本交易法

则为:

1.当自适应移动平均值向上拐头时,买入;

2.当自适应移动平均值向下拐头时,卖出。

当价格横向移动时,上述的交易方式将频繁产生进出交易的假信号。为了避免假信号的干扰,应该向AMA交易系统中添加一个过滤器。这个过滤器是根据自适应均线变化的标准差的百分比来确定。

根据这个原理,自适应均线的公式可做如下的完善:

DIR:=ABS(CLOSE-REF(CLOSE,10));

VIR:=SUM(ABS(CLOSE-REF(CLOSE,1)),10);

ER:=DIR/VIR;

CS:=ER*(2/3-2/14)+2/14;

CQ:=CS*CS;

AMA:EMA(DMA(CLOSE,CQ),2),COLORGREEN;

FIL:=STD(AMA-REF(AMA,1),20);

DRAWICON(FILTER(AMA-LLV(AMA,3)>FIL*0.1,10),AMA,1);

二、我实际的操作方法:

本人在使用自适应均线的中,并没有采用考夫曼的方式。

当自适应均线拐头向上时,必须使用连续两天的日K线确认趋势,当连续两根日K线均处于自适应均线上方时,方可确认上升趋势。

1.第一根日K线应该从自适应均线的下方向上穿越自适应均线;

2.第二根日K线,不论是阴线还是阳线,均不应跌破自适应均线,这时,可确认股价进入上升趋势。

3.以第一根穿越自适应均线的最高点【或者K线实体的高点】为标准,在后面的3天之

内,股价高于这个标准的时候,为买入点。

4.卖出点也是以连续2日的K线低于自适应均线为卖出信号,如果连续两条价格不能收在自适应均线的上方,则必须卖出。

自适应均线

STICKLINE(C<=O,H,L,0,0),COLORWHITE; a:=(2*c+o+h+l)/5;

X1:wMA(a,5),coloryellow;

X2:wMA(x1,8),coloryellow,linethick2; X3:wMA(X2,13),colorred;

x4:wma(x3,21),colorred,linethick2; x5:wma(x4,34),colorffffff;

x6:wma(x5,55),colorffffff,linethick2;

———————————————————————————————

自适应均线系统包含短线(黄色),中线(红色),长线(白色)三套均线

1、细黄色线上穿粗黄色线,短线买入;下穿,卖出。

2、细红色线上穿粗红色线,中线买入;下穿,卖出。

3、细黄色线上穿粗黄色线时,如果在红色线附近,则最好。

4、所有买入时,K线必须在金叉附近。

自适应均线系统,最好的均线系统

{n=10}

DIR:=ABS(CLOSE-REF(CLOSE,n));

VIR:=SUM(ABS(CLOSE-REF(CLOSE,1)),n);

ER:=DIR/VIR;

CS:=ER*(2/3-2/31)+2/31;

CQ:=CS*CS;

AMA:DMA(CLOSE,CQ),COLORGREEN;

AMA1:IF(AMA>REF(AMA,1),AMA,DRAWNULL),COLORRED;

如果自适应均线系统的周期n=10,那么:

1。自适应均线系统横向移动时,系统告诉你:最近的10个周期中,价格上

涨的幅度和下跌的幅度基本相当,(是幅度,而不是周期数);

2。自适应均线系统向上翘起时,系统告诉你:最近10个周期中,价格上涨

的幅度要大于下跌的幅度,价格逐渐进入强势的状态。

3。自适应均线系统向下垂时,系统告诉你的情形和2的情形正好相反。

MA5:=MA(CLOSE,5); MA10:=MA(CLOSE,10);

CROSS(MA5,MA10) &&MA5>REF(MA5,1) &&REF(MA5,1)>REF(MA5,2)

&&MA10>REF(MA10,1) &&REF(MA10,1)>REF(MA10,2),BPK;{5均线上穿10均线且均线成多头排列,买平买开}

CROSS(MA10,MA5) &&MA5

&&MA10

本模型虽然只用了简单的均线结合,但实用效果还是不错(这个均线参数可以改成5,8),目前存在的问题是对行情反应较慢,我想以此为基础加以完善,希望大家多提宝贵意见。

1、如果价格超过均线数值的百分之几,就不许开仓,可以防止价格出现大幅跳跃情况下的错误开仓。

2、如果开仓错误,应及时止损。

MA5:=MA(CLOSE,5); MA10:=MA(CLOSE,10);

CROSS(MA5,MA10) &&MA5>REF(MA5,1) &&REF(MA5,1)>REF(MA5,2)

&&MA10>REF(MA10,1) &&REF(MA10,1)>REF(MA10,2)

&&(MA5-REF(MA5,1))/MA5*100<1,BPK;{5均线上穿10均线且均线成多头排列且向上跳空幅度不太于1%,买平买开}

止损指令暂时没有加入~我觉得止损点不是很好把握~正在研究中~有什么好的思路和建议请发贴说明想要达到的目的~再来修改。

这个交易模型开发的意路是:以均线为基础~追求稳定的长期收益~故对行情的反映不是很快~请大家多提宝贵意见。

WJX:85;

ZJX:50;

AQX:15;

V1:=(2*CLOSE+HIGH+LOW)/4;

V2:=LLV(LOW,10);

VA:=HHV(HIGH,10);

B:=EMA((V1-V2)/(VA-V2)*100,10);

BB:=EMA((0.667*REF(B,1)+0.333*B),2); ZSX:B,COLORYELLOW;

ZLX:EMA(0.382*REF(B,2)+0.618*B,12),COLORYELLOW;

STICKLINE(B>BB,B,BB,COLORRED,0);

STICKLINE(B<=BB,B,BB,COLORBLUE,0); ZSX>REF(ZLX,1);

ZLX>REF(ZLX,1);

考夫曼的ama,自适应移动平均线

交易模型:DIRECTION:=CLOSE-REF(CLOSE,N);

VOLATILITY:=SUM(ABS((CLOSE-REF(CLOSE,1))),N);

ER:=ABS(DIRECTION/VOLATILITY);

FASTSC:=2/(2 + 1);

SLOWSC:=2/(30 + 1);

SSC:=ER*(FASTSC-SLOWSC)+SLOWSC;

CONSTANT:=SSC*SSC;

AMAHIGH:=REF(EMA(HIGH,N),1)+CONSTANT*(HIGH- REF(EMA(HIGH,N),1));

AMACLOSE:=REF(EMA(CLOSE,N),1)+CONSTANT*(CLOSE- REF(EMA(CLOSE,N),1));

AMALOW:=REF(EMA(LOW,N),1)+CONSTANT*(LOW- REF(EMA(LOW,N),1));

LOW>AMAHIGH,BK;

CLOSE

HIGH

CLOSE>AMACLOSE,BP;


本文标签: 均线 适应 系统 价格 定义