Mon approche. Le noyau est le moteur. - page 50

 
Georgiy Merts:

Vitaly, le problème est que Peter est un titan de la mémorisation. Il n'oublie pas où et quels index il possède, ce qu'ils signifient, quelles connexions ils ont et où.

Avec une mémoire aussi impressionnante, les améliorations de la POO ne sont que des gestes inutiles, et une certaine dégradation des performances. Pour quoi faire ?

La POO est pour ceux qui ne se souviendront pas dans une semaine pourquoi ils peuvent changer la variable à un endroit donné et pas à l'endroit voisin. Ce sont eux qui ont besoin de l'encapsulation, des sections de classe publiques, protégées et préverties, des interfaces virtuelles, du polymorphisme... Et lorsque tout est en mémoire, comme dans un ordinateur, il est beaucoup plus facile d'accéder directement à chaque objet, sans aucune amélioration de la POO.

Suggérer à Peter une classe de smartpointers, qui prennent en compte le nombre de références lors du passage des objets, puis, lorsque personne ne s'y réfère, les suppriment ! Peter sera surpris, il se souvient très bien de la date de création de chaque objet, du nombre d'utilisateurs qu'il a, de la durée de son existence et du moment où il doit être supprimé. Quel est l'intérêt de les utiliser ?


Non, on peut faire ça aussi. La seule question que je me pose est : pour qui ? Peter dit que "cela créera une couche de ces utilisateurs". Eh bien, eh bien... Nous verrons bien.

Un bon souvenir est certainement bon :) Mais la mémoire a cette propriété qu'avec l'âge, elle se dégrade ou devient sélective. Ce dont vous vous souvenez très bien et ce qui vous semble insignifiant vous échappe immédiatement. :)

 
Yury Kulikov:

Vous avez un étrange esprit de compétition :)

Juste pour l'intérêt, seriez-vous en mesure d'utiliser votre interface pour créer un analogue d'un tel programme :


Le programme a été écrit en deux mois en 2013, un autre projet parallèle étant toujours en cours.

Le programme a été compilé pour la dernière fois en 2014, donc quelques mésaventures sont possibles :).

Il est préférable d'exécuter le programme sur des instruments négociés en bourse.

Clarification pour les modérateurs : Ce programme n'est pas sur le marché.

Bonne et puissante interface graphique. Je peux reproduire 85% de sa mécanique avec le constructeur. Je dispose également de la fonction drag&drop, des fenêtres dynamiques. Le reste est la tâche du programme (faire clignoter des chiffres dans des cellules, appelées fonctions).

Quant aux fenêtres d'instruction - cela aussi est reproductible. En bref, dans ma version, l'apparence sera légèrement différente, mais la fonctionnalité sera presque la même.

Mais, l'échelle et les chiffres ne sont pas implémentés dans ma version. Et il n'y a pas d'échelonnement.

Cependant, contrairement à cette interface graphique, mes graphiques seront plus beaux. Dégradés, icônes, jolis cadres, ombres... Les éléments sont tous dessinés.

Mais, pour un marché moderne - votre produit est très puissant. Probablement l'un des plus puissants.

Et le fait que peu de gens l'aient acheté - vous pouvez remercier les graals du testeur. Ils ont rendu tous les produits insignifiants, sauf pour eux-mêmes.

 
Igor Makanu:

et pourquoi ce nouveau style ?

Vous avez écrit que pour 30-100 commandes, il y a une commande pour le panneau de développement, le plus souvent cela n'arrive pas, le moins souvent cela arrive.

si vous voulez travailler en freelance, allezsur https://www.mql5.com/ru/search#!keyword=%D0%BF%D0%D0%D0%B0%BD%D0%B5%D0BB%D1%8C&module=mql5_module_jobs

c'est toute la demande, et remarquez que les panneaux sont nécessaires pour le commerce, et personne n'est intéressé par les analyses et les calendriers dans un panneau.

ZS : Avez-vous entendu la blague sur le Joe insaisissable ? Avec tout le respect que je vous dois, mais votre GUI est bon, mais très peu de gens sont intéressés, moins d'effort peut obtenir n'importe quel résultat avec une dll, faire un panneau qui, à votre avis, les utilisateurs ont besoin et dans le marché, un mois sera des statistiques ...

PS : je n'ai jamais eu aucune envie de traiter avec C# .Net, mais depuis que les développeurs ont fait du support, j'ai dû passer une heure pour trouver un simple compilateur c avec un concepteur de formulaire - SharpDevelop (14 Mb) et en googlant comment exécuter un formulaire à partir de .dll, tout fonctionne et tout "tourne", le code lui-même, qui a prescrit les mains littéralement - 3 lignes !!!

Les développeurs de MQL ont facilité l'utilisation des .dll en C#, il suffit de placer une dll prête à l'emploi dans le dossier Libraries et d'écrire dans les premières lignes de l'Expert Advisor le nom .dll - c'est tout ;)

Tu ne veux tout simplement pas comprendre. Quelle différence cela fait-il ? Votre variante n'est pas pour les masses.

Les gens cherchent le profit. Dans cette recherche, ils sont coincés sur les mêmes bancs d'essai. C'est-à-dire des programmes qui promettent un enrichissement en fonction des lectures des testeurs. C'est tout. C'est une impasse à partir d'ici.

Est-ce que ça durera toujours ? Auront-ils toujours confiance dans le testeur ? Ne seront-ils jamais déçus de voir des dizaines de milliers de robots "morts" ?

Je propose une solution pour sortir de l'impasse. Programmes semi-automatiques où l'utilisateur sera responsable de ses propres actions.

Tu crois que personne n'en veut ? Vous vous trompez.

 
Алексей Тарабанов:

Peter, c'est ça le problème - il n'y a rien à utiliser. Toute fenêtre est soit une décoration, soit un point de dialogue. Le point de dialogue implique la nécessité de ce dialogue.

Imaginez que vous êtes un trader et que le programme vous demande quelque chose. Il a besoin de l'apprendre de vous. Ce qu'il peut vous demander, et vous pouvez répondre à cette question par un bouton ou un formulaire ? Je suis sérieusement intéressé par votre opinion sur ce sujet - répondez moi si vous le voulez bien.

Et la deuxième situation : vous estimez qu'il est nécessaire d'intervenir dans le travail du programme - quel bouton / formulaire vous permettra de le faire efficacement ?

Je suis absolument d'accord avec vous pour dire que l'automatisation d'une activité est la tâche de ceux qui l'automatisent, mais vous prétendez être un créateur d'outils pour développer une interface homme-machine dans ce domaine. Une interface de boutons et de formulaires, ou une interface graphique normale qui permet de travailler avec tous les objets graphiques de MT ; une interface d'objets, ou d'interruptions aussi ?

Vous prétendez créer une norme ; moi, en automatisant quelque chose, je prétends que toute opération graphique, ou presque, que je génère sera acceptée par votre interface. Sinon, nous n'avons pas besoin les uns des autres.

Toute fenêtre peut avoir plusieurs fonctions possibles :

  1. Un point de dialogue(boîte de dialogue).
  2. Une fenêtre de paramètres.
  3. Une fenêtre de notification.
  4. Une fenêtre pour afficher des informations (tableaux).
  • Le logiciel peut s'interroger, par exemple, sur la sur-optimisation de la stratégie actuelle.
  • Arrêt de l'exécution de l'algorithme de trading en raison de mauvaises statistiques pour les derniers jours.
  • Le réglage des paramètres lorsque la situation du marché change.
  • Vous pouvez penser à beaucoup, beaucoup d'autres choses.
Je pense que le commerce est une perte de temps et d'argent. Mais comment les autres pensent - c'est leur affaire. Qui s'en soucie ? Il y aura toujours ceux qui pensent qu'il est nécessaire d'interférer dans le travail du programme, et ceux qui pensent que ce n'est pas nécessaire. Pourquoi s'embêter avec ces questions ? Il est préférable d'élaborer des programmes pour les premiers et les seconds et de les vendre.
 
Реter Konow:

Toute fenêtre peut avoir plusieurs fonctions possibles :

  1. Un point de dialogue (fenêtre de dialogue).
  2. Une fenêtre de paramètres.
  3. Une fenêtre de notification.
  4. Fenêtre de sortie des informations (tableaux).
  • Le logiciel peut s'interroger, par exemple, sur la sur-optimisation de la stratégie actuelle.
  • Arrêt de l'exécution de l'algorithme de trading en raison de mauvaises statistiques pour les derniers jours.
  • Le réglage des paramètres lorsque la situation du marché change.
  • Vous pouvez penser à beaucoup, beaucoup d'autres choses.
Je pense que le commerce est une perte de temps et d'argent. Mais comment les autres pensent - c'est leur affaire. Qui s'en soucie ? Il y aura toujours ceux qui pensent qu'il est nécessaire d'interférer dans le travail du programme, et ceux qui pensent que ce n'est pas nécessaire. Pourquoi s'embêter avec ces questions ? Il est préférable d'élaborer des programmes pour les premiers et les seconds et de les vendre.

C'est la raison et la réponse !

 
Vitalii Ananev:

Un bon souvenir est certainement une bonne chose :) Mais la mémoire a tendance à se détériorer ou à devenir sélective avec l'âge. Ce dont vous vous souvenez très bien et ce qui vous semble insignifiant vous échappe immédiatement. :)

C'est votre mémoire (et la mienne aussi).

Peter a une mémoire différente et elle s'améliore avec l'âge, comme un bon vin. Peter se souvient toujours de tout ce qu'il a écrit, du comment et du pourquoi, et de ce à quoi il pensait. Il n'a donc pas vraiment besoin de la POO.

J'envie la mémoire de Peter.

 
Реter Konow:

Je peux reproduire 85% de sa mécanique avec un constructeur.

J'ai des doutes :) Si seulement les fenêtres, les boutons, les contrôles ... Mais c'est le moins qu'on puisse dire.

Votre interface ne sera même pas capable de traiter le trafic de tumblr, et vous devez encore rendre certains indicateurs.

Oh, et c'est la première version de la bibliothèque gui, avec une utilisation minimale de kanvas, tout est implémenté sur kanvas maintenant, sauf l'entrée de texte.

 
Реter Konow:

Les gens cherchent le profit. Dans cette recherche, ils sont fixés sur les mêmes graals de test. C'est-à-dire des programmes qui promettent un enrichissement basé sur les lectures des testeurs. C'est tout. C'est une impasse à partir d'ici.

Est-ce que ça durera toujours ? Auront-ils toujours confiance dans le testeur ? Ne seront-ils jamais déçus de voir des dizaines de milliers de robots "morts" ?

Pourquoi serait-il "mort" ?

N'importe quel robot a des périodes de gain. N'IMPORTE QUI. Même les plus minables de mes MU de la Ligue ont une courte durée de vie. Il n'y a donc aucun moyen de les appeler "morts".

C'est comme avec les vêtements. Bien sûr, des shorts, des tongs et un panama pour la vie quelque part à Arkhangelsk. Mais vous n'allez pas prétendre que ce sont des "vêtements morts". De plus, certains jours, vous pouvez les porter même à Arkhangelsk.

Et vice versa - sur la côte de la mer Noire, le tulup et les bottes en fourrure ont l'air ridicule en été. Bien que, parfois, ils soient très nécessaires, même sur les rives de la mer Noire.

Il en va de même pour les robots de trading : chaque marché a son propre robot de trading. Et la tâche du trader est de sélectionner le robot qui convient au marché. C'est pourquoi vous ne pouvez pas dire que "les gens seront déçus", tout comme personne n'est déçu par un short ou un pantalon panama et personne n'est déçu par un imperméable. Il suffit de porter le premier quand il fait chaud et le second quand il fait froid.


Le testeur n'est ni un obstacle ni une panacée. Il vous indique ce qu'a été le marché ces derniers temps et vous permet de choisir un TS qui y correspond. Mais, cela ne signifie pas que le marché ne changera pas dans les prochains jours, et que le TS ne sera pas plus adapté. Cependant, un robot qui a fait des bénéfices dans le passé est préférable à un robot qui a perdu dans le passé.

Le trading manuel ne peut être constamment rentable que si vous avez beaucoup d'expérience. Juste pour comprendre quand et quelle technique utiliser. Pensez-vous que beaucoup de gens l'ont ?

 
Yury Kulikov:

J'ai des doutes :) Si seulement les fenêtres, les boutons, les contrôles ... Mais c'est le moins qu'on puisse dire.

Votre interface ne sera même pas capable de traiter le trafic de verre, et vous devez encore rendre certains indicateurs.

Oui, et c'est la première version de la bibliothèque gui, avec une utilisation minimale de kanvas, tout est déjà implémenté sur kanvas maintenant, sauf l'entrée de texte.

Le constructeur est conçu pour des solutions génériques. Votre programme est personnalisé pour des tâches spécifiques.

Vous pouvez fabriquer et faire fonctionner un culbuteur sur le constructeur et cela fonctionnera. Mais le dessin de toutes sortes d'indicateurs n'est pas inclus dans les tâches du constructeur jusqu'à présent.

Cela peut être fait par l'utilisateur dans son programme.


Et que dire du fait qu'il ne tirera pas le trafic du verre :



Cliquez sur l'image pour voir le gif. Comme vous pouvez le constater, la vitesse de redécoupage des éléments du tableau est suffisamment rapide pour tirer le trafic du culbuteur (il y a encore plus de cellules).

 
Реter Konow:

Et pour ce qui est de ne pas attirer le trafic du tumblr :

Cliquez sur l'image pour voir le gif. Comme vous pouvez le constater, la vitesse de rendu des éléments du tableau est suffisamment rapide pour attirer le trafic de la tasse (il y a encore plus de cellules).

Je ne parlais pas de la vitesse de rendu, je parlais du trafic (échange) entre votre gui et le programme utilisateur.

Bien sûr, tout programme est conçu pour une tâche spécifique, mais en utilisant, par exemple, la bibliothèque standard, vous pouvez ajouter un objet animé dans la fenêtre, et dans votre gui non, vous devez le demander :(

Raison: