Apprendre et écrire ensemble en MQL5 - page 30

 
О. Je vais donc le mettre dans le même dossier et...
 
AUser:

Écoutez, les gens, quelle est la valeur initiale de la variable chaîne ?

Écrire ici Si la chaîne est égale à : ?, mais qu'est-ce qu'elle égale ? "", "", 0 - ne semble pas fonctionner. Bien sûr, on peut sauter les chaînes et utiliser des int clairs, mais il sera préférable d'utiliser les lettres)))).


"" - signifie une valeur de chaîne vide, il en sera de même pour (chaîne)0.

Mais "0" est un caractère de 48 caractères.

 
Urain:

"" - signifie une valeur de chaîne vide, il en sera de même pour (chaîne)0.

Mais "0" est une chaîne de 48 caractères.

si (Statys != "En cours" && Statys != "Occupé")
{Statys = "Libre";}
Ou bien : si (Statys == "")
 
AUser:
si (Statys != "En cours" && Statys != "Occupé")
{Statys = "Libre";}
Mais cela ne fonctionne pas : if (Statys == "")

Pourquoi ça ne marche pas ? Ça marche, et c'est même une option plutôt populaire,

mais la question portait sur l'initialisation.

 
Il y a quelque chose qui ne peut pas être répondu à la question sur l'Unicode. Dans l'aide du terminal, sous "Terminal client / Démarrage / Structure des répertoires et des fichiers", il est indiqué que

Tous les fichiers texte sont au format Unicode, vous devez donc utiliser le bon logiciel pour les modifier."

Le fait est qu'il existe au moins une norme Unicode. Lequel devez-vous utiliser si vous programmez dans un éditeur autre qu'un méta-éditeur ?

 
drknn:

Le fait est qu'il existe au moins une norme Unicode. Lequel doit être utilisé lors de la programmation dans des éditeurs autres que le méta-éditeur ?

Pouvez-vous fournir un lien vers la source ?
 
drknn:

Le fait est qu'il existe au moins une norme Unicode. Lequel doit être utilisé lors de la programmation dans un éditeur autre que le méta-éditeur ?

Comme les programmes sont écrits pour Windows, l'Unicode est utilisé dans son format. UTF-16LE est un Little Endian de deux octets avec un jeton 0xFFFE.

 

Je ne vois pas de différence fondamentale :

void OpenSell()
{
MqlTradeRequest o ; MqlTradeResult p ;
double Bid = SymbolInfoDouble(_Symbol,SYMBOL_BID) ;

o.action = TRADE_ACTION_PENDING ;
o.symbole = _Symbol ;
o.volume = Lot ;
o.price = Bid - Otklonenie ;
o.sl = 0 ;
o.tp = 0 ;
o.type = ORDER_TYPE_SELL_STOP;
o.type_filling = ORDER_FILLING_AON ;
o.type_time = ORDER_TIME_GTC ;
CommandeEnvoi(o,p) ;

si (p.retcode == 10009)
{
Tiket = p.l'ordre ;
Prix = /*p.prix;*/ Bid - Otklonenie ;
Statys = En cours ;
}

}

Cependant, la variante commentée n'ouvre pas les transactions dans les tests. Quel est le piège ? La différence de précision est assez faible.

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 
Urain:

Pourquoi ça ne marcherait pas, ça marche, et c'est même assez courant,

mais la question portait sur l'initialisation.

Vérifiez vous-même :

string Statys ;

void OnTick()
{
si(Statys == "")
{OpenBuy();}
}

void OpenBuy()
{
MqlTradeRequest o ; MqlTradeResult p ;
double Ask = SymbolInfoDouble(_Symbol,SYMBOL_ASK) ;

o.action = TRADE_ACTION_PENDING ;
o.symbol = _Symbol ;
o.volume = 1 ;
o.price = Ask + 0.1 ;
o.sl = 0 ;
o.tp = 0 ;
o.type = ORDER_TYPE_BUY_STOP;
o.type_filling = ORDER_FILLING_AON ;
o.type_time = ORDER_TIME_GTC ;
CommandeEnvoi(o,p) ;

}

Les échanges ne se font pas de cette manière)) Paire pour le test USDJPY

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 
AUser:

Vérifiez vous-même :

...

Pushkin va-t-il initialiser ?

string Statys="";
if(Statys == "")Print("Yes");