Aiuto per la codifica - pagina 546

 

Qualcuno potrebbe modificare l'ea allegato in uno script. Vorrei usarlo su grafici off line. Molte grazie.

 
Jeeves:
Qualcuno potrebbe modificare l'ea allegato in uno script. Vorrei usarlo su grafici offline. Molte grazie.

Jeeves

Questo significa che verrà eseguito solo su un tick (nel nuovo metatrader 4 gli script vengono eseguiti solo una volta - quando li lasci sul grafico, e poi vengono scaricati dalla memoria)

_____________

PS: se non funziona come EA, le possibilità che funzioni come script su un grafico offline sono scarse

 

Ciao ragazzo. Funziona benissimo come EA, ma mi piacerebbe molto che funzionasse sul grafico off line. Aprire solo una volta non è un problema, faccio trading su periodi ragionevoli e i nuovi trade non sono così frequenti. Se tu potessi fare lo script (meglio ancora farlo funzionare come EA) te ne sarei grato.

Abbiate cura di voi.

 
Jeeves:
Ciao ragazzo. Funziona benissimo come EA, ma mi piacerebbe molto che funzionasse sul grafico offline. Aprire solo una volta non è un problema, faccio trading su periodi ragionevoli e i nuovi trade non sono così frequenti. Se tu potessi fare lo script (meglio ancora farlo funzionare come EA) te ne sarei grato.

Jeeves

Ho capito bene che per qualche motivo l'EA non funziona sul grafico offline?

 

Affermativo

 

Si prega di risolvere questo perché ridipingere:

#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:
Si prega di risolvere questo perché ridipingere:

#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

puoi per favore postare il codice non decompresso?

 

ok, ecco a voi ...

File:
menecraft.mq4  7 kb
 
popej30:
ok, ecco a voi ...

papaj30

Anche questo è codice decompilato. Scusa

 

Mostrami Mladen due file - il primo non decompila - il secondo compila. A mio parere non decompilare è ex4, compilare - mq4

Motivazione: