Aide pour trouver une parenthèse gauche non équilibrée - page 2

 

OK, BIEN, JE VAIS VOUS MONTRER COMMENT ASSEMBLER CE TRUC...

#1, ASSEMBLONS LES "BASES" DE VOTRE CODE... ET ENSUITE NOUS AJOUTERONS DES CHOSES AU FUR ET À MESURE...

int init()
{

return(0);
}//end of init function

int deinit()
{

return(0);
}//end of deinit function


int start()
{
double MAFast1 = iMA(NULL, MA1Cross_Timeframe, FastMA1_p, 0, modeMA2, PRICE_CLOSE, 0);
double MAFast2 = iMA(NULL, MA1Cross_Timeframe, FastMA1_p, 0, modeMA2, PRICE_CLOSE, 1);
double MASlow1 = iMA(NULL, MA1Cross_Timeframe, SlowMA1_p, 0, modeMA1, PRICE_CLOSE, 0);
double MASlow2 = iMA(NULL, MA1Cross_Timeframe, SlowMA1_p, 0, modeMA1, PRICE_CLOSE, 1);
    
double MAFast3 = iMA(NULL, MA1Cross_Timeframe, FastMA2_p, 0, modeMA2, PRICE_CLOSE, 0);
double MAFast4 = iMA(NULL, MA1Cross_Timeframe, FastMA2_p, 0, modeMA2, PRICE_CLOSE, 1);
double MASlow3 = iMA(NULL, MA1Cross_Timeframe, SlowMA2_p, 0, modeMA1, PRICE_CLOSE, 0);
double MASlow4 = iMA(NULL, MA1Cross_Timeframe, SlowMA2_p, 0, modeMA1, PRICE_CLOSE, 1);
    
     
double cci1 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 0);
double cci2 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 1);
double cci3 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 2);
   
double bands_upper1 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_UPPER, 1);
double bands_upper2 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_UPPER, 2);
double bands_lower1 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_LOWER, 1);
double bands_lower2 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_LOWER, 2);



return(0);
}//END OF START FUNCTION

maintenant, nous avons vos moyennes mobiles et vos bandes en place...

maintenant, explique-moi (en anglais simple) quand et pourquoi tu veux qu'un trade se déclenche... et je le coderai pour toi.

Par exemple, dites-moi quelque chose comme ceci :

JE VEUX ÊTRE LONG SI MA WHATEVER EST SUPÉRIEUR À SUCH AND SUCH, ETC...

zéro/.

 

//OK, merci... Essayez de l'écrire en clair...

Je veux être Long si ( MAFast1 est supérieur à MASlow1 et MAFast3 est supérieur à MASlow3 et CCI3 était inférieur à 100 et CCI2 est égal ou supérieur à 100 et CCI1 est supérieur à 100)

OU si ( MAFast1 est supérieur à MASlow1 et MaFast4 était inférieur à MASlow4 et MAFast3 est supérieur à MASlow3 et CCI est supérieur à 100 )

OU si ( MAFast2 était inférieur à MASlow2 et maintenant MAFast1 est supérieur à MASlow1 et MAFast3 est supérieur à MASlow3 et CCI est supérieur à 100 )

Je veux sortir de ma position longue si (la clôture [2] est supérieure à la bande_supérieure2 et la clôture [0] est inférieure à la bande_supérieure1).

//Est-ce que cela a un sens pour vous ? Merci. C'est la première fois que j'écris de cette façon et en fait, c'est bien d'arranger son cerveau... Ericman.

 
int init()
{

return(0);
}//end of init function

int deinit()
{

return(0);
}//end of deinit function


int start()
{
double MAFast1 = iMA(NULL, MA1Cross_Timeframe, FastMA1_p, 0, modeMA2, PRICE_CLOSE, 0);
double MAFast2 = iMA(NULL, MA1Cross_Timeframe, FastMA1_p, 0, modeMA2, PRICE_CLOSE, 1);
double MASlow1 = iMA(NULL, MA1Cross_Timeframe, SlowMA1_p, 0, modeMA1, PRICE_CLOSE, 0);
double MASlow2 = iMA(NULL, MA1Cross_Timeframe, SlowMA1_p, 0, modeMA1, PRICE_CLOSE, 1);
    
double MAFast3 = iMA(NULL, MA1Cross_Timeframe, FastMA2_p, 0, modeMA2, PRICE_CLOSE, 0);
double MAFast4 = iMA(NULL, MA1Cross_Timeframe, FastMA2_p, 0, modeMA2, PRICE_CLOSE, 1);
double MASlow3 = iMA(NULL, MA1Cross_Timeframe, SlowMA2_p, 0, modeMA1, PRICE_CLOSE, 0);
double MASlow4 = iMA(NULL, MA1Cross_Timeframe, SlowMA2_p, 0, modeMA1, PRICE_CLOSE, 1);
    
     
double cci1 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 0);
double cci2 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 1);
double cci3 = iCCI(NULL, CCI_Timeframe, CCI_p, PRICE_CLOSE, 2);
   
double bands_upper1 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_UPPER, 1);
double bands_upper2 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_UPPER, 2);
double bands_lower1 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_LOWER, 1);
double bands_lower2 = iBands(NULL, Band_Timeframe, Band_p,1, 0, PRICE_CLOSE, MODE_LOWER, 2);

int flag=0;

if(MAFast1>MASlow1 && MAFast3>MASlow3 && CCI3<100 && CCI2>=100 && CCI1>100) flag=1;

if(MAFast1>MASlow1 && MAFast4<MASlow4 && MAFast3>MASlow3 && CCI>100) flag=1;

if(MAFast2<MASlow2 && MAFast1>MASlow1 && MAFast3>MASlow3 && CCI>100) flag=1;

if(flag==1) go_long();

return(0);
}//END OF START FUNCTION

 

Je dois encore vérifier les fautes de frappe et de syntaxe, mais jetez-y un coup d'oeil et voyez si ça ressemble à ce dont vous parlez...

n'ayez pas peur d'admettre que vous êtes confus, sinon je ne peux pas vous aider...

N'ayez jamais peur d'admettre que vous êtes perdu, sinon vous resterez perdu.

Faites-moi savoir ce que vous en pensez.

zéro/.

je vois déjà un problème...

je vois où vous (quand vous avez écrit ce truc en anglais simple ci-dessus) où vous utilisez une variable CCI, mais nous n'avons pas défini de variable CCI.

if(MAFast2<MASlow2 && MAFast1>MASlow1 && MAFast3>MASlow3 && CCI>100) flag=1;

faites-moi savoir.

BTW, NOUS ALLONS TRAITER LES QUESTIONS DE CLÔTURE PLUS TARD.

ÉGALEMENT, SI JE PERD D'UNE MANIÈRE ou d'une autre le fil de cette discussion et que vous voulez m'engueuler, faites-le à l'adresse suivante : mql4@hush.com.

faites-le moi savoir.

 
smoknfx:

Je dois encore vérifier les fautes de frappe et de syntaxe, mais jetez-y un coup d'oeil et voyez si cela ressemble à ce dont vous parlez...

n'ayez pas peur d'admettre que vous êtes confus, sinon je ne peux pas vous aider...

N'ayez jamais peur d'admettre que vous êtes perdu, sinon vous resterez perdu.

Faites-moi savoir ce que vous en pensez.

zéro/.

je vois déjà un problème...

je vois où vous (quand vous avez écrit ce truc en anglais simple ci-dessus) où vous utilisez une variable CCI, mais nous n'avons pas défini de variable CCI.

faites-moi savoir.

BTW, NOUS ALLONS TRAITER LES QUESTIONS DE CLÔTURE PLUS TARD.

ÉGALEMENT, SI JE PERD D'UNE MANIÈRE ou d'une autre le fil de cette discussion et que vous voulez m'engueuler, faites-le à l'adresse suivante : mql4@hush.com.

faites-le moi savoir.


Merci beaucoup. J'essaie d'apprendre de ce que vous avez écrit et de tout comprendre. C'était CCI1 j'ai oublié de mettre le 1. Merci je vais vérifier oup mql4@hush.com Je ne prends pas votre aide pour acquis ! J'essaie d'apprendre de vous. Merci.
 
By the way what is flag.... it is the first time i see this.
 
La définition compliquée en wiki ou simplement des variables qui marquent le chemin de l'exécution pour être utilisées à un point ultérieur du programme.
 
ericman:

qu'est-ce que le drapeau ?

Le drapeau est une variable.

Aussi simple que cela.

J'aurais pu l'appeler :

int ready2golong=0 ;

vous voyez ce que je veux dire ?


d'abord, je le mets à zéro.

Ensuite, je fais quelques comparaisons qui pourraient le mettre à un.

et ensuite, si c'est un, go_long() ;

 
ericman:

Merci beaucoup. J'essaie d'apprendre de ce que vous avez écrit et d'en tirer des leçons. C'était CCI1, j'ai oublié de mettre le 1. Merci, je vais vérifier mql4@hush.com Je ne prends pas votre aide pour acquise ! J'essaie d'apprendre de vous. Merci.

J'aime faire ce genre de @#$.

C'est ce que je fais pour m'amuser.

Fais-moi une faveur.

Essayez de charger ce code et de le compiler...

Ajustez toutes les variables CCI qui doivent être corrigées en raison de fautes de frappe.

Faites-moi savoir comment ça se passe.

zéro/.

 
Ickyrus:
La définition compliquée dans wiki ou simplement des varibles qui marquent le chemin de l'exécution pour être utilisés à un moment ultérieur du programme.

mal.

Laissez-moi vous expliquer quelque chose :

vous voyez comment je simplifie les choses pour cette personne ?

qu'est-ce qui vous fait penser que nous devons lui donner quelque chose de compliqué ?

c'est vrai.

regards,

zéro,

Raison: