Jeeves: Could some-one change the attached ea into a script. I would like to use it on off line charts. Many thanks.
Jeeves
That means that it will be executed only on one tick (in new metatrader 4 scripts are executed only once - when you drop them on chart, and then they are unloaded from memory)
_____________
PS: if it does not work as an EA, chances that it will work as a script on an offline chart are slim
Hi guy. It works great as an EA, but I would really like it working on the off line chart. Opening only once is not a problem, I trade over reasonable periods & new trades are not that frequent. If you could do the script (Better still make it work as an ea) I would be grateful.
Jeeves: Hi guy. It works great as an EA, but I would really like it working on the off line chart. Opening only once is not a problem, I trade over reasonable periods & new trades are not that frequent. If you could do the script (Better still make it work as an ea) I would be grateful.
Take care.
Jeeves
Am I understanding correctly that for some reason the EA does not work on offline chart?
Allow the use of cookies to log in to the MQL5.com website.
Please enable the necessary setting in your browser, otherwise you will not be able to log in.
You are signed in. Two-factor authentication has been disabled. Set it up again and scan a new QR code, or continue with two-factor authentication disabled.
Could some-one change the attached ea into a script. I would like to use it on off line charts. Many thanks.
Could some-one change the attached ea into a script. I would like to use it on off line charts. Many thanks.
Jeeves
That means that it will be executed only on one tick (in new metatrader 4 scripts are executed only once - when you drop them on chart, and then they are unloaded from memory)
_____________
PS: if it does not work as an EA, chances that it will work as a script on an offline chart are slim
Hi guy. It works great as an EA, but I would really like it working on the off line chart. Opening only once is not a problem, I trade over reasonable periods & new trades are not that frequent. If you could do the script (Better still make it work as an ea) I would be grateful.
Take care.
Hi guy. It works great as an EA, but I would really like it working on the off line chart. Opening only once is not a problem, I trade over reasonable periods & new trades are not that frequent. If you could do the script (Better still make it work as an ea) I would be grateful. Take care.
Jeeves
Am I understanding correctly that for some reason the EA does not work on offline chart?
Affirmative
Please fix that because repaint:
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 MediumBlue
#property indicator_color2 Red
#property indicator_width1 1
#property indicator_width2 1
string Gs_dummy_76;
double Gd_unused_84;
bool Gi_92 = false;
string Gs_dummy_96;
string Gs_dummy_104;
string Gs_112;
int G_bars_120 = 0;
double G_ibuf_124[];
double G_ibuf_128[];
double Gd_132;
double Gd_140;
double Gd_148;
double G_ima_156;
double G_ima_164;
double G_ima_172;
double G_ima_180;
double G_ima_188;
double G_ima_196;
double G_ima_204;
double G_ima_212;
double G_ima_220;
double Gda_unused_228[];
double Gda_unused_232[];
double Gda_unused_236[];
extern int MAPeriod1 = 1;
int Gi_244 = -10;
int G_ma_method_248 = MODE_SMMA;
extern int MAPeriod2 = 1;
int Gi_256 = -2;
int G_ma_method_260 = MODE_SMMA;
extern int MAPeriod3 = 1;
int Gi_268 = 1;
int G_ma_method_272 = MODE_SMMA;
extern int SoundAlert = 1;
int init() {
SetIndexStyle(0, DRAW_ARROW, EMPTY);
SetIndexArrow(0, 233);
SetIndexBuffer(0, G_ibuf_124);
SetIndexStyle(1, DRAW_ARROW, EMPTY);
SetIndexArrow(1, 234);
SetIndexBuffer(1, G_ibuf_128);
return (0);
}
void deinit() {
ObjectsDeleteAll();
}
void f0_0() {
int Lia_unused_184[12][1000];
double Lda_unused_188[12][1000];
int Lia_unused_192[1000];
double Lda_unused_196[1000];
bool Lba_unused_204[12];
HideTestIndicators(TRUE);
double icci_0 = iCCI(Symbol(), PERIOD_M1, 80, PRICE_OPEN, 0);
double iwpr_8 = iWPR(Symbol(), PERIOD_M1, 14, 0);
double iforce_16 = iForce(Symbol(), PERIOD_M5, 13, MODE_SMA, PRICE_OPEN, 0);
double ibands_24 = iBands(Symbol(), PERIOD_M5, 20, 2, 0, PRICE_OPEN, MODE_UPPER, 1);
double ibands_32 = iBands(Symbol(), PERIOD_M5, 20, 2, 0, PRICE_OPEN, MODE_BASE, 1);
double ima_40 = iMA(NULL, 0, 24, 0, MODE_SMMA, PRICE_OPEN, 0);
double ima_48 = iMA(NULL, 0, 100, 0, MODE_SMMA, PRICE_OPEN, 0);
double ima_56 = iMA(NULL, 0, 72, 0, MODE_SMMA, PRICE_OPEN, 0);
double ima_64 = iMA(NULL, 0, 365, 0, MODE_SMMA, PRICE_OPEN, 0);
double istochastic_72 = iStochastic(NULL, 0, 10, 5, 5, MODE_EMA, 0, MODE_MAIN, 0);
double imomentum_80 = iMomentum(NULL, 0, 100, PRICE_OPEN, 0);
double ibands_88 = iBands(Symbol(), PERIOD_M5, 20, 2, 0, PRICE_OPEN, MODE_LOWER, 1);
double ima_96 = iMA(Symbol(), PERIOD_M5, 1, 0, MODE_EMA, PRICE_OPEN, 0);
double ima_104 = iMA(Symbol(), PERIOD_M5, 1, 0, MODE_EMA, PRICE_OPEN, 0);
double iadx_112 = iADX(NULL, 0, 7, PRICE_OPEN, MODE_MAIN, 0);
double imomentum_120 = iMomentum(NULL, 0, 100, PRICE_OPEN, 0);
double ima_128 = iMA(Symbol(), PERIOD_H4, 1, 0, MODE_EMA, PRICE_OPEN, 0);
double ibands_136 = iBands(Symbol(), PERIOD_H4, 20, 2, 0, PRICE_OPEN, MODE_UPPER, 0);
HideTestIndicators(FALSE);
string Ls_unused_144 = "Signal Alert";
string Ls_unused_152 = "Short Alert";
string Ls_unused_160 = "Long Alert";
int Li_unused_172 = -1;
int Li_unused_176 = 1;
int Li_unused_180 = 0;
int Lia_unused_200[12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
int Li_unused_220 = 50;
int Li_unused_224 = 50;
if (istochastic_72 >= 75.0) Gs_112 = "HIGH RISK";
else {
if (istochastic_72 <= 25.0) Gs_112 = "HIGH RISK";
else
if (istochastic_72 25.0) Gs_112 = "LOW RISK";
}
string Ls_248 = "";
int Li_unused_256 = 1;
if (Digits < 4) Gd_unused_84 = 0.01;
else Gd_unused_84 = 0.0001;
if (G_bars_120 != Bars) G_bars_120 = Bars;
double iatr_260 = iATR(Symbol(), Period(), 5, 1);
double Ld_268 = 1.45 / Period() * MathRound(iatr_260 * MathPow(7, Digits));
double Ld_276 = 2.0 * Ld_268;
Ls_248 = Ls_248
+ "\n"
+ "\n"
+ "";
}
int start() {
int Li_8;
if (Gi_92) f0_0();
int Li_12 = IndicatorCounted();
if (Li_12 < 0) return (-1);
if (Li_12 > 0) Li_12--;
int Li_0 = Bars - Li_12;
for (int index_4 = 0; index_4 <= Li_0; index_4++) {
Li_8 = index_4;
Gd_140 = 0;
Gd_148 = 0;
for (Li_8 = index_4; Li_8 <= index_4 + 9; Li_8++) Gd_148 += MathAbs(High[Li_8] - Low[Li_8]);
Gd_140 = Gd_148 / 10.0;
G_ima_156 = iMA(NULL, 0, MAPeriod1, Gi_244, G_ma_method_248, PRICE_OPEN, index_4 + 1);
G_ima_164 = iMA(NULL, 0, MAPeriod1, Gi_244, G_ma_method_248, PRICE_OPEN, index_4 + 2);
G_ima_172 = iMA(NULL, 0, MAPeriod1, Gi_244, G_ma_method_248, PRICE_OPEN, index_4 - 1);
G_ima_180 = iMA(NULL, 0, MAPeriod2, Gi_256, G_ma_method_260, PRICE_OPEN, index_4 + 1);
G_ima_188 = iMA(NULL, 0, MAPeriod2, Gi_256, G_ma_method_260, PRICE_OPEN, index_4 + 2);
G_ima_196 = iMA(NULL, 0, MAPeriod2, Gi_256, G_ma_method_260, PRICE_OPEN, index_4 - 1);
G_ima_204 = iMA(NULL, 0, MAPeriod3, Gi_268, G_ma_method_272, PRICE_OPEN, index_4 + 1);
G_ima_212 = iMA(NULL, 0, MAPeriod3, Gi_268, G_ma_method_272, PRICE_OPEN, index_4 + 2);
G_ima_220 = iMA(NULL, 0, MAPeriod3, Gi_268, G_ma_method_272, PRICE_OPEN, index_4 - 1);
if ((G_ima_156 > G_ima_204 && G_ima_164 G_ima_220 && G_ima_180 > G_ima_204) || (G_ima_156 > G_ima_204 && G_ima_180 > G_ima_204 && G_ima_188 <= G_ima_212 &&
G_ima_196 > G_ima_220)) G_ibuf_124 = Low - Gd_140 / 2.0;
if ((G_ima_156 = G_ima_212 && G_ima_172 < G_ima_220 && G_ima_180 < G_ima_204) || (G_ima_156 < G_ima_204 && G_ima_180 = G_ima_212 &&
G_ima_196 < G_ima_220)) G_ibuf_128 = High + Gd_140 / 2.0;
}
if (G_ibuf_124[0] > 2000.0 && G_ibuf_128[0] > 2000.0) Gd_132 = 0;
if (G_ibuf_124[0] == Low[0] - Gd_140 / 2.0 && Gd_132 != Time[0] && SoundAlert != 0) {
Gd_132 = Time[0];
Alert(Symbol(), " Price Cross Up @ Hour ", Hour(), " Minute ", Minute());
}
if (G_ibuf_128[0] == High[0] + Gd_140 / 2.0 && Gd_132 != Time[0] && SoundAlert != 0) {
Gd_132 = Time[0];
Alert(Symbol(), " Price Cross Down @ Hour ", Hour(), " Minute ", Minute());
}
return (0);
}
Please fix that because repaint:
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 MediumBlue
#property indicator_color2 Red
#property indicator_width1 1
#property indicator_width2 1
string Gs_dummy_76;
double Gd_unused_84;
bool Gi_92 = false;
string Gs_dummy_96;
string Gs_dummy_104;
string Gs_112;
int G_bars_120 = 0;
double G_ibuf_124[];
double G_ibuf_128[];
double Gd_132;
double Gd_140;
double Gd_148;
double G_ima_156;
double G_ima_164;
double G_ima_172;
double G_ima_180;
double G_ima_188;
double G_ima_196;
double G_ima_204;
double G_ima_212;
double G_ima_220;
double Gda_unused_228[];
double Gda_unused_232[];
double Gda_unused_236[];
extern int MAPeriod1 = 1;
int Gi_244 = -10;
int G_ma_method_248 = MODE_SMMA;
extern int MAPeriod2 = 1;
int Gi_256 = -2;
int G_ma_method_260 = MODE_SMMA;
extern int MAPeriod3 = 1;
int Gi_268 = 1;
int G_ma_method_272 = MODE_SMMA;
extern int SoundAlert = 1;
int init() {
SetIndexStyle(0, DRAW_ARROW, EMPTY);
SetIndexArrow(0, 233);
SetIndexBuffer(0, G_ibuf_124);
SetIndexStyle(1, DRAW_ARROW, EMPTY);
SetIndexArrow(1, 234);
SetIndexBuffer(1, G_ibuf_128);
return (0);
}
void deinit() {
ObjectsDeleteAll();
}
void f0_0() {
int Lia_unused_184[12][1000];
double Lda_unused_188[12][1000];
int Lia_unused_192[1000];
double Lda_unused_196[1000];
bool Lba_unused_204[12];
HideTestIndicators(TRUE);
double icci_0 = iCCI(Symbol(), PERIOD_M1, 80, PRICE_OPEN, 0);
double iwpr_8 = iWPR(Symbol(), PERIOD_M1, 14, 0);
double iforce_16 = iForce(Symbol(), PERIOD_M5, 13, MODE_SMA, PRICE_OPEN, 0);
double ibands_24 = iBands(Symbol(), PERIOD_M5, 20, 2, 0, PRICE_OPEN, MODE_UPPER, 1);
double ibands_32 = iBands(Symbol(), PERIOD_M5, 20, 2, 0, PRICE_OPEN, MODE_BASE, 1);
double ima_40 = iMA(NULL, 0, 24, 0, MODE_SMMA, PRICE_OPEN, 0);
double ima_48 = iMA(NULL, 0, 100, 0, MODE_SMMA, PRICE_OPEN, 0);
double ima_56 = iMA(NULL, 0, 72, 0, MODE_SMMA, PRICE_OPEN, 0);
double ima_64 = iMA(NULL, 0, 365, 0, MODE_SMMA, PRICE_OPEN, 0);
double istochastic_72 = iStochastic(NULL, 0, 10, 5, 5, MODE_EMA, 0, MODE_MAIN, 0);
double imomentum_80 = iMomentum(NULL, 0, 100, PRICE_OPEN, 0);
double ibands_88 = iBands(Symbol(), PERIOD_M5, 20, 2, 0, PRICE_OPEN, MODE_LOWER, 1);
double ima_96 = iMA(Symbol(), PERIOD_M5, 1, 0, MODE_EMA, PRICE_OPEN, 0);
double ima_104 = iMA(Symbol(), PERIOD_M5, 1, 0, MODE_EMA, PRICE_OPEN, 0);
double iadx_112 = iADX(NULL, 0, 7, PRICE_OPEN, MODE_MAIN, 0);
double imomentum_120 = iMomentum(NULL, 0, 100, PRICE_OPEN, 0);
double ima_128 = iMA(Symbol(), PERIOD_H4, 1, 0, MODE_EMA, PRICE_OPEN, 0);
double ibands_136 = iBands(Symbol(), PERIOD_H4, 20, 2, 0, PRICE_OPEN, MODE_UPPER, 0);
HideTestIndicators(FALSE);
string Ls_unused_144 = "Signal Alert";
string Ls_unused_152 = "Short Alert";
string Ls_unused_160 = "Long Alert";
int Li_unused_172 = -1;
int Li_unused_176 = 1;
int Li_unused_180 = 0;
int Lia_unused_200[12] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
int Li_unused_220 = 50;
int Li_unused_224 = 50;
if (istochastic_72 >= 75.0) Gs_112 = "HIGH RISK";
else {
if (istochastic_72 <= 25.0) Gs_112 = "HIGH RISK";
else
if (istochastic_72 25.0) Gs_112 = "LOW RISK";
}
string Ls_248 = "";
int Li_unused_256 = 1;
if (Digits < 4) Gd_unused_84 = 0.01;
else Gd_unused_84 = 0.0001;
if (G_bars_120 != Bars) G_bars_120 = Bars;
double iatr_260 = iATR(Symbol(), Period(), 5, 1);
double Ld_268 = 1.45 / Period() * MathRound(iatr_260 * MathPow(7, Digits));
double Ld_276 = 2.0 * Ld_268;
Ls_248 = Ls_248
+ "\n"
+ "\n"
+ "";
}
int start() {
int Li_8;
if (Gi_92) f0_0();
int Li_12 = IndicatorCounted();
if (Li_12 < 0) return (-1);
if (Li_12 > 0) Li_12--;
int Li_0 = Bars - Li_12;
for (int index_4 = 0; index_4 <= Li_0; index_4++) {
Li_8 = index_4;
Gd_140 = 0;
Gd_148 = 0;
for (Li_8 = index_4; Li_8 <= index_4 + 9; Li_8++) Gd_148 += MathAbs(High[Li_8] - Low[Li_8]);
Gd_140 = Gd_148 / 10.0;
G_ima_156 = iMA(NULL, 0, MAPeriod1, Gi_244, G_ma_method_248, PRICE_OPEN, index_4 + 1);
G_ima_164 = iMA(NULL, 0, MAPeriod1, Gi_244, G_ma_method_248, PRICE_OPEN, index_4 + 2);
G_ima_172 = iMA(NULL, 0, MAPeriod1, Gi_244, G_ma_method_248, PRICE_OPEN, index_4 - 1);
G_ima_180 = iMA(NULL, 0, MAPeriod2, Gi_256, G_ma_method_260, PRICE_OPEN, index_4 + 1);
G_ima_188 = iMA(NULL, 0, MAPeriod2, Gi_256, G_ma_method_260, PRICE_OPEN, index_4 + 2);
G_ima_196 = iMA(NULL, 0, MAPeriod2, Gi_256, G_ma_method_260, PRICE_OPEN, index_4 - 1);
G_ima_204 = iMA(NULL, 0, MAPeriod3, Gi_268, G_ma_method_272, PRICE_OPEN, index_4 + 1);
G_ima_212 = iMA(NULL, 0, MAPeriod3, Gi_268, G_ma_method_272, PRICE_OPEN, index_4 + 2);
G_ima_220 = iMA(NULL, 0, MAPeriod3, Gi_268, G_ma_method_272, PRICE_OPEN, index_4 - 1);
if ((G_ima_156 > G_ima_204 && G_ima_164 G_ima_220 && G_ima_180 > G_ima_204) || (G_ima_156 > G_ima_204 && G_ima_180 > G_ima_204 && G_ima_188 <= G_ima_212 &&
G_ima_196 > G_ima_220)) G_ibuf_124 = Low - Gd_140 / 2.0;
if ((G_ima_156 = G_ima_212 && G_ima_172 < G_ima_220 && G_ima_180 < G_ima_204) || (G_ima_156 < G_ima_204 && G_ima_180 = G_ima_212 &&
G_ima_196 < G_ima_220)) G_ibuf_128 = High + Gd_140 / 2.0;
}
if (G_ibuf_124[0] > 2000.0 && G_ibuf_128[0] > 2000.0) Gd_132 = 0;
if (G_ibuf_124[0] == Low[0] - Gd_140 / 2.0 && Gd_132 != Time[0] && SoundAlert != 0) {
Gd_132 = Time[0];
Alert(Symbol(), " Price Cross Up @ Hour ", Hour(), " Minute ", Minute());
}
if (G_ibuf_128[0] == High[0] + Gd_140 / 2.0 && Gd_132 != Time[0] && SoundAlert != 0) {
Gd_132 = Time[0];
Alert(Symbol(), " Price Cross Down @ Hour ", Hour(), " Minute ", Minute());
}
return (0);
}
popey30
can you please post non decomped code?
ok, here you are ...
ok, here you are ...
popej30
That is also decompiled code. Sorry
Show me Mladen two files - firs non decompile - second compile. In my opinion non decompile it is ex4, compile - mq4