论坛全局菜单下方 - TICKMILL 285X70论坛全局菜单下方 - ThinkMarkets285X70论坛全局菜单下方 - 荔枝返现285X70论坛全局菜单下方 -  icmarkets285X70
查看:1458回复:1
草龙
注册时间2004-12-17
[MT4指标]多均线指示条
楼主发表于:2014-08-11 02:32只看该作者倒序浏览
1楼 电梯直达
电梯直达
附图的mt4的指标 //+------------------------------------------------------------------+ //| Alex5757000 - Multi Moving Average v2.mq4 | //| Copyright ? 2010, Alex5757000, Alexander S. Sovpel\' | //| E-mail : [email protected] | //+------------------------------------------------------------------+ #property copyright \"Copyright ? 2010, Alex5757000, Alexander S. Sovpel\'\" #property link \"E-mail: [email protected]\" #property indicator_separate_window #property indicator_minimum 1.0 #property indicator_maximum 4.0 #property indicator_buffers 8 #property indicator_color1 DeepSkyBlue #property indicator_color2 Magenta #property indicator_color3 DeepSkyBlue #property indicator_color4 Magenta #property indicator_color5 DeepSkyBlue #property indicator_color6 Magenta #property indicator_color7 DeepSkyBlue #property indicator_color8 Magenta extern string MA_1 = \"The input parameters of the 1st moving average\"; extern int MA_1_TF = 1; // 吗屐屙眍? 桧蝈疴嚯 (Time Frame). 1 = M1; 5 = M5; 15 = M15; 30 = M30; 60 = H1; 240 = H4; 1440 = D1; extern int MA_1_Period = 89; // 襄痂钿 篑疱漤屙?? (Averaging period). extern int MA_1_Mode = MODE_LWMA; // 体蝾? 恹麒耠屙?? 耜铍 ? 泐 耩邃礤泐 (Averaging method). 0 = SMA; 1 = EMA; 2 = SSMA; 3 = LWMA; extern int MA_1_Price = PRICE_WEIGHTED; /* 锐镱朦珞屐?? 鲥磬 潆? 疣聍蛤? 耜铍 ? 泐 耩邃礤泐 (The type of the price used for calculaton of Moving Average). 0 = CLOSE, 1 = OPEN, 2 = HIGH, 3 = LOW, 4 = MEDIAN, 5 = TYPICAL, 6 = WEIGHTED */ extern string MA_2 = \"The input parameters of the 2nd moving average\"; extern int MA_2_TF = 5; // 吗屐屙眍? 桧蝈疴嚯 (Time Frame). 1 = M1; 5 = M5; 15 = M15; 30 = M30; 60 = H1; 240 = H4; 1440 = D1; extern int MA_2_Period = 55; // 襄痂钿 篑疱漤屙?? (Averaging period). extern int MA_2_Mode = MODE_LWMA; // 体蝾? 恹麒耠屙?? 耜铍 ? 泐 耩邃礤泐 (Averaging method). 0 = SMA; 1 = EMA; 2 = SSMA; 3 = LWMA; extern int MA_2_Price = PRICE_WEIGHTED; /* 锐镱朦珞屐?? 鲥磬 潆? 疣聍蛤? 耜铍 ? 泐 耩邃礤泐 (The type of the price used for calculaton of Moving Average). 0 = CLOSE, 1 = OPEN, 2 = HIGH, 3 = LOW, 4 = MEDIAN, 5 = TYPICAL, 6 = WEIGHTED */ extern string MA_3 = \"The input parameters of the 3rd moving average\"; extern int MA_3_TF = 15; // 吗屐屙眍? 桧蝈疴嚯 (Time Frame). 1 = M1; 5 = M5; 15 = M15; 30 = M30; 60 = H1; 240 = H4; 1440 = D1; extern int MA_3_Period = 34; // 襄痂钿 篑疱漤屙?? (Averaging period). extern int MA_3_Mode = MODE_LWMA; // 体蝾? 恹麒耠屙?? 耜铍 ? 泐 耩邃礤泐 (Averaging method). 0 = SMA; 1 = EMA; 2 = SSMA; 3 = LWMA; extern int MA_3_Price = PRICE_WEIGHTED; /* 锐镱朦珞屐?? 鲥磬 潆? 疣聍蛤? 耜铍 ? 泐 耩邃礤泐 (The type of the price used for calculaton of Moving Average). 0 = CLOSE, 1 = OPEN, 2 = HIGH, 3 = LOW, 4 = MEDIAN, 5 = TYPICAL, 6 = WEIGHTED */ extern string MA_4 = \"The input parameters of the 4th moving average\"; extern int MA_4_TF = 60; // 吗屐屙眍? 桧蝈疴嚯 (Time Frame). 1 = M1; 5 = M5; 15 = M15; 30 = M30; 60 = H1; 240 = H4; 1440 = D1; extern int MA_4_Period = 21; // 襄痂钿 篑疱漤屙?? (Averaging period). extern int MA_4_Mode = MODE_LWMA; // 体蝾? 恹麒耠屙?? 耜铍 ? 泐 耩邃礤泐 (Averaging method). 0 = SMA; 1 = EMA; 2 = SSMA; 3 = LWMA; extern int MA_4_Price = PRICE_WEIGHTED; /* 锐镱朦珞屐?? 鲥磬 潆? 疣聍蛤? 耜铍 ? 泐 耩邃礤泐 (The type of the price used for calculaton of Moving Average). 0 = CLOSE, 1 = OPEN, 2 = HIGH, 3 = LOW, 4 = MEDIAN, 5 = TYPICAL, 6 = WEIGHTED */ extern bool RangeGraphic = TRUE; // 蔓溴??螯 钺豚耱? 桧滂赅蝾疣 镳? 耦怙噤屙?? 磬镳噔脲龛? 溻桄屙?? 麇螓疱? 汤. extern color RangeColorUp = DarkBlue; extern color RangeColorDown = Maroon; extern bool RangeAlert = TRUE; // 离屦? 镳? 耦怙噤屙梃 磬镳噔脲龛? 溻桄屙?? 麇螓疱? 汤. extern string Visual = \"Display parameters\"; extern string Wingdings = \"0 || 1 || 2\"; extern int BarWingdings = 0; // 诣? 忤珞嚯桤圉梃: 0 = 赈噤疣?, 1 = 镳?祛筱铍 桕, 2 = 蝾麝?. extern int BarWidth = 0; // 翌膣桧?. extern color BarColorUp = indicator_color1; extern color BarColorDown = indicator_color2; int P1_Position = 4; int P2_Position = 3; int P3_Position = 2; int P4_Position = 1; extern double Gap = 0.6; extern string SetLabel = \"Labels setting\"; extern bool ShowLabel = TRUE; extern string V_Label= \"Vertical shift for text labels\"; extern double V_Shift = 0.5; // 洛痱桕嚯   皲忤? 蝈犟蝾忸? 戾蜿?. extern string H_Label = \"Horizontal shift for text labels\"; extern int H_Shift = 30; // 妙痂珙眚嚯   皲忤? 蝈犟蝾忸? 戾蜿?. extern string UP_DN = \"Moving average direction relative to the price: above/below\"; extern color TextColorUp = indicator_color1; extern color TextColorDown = indicator_color2; //+------------------------------------------------------------------+ string Label = \"\", ShortName; double MA1_Up_Buffer; double MA2_Up_Buffer; double MA3_Up_Buffer; double MA4_Up_Buffer; double MA1_Down_Buffer; double MA2_Down_Buffer; double MA3_Down_Buffer; double MA4_Down_Buffer; double MA1_0 = 0.0; double MA2_0 = 0.0; double MA3_0 = 0.0; double MA4_0 = 0.0; double MA1_1 = 0.0; double MA1_2 = 0.0; double MA1_3 = 0.0; double MA2_1 = 0.0; double MA2_2 = 0.0; double MA2_3 = 0.0; double MA3_1 = 0.0; double MA3_2 = 0.0; double MA3_3 = 0.0; double MA4_1 = 0.0; double MA4_2 = 0.0; double MA4_3 = 0.0; bool HavePlayedUp = FALSE; bool HavePlayedDown = FALSE; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { int WingdingsUp, WingdingsDown; switch(BarWingdings) { case 0 : WingdingsUp = 167; WingdingsDown = 167; break; case 1 : WingdingsUp = 250; WingdingsDown = 250; break; case 2 : WingdingsUp = 158; WingdingsDown = 158; break; default : Alert(WindowExpertName()+\" ERROR : Please enter the correct value for BarWingdings !\"); return(0); } SetIndexStyle (0, DRAW_ARROW, STYLE_SOLID, BarWidth, BarColorDown); SetIndexArrow (0, WingdingsUp); SetIndexBuffer(0, MA1_Up_Buffer); SetIndexEmptyValue(0, EMPTY_VALUE); SetIndexStyle (1, DRAW_ARROW, STYLE_SOLID, BarWidth, BarColorUp); SetIndexArrow (1, WingdingsDown); SetIndexBuffer(1, MA1_Down_Buffer); SetIndexEmptyValue(1, EMPTY_VALUE); SetIndexStyle (2, DRAW_ARROW, STYLE_SOLID, BarWidth, BarColorDown); SetIndexArrow (2, WingdingsUp); SetIndexBuffer(2, MA2_Up_Buffer); SetIndexEmptyValue(2, EMPTY_VALUE); SetIndexStyle (3, DRAW_ARROW, STYLE_SOLID, BarWidth, BarColorUp); SetIndexArrow (3, WingdingsDown); SetIndexBuffer(3, MA2_Down_Buffer); SetIndexEmptyValue(3, EMPTY_VALUE); SetIndexStyle (4, DRAW_ARROW, STYLE_SOLID, BarWidth, BarColorDown); SetIndexArrow (4, WingdingsUp); SetIndexBuffer(4, MA3_Up_Buffer); SetIndexEmptyValue(4, EMPTY_VALUE); SetIndexStyle (5, DRAW_ARROW, STYLE_SOLID, BarWidth, BarColorUp); SetIndexArrow (5, WingdingsDown); SetIndexBuffer(5, MA3_Down_Buffer); SetIndexEmptyValue(5, EMPTY_VALUE); SetIndexStyle (6, DRAW_ARROW, STYLE_SOLID, BarWidth, BarColorDown); SetIndexArrow (6, WingdingsUp); SetIndexBuffer(6, MA4_Up_Buffer); SetIndexEmptyValue(6, EMPTY_VALUE); SetIndexStyle (7, DRAW_ARROW, STYLE_SOLID, BarWidth, BarColorUp); SetIndexArrow (7, WingdingsDown); SetIndexBuffer(7, MA4_Down_Buffer); SetIndexEmptyValue(7, EMPTY_VALUE); SetIndexLabel(0, \"1st Up Buffer\"); SetIndexLabel(1, \"1st Down Buffer\"); SetIndexLabel(2, \"2nd Up Buffer\"); SetIndexLabel(3, \"2nd Down Buffer\"); SetIndexLabel(4, \"3rd Up Buffer\"); SetIndexLabel(5, \"3rd Down Buffer\"); SetIndexLabel(6, \"4th Up Buffer\"); SetIndexLabel(7, \"4th Down Buffer\"); IndicatorDigits(0); ShortName = \"Alex5757000 - Multi Moving Average v2\"; IndicatorShortName(ShortName); return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { int i; string Name = WindowFind(ShortName); for(i=1; i<=4; i++) { if(ObjectFind(\"Text_1 \" + Name + i)!=-1) ObjectDelete(\"Text_1 \" + Name + i); if(ObjectFind(\"Text_2 \" + Name + i)!=-1) ObjectDelete(\"Text_2 \" + Name + i); if(ObjectFind(\"Text_3 \" + Name + i)!=-1) ObjectDelete(\"Text_3 \" + Name + i); } for(i=1; i<=10; i++) { if(ObjectFind(\"Intro_\" + i)!=-1) ObjectDelete(\"Intro_\" + i); } if(ObjectFind(\"RectangleUp\")==WindowFind(WindowExpertName())) ObjectDelete(\"RectangleUp\"); if(ObjectFind(\"RectangleDown\")==WindowFind(WindowExpertName())) ObjectDelete(\"RectangleDown\"); GlobalVariableDel(\"INTRO\"); return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { datetime TimeArray_1, TimeArray_2, TimeArray_3, TimeArray_4; int CountedBars = IndicatorCounted(), i, y; // 镳钼屦赅 磬 忸珈铈睇? 铠栳觇. if(CountedBars<0) return(-1); // 镱耠邃龛? 镱聍栩囗睇? 徉? 狍溴? 镥疱聍栩囗. if(CountedBars>0) CountedBars--; int Limit = Bars - CountedBars; color TextColor_1, TextColor_2, TextColor_3, TextColor_4; //+------------------------------------------------------------------+ if(MA_1_TF < Period()) MA_1_TF = Period(); ArrayCopySeries(TimeArray_1,MODE_TIME,Symbol(),MA_1_TF); for(i=0, y=0; y<=Limit; y++) { while(Time[y] < TimeArray_1) i++; MA1_1 = iMA(NULL, MA_1_TF, MA_1_Period, 0, MA_1_Mode, MA_1_Price, i); MA1_2 = iMA(NULL, MA_1_TF, MA_1_Period, 0, MA_1_Mode, MA_1_Price, i+1); MA1_3 = iMA(NULL, MA_1_TF, MA_1_Period, 0, MA_1_Mode, MA_1_Price, i+2); MA1_1 = iMA(NULL, MA_1_TF, MA_1_Period, 0, MA_1_Mode, MA_1_Price, i); MA1_2 = iMA(NULL, MA_1_TF, MA_1_Period, 0, MA_1_Mode, MA_1_Price, i+1); MA1_3 = iMA(NULL, MA_1_TF, MA_1_Period, 0, MA_1_Mode, MA_1_Price, i+2); MA1_0 = iMA(NULL, MA_1_TF, 1, 0, MA_1_Mode, MA_1_Price, i); MA1_Up_Buffer[y] = EMPTY_VALUE; MA1_Down_Buffer[y] = EMPTY_VALUE; if(MA1_1 < MA1_2) MA1_Up_Buffer[y] = Gap * P1_Position + 1.0; else MA1_Down_Buffer[y] = Gap * P1_Position + 1.0; if(MA1_1 < MA1_0) TextColor_1 = TextColorUp; else TextColor_1 = TextColorDown; } //+------------------------------------------------------------------+ if(MA_2_TF < Period()) MA_2_TF = Period(); ArrayCopySeries(TimeArray_2,MODE_TIME,Symbol(),MA_2_TF); for(i=0, y=0; y<=Limit; y++) { while(Time[y] < TimeArray_2) i++; MA2_1 = iMA(NULL, MA_2_TF, MA_2_Period, 0, MA_2_Mode, MA_2_Price, i); MA2_2 = iMA(NULL, MA_2_TF, MA_2_Period, 0, MA_2_Mode, MA_2_Price, i+1); MA2_3 = iMA(NULL, MA_2_TF, MA_2_Period, 0, MA_2_Mode, MA_2_Price, i+2); MA2_0 = iMA(NULL, MA_2_TF, 1, 0, MA_2_Mode, MA_2_Price, i); MA2_Up_Buffer[y] = EMPTY_VALUE; MA2_Down_Buffer[y] = EMPTY_VALUE; if(MA2_1 < MA2_2) MA2_Up_Buffer[y] = Gap * P2_Position + 1.0; else MA2_Down_Buffer[y] = Gap * P2_Position + 1.0; if(MA2_1 < MA2_0) TextColor_2 = TextColorUp; else TextColor_2 = TextColorDown; } //+------------------------------------------------------------------+ if(MA_3_TF < Period()) MA_3_TF = Period(); ArrayCopySeries(TimeArray_3,MODE_TIME,Symbol(),MA_3_TF); for(i=0, y=0; y<=Limit; y++) { while(Time[y] < TimeArray_3) i++; MA3_1 = iMA(NULL, MA_3_TF, MA_3_Period, 0, MA_3_Mode, MA_3_Price, i); MA3_2 = iMA(NULL, MA_3_TF, MA_3_Period, 0, MA_3_Mode, MA_3_Price, i+1); MA3_3 = iMA(NULL, MA_3_TF, MA_3_Period, 0, MA_3_Mode, MA_3_Price, i+2); MA3_0 = iMA(NULL, MA_3_TF, 1, 0, MA_3_Mode, MA_3_Price, i); MA3_Up_Buffer[y] = EMPTY_VALUE; MA3_Down_Buffer[y] = EMPTY_VALUE; if(MA3_1 < MA3_2) MA3_Up_Buffer[y] = Gap * P3_Position + 1.0; else MA3_Down_Buffer[y] = Gap * P3_Position + 1.0; if(MA3_1 < MA3_0) TextColor_3 = TextColorUp; else TextColor_3 = TextColorDown; } //+------------------------------------------------------------------+ if(MA_4_TF < Period()) MA_4_TF = Period(); ArrayCopySeries(TimeArray_4,MODE_TIME,Symbol(),MA_4_TF); for(i=0, y=0; y<=Limit; y++) { while(Time[y] < TimeArray_4) i++; MA4_1 = iMA(NULL, MA_4_TF, MA_4_Period, 0, MA_4_Mode, MA_4_Price, i); MA4_2 = iMA(NULL, MA_4_TF, MA_4_Period, 0, MA_4_Mode, MA_4_Price, i+1); MA4_3 = iMA(NULL, MA_4_TF, MA_4_Period, 0, MA_4_Mode, MA_4_Price, i+2); MA4_0 = iMA(NULL, MA_4_TF, 1, 0, MA_4_Mode, MA_4_Price, i); MA4_Up_Buffer[y] = EMPTY_VALUE; MA4_Down_Buffer[y] = EMPTY_VALUE; if(MA4_1 < MA4_2) MA4_Up_Buffer[y] = Gap * P4_Position + 1.0; else MA4_Down_Buffer[y] = Gap * P4_Position + 1.0; if(MA4_1 < MA1_0) TextColor_4 = TextColorUp; else TextColor_4 = TextColorDown; } if(MA1_Up_Buffer[0]!=EMPTY_VALUE && MA2_Up_Buffer[0]!=EMPTY_VALUE && MA3_Up_Buffer[0]!=EMPTY_VALUE && MA4_Up_Buffer[0]!=EMPTY_VALUE && RangeAlert==TRUE) { if(!HavePlayedUp) { PlaySound(\"wait.wav\"); HavePlayedUp = TRUE; } } else HavePlayedUp = FALSE; if(MA1_Down_Buffer[0]!=EMPTY_VALUE && MA2_Down_Buffer[0]!=EMPTY_VALUE && MA3_Down_Buffer[0]!=EMPTY_VALUE && MA4_Down_Buffer[0]!=EMPTY_VALUE && RangeAlert==TRUE) { if(!HavePlayedDown) { PlaySound(\"wait.wav\"); HavePlayedDown = TRUE; } } else HavePlayedDown = FALSE; //+------------------------------------------------------------------+ if(ShowLabel) LabelSet(TextColor_1, TextColor_2, TextColor_3, TextColor_4); //+------------------------------------------------------------------+ if(RangeGraphic) { if(MA1_Up_Buffer[0]!=EMPTY_VALUE && MA2_Up_Buffer[0]!=EMPTY_VALUE && MA3_Up_Buffer[0]!=EMPTY_VALUE && MA4_Up_Buffer[0]!=EMPTY_VALUE) RangeGraphic(\"RectangleUp\", RangeColorDown); else { if(ObjectFind(\"RectangleUp\")==WindowFind(WindowExpertName())) ObjectDelete(\"RectangleUp\"); } if(MA1_Down_Buffer[0]!=EMPTY_VALUE && MA2_Down_Buffer[0]!=EMPTY_VALUE && MA3_Down_Buffer[0]!=EMPTY_VALUE && MA4_Down_Buffer[0]!=EMPTY_VALUE) RangeGraphic(\"RectangleDown\", RangeColorUp); else { if(ObjectFind(\"RectangleDown\")==WindowFind(WindowExpertName())) ObjectDelete(\"RectangleDown\"); } } else { if(ObjectFind(\"RectangleUp\")==WindowFind(WindowExpertName())) ObjectDelete(\"RectangleUp\"); if(ObjectFind(\"RectangleDown\")==WindowFind(WindowExpertName())) ObjectDelete(\"RectangleDown\"); } //+------------------------------------------------------------------+ return(0); } //+------------------------------------------------------------------+ int LabelSet(color TextColor_1, color TextColor_2, color TextColor_3, color TextColor_4) { int i; double Price, ID = Time[0] - Time[1]; string Name, Text_1, Text_2, Text_3; color TextColor; if(ShowLabel==TRUE) { for(i=1; i<=4; i++) { switch(i) { case 1: Text_1 = TimeFrame(MA_1_TF); Text_2 = Mode(MA_1_Mode); Text_3 = MA_1_Period; Price = Gap * P1_Position + 1.0 + V_Shift; TextColor = TextColor_1; break; case 2: Text_1 = TimeFrame(MA_2_TF); Text_2 = Mode(MA_2_Mode); Text_3 = MA_2_Period; Price = Gap * P2_Position + 1.0 + V_Shift; TextColor = TextColor_2; break; case 3: Text_1 = TimeFrame(MA_3_TF); Text_2 = Mode(MA_3_Mode); Text_3 = MA_3_Period; Price = Gap * P3_Position + 1.0 + V_Shift; TextColor = TextColor_3; break; case 4: Text_1 = TimeFrame(MA_4_TF); Text_2 = Mode(MA_4_Mode); Text_3 = MA_4_Period; Price = Gap * P4_Position + 1.0 + V_Shift; TextColor = TextColor_4; } Name = WindowFind(ShortName); NewBar(Name); if(ObjectFind(\"Text_1 \" + Name + i)==-1) ObjectCreate(\"Text_1 \" + Name + i, OBJ_TEXT, WindowFind(ShortName), iTime(NULL, 0, 0) + ID * H_Shift, Price); ObjectSetText(\"Text_1 \" + Name + i, Text_1, 8, \"Arial Bold\", TextColor); if(ObjectFind(\"Text_2 \" + Name + i)==-1) ObjectCreate(\"Text_2 \" + Name + i, OBJ_TEXT, WindowFind(ShortName), iTime(NULL, 0, 0) + 1.5 * ID * H_Shift, Price); ObjectSetText(\"Text_2 \" + Name + i, Text_2, 8, \"Arial Bold\", TextColor); if(ObjectFind(\"Text_3 \" + Name + i)==-1) ObjectCreate(\"Text_3 \" + Name + i, OBJ_TEXT, WindowFind(ShortName), iTime(NULL, 0, 0) + 2.0 * ID * H_Shift, Price); ObjectSetText(\"Text_3 \" + Name + i, Text_3, 8, \"Arial Bold\", TextColor); } } return(0); } //+------------------------------------------------------------------+ string TimeFrame(int TF) { if(TF == 1 || (TF == 0 && Period() == PERIOD_M1 )) return (\"M1\" ); if(TF == 5 || (TF == 0 && Period() == PERIOD_M5 )) return (\"M5\" ); if(TF == 15 || (TF == 0 && Period() == PERIOD_M15)) return (\"M15\"); if(TF == 30 || (TF == 0 && Period() == PERIOD_M30)) return (\"M30\"); if(TF == 60 || (TF == 0 && Period() == PERIOD_H1 )) return (\"H1\" ); if(TF == 240 || (TF == 0 && Period() == PERIOD_H4 )) return (\"H4\" ); if(TF == 1440 || (TF == 0 && Period() == PERIOD_D1 )) return (\"D1\" ); if(TF == 10080 || (TF == 0 && Period() == PERIOD_W1 )) return (\"W1\" ); if(TF == 43200 || (TF == 0 && Period() == PERIOD_MN1)) return (\"MN\" ); } //+------------------------------------------------------------------+ string Mode(int MA_Mode) { switch(MA_Mode) { case 0 : return(\"SMA\"); break; case 1 : return(\"EMA\"); break; case 2 : return(\"SSMA\"); break; case 3 : return(\"LWMA\"); //---- default : Alert(WindowExpertName()+\" ERROR : Please enter the correct value for MA_Mode !\"); return(0); } } //+------------------------------------------------------------------+ bool NewBar(string Name) { static int PrevTime =0; if(PrevTime==iTime(NULL,0,0)) return(FALSE); PrevTime=iTime(NULL,0,0); for(int i=1; i<=4; i++) { ObjectDelete(\"Text_1 \" + Name + i); ObjectDelete(\"Text_2 \" + Name + i); ObjectDelete(\"Text_3 \" + Name + i); } return(TRUE); } //+------------------------------------------------------------------+ void RangeGraphic(string Name, color Color) { datetime Time_1 = iTime(Symbol(), Period(), Bars); datetime Time_2 = iTime(Symbol(), Period(), 0) + TimeCurrent(); double Price_1 = 1; double Price_2 = 4; ObjectCreate(Name, OBJ_RECTANGLE, WindowFind(WindowExpertName()), Time_1, Price_1, Time_2, Price_2); ObjectSet(Name, OBJPROP_COLOR, Color); } //+------------------------------------------------------------------+
TK29帖子1楼右侧xm竖版广告90-240
个性签名

阅尽天下指标
搬砖开始,始于2014

广告
TK30+TK31帖子一樓廣告
TK30+TK31帖子一樓廣告
liangziABC
注册时间2018-05-18
发表于:2018-05-24 01:29只看该作者
2楼
什么东西?

本站免责声明:

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

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

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

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

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

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