[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 696

 
Ou peut-être est-il préférable de le définir par son magicien ? Alors c'est très simple...
 

Veuillez me conseiller,

Pour calculer le nombre d'événements continus (par exemple, le nombre de barres d'une série dans lesquelles la clôture est supérieure à l'ouverture et vice versa), je n'ai pu trouver que la formule suivante :

int a=0, b=0;

if(Close[i]>Open[i])
    {
        a++;
        Buffer[i] = _____??????_________;
    }
if(Close[i]<Open[i])
    {
        b--;
        Buffer[i] = _____??????_________;
    }

Deux questions (si ce qui précède a un sens) : (1) comment remettre à zéro la valeur du compteur si la série continue s'est arrêtée ; et (2) comment écrire correctement dans Buffer[i] - c'est-à-dire comment "voir" le résultat lui-même ?

Par exemple, si l'indicateur d'une barre particulière affiche "-3", cela signifie que c'est la troisième barre d'affilée qui a clôturé en dessous de l'ouverture ; si la barre suivante clôture au-dessus de l'ouverture, l'indicateur affichera "1" .......

 
artmedia70:

Dans les variables globales, définissez la valeur initiale du lot :

Là, nous assignons cette valeur à la variable, qui transmettra la valeur du lot à la fonction d'ouverture de position :

Après avoir fermé la position, nous vérifierons la rentabilité/la perte :

La fonction elle-même, grâce à Igor Kim...







Une dernière question :

L'ordre suivant est égal au lot initial multiplié par 2, c'est-à-dire 1 perdu (0.01) 2 perdu (0.02) 3 perdu (0.02) 4 gagné (0.02)

et je voulais 1 perdu (0,01) 2 perdus (0,02) 3 perdus (0,04),

Et encore une chose :

Veuillez nous indiquer si vous pouvez faire ce qui suit (et si oui, comment) :

1 dans le code pour prescrire les ordres et leurs tailles à tour de rôle, de sorte que si l'ordre précédent n'était pas rentable, le suivant s'ouvrirait, jusqu'à ce que vous obteniez un bénéfice, et ensuite tout depuis le début. Exemple :

1 lot 0,01

2 Lot 0.01

3 Lot 0.02

....

15 Lot 1.0

Merci d'avance

Boris.

 
Quelqu'un peut-il me dire quelle est mon erreur (question et code à la page 693 ) ?
 
Une dernière chose : merci beaucoup, Tolik ! Votre code était le plus adapté !
 
Azerus:

Donnez-moi un indice,


Ce que je ferais, c'est ça. Si je devais attraper une série des quatre dernières mesures, alors

if(Close[0]>Open[0]&&Close[1]>Open[1]&&Close[2]>Open[2]&&Close[3]>Open[3])
...
 
Necron:
Quelqu'un peut-il me dire quelle est mon erreur (question et code à la page 693 ) ?


Essayez de remplacer

si (OrderStopLoss()<pp-(TStop.Buy+TrailingStep-1)*po||OrderStopLoss()==0)

à

si (OrderStopLoss()>pp-(TStop.Buy+TrailingStep-1)*po||OrderStopLoss()==0)

 
cyclik33:

Une dernière question :

J'ai obtenu pour une raison quelconque que l'ordre ultérieur est égal au lot initial multiplié par 2. c'est-à-dire 1 perdu (0.01) 2 perdu (0.02) 3 perdu (0.02) 4 gagné (0.02)

et je voulais 1 perdu (0,01) 2 perdus (0,02) 3 perdus (0,04),

Et encore une chose :

Veuillez nous indiquer si vous pouvez faire ce qui suit (et si oui, comment) :

1 dans le code pour prescrire les ordres et leurs tailles à tour de rôle, de sorte que si l'ordre précédent n'était pas rentable, le suivant s'ouvrirait, jusqu'à ce que vous obteniez un bénéfice, et ensuite tout depuis le début. Exemple :

1 lot 0,01

2 Lot 0.01

3 Lot 0.02

....

15 Lot 1.0

Merci d'avance

Boris.

Montrez-nous votre code pour que nous n'ayons pas à deviner.
 

Dites-moi si je comprends bien que l'angle d'ancrage est l'angle de la fenêtre et non l'angle de l'objet.

Et ils sont comptés de gauche à droite, de haut en bas. Ensuite, comment puis-je ancrer correctement l'objet dans le coin inférieur gauche ? Je l'ai, l'objet, disparaît de la fenêtre pour une raison quelconque.

   ObjectCreate(Name_Obj_Advert, OBJ_LABEL, 0, 0,0);
   ObjectSet   (Name_Obj_Advert, OBJPROP_CORNER, 2);
   ObjectSet   (Name_Obj_Advert, OBJPROP_TIME1, Time[0]);
   ObjectSet   (Name_Obj_Advert, OBJPROP_YDISTANCE, 0);            
   ObjectSet   (Name_Obj_Advert, OBJPROP_COLOR, Color_Advert);
   ObjectSetText(Name_Obj_Advert, String_Advert, Kegl);
 
valenok2003:

Dites-moi si je comprends bien que l'angle d'ancrage est l'angle de la fenêtre et non l'angle de l'objet.

Et ils sont comptés de gauche à droite, de haut en bas. Ensuite, comment puis-je ancrer correctement l'objet dans le coin inférieur gauche ? Il disparaît de la fenêtre pour une raison quelconque.

L'angle d'ancrage est l'angle à partir duquel la position de l'objet dans la fenêtre sera calculée. Les angles sont comptés dans le sens des aiguilles d'une montre, de gauche à droite. Le coin inférieur gauche portera le numéro 3 (la numérotation commence à partir de zéro).