Aide au codage - page 546

 

Quelqu'un pourrait-il transformer l'application ci-jointe en un script ? J'aimerais l'utiliser sur des graphiques hors ligne. Merci beaucoup.

 
Jeeves:
Quelqu'un pourrait-il transformer l'EA ci-jointe en script ? J'aimerais l'utiliser sur des graphiques hors ligne. Merci beaucoup.

Jeeves

Cela signifie qu'il ne sera exécuté que sur un tick (dans le nouveau metatrader 4, les scripts ne sont exécutés qu'une fois - lorsque vous les déposez sur le graphique, puis ils sont déchargés de la mémoire).

_____________

PS : si cela ne fonctionne pas comme un EA, les chances qu'il fonctionne comme un script sur un graphique hors ligne sont minces.

 

Salut les gars. Il fonctionne très bien en tant qu'EA, mais j'aimerais vraiment qu'il fonctionne sur le graphique hors ligne. Ouvrir une seule fois n'est pas un problème, je négocie sur des périodes raisonnables et les nouvelles transactions ne sont pas si fréquentes. Si vous pouviez faire le script (mieux encore, le faire fonctionner comme un EA), je vous en serais reconnaissant.

Prenez soin de vous.

 
Jeeves:
Bonjour. Il fonctionne très bien en tant qu'EA, mais j'aimerais vraiment qu'il fonctionne sur le graphique hors ligne. Ouvrir une seule fois n'est pas un problème, je négocie sur des périodes raisonnables et les nouvelles transactions ne sont pas si fréquentes. Si vous pouviez faire le script (mieux encore, le faire fonctionner comme une EA), je vous en serais reconnaissant. Prenez soin de vous.

Jeeves

Si je comprends bien, pour une raison quelconque, l'EA ne fonctionne pas sur un graphique hors ligne ?

 

Affirmatif

 

S'il vous plaît, réparez cela parce que repeindre :

#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);

}

 
popej30:
S'il vous plaît fixer que parce que repeindre :

#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

pouvez-vous s'il vous plaît poster le code non décompté ?

 

ok, vous êtes ici ...

Dossiers :
menecraft.mq4  7 kb
 
popej30:
ok, voilà ...

popej30

C'est aussi du code décompilé. Désolé

 

Montrez-moi Mladen deux fichiers - le premier non décompilé - le second compilé. A mon avis, non décompilé, c'est ex4, compilé - mq4.

Raison: