bamik Posted December 17, 2009 Report Share Posted December 17, 2009 Please recommend some Multi time frame(MTF) indicator for recognition trend. [-O< :shand: Please don't tell me about any repaint indicator. ;) Thanks Quote Link to comment Share on other sites More sharing options...
Rick-novice Posted December 17, 2009 Report Share Posted December 17, 2009 Re: Multi time frame indicator requested I was recommended this- maybe good? //+------------------------------------------------------------------+ //| #MTF Supertrend line.mq4 | //| Copyright © 2006, Eli hayun | //| [url]http://www.elihayun.com[/url] | //+------------------------------------------------------------------+ #property copyright "Copyright © 2006, Eli hayun" #property link "http://www.elihayun.com" #property indicator_chart_window #property indicator_buffers 8 #property indicator_color1 Red #property indicator_color2 Blue #property indicator_color3 Red #property indicator_color4 Blue #property indicator_color5 Red #property indicator_color6 Blue #property indicator_color7 Red #property indicator_color8 Blue //---- buffers double buf_up1D[]; double buf_down1D[]; double buf_up4H[]; double buf_down4H[]; double buf_up1H[]; double buf_down1H[]; double buf_up30M[]; double buf_down30M[]; extern int Period_1 = PERIOD_M15; extern int Period_2 = PERIOD_M30; extern int Period_3 = PERIOD_H1; extern int Period_4 = PERIOD_H4; extern bool AutoDisplay = true; extern bool display_Period_1 = true; extern bool display_Period_2 = true; extern bool display_Period_3 = true; extern bool display_Period_4 = true; extern bool Play_Sound = true; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators if (AutoDisplay) { display_Period_1 = false; display_Period_2 = false; display_Period_3 = false; display_Period_4 = false; switch (Period()) { case PERIOD_M1 : SetValues(PERIOD_M1, PERIOD_M5, PERIOD_M15,PERIOD_M30, true, true, false, false); break; case PERIOD_M5 : SetValues(PERIOD_M5, PERIOD_M15,PERIOD_M30,PERIOD_H1, true, true, false, false); break; case PERIOD_M15 : SetValues(PERIOD_M5, PERIOD_M15,PERIOD_M30,PERIOD_H1, true, true, true, false); break; case PERIOD_M30 : SetValues(PERIOD_M5, PERIOD_M15,PERIOD_M30,PERIOD_H1, false, true, true, false); break; case PERIOD_H1 : SetValues(PERIOD_M15, PERIOD_M30,PERIOD_H1, PERIOD_H4, false, false, true, true); break; case PERIOD_H4 : SetValues(PERIOD_M30, PERIOD_H1, PERIOD_H4, PERIOD_D1, false, true, true, true); break; case PERIOD_D1 : SetValues(PERIOD_H1, PERIOD_H4, PERIOD_D1, PERIOD_W1, true, true, true, false); break; case PERIOD_W1 : SetValues(PERIOD_H4, PERIOD_D1, PERIOD_W1, PERIOD_MN1, false, true, true, false); break; case PERIOD_MN1 : SetValues(PERIOD_H4, PERIOD_D1, PERIOD_W1, PERIOD_MN1, false, false, true, true); break; } } int draw = DRAW_LINE; if (!display_Period_4) draw = DRAW_NONE; SetIndexStyle(0,draw, STYLE_SOLID, 4); SetIndexBuffer(0,buf_up1D); SetIndexStyle(1,draw, STYLE_SOLID, 4); SetIndexBuffer(1,buf_down1D); SetIndexLabel(0, tf2txt(Period_4)); SetIndexLabel(1, tf2txt(Period_4)); draw = DRAW_LINE; if (!display_Period_3) draw = DRAW_NONE; SetIndexStyle(2,draw, STYLE_SOLID, 3); SetIndexBuffer(2,buf_up4H); SetIndexStyle(3,draw, STYLE_SOLID, 3); SetIndexBuffer(3,buf_down4H); SetIndexLabel(2, tf2txt(Period_3)); SetIndexLabel(3, tf2txt(Period_3)); draw = DRAW_LINE; if (!display_Period_2) draw = DRAW_NONE; SetIndexStyle(4,draw, STYLE_SOLID, 2); SetIndexBuffer(4,buf_up1H); SetIndexStyle(5,draw, STYLE_SOLID, 2); SetIndexBuffer(5,buf_down1H); SetIndexLabel(4, tf2txt(Period_2)); SetIndexLabel(5, tf2txt(Period_2)); draw = DRAW_LINE; if (!display_Period_1) draw = DRAW_NONE; SetIndexStyle(6,draw, STYLE_SOLID, 1); SetIndexBuffer(6,buf_up30M); SetIndexStyle(7,draw, STYLE_SOLID, 1); SetIndexBuffer(7,buf_down30M); SetIndexLabel(6, tf2txt(Period_1)); SetIndexLabel(7, tf2txt(Period_1)); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int counted_bars=IndicatorCounted(); int i=0, y1d=0, y4h=0, y1h=0, y30m=0; int limit=Bars-counted_bars; datetime TimeArray_1D[] ,TimeArray_4H[], TimeArray_1H[], TimeArray_30M[]; //---- ArrayCopySeries(TimeArray_1D,MODE_TIME,Symbol(),Period_4); ArrayCopySeries(TimeArray_4H,MODE_TIME,Symbol(),Period_3); ArrayCopySeries(TimeArray_1H,MODE_TIME,Symbol(),Period_2); ArrayCopySeries(TimeArray_30M,MODE_TIME,Symbol(),Period_1); for(i=0, y1d=0, y4h=0, y1h=0, y30m=0;i<limit;i++) { if (Time[i]<TimeArray_1D[y1d]) y1d++; if (Time[i]<TimeArray_4H[y4h]) y4h++; if (Time[i]<TimeArray_1H[y1h]) y1h++; if (Time[i]<TimeArray_30M[y30m]) y30m++; buf_up1D[i] = iCustom(NULL, Period_4, "SuperTrend", false, 1, y1d); buf_down1D[i] = iCustom(NULL, Period_4, "SuperTrend", false, 0, y1d); if (i < 2) { SoundAlarm(buf_up1D[i] , iCustom(NULL, Period_4, "SuperTrend", false, 1, y1d+1), 4, "Down"); SoundAlarm(buf_down1D[i] , iCustom(NULL, Period_4, "SuperTrend", false, 0, y1d+1), 4, "Up"); } buf_up4H[i] = iCustom(NULL, Period_3, "SuperTrend", false, 1, y4h); buf_down4H[i] = iCustom(NULL, Period_3, "SuperTrend", false, 0, y4h); if (i < 2) { SoundAlarm(buf_up4H[i] , iCustom(NULL, Period_3, "SuperTrend", false, 1, y4h+1), 3, "Down"); SoundAlarm(buf_down4H[i] , iCustom(NULL, Period_3, "SuperTrend", false, 0, y4h+1), 3, "Up"); } buf_up1H[i] = iCustom(NULL, Period_2, "SuperTrend", false, 1, y1h); buf_down1H[i] = iCustom(NULL, Period_2, "SuperTrend", false, 0, y1h); if (i < 2) { SoundAlarm(buf_up1H[i] , iCustom(NULL, Period_2, "SuperTrend", false, 1, y1h+1), 2, "Down"); SoundAlarm(buf_down1H[i] , iCustom(NULL, Period_2, "SuperTrend", false, 0, y1h+1), 2, "Up"); } buf_up30M[i] = iCustom(NULL, Period_1, "SuperTrend", false, 1, y30m); buf_down30M[i] = iCustom(NULL, Period_1, "SuperTrend", false, 0, y30m); if (i < 2) { SoundAlarm(buf_up30M[i] , iCustom(NULL, Period_1, "SuperTrend", false, 1, y30m+1), 1, "Down"); SoundAlarm(buf_down30M[i] , iCustom(NULL, Period_1, "SuperTrend", false, 0, y30m+1), 1, "Up"); } } //---- return(0); } //+------------------------------------------------------------------+ void SoundAlarm(double v1, double v2, int prd, string sDir) { bool bDisplay = true; string sPrd = ""; static bool bAlreadyAlarm = true; if (NewBar()) bAlreadyAlarm = false; switch ( prd ) { case 4 : bDisplay = display_Period_4; sPrd = tf2txt(Period_3); break; case 3 : bDisplay = display_Period_3; sPrd = tf2txt(Period_3); break; case 2 : bDisplay = display_Period_2; sPrd = tf2txt(Period_2); break; case 1 : bDisplay = display_Period_1; sPrd = tf2txt(Period_1); break; } if ((!Play_Sound) || (!bDisplay) || bAlreadyAlarm) return; if ((v1 != EMPTY_VALUE) && (v2 == EMPTY_VALUE)) { Print("SuperTrend changed direction to " ,sDir, " at ", sPrd); // , " ",v1," ",v2," ",prd); PlaySound("alert.wav"); bAlreadyAlarm = true; } } bool NewBar() { static datetime dt = 0; if (Time[0] != dt) { dt = Time[0]; return(true); } return(false); } string tf2txt(int tf) { if (tf == PERIOD_M1) return("M1"); if (tf == PERIOD_M5) return("M5"); if (tf == PERIOD_M15) return("M15"); if (tf == PERIOD_M30) return("M30"); if (tf == PERIOD_H1) return("H1"); if (tf == PERIOD_H4) return("H4"); if (tf == PERIOD_D1) return("D1"); if (tf == PERIOD_W1) return("W1"); if (tf == PERIOD_MN1) return("MN1"); return("??"); } void SetValues(int p1, int p2, int p3, int p4, bool d1, bool d2, bool d3, bool d4) { display_Period_1 = d1; display_Period_2 = d2; display_Period_3 = d3; display_Period_4 = d4; Period_1 = p1; Period_2 = p2; Period_3 = p3; Period_4 = p4; } Quote Link to comment Share on other sites More sharing options...
bamik Posted December 18, 2009 Author Report Share Posted December 18, 2009 Re: Multi time frame indicator requested Kudo for you Rick-novice for sharing but this indicator needs SuperTrend.ex4 . Please upload this indicator. Quote Link to comment Share on other sites More sharing options...
atilapires Posted December 18, 2009 Report Share Posted December 18, 2009 Re: Multi time frame indicator requested hello someone help me, add option alerts. very good indicator http://www.mediafire.com/?knmujndhzye Quote Link to comment Share on other sites More sharing options...
chetachukwu Posted December 18, 2009 Report Share Posted December 18, 2009 Re: Multi time frame indicator requested Who knows if MTF_WPR.mq4 repaints? Quote .....SELFISHNESS IS A DISEASE..... Link to comment Share on other sites More sharing options...
bamik Posted December 18, 2009 Author Report Share Posted December 18, 2009 Re: Multi time frame indicator requested I am mt4 novice bamik. Can you please show me in code above where it calls SuperTrend.ex4 My friend when you making an MTF indicator from an indicator you need to have that base indicator in your folder indicator of MT4. However,look at here that MTF indicator call base indicator: buf_up1D[i] = iCustom(NULL, Period_4, "[size=150]SuperTrend[/size]", false, 1, y1d); buf_down1D[i] = iCustom(NULL, Period_4, "[size=150]SuperTrend[/size]", false, 0, y1d); if (i < 2) { SoundAlarm(buf_up1D[i] , iCustom(NULL, Period_4, "[size=150]SuperTrend[/size]", false, 1, y1d+1), 4, "Down"); SoundAlarm(buf_down1D[i] , iCustom(NULL, Period_4, "[size=150]SuperTrend[/size]", false, 0, y1d+1), 4, "Up"); } buf_up4H[i] = iCustom(NULL, Period_3, "[size=150]SuperTrend[/size]", false, 1, y4h); buf_down4H[i] = iCustom(NULL, Period_3, "[size=150]SuperTrend[/size]", false, 0, y4h); if (i < 2) { SoundAlarm(buf_up4H[i] , iCustom(NULL, Period_3, "[size=150]SuperTrend[/size]", false, 1, y4h+1), 3, "Down"); SoundAlarm(buf_down4H[i] , iCustom(NULL, Period_3, "[size=150]SuperTrend[/size]", false, 0, y4h+1), 3, "Up"); } buf_up1H[i] = iCustom(NULL, Period_2, "[size=150]SuperTrend[/size]", false, 1, y1h); buf_down1H[i] = iCustom(NULL, Period_2, "[size=150]SuperTrend[/size]", false, 0, y1h); if (i < 2) { SoundAlarm(buf_up1H[i] , iCustom(NULL, Period_2, "[size=150]SuperTrend[/size]", false, 1, y1h+1), 2, "Down"); SoundAlarm(buf_down1H[i] , iCustom(NULL, Period_2, "[size=150]SuperTrend[/size]", false, 0, y1h+1), 2, "Up"); } buf_up30M[i] = iCustom(NULL, Period_1, "[size=150]SuperTrend[/size]", false, 1, y30m); buf_down30M[i] = iCustom(NULL, Period_1, "[size=150]SuperTrend[/size]", false, 0, y30m); if (i < 2) { SoundAlarm(buf_up30M[i] , iCustom(NULL, Period_1, "[size=150]SuperTrend[/size]", false, 1, y30m+1), 1, "Down"); SoundAlarm(buf_down30M[i] , iCustom(NULL, Period_1, "[size=150]SuperTrend[/size]", false, 0, y30m+1), 1, "Up"); } } Quote Link to comment Share on other sites More sharing options...
dannydon786 Posted October 13, 2011 Report Share Posted October 13, 2011 hello someone help me, add option alerts. very good indicator http://www.mediafire.com/?knmujndhzye link invalid please laod again Quote Link to comment Share on other sites More sharing options...
value_ Posted October 13, 2011 Report Share Posted October 13, 2011 For a start you can play with them. (But i haven't upload the base indicators) http://www.mediafire.com/?2pc1brly9rl7biv dannydon786, Sesshoumaru and taipan 3 Quote Link to comment Share on other sites More sharing options...
kkrishna79 Posted April 7, 2015 Report Share Posted April 7, 2015 (edited) Hello Somebody can code value of supertrend of all time frame in single window of metatrader if in 5min its Price above supertrend than green colour and 15 min price is below supertrend than value in Red colour. All TIMEFRAME Value in single window dont have to scroll to everytime frame to see the value Hope somebody have the code. Thankyou Krisna Edited April 7, 2015 by kkrishna79 Quote Link to comment Share on other sites More sharing options...
CashManic Posted April 10, 2015 Report Share Posted April 10, 2015 (edited) Krishna, have a look and test this This is the work of xaphod If you have specific questions about the indicators or if you want mq4 indicators to make an EA, you have to ask him on his website.www.xaphod.com. Now regarding so called "repainting". MTF indicators will update/redraw all bars on the lower time-frame that represent the open higher time-frame bar until the higher time-frame bar closes. This is normal and expected behavior for an MTF indicator. You can use the 'xSuperTrend Alert' Indicator to give alerts for any timeframe you wish. You will have to add it to your chart in addition to the xSuperTrend indicator you are using. All bars on the chart associated with a higher time-frame bar that is open will continue to update with the current status of the higher time-frame supertrend until that bar closes. Krishna, I think it would be easier for you to understand the nature of MTF indicators and the repainting which it is often accused of, is to just remember "that MTF indicators update/redraw all bars on the lower time-frame that represent the open higher time-frame bar until the higher time-frame barcloses. This is normal and expected behavior for an MTF indicator." That's a quote from Xaphod himself. XSupertrend Pack.zip (40.95KB) https://www.sendspace.com/file/3wg5t3 Includes (all ex4 files) xSupertrendMTF xSupertrendAlert xSupertrendCandles xSupertrendTapeMTF xSuperTrend xSupertrendTape TF Slicer xSuperTrend.tpl (template) Edited April 11, 2015 by CashManic ⭐ whinny, grego123, taipan and 4 others 7 Quote Link to comment Share on other sites More sharing options...
Darktrader Posted April 10, 2015 Report Share Posted April 10, 2015 Thanks Cash, reminds me of the XXX system hehe:) The template file is handy too CashManic 1 Quote Link to comment Share on other sites More sharing options...
CashManic Posted April 11, 2015 Report Share Posted April 11, 2015 Thanks Cash, reminds me of the XXX system hehe:) The template file is handy too Buddy boy, Yes xSupertrendCandles is also used in the XXX system,but other than that everything else is different, in fact both systems complement each other! estabania 1 Quote Link to comment Share on other sites More sharing options...
kkrishna79 Posted April 13, 2015 Report Share Posted April 13, 2015 Thankyou so much i will look into it. Thanks for your effort sir CashManic 1 Quote Link to comment Share on other sites More sharing options...
janina21 Posted April 19, 2018 Report Share Posted April 19, 2018 Krishna, have a look and test this This is the work of xaphod If you have specific questions about the indicators or if you want mq4 indicators to make an EA, you have to ask him on his website.www.xaphod.com. Now regarding so called "repainting". MTF indicators will update/redraw all bars on the lower time-frame that represent the open higher time-frame bar until the higher time-frame bar closes. This is normal and expected behavior for an MTF indicator. You can use the 'xSuperTrend Alert' Indicator to give alerts for any timeframe you wish. You will have to add it to your chart in addition to the xSuperTrend indicator you are using. All bars on the chart associated with a higher time-frame bar that is open will continue to update with the current status of the higher time-frame supertrend until that bar closes. Krishna, I think it would be easier for you to understand the nature of MTF indicators and the repainting which it is often accused of, is to just remember "that MTF indicators update/redraw all bars on the lower time-frame that represent the open higher time-frame bar until the higher time-frame barcloses. This is normal and expected behavior for an MTF indicator." That's a quote from Xaphod himself. XSupertrend Pack.zip (40.95KB) https://www.sendspace.com/file/3wg5t3 Includes (all ex4 files) xSupertrendMTF xSupertrendAlert xSupertrendCandles xSupertrendTapeMTF xSuperTrend xSupertrendTape TF Slicer xSuperTrend.tpl (template) Thank you . Quote Link to comment Share on other sites More sharing options...
⭐ laser1000it Posted April 19, 2018 Report Share Posted April 19, 2018 Thank you . You are a very Mandrake if you have uploaded from a not working link. :) Quote Link to comment Share on other sites More sharing options...
AnU Posted June 30, 2018 Report Share Posted June 30, 2018 https://www.sendspace.com/file/bgbaek :) ⭐ juisen25 and keviboy 2 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.