[MT4指标]两个变色版本的均线指标
不知道哪个是新版的
//+------------------------------------------------------------------+
//| MTF_MovingAverage.mq4 |
//| Copyright ?2006, Keris2112 |
//| |
//+------------------------------------------------------------------+
#property copyright "Copyright ?2006, Keris2112" //MTF version
#property link "http://www.forex-tsd.com"
#property copyright "MT4 release WizardSerg ForexMagazine #104" //Original version
#property link "[email protected]"
#property indicator_chart_window
#property indicator_buffers 8
#property indicator_color1 Silver
#property indicator_color2 Silver
#property indicator_color3 Silver
#property indicator_color4 Silver
#property indicator_color5 Silver
#property indicator_color6 Silver
#property indicator_color7 Blue
#property indicator_color8 Red
#define MODE_SATL 8
//---- input parameters
/*************************************************************************
PERIOD_M1 1
PERIOD_M5 5
PERIOD_M15 15
PERIOD_M30 30
PERIOD_H1 60
PERIOD_H4 240
PERIOD_D1 1440
PERIOD_W1 10080
PERIOD_MN1 43200
You must use the numeric value of the timeframe that you want to use
when you set the TimeFrame' value with the indicator inputs.
---------------------------------------
PRICE_CLOSE 0 Close price.
PRICE_OPEN 1 Open price.
PRICE_HIGH 2 High price.
PRICE_LOW 3 Low price.
PRICE_MEDIAN 4 Median price, (high+low)/2.
PRICE_TYPICAL 5 Typical price, (high+low+close)/3.
PRICE_WEIGHTED 6 Weighted close price, (high+low+close+close)/4.
You must use the numeric value of the Applied Price that you want to use
when you set the 'applied_price' value with the indicator inputs.
---------------------------------------
MODE_SMA 0 Simple moving average,
MODE_EMA 1 Exponential moving average,
MODE_SATL 2 SATL moving average,
MODE_LWMA 3 Linear weighted moving average.
You must use the numeric value of the MA Method that you want to use
when you set the 'ma_method' value with the indicator inputs.
**************************************************************************/
extern int TimeFrame=0;
extern int MAPeriod=36;
extern int ma_method=MODE_SATL;
extern int applied_price=PRICE_CLOSE;
extern bool UseLevels=False;
extern int Level0=0;
extern int Level1=0;
extern int Level2=0;
extern int Level3=0;
extern int Level4=0;
extern int Level5=0;
double ExtMapBuffer1;
double ExtMapBuffer2;
double ExtMapBuffer3;
double ExtMapBuffer4;
double ExtMapBuffer5;
double ExtMapBuffer6;
double ExtMapBuffer7;
double ExtMapBuffer8;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
string short_name;
//---- indicator line
SetIndexBuffer(0,ExtMapBuffer1);
SetIndexStyle(0,DRAW_LINE,STYLE_DOT);
SetIndexBuffer(1,ExtMapBuffer2);
SetIndexStyle(1,DRAW_LINE,STYLE_DOT);
SetIndexBuffer(2,ExtMapBuffer3);
SetIndexStyle(2,DRAW_LINE,STYLE_DOT);
SetIndexBuffer(3,ExtMapBuffer4);
SetIndexStyle(3,DRAW_LINE,STYLE_DOT);
SetIndexBuffer(4,ExtMapBuffer5);
SetIndexStyle(4,DRAW_LINE,STYLE_DOT);
SetIndexBuffer(5,ExtMapBuffer6);
SetIndexStyle(5,DRAW_LINE,STYLE_DOT);
SetIndexBuffer(6,ExtMapBuffer7);
SetIndexStyle(6,DRAW_LINE);
SetIndexBuffer(7,ExtMapBuffer8);
SetIndexStyle(7,DRAW_LINE);
//---- name for DataWindow and indicator subwindow label
switch(ma_method)
{
case 1 : short_name="MTF_HMA_EMA("; break;
case 2 : short_name="MTF_HMA_SATL("; break;
case 3 : short_name="MTF_HMA_LWMA("; break;
default : short_name="MTF_HMA_SMA(";
}
switch(TimeFrame)
{
case 1 : string TimeFrameStr="Period_M1"; break;
case 5 : TimeFrameStr="Period_M5"; break;
case 15 : TimeFrameStr="Period_M15"; break;
case 30 : TimeFrameStr="Period_M30"; break;
case 60 : TimeFrameStr="Period_H1"; break;
case 240 : TimeFrameStr="Period_H4"; break;
case 1440 : TimeFrameStr="Period_D1"; break;
case 10080 : TimeFrameStr="Period_W1"; break;
case 43200 : TimeFrameStr="Period_MN1"; break;
default : TimeFrameStr="Current Timeframe";
}
IndicatorShortName(short_name+MAPeriod+") "+TimeFrameStr);
}
//----
return(0);
//+------------------------------------------------------------------+
//| MTF Moving Average |
//+------------------------------------------------------------------+
int start()
{
datetime TimeArray;
int i,shift,limit,y=0,counted_bars=IndicatorCounted();
// Plot defined timeframe on to current timeframe
ArrayCopySeries(TimeArray,MODE_TIME,Symbol(),TimeFrame);
limit=Bars-counted_bars;
for(i=0,y=0;i
遇到矛盾 先站在对方的立场上想想问题,先试着去理解别人
● 如何使用WinMTR查询平台连接流畅度
2楼
三个颜色的
//+------------------------------------------------------------------+
//| XP Moving Average |
//| xpMA.mq4 |
//| Developed by Coders Guru |
//| http://www.xpworx.com |
//+------------------------------------------------------------------+
#property link "http://www.xpworx.com"
#property indicator_chart_window
#property indicator_buffers 3
#property indicator_color1 Yellow
#property indicator_color2 Red
#property indicator_color3 Blue
#define MODE_DEMA 4
#define MODE_TEMA 5
#define MODE_T3MA 6
#define MODE_JMA 7
#define MODE_SATL 8
/* Moving average types constants:
------------------------------------
MODE_SMA 0 Simple moving average,
MODE_EMA 1 Exponential moving average,
MODE_SMMA 2 Smoothed moving average,
MODE_LWMA 3 Linear weighted moving average.
MODE_DEMA 4 Double Exponential Moving Average.
MODE_TEMA 5 Triple Exponential Moving Average.
MODE_T3MA 6 T3 Moving Average.
MODE_JMA 7 Jurik Moving Average.
MODE_SATL 8 SATL Moving Average.
------------------------------------*/
/* Applied price constants:
-------------------------------
PRICE_CLOSE 0 Close price.
PRICE_OPEN 1 Open price.
PRICE_HIGH 2 High price.
PRICE_LOW 3 Low price.
PRICE_MEDIAN 4 Median price, (high+low)/2.
PRICE_TYPICAL 5 Typical price, (high+low+close)/3.
PRICE_WEIGHTED 6 Weighted close price, (high+low+close+close)/4.
--------------------------------- */
extern int MA_Period = 34;
extern int MA_Type = MODE_SATL;
extern int MA_Applied = PRICE_CLOSE;
extern double T3MA_VolumeFactor = 0.8;
extern double JMA_Phase = 0;
double UpBuffer;
double DownBuffer;
double Buffer3;
double buffer;
double tempbuffer;
double matriple;
int init()
{
IndicatorBuffers(6);
SetIndexStyle(2,DRAW_LINE,STYLE_DOT,2);
SetIndexBuffer(2,UpBuffer);
SetIndexStyle(1,DRAW_LINE,STYLE_DOT,2);
SetIndexBuffer(1,DownBuffer);
SetIndexStyle(0,DRAW_LINE,STYLE_DOT,2);
SetIndexBuffer(0,Buffer3);
SetIndexBuffer(3,buffer);
SetIndexBuffer(4,tempbuffer);
SetIndexBuffer(5,matriple);
return(0);
}
int deinit()
{
return(0);
}
void start()
{
int limit;
int i = 0;
int counted_bars=IndicatorCounted();
if(counted_bars<0) return(-1);
//if(counted_bars>0) counted_bars--;
limit=Bars-counted_bars-1;
switch (MA_Type)
{
case 0:
case 1:
case 2:
case 3:
{
for(i=0; ibuffer[shift+1] )
{
DownBuffer[shift] = EMPTY_VALUE;
}
else
{
UpBuffer[shift] = CLR_NONE;
DownBuffer[shift] = CLR_NONE;
}
}
return(0);
}
遇到矛盾 先站在对方的立场上想想问题,先试着去理解别人
● 如何使用WinMTR查询平台连接流畅度
发表于:2007-05-09 03:50只看该作者
3楼
两个指标 能 加入 但 K线上 不能显示出来 大家 行吗???
4楼
应该也是不行..........我再研究研究........
遇到矛盾 先站在对方的立场上想想问题,先试着去理解别人
● 如何使用WinMTR查询平台连接流畅度
发表于:2007-05-09 13:26只看该作者
5楼
第一个指标中:
[CODE]
ExtMapBuffer7=iCustom(NULL,TimeFrame,"xpMA_v2SATL",MAPeriod,ma_method,applied_price,0,y);
ExtMapBuffer8=iCustom(NULL,TimeFrame,"xpMA_v2SATL",MAPeriod,ma_method,applied_price,1,y);
[/CODE]
以上语句缺少名为"xpMA_v2SATL"的自定义指标
第二个指标中:
[CODE]
case 6:
buffer = iCustom(NULL,0,"T3MA",MA_Period,T3MA_VolumeFactor,0,i);
case 7:
buffer = iCustom(NULL,0,"JMA",MA_Period,JMA_Phase,0,i);
case 8:
buffer = iCustom(NULL,0,"SATL",MA_Period,JMA_Phase,0,i);
[/CODE]
以上语句分别缺少名为"T3MA"、"JMA"、"SATL"的自定义指标
看来这两个指标是和别的指标一起使用的,不能单独使用
www.talkforex.com/blog//index.php?action/space/uid/39428