论坛全局菜单下方 - TICKMILL 285X70论坛全局菜单下方 - ThinkMarkets285X70论坛全局菜单下方 - 荔枝返现285X70论坛全局菜单下方 -  icmarkets285X70
查看:5754回复:6
老正
注册时间2003-09-21
365热心助人奖
[MT4指标]帮朋友求个简单的mt4指标
楼主发表于:2005-11-15 05:45只看该作者倒序浏览
1楼 电梯直达
电梯直达
mt4的指标,很简单,只是我对编程没有细胞,还是请版主帮帮忙,谢谢版主。 指标要求:在图上划出2条线,第一条10个周期的平均线加上5%,也就是当日10周期平均值乘以1.05;第二条是10个周期的平均线减去5%,也就是当日10周期平均值乘以0.95 这个10个周期可以更改,5%也可以更改,这个指标也可以应用到其他周期,入4H、1H等等的周期。
TK29帖子1楼右侧xm竖版广告90-240
个性签名

遇到矛盾 先站在对方的立场上想想问题,先试着去理解别人
如何使用WinMTR查询平台连接流畅度

广告
TK30+TK31帖子一樓廣告
TK30+TK31帖子一樓廣告
老正
注册时间2003-09-21
365热心助人奖
楼主发表于:2005-11-15 05:46只看该作者
2楼
偶也是属于对指标编写没有细胞的人。。。。。。嘿嘿 还请朋友们帮忙哈
wfy05
注册时间2005-07-23
发表于:2005-11-15 09:15只看该作者
3楼
这个有实际意义吗? 比如EURUSD某点MA为1.17 时候如果+5%就是1.2285了, 这时MA已经在图形高点外 都显示不出来了. 还是改了一个,设置MA_Scale参数即可设置缩放比例,比如MA_Scale为1.01表示扩大1%, 0.995表示 缩小0.5%, 默认为1.01. 其他参数同标准MA,也支持SMA, EMA, SMMA, LWMA. 如果需要同一个图上显示多个不同缩放的MA指标, 则可以按标准MA同样的方式进行分次不同颜色添加. 具体代码如下,是以MT4自带的MA指标为基础修改的. //+------------------------------------------------------------------+ //| MA_Scale.mq4 | //| Copyright ?2004, MetaQuotes Software Corp. | //| http://www.metaquotes.net/ | //+------------------------------------------------------------------+ #property copyright "Copyright ?2004, MetaQuotes Software Corp." #property link "http://www.metaquotes.net/" #property indicator_chart_window #property indicator_buffers 1 #property indicator_color1 Red //---- indicator parameters extern int MA_Period=10; extern int MA_Shift=0; extern int MA_Method=0; extern double MA_Scale=1.01; //---- indicator buffers double ExtMapBuffer; //---- int ExtCountedBars=0; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { int draw_begin; string short_name; //---- drawing settings SetIndexStyle(0,DRAW_LINE); SetIndexShift(0,MA_Shift); IndicatorDigits(MarketInfo(Symbol(),MODE_DIGITS)); if(MA_Period<2) MA_Period=13; draw_begin=MA_Period-1; //---- indicator short name switch(MA_Method) { case 1 : short_name="EMA("; draw_begin=0; break; case 2 : short_name="SMMA("; break; case 3 : short_name="LWMA("; break; default : MA_Method=0; short_name="SMA("; } IndicatorShortName(short_name+MA_Period+")"); SetIndexDrawBegin(0,draw_begin); //---- indicator buffers mapping SetIndexBuffer(0,ExtMapBuffer); //---- initialization done return(0); } //+------------------------------------------------------------------+ //| | //+------------------------------------------------------------------+ int start() { if(Bars<=MA_Period) return(0); ExtCountedBars=IndicatorCounted(); //---- check for possible errors if (ExtCountedBars<0) return(-1); //---- last counted bar will be recounted if (ExtCountedBars>0) ExtCountedBars--; //---- switch(MA_Method) { case 0 : sma(); break; case 1 : ema(); break; case 2 : smma(); break; case 3 : lwma(); } //---- done return(0); } //+------------------------------------------------------------------+ //| Simple Moving Average | //+------------------------------------------------------------------+ void sma() { double sum=0; int i,pos=Bars-ExtCountedBars-1; //---- initial accumulation if(pos=0) { sum+=Close[pos]; ExtMapBuffer[pos]=(sum/MA_Period)*MA_Scale; sum-=Close[pos+MA_Period-1]; pos--; } //---- zero initial bars if(ExtCountedBars<1) for(i=1;i2) pos=Bars-ExtCountedBars-1; //---- main calculation loop while(pos>=0) { if(pos==Bars-2) ExtMapBuffer[pos+1]=Close[pos+1]*MA_Scale; ExtMapBuffer[pos]=(Close[pos]*pr+ExtMapBuffer[pos+1]*(1-pr)/MA_Scale)*MA_Scale; pos--; } } //+------------------------------------------------------------------+ //| Smoothed Moving Average | //+------------------------------------------------------------------+ void smma() { double sum=0; int i,k,pos=Bars-ExtCountedBars+1; //---- main calculation loop pos=Bars-MA_Period; if(pos>Bars-ExtCountedBars) pos=Bars-ExtCountedBars; while(pos>=0) { if(pos==Bars-MA_Period) { //---- initial accumulation for(i=0,k=pos;i=0) { ExtMapBuffer[pos]=(sum/weight)*MA_Scale; if(pos==0) break; pos--; i--; price=Close[pos]; sum=sum-lsum+price*MA_Period; lsum-=Close; lsum+=price; } //---- zero initial bars if(ExtCountedBars<1) for(i=1;i
老正
注册时间2003-09-21
365热心助人奖
楼主发表于:2005-11-16 00:55只看该作者
4楼
呵 谢谢老兄哈
kenshinlemon
注册时间2005-09-20
发表于:2006-01-31 16:41只看该作者
5楼
请问下MT里面的四种MA:SMA, EMA, SMMA, LWMA他们各自的计算公式是怎样的,还有特性和意义,主要是想了解后两种,感谢啦
fx007
注册时间2004-03-27
发表于:2006-02-01 02:10只看该作者
6楼
原帖由 老正 于 2005-11-15 13:45 发表 mt4的指标,很简单,只是我对编程没有细胞,还是请版主帮帮忙,谢谢版主。 指标要求:在图上划出2条线,第一条10个周期的平均线加上5%,也就是当日10周期平均值乘以1.05;第二条是10个周期的平均线减去5 ...
以前的贴,刚看见 不知我理解的对不对,实际是个均线通道, 两种方法可能能比较简单的解决, MA中加不同的取值范围(50,-50等自定义) 用ENVELOPSE指标,参数自定义111111.GIF111111.GIF
kenshinlemon
注册时间2005-09-20
发表于:2006-02-06 04:05只看该作者
7楼
请问下MT里面的四种MA:SMA, EMA, SMMA, LWMA他们各自的计算公式是怎样的,还有特性和意义,主要是想了解后两种,感谢啦

本站免责声明:

1、本站所有广告及宣传信息均与韬客无关,如需投资请依法自行决定是否投资、斟酌资金安全及交易亏损风险;

2、韬客是独立的、仅为投资者提供交流的平台,网友发布信息不代表韬客的观点与意思表示,所有因网友发布的信息而造成的任何法律后果、风险与责任,均与韬客无关;

3、金融交易存在极高法律风险,未必适合所有投资者,请不要轻信任何高额投资收益的诱导而贸然投资;投资保证金交易导致的损失可能超过您投入的资金和预期。请您考虑自身的投资经验及风险承担能力,进行合法、理性投资;

4、所有投资者的交易帐户应仅限本人使用,不应交由第三方操作,对于任何接受第三方喊单、操盘、理财等操作的投资和交易,由此导致的任何风险、亏损及责任由投资者个人自行承担;

5、韬客不隶属于任何券商平台,亦不受任何第三方控制,韬客不邀约客户投资任何保证金交易,不接触亦不涉及投资者的任何资金及账户信息,不代理任何交易操盘行为,不向客户推荐任何券商平台,亦不存在其他任何推荐行为。投资者应自行选择券商平台,券商平台的任何行为均与韬客无关。投资者注册及使用韬客即表示其接受和认可上述声明,并自行承担法律风险。

版权所有:韬客外汇论坛 www.talkfx.com 联络我们:[email protected]