Les clients ont-ils besoin d'un langage de programmation simple intégré ? - page 4

 
Slava:

Pour l'amour de Dieu. Entrez dans ce créneau le plus tôt possible. Mais préparez-vous à soutenir les utilisateurs non programmeurs.

C'est donc ce que j'ai compris de ce fil de discussion... Toutes les suggestions et demandes à l'auteur du sujet...

 

Personnellement, je suis d'accord avec l'opinion selon laquelle personne n'a besoin d'un "langage de programmation simple". Les personnes qui sont au moins un peu capables de comprendre la programmation - elles apprendront un langage "complexe" assez rapidement. Et ceux qui veulent "une voie royale en géométrie" trouveront un tas de problèmes dans un "langage simple".

P.S.

Je n'ai pas vu MQL II.

J'étais au tout début de MQL5 et, comme j'ai de l'expérience en C++, j'ai commencé à essayer de l'utiliser tout de suite, même si MQL4 ne supportait pas la POO à l'époque. Comme le temps l'a montré, j'avais raison.

 

L'idée de faire évoluer les langages de programmation est pertinente et très probablement réalisable. Rappelez-vous comment les premiers microprocesseurs étaient programmés. Puis vint l'Assembleur, et après cela une multitude de langages de haut niveau (Basic, Fortran, C...). À chaque étape, l'objectif est de simplifier le processus d'interaction entre les utilisateurs et les dispositifs techniques. Et ces objectifs ont été atteints avec succès. De toute évidence, il est temps maintenant d'approfondir et d'améliorer ce qui a été réalisé. De nombreuses tentatives plus ou moins réussies de dissimuler le processus de codage sous des outils clairs et facilement accessibles sont visibles dans presque tous les logiciels modernes. Par exemple, modèles Excel ou Powerpoint, macros Access, programmation visuelle Matlab Simulink, etc. Ces outils permettent essentiellement aux utilisateurs, loin de la programmation, de résoudre des tâches qui, auparavant, ne pouvaient tout simplement pas être résolues sans programmeurs. Et c'est une très bonne chose. Le domaine du commerce ne fera probablement pas exception. Tôt ou tard, il y aura une transition de la programmation en MQL vers d'autres moyens plus simples et plus clairs de mettre en œuvre des algorithmes. Les efforts dans ce sens ne peuvent donc qu'être salués. Je souhaite à Alexey de réussir à résoudre ce problème. Même la formulation de la question (très professionnelle, d'ailleurs) est déjà une grande contribution à la résolution de cette tâche très difficile, mais importante.

 
Serqey Nikitin:

Si j'ai bien compris, c'est le but de ce sujet... Toutes les suggestions et demandes à l'auteur du sujet...


Err, j'ai écrit sur une façon très simple de donner à l'utilisateur un outil d'automatisation primitif, mais ensuite, comme d'habitude, la conversation a évolué vers la création d'un nouveau langage)).

Je vais décrire la situation à l'aide d'un exemple. Nous avons un panneau d'échange, comme ces clones qui inondent le marché. En règle générale, ils vous permettent de faire les choses les plus simples.

Imaginons maintenant que dans le panel, nous puissions fixer des conditions, par exemple la sélection d'une stratégie en fonction des conditions du marché.

Par exemple, nous avons franchi la limite inférieure du canal. S'agit-il d'un breakout ou d'un false-break ? Nous ne savons pas, et nous n'avons pas le temps de nous asseoir devant le moniteur, nous avons des affaires à gérer.

Ok, nous posons une condition selon laquelle si la pente des variations de prix dépasse le seuil spécifié et que le prix est tombé en dessous de la valeur *.*****, nous passons le mode de transaction à la vente. Si la pente est positive et que le prix augmente dans les limites du canal jusqu'à *.*****, nous activons le mode de trading dans le canal.

Il s'agit d'une description très approximative. Nous ne devrions pas inventer un langage, un utilisateur moyen ne l'étudiera pas, ou, comme l'a souligné à juste titre Slava, il aura beaucoup de problèmes avec le support. Vous devez vous concentrer sur l'utilisateur le plus stupide, et il y en a beaucoup. J'ai rencontré tellement de gens qui ne comprennent pas comment fonctionne le système de fichiers et où sont installés les programmes... et pour eux, le monde de l'ordinateur se limite aux icônes sur le bureau. C'est le genre de personne que nous devrions cibler.

 
George Merts:

Les personnes qui sont au moins un peu capables de comprendre la programmation - elles apprendront un langage "complexe" assez rapidement. Mais ceux qui veulent "une voie royale en géométrie" trouveront beaucoup de problèmes dans un "langage simple".

Exactement. Vous n'auriez pas pu mieux dire.

 
Serqey Nikitin:

C'est l'excuse de ceux qui ne veulent rien changer... Il est très FACILE de prendre pour axiome une chose que l'on ne veut pas corriger...

Tu regardes tout depuis ton propre clocher.

Il existe deux types d'utilisateurs.

Les premiers comprennent 90 à 99 % de la population, ils sont trop paresseux pour faire trois clics de souris au lieu de deux. Les autres, ceux qui pourraient être intéressés par un tel langage, sont tout à fait capables de comprendre mql5 également.

 
Комбинатор:

Tu regardes tout depuis ton propre clocher.

Il existe deux types d'utilisateurs.

Le premier type comprend 90-99% de tous les utilisateurs, ils sont trop paresseux pour faire trois clics de souris au lieu de deux. Les autres, ceux qui pourraient être intéressés par un tel langage, sont tout à fait capables de comprendre mql5.


En quoi le passage à mql5 est-il utile ? Est-il plus facile d'écrire en mql5 ? Y a-t-il moins de code ?

 
igrok333:

Et quel est l'avantage de passer à mql5 ? est-il plus facile d'écrire dedans ? y a-t-il moins de code ?

ok, à mql4. c'est ok ?

 
voici une ouverture de transaction dans mql4
OrderSend(Symbol(),OP_BUY,0.01,Ask,30,0,0)
une ligne.


voici une ouverture de transaction sur mql5
   MqlTradeRequest request;
   MqlTradeResult result;

   Ask=SymbolInfoDouble(Symbol(),SYMBOL_ASK); 

   request.action=TRADE_ACTION_DEAL;
   request.symbol=Symbol();
   request.volume=Lot;
   request.deviation=Slip;
   request.type_filling=ORDER_FILLING_AON;
   request.sl=SL;
   request.tp=TP;
   request.type=ORDER_TYPE_BUY;
   request.price=NormalizeDouble(Ask,Digits());
   OrderSend(request,result);  
13 lignes.

Dans les langages de programmation normaux, un oop est déclenché lorsque rien ne peut être fait par les méthodes normales, mais ici - l'ouverture d'une transaction est l'opération la plus facile dans le commerce.
N'est-ce pas un langage de programmation boiteux ?
 
igrok333:
voici l'ouverture d'une transaction dans mql4
une ligne.


voici l'ouverture d'une transaction dans mql5
13 lignes.

Dans les langages de programmation normaux, un op est déclenché lorsque vous ne pouvez rien faire en utilisant les méthodes normales.
N'est-ce pas un langage de programmation boiteux ?

Cette chose vous redonnera la joie de vivre, ça ne peut pas être plus simple ;))