[Archive] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 2. - page 425
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Toutes les variables sont perdues lorsque vous quittez le programme (redémarrage de l'ordinateur, etc.). Sauf pour les variables globales, car elles sont stockées sur le disque dur. Mais ils ne peuvent être que de type double. Que faire, s'il est nécessaire de stocker des variables d'autres types (int ou string par exemple) ? Qu'est-ce qui n'est pas clair ici ?
Le type de variable.
C'est-à-dire que les G.P. ne peuvent être que des nombres réels. Il est également possible de déclarer toutes les variables globales d'un programme donné à l'intérieur du programme, il est dit ici
Salutations aux gourous de MQL !
Aidez un débutant à écrire un morceau de code : Je sais que c'est facile pour vous, mais pour un débutant ......
La condition - fermer plusieurs positions ouvertes d'un côté à la fois selon la même condition (pour moi, après que le prix ait franchi une MA).
J'ai essayé pendant quelques jours, j'ai utilisé quelques exemples des scripts de Kim et Sergey (pas plus d'informations sur lui), mais rien ne fonctionne.
J'ai trois ordres ouverts et seul le dernier doit être clôturé par condition.
Selon la condition, mais un à la fois. Je veux qu'ils soient tous fermés en même temps au premier croisement...
C'est ainsi que je l'ai essayé, maintenant il ne se ferme pas du tout.
//+------------------------------------------------------------------+
//| Check for close order Buy |
//+------------------------------------------------------------------+
void CheckForClosebuy()
{
double maclosebuy ;
//---- trading seulement pour les premiers tiks de la nouvelle barre
if(Volume[0]>1) return ;
//---- get Moving Average
maclosebuy=iMA(NULL,TF,MovingPeriod,MovingShift,MODE_SMA,PRICE_CLOSE,0) ;
//----
for(int i=0;i<OrderMagicNumber()==MAGIC;i++)
{
while (i>0)
{
if (Open[1]>maclosebuy && Close[1]<maclosebuy)
OrderClose(OrderTicket(),OrderLots(),Bid,3,Aqua) ;
continue ;
}
}
return(0) ;
}
"Ne pas se plaindre" n'est pas vraiment un concept mathématique.
C'est écrit ici :
Il existe des variables globales pour le terminal du client, elles sont doubles - https://book.mql4.com/ru/variables/globals elles sont destinées à être échangées entre les EAs.
Et il y a simplement les variables globales, elles peuvent être de n'importe quel type https://book.mql4.com/ru/variables/types elles sont dans une EA
Quelle est votre tâche ?
Bonsoir, je suis complètement désemparé. Je m'embrouille avec le code, qui devrait ouvrir deux ordres, buystop et sellstop, et c'est tout. Le code ne semble pas très intelligent, tout semble clair, mais il ouvre cinq commandes, et c'est tout ! Je me suis penché sur ses alertes pendant le débogage, mais il s'est avéré une chose absolument étonnante, il ouvre d'abord deux barres (2011.06.04 20:20:48 2011.02.10 19:00 pour EURUSD avalanche, H1 : Alert : OrderType ( )0) Ne peut pas, ne peut pas être !!!!!! Eh bien, il n'a rien pour les ouvrir ! Pas du tout !!!!!
Il ne possède qu'un type d'ordre OP_BUYSTOP et OP_SELLSTOP. Et à des distances de 20pp en haut et en bas.
Mon ordinateur est en panne ?
Je cite // 0 - OP_BUY acheter
1 - OP_SELL vendre
2 - OP_BUYLIMIT en attente de la limite d'achat
3 - OP_SELLLIMIT Limite de vente différée
4 - OP_BUYSTOP en attente de Buy Stop
5 - OP_SELLSTOP Stop de vente en attente
Il ne peut y avoir d'autres valeurs.
//
Bref, je ne suis pas choqué, mais je suis dans une impasse. Voici le code et la capture d'écran
Je ne sais pas quoi en penser.
Les variables X b Y sont le nombre d'ordres bypass et sellstop.
Dans le journal, vous pouvez voir que l'ordre est déclenché en premier, contournant l'ordre, et il n'y a pas d'erreur. Puis soudain, il s'avère que lorsque nous vérifions le type d'ordre, nous avons un ordre d'achat avec une constante numérique de zéro. etc.
Peut-être que la fonction des mandats est défectueuse ?
Et seulement à ce moment-là, les commandes 5 et 4 apparaissent ! !!
Bonsoir, je suis complètement désemparé.
J'ai l'impression que vous êtes sans espoir. Vous avez déjà un conseiller constitué morceau par morceau, et vous mettez les anciennes erreurs dans chaque nouvelle version. Remplacez tout
avec .
Quelle est votre tâche ?
Mon objectif est de pouvoir stocker différents types de données avec la possibilité d'y accéder rapidement. Je pense qu'il faudrait beaucoup de temps pour utiliser les fichiers. Les variables globales peuvent être rapides, mais elles ne peuvent stocker que le type double. Je me demande donc ce qu'il faut faire.
Stocker les données dans des objets. Facile et rapide à prendre. Facile à rechercher. Facile à rechercher. Pratique.
Et comment fonctionne le stockage d'objets et qu'advient-il des objets en cas de panne d'ordinateur ?