[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 - 5. - page 32

 

Chers professionnels ! Je m'intéresse depuis peu à la négociation des calendriers des matières premières et des écarts intercontractuels sur le marché à terme. À cet égard, il est nécessaire de disposer de graphiques d'instruments synthétiques. L'idée est de construire un graphique en chandelier calculé à partir de la différence de prix OHLC entre l'essence (XRB) et le fioul domestique (HO), par exemple. J'ai essayé de résoudre cette tâche en utilisant mes propres ressources puisque la formule de calcul est simple - il suffit de calculer la différence entre les prix des instruments et de sauvegarder les valeurs obtenues dans un fichier historique et de les utiliser en mode autonome en leur appliquant divers indicateurs. Heureusement, il existe plusieurs scripts prêts à l'emploi pour écrire des graphiques synthétiques, comme PeriodConverter. J'ai décidé de commencer par un simple. J'ai essayé d'ajouter le code qui soustrait les prix d'un autre symbole des prix du graphique (avec la même heure d'ouverture) pour les barres correspondantes dans le script spécifié. Afin de ne pas éviter d'écrire du code pour synchroniser les barres de deux instruments par leur heure d'ouverture, j'ai introduit un paramètre qui ne bloque que les 50 dernières barres pour le calcul, car dans la plupart des cas, ces dernières barres ne devraient pas être synchronisées par leur heure d'ouverture ou leur indexation car elles sont déjà synchronisées. J'ai intentionnellement combiné les outils de manière à ce que les valeurs négatives des prix ne soient pas obtenues lors des calculs car, pour autant que je sache, le terminal ne les affiche pas sur le graphique. Voici ce que j'ai obtenu. Lors de l'ouverture d'un graphique synthétique obtenu à l'aide du script mis à jour en mode autonome, le terminal ne peut pas afficher plus de la moitié des barres calculées ! Cependant, si l'opération de soustraction du prix est remplacée par l'opération d'addition dans le script, toutes les barres calculées sont tracées. Quelle est la différence entre les opérations d'addition et de soustraction ? Il en va de même pour les opérations de multiplication et de division : en multipliant les prix concernés, les barres du tableau synthétique s'affichent normalement, mais en divisant, moins de la moitié des barres s'affichent à nouveau ! Vous pouvez dire qu'il y a peut-être un zéro dans le dénominateur lors de la division. Mais j'ai vérifié les tableaux calculés avec la fonction Comment et elle produit des valeurs correctes à chaque fois, c'est-à-dire que l'opération de division par zéro n'était pas présente dans mes tests. Et maintenant je suis dans l'impasse, je ne sais pas quoi en faire.

Si vous n'êtes pas difficiles estimés professionnels, s'il vous plaît conseiller dans ce qui se trouve le chien ! J'ai diffusé l'attachement et son travail. Regardez le code, s'il vous plaît, ce que vous devez ajouter ou modifier pour que le script fonctionne normalement. Je devrais au moins obtenir des graphiques autonomes, qui n'ont pas besoin d'être mis à jour en temps réel, car les opérations sur écart se font généralement à moyen terme, en termes de jours ou de semaines, de sorte que la vitesse d'élaboration des graphiques n'est pas critique. Ou peut-être l'idée de créer de tels tableaux n'est-elle pas du tout réalisable ?

Dossiers :
 
hoz:

Alors, comment la logique va-t-elle changer en déplaçant une parenthèse sur une ligne ? Après tout, la structure du code restera la même, tout comme la logique...

c'est vrai, mais cette variante concise est différente. Dans le premier cas, nous avons d'abord regardé la valeur de la variable n, puis ind. La différence est qu'après avoir comparé n, nous allons de toute façon vérifier la valeur de ind. Mais si nous commençons par vérifier ind et ensuite n, le nombre d'opérations diminuera de 45-49%, car ind est vide dans la plupart des cas.
 
Les gars, rappelez-moi où regarder le calendrier et les conditions de trading du Nouvel An... les spreads seront probablement multipliés par 5 et les exigences de marge
 

Quelqu'un sait-il comment faire pour que les éditeurs de tableurs gratuits comme OpenOffice ou LibreOffice ne suppriment pas le premier zéro dans le format texte ?

J'ai lu tout ce que je pouvais sur le web. Je n'ai rien trouvé. Pourquoi tous les rédacteurs similaires sont fixés de cette manière ? De plus, dans tous les éditeurs, il est écrit que le format texte produit tout ce qui est écrit.

 
Zhunko:

Quelqu'un sait-il comment faire pour que les éditeurs de tableurs gratuits comme OpenOffice ou LibreOffice ne suppriment pas le premier zéro dans le format texte ?

J'ai lu tout ce que je pouvais sur le web. Je n'ai rien trouvé. Pourquoi tous les rédacteurs similaires sont fixés de cette manière ? De plus, dans tous les éditeurs, il est écrit que le format texte produit tout ce qui est écrit.


Peut-être écrire avec des guillemets ? ""
 
keep87:

C'est vrai, mais ce n'est pas ce qui est différent dans la version concise. Dans le premier cas, nous regardons d'abord la valeur de n et ensuite ind. et dans le second cas, c'est l'inverse. La différence est qu'après avoir comparé n, nous allons de toute façon vérifier la valeur de ind. Mais si nous commençons par vérifier ind et ensuite n, le nombre d'opérations diminuera de 45-49%, car ind est vide dans la plupart des cas.

Exactement ! Je suis surpris, en effet. Je comprends tout maintenant, merci.
 
Replikant:

Merci ! !!

mais j'ai bien peur que "un peu" ne suffise pas))) - J'ai une formule booléenne à trois étages avec 16 paramètres de type bool)

Quelle charge vous avez... Prenez jusqu'à 16 bits et passez en revue chaque bit...

//|                                                         test.mq4 |
//|                              Copyright © 2012 Mikhail Kozhemyako |
//|                                               ua3xcm@obninsk.com |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2012 Mikhail Kozhemyako"
#property link      "ua3xcm@obninsk.com"
extern  int Биты=0;
bool СработалоУсловие№_i;
int init()
  {
   return(0);
  }
int deinit()
  {
   return(0);
  }
int start()
  {
   int i;
   int Сдвиг=1;
// Гденить здесь нужно определиться с вашими условиями
   for(i=0;i<=15;i++)
    {
     if(СработалоУсловие№_i)
      {
       Биты=Биты | Сдвиг;
      }
     Сдвиг=Сдвиг << 1; 
    }
   for(i=0;i<=15;i++)
    {
     if(0x0001 & Биты == 1)
      {
       // Делать что-то по условию i
      }
     Биты = Биты >> 1;
    }
   return(0);
  }

Et dans le testeur, réglez la variable binaire perobore de 0 à 65535 par incréments de 1.

Je ne sais pas, je l'ai fait, je pense que ça devrait marcher.....

 
Bonsoir ! Dites-moi, sur la capture d'écran du test, il est indiqué que le pourcentage de transactions courtes gagnantes est de 0. Ce sont des ventes, n'est-ce pas ? Donc je suppose qu'aucun d'entre eux n'était rentable ? Cela indique-t-il un fort déséquilibre ?
 
Dimka-novitsek:
Bonsoir ! Dites-moi, sur la capture d'écran du test, il est indiqué que le pourcentage de transactions courtes gagnantes est de 0. Ce sont des ventes, n'est-ce pas ? Donc je suppose qu'aucun d'entre eux n'était rentable ? Cela indique-t-il un fort déséquilibre ?

Oui, il fait du Short-Sell-Short. Mais peut-être que vous ne les avez pas ouverts pour une raison quelconque.
 
chief2000:

Dois-je l'écrire entre guillemets ? ""

Comment traitez-vous cela ? Un format spécial pour les émissions tordues ? Certaines informations sont entre guillemets, d'autres sans... Ou tout est entre guillemets ?

Il est en quelque sorte incorrect d'écrire des zéros entre guillemets si c'est du texte. Dans les fichiers CSV, tout est du texte. C'est l'utilisateur qui décide de ce qu'il faut traiter et comment, pas l'éditeur.

Pour Excel, il existe une option permettant de placer une apostrophe devant le texte. Résout tous les problèmes de visualisation, mais pas le contenu. Pourquoi ce personnage supplémentaire ?