论坛全局菜单下方 - TICKMILL 285X70论坛全局菜单下方 - ThinkMarkets285X70论坛全局菜单下方 - 荔枝返现285X70论坛全局菜单下方 -  icmarkets285X70
查看:315回复:1
雨夜孤灯
注册时间2016-04-18
[MT4指标]变色均线的疑惑,盼高手指点,谢谢
楼主发表于:2018-08-18 03:38只看该作者倒序浏览
1楼 电梯直达
电梯直达
下面这个变色均线,本来是以均线方式来显示的,但存在多空颜色转换的问题(yellow),所以我把DRAW_LINE改成了DRAW_ARROW,想用图形代码(圆点)来显示,但显示出来的不是圆点,而是”X“,感觉问题出在最后COLOR CODING处,请大神帮忙看看该怎么修改,谢谢 #property copyright "Copyright ?2006, FX Sniper and Robert Hill" #property link "http://www.metaquotes.net/" //---- indicator settings #property indicator_chart_window #property indicator_buffers 3 #property indicator_color1 Yellow #property indicator_color2 Green #property indicator_color3 Red extern int MAPeriod=19; extern int MAType=1; extern int MAAppliedPrice = 0;//0=close, 1=open, 2=high, 3=low, 4=median(high+low)/2, 5=typical(high+low+close)/3, 6=weighted(high+low+close+close)/4 extern int BarWidth = 1; //---- buffers double ExtMapBuffer1; double ExtMapBuffer2; double ExtMapBuffer3; //---- variables int MAMode; string strMAType; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { IndicatorBuffers(3); //---- drawing settings SetIndexBuffer(2,ExtMapBuffer1); SetIndexBuffer(1,ExtMapBuffer2); SetIndexBuffer(0,ExtMapBuffer3); SetIndexStyle(2,DRAW_ARROW,STYLE_SOLID,BarWidth); SetIndexArrow(0, 159); SetIndexStyle(1,DRAW_ARROW,STYLE_SOLID,BarWidth); SetIndexArrow(0, 159); SetIndexStyle(0,DRAW_NONE,STYLE_SOLID,BarWidth); SetIndexArrow(0, 159); switch (MAType) { case 1: strMAType="EMA"; MAMode=MODE_EMA; break; case 2: strMAType="SMMA"; MAMode=MODE_SMMA; break; case 3: strMAType="LWMA"; MAMode=MODE_LWMA; break; case 4: strMAType="LSMA"; break; default: strMAType="SMA"; MAMode=MODE_SMA; break; } IndicatorShortName( strMAType+ " (" +MAPeriod + ") "); //---- initialization done return(0); } //+------------------------------------------------------------------+ //| LSMA with PriceMode | //| PrMode 0=close, 1=open, 2=high, 3=low, 4=median(high+low)/2, | //| 5=typical(high+low+close)/3, 6=weighted(high+low+close+close)/4 | //+------------------------------------------------------------------+ double LSMA(int Rperiod, int prMode, int shift) { int i; double sum, pr; int length; double lengthvar; double tmp; double wt; length = Rperiod; sum = 0; for(i = length; i >= 1 ; i--) { lengthvar = length + 1; lengthvar /= 3; tmp = 0; switch (prMode) { case 0: pr = Close[length-i+shift];break; case 1: pr = Open[length-i+shift];break; case 2: pr = High[length-i+shift];break; case 3: pr = Low[length-i+shift];break; case 4: pr = (High[length-i+shift] + Low[length-i+shift])/2;break; case 5: pr = (High[length-i+shift] + Low[length-i+shift] + Close[length-i+shift])/3;break; case 6: pr = (High[length-i+shift] + Low[length-i+shift] + Close[length-i+shift] + Close[length-i+shift])/4;break; } tmp = ( i - lengthvar)*pr; sum+=tmp; } wt = sum*6/(length*(length+1)); return(wt); } int start() { double MA_Cur, MA_Prev; 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; for(int i=limit; i>=0; i--) { if (MAType == 4) { MA_Cur = LSMA(MAPeriod, MAAppliedPrice,i); MA_Prev = LSMA(MAPeriod, MAAppliedPrice,i+1); } else { MA_Cur = iMA(NULL,0,MAPeriod,0,MAMode, MAAppliedPrice,i); MA_Prev = iMA(NULL,0,MAPeriod,0,MAMode, MAAppliedPrice,i+1); } //========== COLOR CODING =========================================== ExtMapBuffer3 = MA_Cur; //red ExtMapBuffer2 = MA_Cur; //green ExtMapBuffer1 = MA_Cur; //yellow if (MA_Prev > MA_Cur) { ExtMapBuffer2 = EMPTY_VALUE; } else if (MA_Prev < MA_Cur) { ExtMapBuffer1 = EMPTY_VALUE; //-1 red/greem tight } else { ExtMapBuffer1=EMPTY_VALUE;//EMPTY_VALUE; ExtMapBuffer2=EMPTY_VALUE;//EMPTY_VALUE; } } return(0); }
TK29帖子1楼右侧xm竖版广告90-240
个性签名

雨打窗棂几度寒    夜色深深梦无边    孤影独坐红烛泪    灯火燃尽艳阳天

广告
TK30+TK31帖子一樓廣告
TK30+TK31帖子一樓廣告
dpxqs
注册时间2016-10-23
发表于:2018-08-18 11:18只看该作者
2楼
顶起,期待有人帮你
个性签名

韬客社区www.talkfx.co

本站免责声明:

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

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

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

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

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

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