[MT4指标]求用MT4编写CR能量指标?谢谢!
CR能量指标
算法:
在N日内,若某日最高价高于前一日中价(最高、最低价的均值),将二者的差累加到强势和中;若某日最低价低于前中价,将前中价与最低价的差累加到弱势和中。强势和除以弱势和,再乘100,即得CR。同时绘制CR的M1日、M2日、M3日均线。
参数:N 统计天数
M1、M2、M3 计算移动平均的天数,一般为5、10、20
一.用途:
该指标用于判断买卖时机。能够测量人气的热度和价格动量的潜能;显示压力带和支撑带,以辅助BRAR的不足。
二.使用方法:
1、a、b两线所夹的区域称为"副地震带",当CR由下往上欲穿越副地震带时,股价相对将遭次级压力干扰;当CR欲由上往下贯穿副地震带时,股价相对将遭遇次级支撑干扰。
2、c、d两线所夹成的区域称为"主地震带",当CR由下往上欲穿越主地震带时,股价相对将遭遇强大压力干扰;当CR由上往下欲贯穿主地震带时,股价相对将遭遇强大支撑干扰。
1、 CR相对股价也会产生背离现象。特别是在股价的高价区。
2、 CR跌至a、b、c、d四条线的下方,再度由低点向上爬升160%时,为短线获利卖出时机。例如从CR100上升到160。
3、 CR下跌至40以下时,股价形成底部的机会相当高。
4、 CR高于300~400之间时,股价很容易向下反转。
发表于:2005-07-31 15:09只看该作者
2楼
一般常用的算法是这样的:
MID := (HIGH+LOW+CLOSE)/3;
CR:SUM(MAX(0,HIGH-REF(MID,1)),N)/SUM(MAX(0,REF(MID,1)-LOW),N)*100;
MA1:REF(MA(CR,M1),M1/2.5+1);
MA2:REF(MA(CR,M2),M2/2.5+1);
MA3:REF(MA(CR,M3),M3/2.5+1);
按照这个算法编写了cr指标,用在mt4上面
//+------------------------------------------------------------------+
//| CR.mq4 |
//| Copyright ?2005, MetaQuotes Software Corp. |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright ?2005, MetaQuotes Software Corp."
#property link "http://www.metaquotes.net"
#property indicator_separate_window
#property indicator_buffers 4
#property indicator_color1 White
#property indicator_color2 Yellow
#property indicator_color3 Blue
#property indicator_color4 Green
extern int N=26;
extern int M1=5;
extern int M2=10;
extern int M3=20;
double MidBuffer;
double CRBuffer;
double MA1Buffer;
double MA2Buffer;
double MA3Buffer;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//---- indicators
IndicatorBuffers(5);
SetIndexBuffer(0, CRBuffer);
SetIndexBuffer(1, MA1Buffer);
SetIndexBuffer(2, MA2Buffer);
SetIndexBuffer(3, MA3Buffer);
SetIndexBuffer(4, MidBuffer);
//---- indicator lines
SetIndexStyle(0,DRAW_LINE);
SetIndexStyle(1,DRAW_LINE);
SetIndexStyle(2,DRAW_LINE);
SetIndexStyle(3,DRAW_LINE);
IndicatorShortName("CR("+N+","+M1+","+M2+","+M3+")");
SetIndexLabel(0,"CR");
SetIndexLabel(1,"M1");
SetIndexLabel(2,"M2");
SetIndexLabel(3,"M3");
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
int i,k,limit;
double PHigh,PLow,HSum,LSum;
//----
limit=Bars-counted_bars;
for(i=0;iN-1) i=Bars-counted_bars-1;
while(i>=0)
{
HSum=0;
LSum=0;
k=i+N-1;
while(k>=i)
{HSum+=MathMax(0,High[k]-MidBuffer[k+1]);
LSum+=MathMax(0,MidBuffer[k+1]-Low[k]);
k--;
}
CRBuffer=HSum/LSum*100;
i--;
}
for(i=0;i
韬客外汇论坛
3楼
非常感谢!服务于大众汇友!!!
发表于:2005-09-23 00:59只看该作者
4楼
非常感谢
发表于:2008-09-26 16:12只看该作者
5楼
1、a、b两线所夹的区域称为"副地震带",当CR由下往上欲穿越副地震带时,股价相对将遭次级压力干扰;当CR欲由上往下贯穿副地震带时,股价相对将遭遇次级支撑干扰。
2、c、d两线所夹成的区域称为"主地震带",当CR由下往上欲穿越主地震带时,股价相对将遭遇强大压力干扰;当CR由上往下欲贯穿主地震带时,股价相对将遭遇强大支撑干扰。
abcd线没有。。
谢谢分享
韬客社区www.talkfx.co
发表于:2009-02-23 04:56只看该作者
6楼
谢谢,辛苦了!
韬客社区www.talkfx.co
发表于:2009-03-20 13:27只看该作者
7楼
很好,很实用,谢谢
韬客社区www.talkfx.co