[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 342

 


Merci beaucoup.Swan
 

Pouvez-vous me dire si j'ouvre une commande

OrderSend(Symbol(), OP_SELL, Lots, Bid, 3, oSL, oTP, "", ExpertID, 0, Red)

Si un Stop Loss est déclenché, ouvrir un double lot à l'ouverture de l'ordre suivant, ce qui est fait automatiquement.

 
vik-777 >> :

Pouvez-vous me dire si j'ouvre une commande

OrderSend(Symbol(), OP_SELL, Lots, Bid, 3, oSL, oTP, "", ExpertID, 0, Red)

Si un Stop Loss est déclenché, ouvrez un lot doublé à l'ouverture de l'ordre suivant qui se fait automatiquement.


Placez ces lignes au tout début de la fonction START et utilisez la variable _SL[0] pour déterminer le résultat de la transaction précédente.

si (OrderSelect(Tic,SELECT_BY_TICKET)==true)
{
if (OrderComment()=="[sl]")_SL[0]=-1;
if (OrderComment()=="[tp]")_SL[0]=1;
}

 

Problème.

Il y a une EA. Si les variables Lot, Porog, Otstup, SL, TP sont définies dans le "corps" du programme, alors l'EA fonctionne. Si ces variables sont définies comme "externes" (en les définissant via les paramètres), alors l'EA ne fonctionne pas (dans le "corps" de l'EA, ces variables ont une valeur de ZERO).

Quel peut être le problème ? Où chercher une solution ?

/*
extern double Lot = 0.1;    

extern double Porog = 5.0;  
extern double Otstup = 5.0; 

extern double SL = 5.0; 
extern double TP = 15.0; 
*/

int init()
  {
   return(0);
  }
int deinit()
  {
   return(0);
  }

int start()
  {
  int MagicNumber = 8; 
  int ticket;
  int err;
  int q=0;

double Lot = 0.1;    
double Porog = 5.0;  
double Otstup = 5.0; 
double SL = 5.0; 
double TP = 15.0; 
 

Pourriez-vous suggérer une fonction permettant d'implémenter une boîte de dialogue dans laquelle vous pouvez spécifier les valeurs des variables.

Par exemple, il existe un script d'achat (achat avec Sl et Tp fixés), lorsque vous l'exécutez, une boîte de dialogue s'affiche où vous pouvez spécifier, par exemple, la taille du lot, puis appuyez sur Ok et l'ordre est exécuté !

Merci !

 

Chers professionnels, veuillez conseiller...

Dans mon indicateur, j'utilise un texte qui affiche des données sur la valeur de la courbe de l'indicateur sur le graphique.

{ObjectCreate("P"+Time[ ai],OBJ_TEXT,0,Time[ ai],High[ ai]+ Label);
ObjectSetText("P"+Time[ ai]," "+DoubleToStr( HL,2),7,"Arial",Black);}
Je dois le décaler sur le paramètre Label pour que le texte reste sur la courbe. Mais lorsque nous passons à une autre période ou que nous augmentons/diminuons le graphique, l'échelle du graphique change et nous devons à nouveau l'éditer. Le décalage du texte peut-il être réglé différemment, par exemple en pixels d'écran ?
 
kon12 писал(а) >>

Chers professionnels, veuillez conseiller...

Dans mon indicateur, j'utilise un texte qui affiche des données sur la valeur de la courbe de l'indicateur sur le graphique.

Pour s'assurer que le texte ne chevauche pas la courbe, nous devons le décaler du paramètre Label. Mais lorsque l'on passe à une autre période ou que l'on augmente/diminue le graphique, l'échelle du graphique change et il faut à nouveau éditer. Le décalage du texte peut-il être réglé différemment, par exemple en pixels d'écran ?

Vous pouvez utiliser

OBJ_LABEL 23 Il s'agit d'une étiquette de texte. N'utilise pas de coordonnées. La fonction ObjectSet() est utilisée pour définir les coordonnées en pixels par rapport à l'angle de référence (propriétés OBJPROP_CORNER, OBJPROP_XDISTANCE, OBJPROP_YDISTANCE). Pour modifier le texte, on utilise la fonction ObjectSetText().

 
Je ne comprends pas bien comment ? Je joins une photo de l'indicateur. L'intérêt est que le texte est lié à des points spécifiques de l'indicateur.
 
kon12 писал(а) >>
Je ne comprends pas bien comment ? Je joins une photo de l'indicateur. Le fait est que le texte est attaché à des points spécifiques de l'indicateur.

Il faut ensuite rendre le label dynamique. Pour chaque période de temps qui lui est propre. Une fois dans l'unité et l'oublier. Mais d'abord, vous devez le sélectionner.

 
kon12 >> :
Le décalage du texte peut-il être réglé différemment, par exemple en pixels d'écran ?

La réponse la plus correcte est non.

Raison: