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

 
demlin:
Une dernière question. Le !OrderSelect(orderIndex, SELECT_BY_POS) - qu'est-ce que cela signifie ? Je ne peux pas comprendre le !


C'est une négation

Si OrderSelect(orderIndex, SELECT_BY_POS) = true, !OrderSelect(orderIndex, SELECT_BY_POS)=false

 
sergeev:

! - est une opération booléenne NOT

! false = true

! vrai = faux

Ensuite, l'expression entière : commande NON sélectionnée ?
 
Maximov7:

double C1;
// в старте
C1 = Ask;

il n'est pas possible de démarrer parce qu'à chaque nouveau tick une nouvelle valeur Ask.... sera assignée et elle doit être réservée pour une opération ultérieure


Est-ce que ça marcherait ?

int start()
{
static double C1=Ask;
 
demlin:
Ensuite, l'expression entière : ordre NON sélectionné ? ??

Expression : si un ordre n'est pas sélectionné, alors nous passons à l'itération suivante du cycle... à la recherche de la bonne commande pour son chalut... nous ne nous approchons du chalut que lorsque exactement "notre" commande est sélectionnée pour l'instrument requis... :-))) Il suffit de se débrouiller - il n'y a rien de compliqué. :-)))
 
Roman.:

Expression : Si aucun ordre n'est sélectionné, nous passons à l'itération suivante du cycle... à la recherche du bon ordre pour le chaluter... nous n'arrivons au chalutage que lorsque "notre" ordre est exactement sélectionné pour le bon instrument... :-))) Il suffit de se débrouiller - il n'y a rien de compliqué. :-)))
Merci beaucoup, information extrêmement utile
 
demlin:
Merci beaucoup, information extrêmement utile

Occupez-vous... :-)))
 

J'ai remarqué que les ordres ouverts ou fermés sont croisés de deux façons. Voici un exemple de ceux qui sont fermés.

D'abord :

for(pos = 0; pos < OrdersHistoryTotal(); pos++)
    {  OrderSelect(pos,SELECT_BY_POS,MODE_HISTORY);
        ... работа с ордером ...  }
 

Le deuxième :

for(pos = OrdersHistoryTotal()-1; pos >= 0; pos--)
    {  OrderSelect(pos,SELECT_BY_POS,MODE_HISTORY);
        ... работа с ордером ...  }

En gros, tout est clair (je n'utilise que la première option), mais il y a des questions.

Pourquoi, dans le second cas, soustraire 1(OrdersHistoryTotal()-1) du nombre total de commandes ?

J'ai bien compris que la première et la deuxième option font la même chose, mais qu'elles diffèrent seulement en ce que la première démarre la recherche du premier au dernier, et la deuxième du dernier au premier de la liste ?

 
tol64:

J'ai remarqué que les ordres ouverts ou fermés sont croisés de deux façons. Voici un exemple de ceux qui sont fermés.

D'abord :

Le deuxième :

Tout est clair en principe (je n'utilise que la première variante), mais j'ai quelques questions.

Pourquoi, dans le second cas, soustraire 1(OrdersHistoryTotal()-1) du nombre total de commandes ?

J'ai bien compris que la première et la deuxième option font la même chose, mais qu'elles diffèrent seulement en ce que la première démarre la recherche du premier au dernier, et la deuxième du dernier au premier de la liste ?

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

Et dans la première variante, il faut soustraire un, puisque le compteur de commandes part de zéro, et cela signifie que la dernière commande sera juste OrdersHistoryTotal()-1.
int OrdersHistoryTotal() - renvoie le nombre de positions fermées et d'ordres supprimés dans l'historique du compte, dans le terminal du client.
Disons que OrdersHistoryTotal() a renvoyé le numéro 10 - "positions fermées et ordres supprimés dans l'historique du compte courant", et nous avons l'image suivante des ordres fermés et supprimés - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 - un total de 10 ordres dans l'historique, mais la boucle n'est pas organisée avant le numéro 10, mais avant le numéro 9, en commençant par "0", c'est-à-dire que nous commençons par la première ligne du code.En d'autres termes, nous obtenons le drapeau SELECT_BY_POS - le paramètre index transmet le numéro d'index de la position dans la liste, et c'est à ( OrdersHistoryTotal()-1 ) que nous parcourons les 10 commandes dans l'historique du terminal.

- Dois-je comprendre que la première et la deuxième variantes effectuent la même chose, mais qu'elles ne diffèrent que par le fait que la première commence la recherche du premier au dernier, et que la deuxième commence du dernier au premier de la liste ?
- Oui.

P.S. J'espère que je l'ai expliqué clairement... :-)))

 
Roman.:


(Merci. Je le comprends très bien. Tout le monde peut comprendre si tu l'expliques comme ça.)))

Une dernière question. J'ai trouvé beaucoup de questions similaires dans la recherche, mais j'ai une question légèrement différente).

Le décalage de la carte. Pour obtenir un résultat "valide ? ??", je dois constamment recalculer les délais. C'est-à-dire que si je vois qu'il y a des erreurs dans le journal, je vais dans l'archive des citations et je recalcule toutes les échéances. Dans le testeur, par exemple, je fais un test sur les points de contrôle. Tout va bien. Ensuite, je forme, par exemple, des barres. Tout va bien. Mais si nous effectuons à nouveau un test en utilisant des points de contrôle, je verrai à nouveau des divergences entre les graphiques dans le journal. Qu'est-ce que c'est ? ))) Y a-t-il quelque chose contre cette méchanceté ?

 
tol64:


(Merci. Je le comprends très bien. Tout le monde peut comprendre si tu l'expliques comme ça.)))

Une dernière question. J'ai trouvé beaucoup de questions similaires dans la recherche, mais j'ai une question légèrement différente).

Le décalage de la carte. Pour obtenir un résultat "valide ? ??", je dois constamment recalculer les délais. C'est-à-dire que si je vois qu'il y a des erreurs dans le journal, je vais dans l'archive des citations et je recalcule toutes les échéances. Dans le testeur, par exemple, je fais un test sur les points de contrôle. Tout va bien. Ensuite, je forme, par exemple, des barres. Tout va bien. Mais si nous effectuons à nouveau un test en utilisant des points de contrôle, je verrai à nouveau des divergences entre les graphiques dans le journal. Qu'est-ce que... ? ))) Y a-t-il quelque chose contre cette méchanceté ?


Bien sûr que oui. Pour aider à trier et à éliminer ces erreurs.:-)))