
You are missing trading opportunities:
- Free trading apps
- Over 8,000 signals for copying
- Economic news for exploring financial markets
Registration
Log in
You agree to website policy and terms of use
If you do not have an account, please register
mtf demarker
anyone has a working mtf demarker indicator?
thanks
anyone has a working mtf demarker indicator? thanks
You can try this version, works with standard DeMarker.
You can try this version, works with standard DeMarker.
doesn't work. i put 2 mtf demarker on a h4 chart. settings period 2, tf 1440 and period 3, tf 1440. both show the same graph.
demarker with alarm
hello:
i am use yesterday demarker indicator , thats great!
can make this indicator with alarm??
for example:
if MTF_Demarker (0) > 0.7 and MTF_Demarker(15)>0.7 BUY and alarm
if MTF_Demarker (0) < 0.3 and MTF_Demarker(15)<0.3 SELL and alarm
thanks in advance!
Making MTF indicators
I was wondering if someone could show me how to make indicators MTF. I can do basic coding but don't know how to convert a standard indicator to MTF. I have a bunch I want to do and want to learn how to do it myself. Thanks in advance.
EDIT: Never mind. Figured it out.
I was wondering if someone could show me how to make indicators MTF. I can do basic coding but don't know how to convert a standard indicator to MTF. I have a bunch I want to do and want to learn how to do it myself. Thanks in advance. EDIT: Never mind. Figured it out.
Start by reading the first posts. Its easy explained.
Mtf_wpr
i am testing my system with MTF_WPR indicator is very useful.
somebody can attach alarm to this indicator ?
for example:
if MTF_WPR(tf=0)>-20 & MTF_WPR(tf=15)>-20 then BUY &ALARM
if MTF_WPR(tf=0)<-80 & MTF_WPR(tf=15)<-80 then SELL &ALARM
thx
You can try this version, works with standard DeMarker.
doesn't work. i put 2 mtf demarker on a h4 chart. settings period 2, tf 1440 and period 3, tf 1440. both show the same graph.
in MTF DeMarker.mq4 (3.0 KB) just add period control in line83:
ExtDeMarkerMapBuffer=iCustom(NULL,TimeFrame,"DeMarker",ExtDeMarkerPeriod,0,y);
in MTF DeMarker.mq4 (3.0 KB) just add period control in line83: ExtDeMarkerMapBuffer=iCustom(NULL,TimeFrame,"DeMarker",ExtDeMarkerPeriod,0,y);
thank-you very much. it works!!
Any Idea on Why Not Updating?
Hello. I apologize not showing graphic or loading indi. I guess I'm not allowed to post files yet. I'm sorry so I have to cut and paste code instead.
This indi called QQE_Alert_MTF_v5a is a MTF QQE. It doesn't update. I tried the Period () mod to get it to update but no luck. If you put it on a 1 min chart and set the indicator for 15 minutes, let it run for a while you can see what happens.
I had to shorten the indi because I exceeded the FXTSDMB character limit, on this one. The second part is in the next reply.
I apologize for making it difficult. Thank you.
QQE_Alert_MTF_v5a
#property indicator_separate_window
#property indicator_levelcolor Red
#property indicator_levelstyle 0
#property indicator_buffers 3
#property indicator_color1 Blue
#property indicator_color2 CLR_NONE
#property indicator_color3 Black
#property indicator_width1 2
#property indicator_level1 50.0
double g_ibuf_76[];
double g_ibuf_80[];
double g_ibuf_84[];
double g_ibuf_88[];
double g_ibuf_92[];
double g_ibuf_96[];
double g_ibuf_100[];
double g_ibuf_104[];
extern int Smoothing = 5;
extern int TimeFrame = 0;
extern string ALERTS = "------------------------------------------------------";
extern bool CrossFiftyAlert = FALSE;
extern bool CrossFiftyEmail = FALSE;
extern bool CrossLineAlert = FALSE;
extern bool CrossLineEmail = FALSE;
extern bool BothAlert = FALSE;
extern bool BothEmail = FALSE;
extern string MESSAGES = "------------------------------------------------------";
extern string FiftyUpMessage = "QQE Crossed 50 Line UP !!!";
extern string FiftyDownMessage = "QQE Crossed 50 Line DOWN !!!";
extern string QQECrossUpMessage = "QQE Lines Crossed UP !!!";
extern string QQECrossDownMessage = "QQE Lines Crossed DOWN !!!";
extern string BothUpMessage = "QQE Lines Are Crossed and 50 Line Broken UP !!!";
extern string BothDownMessage = "QQE Lines Are Crossed and 50 Line Broken DOWN !!!";
extern string SOUNDS = "------------------------------------------------------";
extern string FiftyUpSound = "alert.wav";
extern string FiftyDownSound = "alert.wav";
extern string QQECrossUpSound = "alert.wav";
extern string QQECrossDownSound = "alert.wav";
extern string BothUpSound = "alert.wav";
extern string BothDownSound = "alert.wav";
extern string DOT_VISIBILITY = "------------------------------------------------------";
extern bool FiftyUpDot = FALSE;
extern bool FiftyDownDot = FALSE;
extern bool QQECrossUpDot = FALSE;
extern bool QQECrossDownDot = FALSE;
extern bool BothUpDot = FALSE;
extern bool BothDownDot = FALSE;
extern string DOT_COLORS = "------------------------------------------------------";
extern color FiftyUpColor = DodgerBlue;
extern color FiftyDownColor = Crimson;
extern color QQECrossUpColor = Teal;
extern color QQECrossDownColor = Pink;
extern color BothUpColor = Blue;
extern color BothDownColor = Red;
extern string DOT_DISTANCE = "------------------------------------------------------";
extern int Distance = 30;
int gi_unused_336 = 0;
int gi_unused_340 = 0;
int gi_344 = 0;
int init() {
string ls_unused_8;
string ls_20;
IndicatorBuffers(8);
SetIndexBuffer(0, g_ibuf_80);
SetIndexBuffer(1, g_ibuf_84);
SetIndexBuffer(2, g_ibuf_88);
SetIndexBuffer(3, g_ibuf_76);
SetIndexBuffer(4, g_ibuf_92);
SetIndexBuffer(5, g_ibuf_96);
SetIndexBuffer(6, g_ibuf_100);
SetIndexBuffer(7, g_ibuf_104);
switch (TimeFrame) {
case 1:
ls_20 = "Period_M1";
break;
case 5:
ls_20 = "Period_M5";
break;
case 15:
ls_20 = "Period_M15";
break;
case 30:
ls_20 = "Period_M30";
break;
case 60:
ls_20 = "Period_H1";
break;
case 240:
ls_20 = "Period_H4";
break;
case 1440:
ls_20 = "Period_D1";
break;
case 10080:
ls_20 = "Period_W1";
break;
case 43200:
ls_20 = "Period_MN1";
break;
default:
ls_20 = "Current Timeframe";
}
MathSrand(TimeLocal());
string ls_0 = "QQE " + ls_20;
IndicatorShortName(ls_0);
return (0);
}
int deinit() {
string l_name_4;
for (int li_0 = 32768; li_0 > 0; li_0--) {
l_name_4 = "QQE-" + li_0;
ObjectDelete(l_name_4);
}
return (0);
}
int start() {
int lia_20[];
double ld_28;
double ld_36;
int li_44;
string l_name_48;
int li_0 = IndicatorCounted();
if (li_0 < 0) return (-1);
if (li_0 > 0) li_0--;
int li_24 = Bars - li_0;
int li_unused_12 = Smoothing;
ArrayCopySeries(lia_20, 5, Symbol(), TimeFrame);
int li_4 = 0;
int li_8 = 0;
while (li_4 < li_24) {
if (Time[li_4] < lia_20[li_8]) li_8++;
g_ibuf_76[li_4] = iRSI(NULL, TimeFrame, 14, PRICE_CLOSE, li_8);
li_4++;
}
li_4 = 0;
li_8 = 0;
while (li_4 < li_24) {
if (Time[li_4] < lia_20[li_8]) li_8++;
g_ibuf_80[li_8] = iMAOnArray(g_ibuf_76, 0, Smoothing, 0, MODE_EMA, li_8);
li_4++;
}
for (li_4 = 0; li_4 < li_24; li_4++) {
ld_28 = MathMax(g_ibuf_80[li_4 + 1], g_ibuf_80[li_4]);
ld_36 = MathMin(g_ibuf_80[li_4 + 1], g_ibuf_80[li_4]);
g_ibuf_96[li_4] = ld_28 - ld_36;
}
for (li_4 = 0; li_4 < li_24; li_4++) g_ibuf_92[li_4] = iMAOnArray(g_ibuf_96, 0, 27, 0, MODE_EMA, li_4);
for (li_4 = 0; li_4 < li_24; li_4++) g_ibuf_100[li_4] = 2.618 * iMAOnArray(g_ibuf_92, 0, 27, 0, MODE_EMA, li_4);
for (li_4 = li_24; li_4 >= 0; li_4--) {
if (g_ibuf_80[li_4] == g_ibuf_84[li_4 + 1]) g_ibuf_84[li_4] = g_ibuf_80[li_4];
else {
if (g_ibuf_80[li_4 + 1] < g_ibuf_84[li_4 + 1] && g_ibuf_80[li_4] < g_ibuf_84[li_4 + 1]) g_ibuf_84[li_4] = MathMin(g_ibuf_84[li_4 + 1], g_ibuf_80[li_4] + g_ibuf_100[li_4]);
else {
if (g_ibuf_80[li_4 + 1] > g_ibuf_84[li_4 + 1] && g_ibuf_80[li_4] > g_ibuf_84[li_4 + 1]) g_ibuf_84[li_4] = MathMax(g_ibuf_84[li_4 + 1], g_ibuf_80[li_4] - g_ibuf_100[li_4]);
else {
if (g_ibuf_80[li_4] > g_ibuf_84[li_4 + 1]) g_ibuf_84[li_4] = g_ibuf_80[li_4] - g_ibuf_100[li_4];
else g_ibuf_84[li_4] = g_ibuf_80[li_4] + g_ibuf_100[li_4];
}
}
}
}
for (li_4 = 0; li_4 < li_24; li_4++) g_ibuf_104[li_4] = 4.236 * iMAOnArray(g_ibuf_92, 0, 27, 0, MODE_EMA, li_4);
for (li_4 = li_24; li_4 >= 0; li_4--) {
if (g_ibuf_80[li_4] == g_ibuf_88[li_4 + 1]) g_ibuf_88[li_4] = g_ibuf_80[li_4];
else {
if (g_ibuf_80[li_4 + 1] < g_ibuf_88[li_4 + 1] && g_ibuf_80[li_4] < g_ibuf_88[li_4 + 1]) g_ibuf_88[li_4] = MathMin(g_ibuf_88[li_4 + 1], g_ibuf_80[li_4] + g_ibuf_104[li_4]);
else {
if (g_ibuf_80[li_4 + 1] > g_ibuf_88[li_4 + 1] && g_ibuf_80[li_4] > g_ibuf_88[li_4 + 1]) g_ibuf_88[li_4] = MathMax(g_ibuf_88[li_4 + 1], g_ibuf_80[li_4] - g_ibuf_104[li_4]);
else {
if (g_ibuf_80[li_4] > g_ibuf_88[li_4 + 1]) g_ibuf_88[li_4] = g_ibuf_80[li_4] - g_ibuf_104[li_4];
else g_ibuf_88[li_4] = g_ibuf_80[li_4] + g_ibuf_104[li_4];
}
}
}
}
if (gi_344 == Time[0]) return (0);
for (li_4 = li_24 - 1; li_4 >= 0; li_4--) {
if (g_ibuf_80[li_4 + 1] > 50.0 && g_ibuf_80[li_4 + 2] <= 50.0 && FiftyUpDot) {
li_44 = MathRand() + 1;
l_name_48 = "QQE-" + li_44;
ObjectCreate(l_name_48, OBJ_ARROW, 0, Time[li_4], Low[li_4] - Distance * Point);
ObjectSet(l_name_48, OBJPROP_COLOR, FiftyUpColor);
ObjectSet(l_name_48, OBJPROP_ARROWCODE, 108);