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

 
DDFedor >>:


та переменная, которую вы создадите. к которой будете обращать и с которой будете работать. прочитайте про глобальные переменные - все сразу станет понятно. https://docs.mql4.com/ru/globals

Pouvez-vous m'expliquer ce que vous avez dit dans le lien que vous avez cité ? Je veux dire, répondez spécifiquement à ma question avec vos propres mots.

 
Pour gagner du temps, mettez votre script ou la partie dont nous parlons et nous le corrigerons en GlobalVariable. De cette façon, vous comprendrez plus rapidement.
 
zhuki >>:
Чтобы сэкономить время положите свой скрипт или ту часть о которой идёт речь,а мы её поправим на GlobalVariable. Так вы быстрее поймёте.

Le scénario peut être posé, mais ne l'ai-je pas expliqué clairement ? Dites-moi ce que vous ne comprenez pas, s'il vous plaît.

 
Oper >>:

Скрипт то положить можно,но неужели я невнятно и тупо объяснил?Скажите,что непонятно вам,пожалуйста

Vous ne comprenez tout simplement pas la différence entre une variable externe et une variable globale, et sans cela il est inutile de vous expliquer quoi que ce soit.

À propos, il existe également une différence entre une variable globale et une variable déclarée globalement, et elle est également très importante,

Donc, vous feriez mieux de nous envoyer le script et quelqu'un le corrigera pour vous.

 
Vous devez enregistrer la variable dans GlobalVariable comme ceci.
GlobalVariableSet("Variable",Value(double)) ;
Lorsque vous en avez besoin à la prochaine exécution, vous pouvez vérifier si elle existe donc
GlobalVariableCheck("Variable") ;
Et prendre son contenu donc
...=GlobalVariableGet("Variable") ;
Et l'utiliser selon les besoins. Le temps de sauvegarde dans GlobalVariable est de 14 jours et ensuite il sera écrasé.
L'accès à GlobalVariable est commun à tous les scripts et aux Expert Advisors, le nom doit donc être unique.
 
jokonda >>:
Всем привет! Только начинаю работать в Excel, научилась боль-мень обращаться с формулами. А сейчас нужно сделать ссылку на имя и не получается. Подскажите, пжлста -
напрм, в одной ячейке название, в соседней примечание, а в третьей ячейке нужно сделать ссылку или формулу, которая бы объединяла первые две ячейки.
И чтоб потом копировать текст в первую и вторую, а они объединеные отражались в третьей.

Seule votre propre expérience vous aidera, prenez votre temps et apprenez.

 
Urain >>:

Вы просто не поняли разницу между внешней переменной и глобальной, а без этого пояснять вам что либо бестолку.

Кстати там есть ещё разница между глобальной переменной и переменной обьявленной на глобальном уровне и она тоже довольно существенная,

так что лучше выкладывайте скрипт вам его поправят.

Merci pour ces informations.

 
zhuki >>:
Нужно сохранить переменную в GlobalVariable так.
GlobalVariableSet("Переменная",Значение(double));
когда она понадобиться при следующем запуске можно проверить существует ли она так
GlobalVariableCheck("Переменная");
И взять её содержимое так
... =GlobalVariableGet("Переменная");
И использовать по необходимости. Время сохранения в GlobalVariable 14 дней потом затрётся.
Доступ к GlobalVariable общий для всех скриптов и советников,поэтому имя должно быть уникальным.

Merci, c'est utile.

 
Bonjour !

Voici le bloc pour ouvrir une position d'achat. Le poste s'ouvre au tick up le plus proche.

int start()
{
double bid =MarketInfo("GBPUSD",MODE_BID) ;
double ask =MarketInfo("GBPUSD",MODE_ASK) ;
double point =MarketInfo("GBPUSD",MODE_POINT) ;

int tick=OrderSend("GBPUSD",OP_BUY,0.01,ask,3,bid-30*Point,bid+30*Point) ;
si(tick==-1)
{
Alert ("Erreur #"+GetLastError() ;
}
else Alert ("Position ouverte") ;
retour ;
}

Mais le hic, c'est qu'après avoir ouvert une position, au prochain tick à la hausse, une autre s'ouvre et une autre encore (sans attendre la fermeture de la première)...
Comment puis-je l'écrire de manière à ce qu'une nouvelle transaction (la même) ne soit ouverte qu'après l'exécution de la première, et non pas à chaque tick suivant vers le haut ?
Comment écrire qu'après l'exécution des conditions (toute - perte / profit) de la première transaction, la transaction sera ouverte avec des conditions différentes et / ou l'inverse ?

Merci d'avance !
 
Lim1 писал(а) >>
Bonjour !

Voici le bloc pour ouvrir une position d'achat. La position s'ouvre au tick le plus proche vers le haut.


Mais le hic, c'est qu'après avoir ouvert une position, au prochain tick up, une autre s'ouvre et une autre encore s'ouvre (sans attendre la fermeture de la première)....
Comment puis-je écrire de manière à ce qu'une nouvelle transaction (la même) ne soit ouverte qu'après l'exécution de la première, et non pas à chaque nouveau tick à la hausse ?
Comment écrire qu'après l'exécution des conditions (toute - perte / profit) de la première transaction, la transaction serait ouverte avec des conditions différentes et / ou l'inverse ?

Merci d'avance !
bool IsPosOpen=false;

int start()
{
double bid =MarketInfo("GBPUSD",MODE_BID);
double ask =MarketInfo("GBPUSD",MODE_ASK);
double point =MarketInfo("GBPUSD",MODE_POINT);

if(IsPosOpen==false)
{
   int tick=OrderSend("GBPUSD",OP_BUY,0.01,ask,3,bid-30*Point,bid+30*Point);
   if(tick==-1)
   {
      Alert ("Ошибка № "+GetLastError());
   }
   else 
   {
      Alert ("Позиция открыта");
      IsPosOpen = true;
   }// end else
}// end if
return;
}// end start
Raison: