Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 402

 
artmedia70:
Il s'agit d'envoyer une demande de transaction au serveur.


Aïe.

Je voulais dire OrderSelect.


khorosh:
Lisez les fonctions de KimIV et vous verrez que la plupart d'entre elles sont conçues pour récupérer des informations sur les ordres ouverts ou fermés.

Une fois de plus, en parcourant les pages du tutoriel, je suis tombé sur un malentendu concernant l'utilisation de la fonction "Comptabilité des commandes". J'ai décidé de demander.
Les fonctions de KimIV sont difficiles à saisir, mais je vais considérer chaque détail (même si c'est irrationnel).
Ooh, à propos de l'exemple du PC, de la TV, du téléphone - très bon exemple. J'ai réfléchi à la structure de mon téléviseur et j'en suis arrivé à la conclusion que je sais très bien comment il est configuré (c'est il y a trois ans, lorsque mes parents m'ont surpris en train de le démonter, que j'ai eu accès pour la première fois à l'internet).
 
Link_x:

Oups.

Je voulais dire OrderSelect.


Une fois de plus, en parcourant les pages du tutoriel, je suis tombé sur un malentendu concernant l'utilisation de la fonction OrderSelect(). J'ai décidé de demander.
Les fonctions KimIV sont difficiles à appréhender, mais il faut tenir compte de chaque détail (même si c'est irrationnel).
Ooh, à propos de l'exemple du PC, de la TV, du téléphone - très bon exemple. J'ai réfléchi à la structure de mon téléviseur et j'en suis arrivé à la conclusion que je sais très bien comment il est configuré (il y a trois ans, lorsque mes parents m'ont surpris en train de démonter le téléviseur, j'ai eu accès pour la première fois à Internet).

Le code et la logique d'Igor sont très faciles à comprendre. Beaucoup de choses inutiles pour l'universalité, mais quand même. Montre-moi ce que tu ne comprends pas et je te le dirai.

OrderSelect() - sélectionne la commande. C'est la première chose à faire lorsque vous travaillez avec des commandes.

 
artmedia70:

Le code et la logique d'Igor sont très faciles à comprendre. Beaucoup de choses inutiles pour l'universalité, mais quand même. Montre-moi ce que tu ne comprends pas et je te le dirai.

OrderSelect() - sélectionne la commande. C'est la première chose à faire lorsqu'on travaille avec des commandes.



C'est génial ! "C'est parti !" :)

"Brique numéro un".
Mon idée de la signification des composants :
int GetTypeLastClosePos(string sy="", int mn=-1) {                            // Обозначение пользовательской функции, строковой переменной, а так же числовой переменной.
  datetime t;                                                                 // Установление переменной, связанной со временем. 
  int      i, k=OrdersHistoryTotal(), r=-1;                                   // Обозначение числовой переменной, переменной, использующей исторические все данные, утверждение значения r.
  if (sy=="0") sy=Symbol();                                                   //  Если строковая переменная равняется "0", то она имеет случайное значение.
  for (i=0; i<k; i++) {                                                       // Начало  выяснения типа позиции, при обстоятельствах: i < K, а так будет всегда.
   if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)) {                         // Поиск ордера из истории закрытых ордеров с "билетом" i, точным номером позиции. Если ордер найден, то
      if ((OrderSymbol()==sy || sy=="") && (mn<0 || OrderMagicNumber()==mn)){ // задается инструмент, по которому был открыт ордер как sy и его уникальный номер как mn. Это еще не все.
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {                    // Тип ордера определяется как покупка или продажа заданного значения sy инструмента.
          if (t<OrderCloseTime()) {                                           // Если время закрытия ордера определено, тогда определяются две переменные:
            t=OrderCloseTime();                                               // переменная t в качестве  времени закрытия идентифицированного ордера,
            r=OrderType();                                                    //  переменная r в качестве типа определенного ордера.
          }                                                                   //  Хватит.
        }                                                                     // Достаточно.
      }                                                                       // Полно, я доволен!
    }                                                                         // Остановись!
  }                                                                           // Стой, ****!
  return(r);                                                                  // Остановка дейст вия функции с выводом значения переменной r.
}                                                                             // Конец. 
.
Dans ce code, je n'ai pas trouvé de variable donnant la valeur du type du dernier ordre fermé.

Je sais très bien comment faire l'analyse des fonctions d'Igor, qui est vénéré dans les milieux locaux.
Puis-je placer ma compréhension de ces composants, et vous, en tant que programmeurs intelligents, corrigerez ma compréhension de ces fonctions ? ><
 
artmedia70:

Igor 1 a un code et une logique très accessibles. Beaucoup de 2 - inutile pour l'universalité, mais quand même. Montre-moi ce que tu ne comprends pas, et je te le dirai.

4 - OrderSelect() - sélectionne une commande. C'est la première chose à faire lorsqu'on travaille avec des commandes.


Réponse point par point, désolé.
1 - génie de la programmation ?
2 - pour être juste, rien n'est superflu sauf les excréments et autres produits de décomposition (opinion franche, prête à être débattue, mais dans un autre fil :) ).
3 - tout s'explique maintenant. :)
4 - tellement vrai. Je sais. Je me suis un peu "trompé" et j'ai tapé avec la fonction "OrderSend".

Merci de contribuer au modèle "Analyse syntaxique de la brique fonctionnelle". :)
 
Sepulca:


Oui au courtier bien sûr)))

Le terminal s'en moque.... Je vous donnerai les dernières données connues...


Le serveur ne comporte que quatre fonctions. Ouverture, modification et fermeture (suppression) d'une commande
 
Link_x:
Réponse point par point, désolé.
1 - génie de la programmation ?
2 - pour être juste, rien n'est superflu sauf les excréments et autres produits de décomposition (opinion franche, prête à être débattue, mais dans un autre fil :) ).
3 - tout s'explique maintenant. :)
4 - tellement vrai. Je sais. Je me suis un peu "trompé" et j'ai tapé avec la fonction "OrderSend".

Merci de contribuer au modèle "Analyse syntaxique des briques fonctionnelles". :)

Tout d'abord, nous devons nous familiariser avec le concept de fonction. Ensuite, vous pourrez passer à la question de savoir ce qu'ils font et comment les utiliser.
 
Pour récapituler !
Avant de penser à votre incapacité à comprendre le code, vous devriez "essayer de démonter la télévision".
О-у, насчет примера с ПК, телевизором, телефоном - очень хороший пример. 
Сейчас порассуждал о строении своего телевизора и пришел к выводу, 
что хорошо знаю, как устроен мой телевизор (года три назад "горел желанием" его разобрать, 
именно в тот момент, когда мои родители застали меня за разбиранием телевизора, 
я впервые получил доступ в интернет). 
 
Link_x:

Parfait ! "C'est parti ! :)

"Brique numéro un".
Ma représentation des valeurs constitutives :
.
Dans ce code, je n'ai pas trouvé la variable donnant la valeur du type du dernier ordre fermé.

Il est clair pour moi comment faire l'analyse des fonctions d'Igor, qui est vénéré dans ce milieu.
Puis-je afficher ma compréhension de ces composants, et vous, en tant que programmeurs intelligents, corriger ma compréhension de ces fonctions ? ><

Le type de commande dans la variable r. Dans le dernier opérateur, la valeur de cette variable est affectée à la fonction elle-même, ce qui signifie que vous n'avez pas besoin de cette variable en principe. Le type du dernier ordre clôturé est la valeur de la fonction, par exemple, vous pouvez voir cette valeur, si vous l'affichez à l'écran en utilisant l'opérateur Comment()

Comment("Typ=",GetTypeLastClosePos("", -1);

ou dans le journal en utilisant l'opérateur Print()

Print("Typ=",GetTypeLastClosePos("", -1);
 
evillive:

Remplacer les variables MA par des variables indicatrices dans le code EA (les trois ensembles) :

puis remplacez les lignes d'appel MA par l'appel J2JMA :


evillive, j'ai essayé de remplacer comme vous l'avez dit, mais apparemment même cela nécessite plus de connaissances, la compilation donne "53 erreur(s), 18 avertissement(s)", résultat joint. evillive, puis-je vous demander de faire ces substitutions si vous avez le temps.
 
khorosh:

Le type de commande dans la variable r. Dans le dernier opérateur, la valeur de cette variable est affectée à la fonction elle-même, ce qui signifie que vous n'avez pas besoin de cette variable en principe. Le type du dernier ordre clôturé est la valeur de la fonction, par exemple, vous pouvez voir cette valeur si vous l'imprimez à l'écran en utilisant l'opérateur Comment()

ou dans le journal en utilisant l'opérateur Print()


Voici un exemple d'utilisation pratique d'une fonction personnalisée :
GetTypeLastClosePos

.
Merci.
Vous devez donc appliquer le nom de la fonction pour l'utiliser, et la variable "r" elle-même est définie pour déterminer la valeur de cette fonction !
Voici une petite découverte pour moi ! ^^
Merci encore, Yuri. :)


Pour la clarification finale, c'est possible :

if(GetTypeLastClosePos == OP_BUY)
?


Raison: