论坛全局菜单下方 - TICKMILL 285X70论坛全局菜单下方 - ThinkMarkets285X70论坛全局菜单下方 - 荔枝返现285X70论坛全局菜单下方 -  icmarkets285X70
查看:3433回复:6
neo007
注册时间2006-10-24
[MT4指标]各位老师能否帮我编一个4条均线的MT4指标?
楼主发表于:2006-10-25 14:19只看该作者倒序浏览
1楼 电梯直达
电梯直达
想编一个4条均线指标:5、10、20、30。 正在看编程参考,但是很晕啊。 感觉上这应该不是很难编的,用引用什么的,。。。。但就是编不出来,急死我了。 哪位老师能帮我编一个吗? 万分感谢!
TK29帖子1楼右侧xm竖版广告90-240
个性签名

韬客社区www.talkfx.co

广告
TK30+TK31帖子一樓廣告
TK30+TK31帖子一樓廣告
shwlm
注册时间2004-11-19
发表于:2006-10-25 14:59只看该作者
2楼
不用编,拽4个MA进到图表里就得了。
neo007
注册时间2006-10-24
楼主发表于:2006-10-26 01:09只看该作者
3楼
这个我知道。但我需要反复切换的。 而如果用模板,每次应用模板会删掉图上原有的画线。。。。而画线是我的重要工具。 所以只能编个指标,并用快捷键切换了
neo007
注册时间2006-10-24
楼主发表于:2006-10-26 02:14只看该作者
4楼
晕啊。我自己写了一个,怎么画出来和手工添加4条均线完全不同呢? 高手帮我看看 //+------------------------------------------------------------------+ //| 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 4 #property indicator_color1 Black #property indicator_color2 Blue #property indicator_color3 Red #property indicator_color4 Lime //---- input parameters extern int MA1Period=30; extern int MA1Shift=0; extern int MA2Period=20; extern int MA2Shift=0; extern int MA3Period=10; extern int MA3Shift=0; extern int MA4Period=5; extern int MA4Shift=0; //---- indicator buffers double ExtMA1Buffer; double ExtMA2Buffer; double ExtMA3Buffer; double ExtMA4Buffer; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- line shifts when drawing SetIndexShift(0,MA1Shift); SetIndexShift(1,MA2Shift); SetIndexShift(2,MA3Shift); SetIndexShift(3,MA4Shift); //---- first positions skipped when drawing SetIndexDrawBegin(0,MA1Shift+MA1Period); SetIndexDrawBegin(1,MA2Shift+MA2Period); SetIndexDrawBegin(2,MA3Shift+MA3Period); SetIndexDrawBegin(3,MA4Shift+MA4Period); //---- 4 indicator buffers mapping SetIndexBuffer(0,ExtMA1Buffer); SetIndexBuffer(1,ExtMA2Buffer); SetIndexBuffer(2,ExtMA3Buffer); SetIndexBuffer(3,ExtMA4Buffer); //---- drawing settings SetIndexStyle(0,DRAW_LINE); SetIndexStyle(1,DRAW_LINE); SetIndexStyle(2,DRAW_LINE); SetIndexStyle(3,DRAW_LINE); //---- index labels SetIndexLabel(0,"MA1"); SetIndexLabel(1,"MA2"); SetIndexLabel(2,"MA3"); SetIndexLabel(3,"MA4"); //---- initialization done return(0); } //+------------------------------------------------------------------+ //| 4MA | //+------------------------------------------------------------------+ int start() { int limit; int counted_bars=IndicatorCounted(); //---- check for possible errors if(counted_bars<0) return(-1); //---- last counted bar will be recounted if(counted_bars>0) counted_bars--; limit=Bars-counted_bars; //---- main loop for(int i=0; i
neo007
注册时间2006-10-24
楼主发表于:2006-10-26 02:36只看该作者
5楼
哈哈,以及解决了。是平滑模式的区别。 自己动手丰衣足食啊。不过还是把最终代码贴上来,需要就用! //+------------------------------------------------------------------+ //| Neo's 4MA.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 4 #property indicator_color1 Black #property indicator_color2 Red #property indicator_color3 DeepSkyBlue #property indicator_color4 DarkSeaGreen //---- input parameters extern int MA1Period=30; extern int MA1Shift=0; extern int MA2Period=20; extern int MA2Shift=0; extern int MA3Period=10; extern int MA3Shift=0; extern int MA4Period=5; extern int MA4Shift=0; //---- indicator buffers double ExtMA1Buffer; double ExtMA2Buffer; double ExtMA3Buffer; double ExtMA4Buffer; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- line shifts when drawing SetIndexShift(0,MA1Shift); SetIndexShift(1,MA2Shift); SetIndexShift(2,MA3Shift); SetIndexShift(3,MA4Shift); //---- first positions skipped when drawing SetIndexDrawBegin(0,MA1Shift+MA1Period); SetIndexDrawBegin(1,MA2Shift+MA2Period); SetIndexDrawBegin(2,MA3Shift+MA3Period); SetIndexDrawBegin(3,MA4Shift+MA4Period); //---- 4 indicator buffers mapping SetIndexBuffer(0,ExtMA1Buffer); SetIndexBuffer(1,ExtMA2Buffer); SetIndexBuffer(2,ExtMA3Buffer); SetIndexBuffer(3,ExtMA4Buffer); //---- drawing settings SetIndexStyle(0,DRAW_LINE); SetIndexStyle(1,DRAW_LINE); SetIndexStyle(2,DRAW_LINE); SetIndexStyle(3,DRAW_LINE); //---- index labels SetIndexLabel(0,"MA1"); SetIndexLabel(1,"MA2"); SetIndexLabel(2,"MA3"); SetIndexLabel(3,"MA4"); //---- initialization done return(0); } //+------------------------------------------------------------------+ //| Neo's 4MA | //+------------------------------------------------------------------+ int start() { int limit; int counted_bars=IndicatorCounted(); //---- check for possible errors if(counted_bars<0) return(-1); //---- last counted bar will be recounted if(counted_bars>0) counted_bars--; limit=Bars-counted_bars; //---- main loop for(int i=0; i
精灵旅行者
注册时间2006-09-06
发表于:2006-10-26 14:14只看该作者
6楼
哈,楼住果然搞定了,可以用,我也看看,谢谢了啊
liujiqi
注册时间2006-09-20

本站免责声明:

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

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

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

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

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

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