Discussion sur "Comment écrire une DLL pour MQL5 et échanger des données en 10 minutes". - page 3

 
kombat:

Sera-t-il possible de créer des dlls simples en utilisant les moyens de mcl5 ? tout simplement en les écrivant dans un unitor et en les compilant... ?

Et où trouver le compilateur et l'éditeur de liens avec toutes les bibliothèques Windows et le SDK de la plate-forme ?

Vous pouvez faire beaucoup plus simple - télécharger et installer gratuitement Visual Studio 2008 Express et créer les DLL nécessaires dans celui-ci.

 
Renat:

Et où trouver le compilateur et l'éditeur de liens avec toutes les bibliothèques Windows et le SDK de la plate-forme ?

Vous pouvez faire quelque chose de beaucoup plus simple - télécharger et installer gratuitement Visual Studio 2008 Express et l'utiliser pour créer les DLL nécessaires.

La question n'est pas d'être libre...

La question est que j'ai dû télécharger et installer un monstre pour le bien d'un petit.

En tout cas, merci pour votre réponse...

 

Encore une petite question...

Ce qui doit être téléchargé à partir de cette page :
http://www.microsoft.com/express/Downloads/

c'est
Visual C++ 2008 Express Edition
ou tous
Tous - Installation hors ligne du fichier image ISO

?

Visual Studio Express
Visual Studio Express
  • www.microsoft.com
Visual Studio Express for Web has the tools to create standards-based, responsive websites, web APIs, or real-time online experiences using ASP.NET. Publish your web application directly to Windows Azure from the IDE. Create web services consumed by connected devices. System Requirements: Windows 7 SP1 (x86 and x64) Windows 8 (x86 and...
 
kombat:


Visual C++ 2008 Express Edition

C'est suffisant.
 
Renat:
C'est suffisant.

Merci, je suis en train de le télécharger.

Mais tout est dans un seul fichier (800 mb).

Je n'ai pas vraiment confiance dans l'installation du réseau...

 
Renat:

Nous avons méthodiquement créé 4 générations de langages de trading depuis 2001 avec une énorme communauté de traders. Les concurrents mouraient, leurs langages de contrôle ne se développaient pas, mais nous travaillions, travaillions et continuerons à travailler.

Renat:

Mais où trouver un compilateur et un éditeur de liens avec toutes les bibliothèques Windows et le SDK de la plate-forme ?

Vous pouvez faire beaucoup plus simple : téléchargez et installez le logiciel gratuit Visual Studio 2008 Express et utilisez-le pour créer les DLL nécessaires.

Nous devons tout d'abord découvrir quels sont "leurs" langages de contrôle, délimiter "leurs" fonctions et ensuite trouver ce que signifie "leur" développement. Je ne parle pas de concurrents, mais de langues. Comme vous pouvez le voir, les programmes et les systèmes de trading vivent parmi une variété de coquilles environnantes, même sous Windows, nous avons C++/.net/JScript/shell script/ et d'autres, et il a été souligné à juste titre ci-dessus, qu'il n'y a aucun intérêt à essayer de tout glisser à l'intérieur de la plate-forme de trading - la création d'une DLL, ou la fourniture de minuteries, l'échange de données et ainsi de suite devraient être basés sur des outils déjà disponibles et largement connus du système d'exploitation lui-même, des add-ons librement disponibles. (disons, le framework .net en développement constant avec ses versions d'exécution) + les outils de développement et de débogage les plus puissants - pourquoi s'embêter avec un vélo ou un OS commercial de nouvelle génération comme Chrome OS partout ?

À mon avis, le développement du langage d'écriture du TC doit servir les tâches spécifiques du commerce, c'est-à-dire la collecte d'informations, l'analyse, les tests, la gestion du commerce et l'intégration avec d'autres systèmes - tout cela peut et, à mon avis, devrait être fait à un niveau élevé d'outils de développement modernes, c'est-à-dire en intégrant et en étendant le cadre standard sélectionné à l'aide de méthodes généralement acceptées (OOP, etc.). La tâche n'est pas d'écrire une plate-forme autonome et autosuffisante sur un mélange de C / C + + ou autre, mais d'abord une écriture de haute qualité les bases de la plate-forme de négociation, ses services, API et interface utilisateur. Car la tâche d'intégrer la plateforme de trading dont nous disposons déjà, même si c'est la meilleure, est inévitable. Un exemple simple est l'AutoTrading. Il est probablement clair que le démarrage de Windows avec autologin et МТ terminal dans le dossier Start du système d'exploitation - est déjà un anachronisme malveillant, nous avons besoin d'un service Windows normal pour que les robots fonctionnent indépendamment des connexions des utilisateurs (serveurs ?). Il n'est peut-être pas nécessaire de jouer avec les DLL, il suffit de baser la plate-forme sur .net, par exemple. Écrivez en C#, C++ géré, Delphi, J++ et un tas d'autres choses. À mon avis, cela était dû à la crainte des développeurs de créer une plateforme trop extensible et flexible qui serait beaucoup plus difficile à contrôler que n'importe quel bac à sable sous-abonné.

 

Combien de fois ai-je entendu exactement ces mots - pourquoi réinventer la roue, pourquoi ne pas prendre java, Net, etc. comme base. Et j'ai moi-même commencé à écrire mes premières stratégies de trading il y a exactement 11 ans, alors qu'il n'y avait aucune idée de l'API sur un compte de trading.


Prenez l'API prête de différents courtiers et faites vos propres solutions, pour l'amour de Dieu.

Sauf que la pratique montre que seuls les programmeurs exigent des API brutes. Et pour un programmeur prêt à aller "main dans la main" pour écrire le système, il y a 1000 traders qui veulent tester leurs stratégies sur un cadre prêt et sécurisé.

Les débutants demandent une API, parfois ils l'obtiennent, puis un mois d'agonie passe et ils comprennent que l'API pour écrire même la stratégie de trading la plus simple ne suffit pas, et que tout ce dont ils ont besoin est un environnement de marché prêt à l'emploi. Il s'avère qu'il n'existe pas de marché pour les programmes les plus simples sans API, que les acheteurs ne souhaitent pas être liés à un seul terminal, etc. Et le désir d'écrire davantage est invariablement perdu.


Le développement normal d'un environnement d'autoprogrammation dans les plates-formes de négociation nécessite un cadre sécurisé avec une sandbox rigide, sinon personne ne partagera les scripts par peur des chevaux de Troie. S'ils ne partagent pas, la communauté mourra et la langue aussi.

La communauté n'est pas constituée de 50, 100 ou 500 programmeurs (qui se feront un plaisir de vous essuyer les pieds), mais de dizaines et de centaines de milliers de traders qui utilisent des systèmes d'une complexité minimale.

À propos, seul MQL4.community reçoit plus de 30 000 visiteurs uniques chaque jour, et nous estimons qu'il y a bien plus d'un million d'utilisateurs de MetaTrader 4 dans le monde.

MQL4: automated forex trading, strategy tester and custom indicators with MetaTrader
  • www.mql4.com
MQL4: automated forex trading, strategy tester and custom indicators with MetaTrader
 
Renat:
Dans la build 240, les wrappers ont été simplifiés, le taux d'appel est maintenant de 19 911 000 appels par seconde.
Oh ! Alors c'est bien.
 
Renat:

Combien de fois ai-je entendu ces mots exacts - pourquoi réinventer la roue, pourquoi ne pas utiliser java, Net etc. comme base. Mais j'ai moi-même commencé à écrire mes premières stratégies de trading il y a exactement 11 ans, alors qu'il n'y avait pratiquement aucune API sur mon compte de trading.
C'est une façon de voir les choses. Et même après 11 ans, quelque chose devait changer :)

Prenez l'API prête de différents courtiers et créez vos propres solutions.
Parfois, les gens sont tentés de le faire. Et pourquoi ne pas essayer d'améliorer la situation, surtout si le poste le permet ?

Mais la pratique montre que seuls les programmeurs demandent l'API brute. Et pour chaque programmeur prêt à écrire le système "à la main", il y a 1000 traders qui veulent vérifier leurs stratégies sur un cadre prêt et sécurisé.
Le terme "brut" est un concept relatif. Cependant, une API est parfois mieux que rien. Ou pire, ils sont obligés de les utiliser en raison des limites inhérentes à la plate-forme.
Au sujet des cadres "sécurisés", le débat est ouvert : que protégeons-nous, de qui et comment ?

Les nouveaux venus demandent une API, parfois ils en obtiennent une, puis un mois d'agonie passe et ils se rendent compte que l'API ne suffit pas pour écrire la stratégie de négociation la plus simple, et qu'ils ont besoin d'un environnement de marché prêt à l'emploi pour tout le reste. Il s'avère qu'il n'existe pas de marché pour les programmes les plus simples sans API, que les acheteurs ne souhaitent pas être liés à un seul terminal, etc. Et le désir d'écrire davantage est invariablement perdu.
C'est de cela que nous parlons - pas d'API, mais d'un cadre extensible avec des interfaces spécialisées, adaptées à des tâches spécifiques ! Se lier au terminal n'intéresse personne, mais les courtiers "aiment" se lier. Bien sûr, vous devez vous sentir désolé pour eux.


Un environnement de développement normal pour l'autoprogrammation dans les plates-formes de négociation nécessite un cadre sécurisé avec une sandbox rigide, sinon personne ne partagera les scripts par peur des chevaux de Troie. S'ils ne partagent pas, la communauté mourra, et la langue aussi.
Je ne suis pas d'accord avec vous sur ce point, mais je suis prêt à changer d'avis et à modifier ma position. Citez un exemple de l'histoire des plates-formes de négociation autoprogrammées où la puissance (excessive) d'un environnement de développement disponible particulier a dépassé la crainte des utilisateurs et a condamné cet environnement à la destruction et à l'extinction. Je suis d'accord sur le fait que permettre aux appels DLL dans MT d'être cochés ne résout pratiquement rien à cet égard, surtout s'il y a une raison justifiable de recourir aux DLL.

La communauté n'est pas constituée de 50, 100 ou 500 programmeurs (qui se feront un plaisir de vous essuyer les pieds), mais de dizaines ou de centaines de milliers de traders qui utilisent des systèmes d'une complexité minimale.
C'est à ce moment-là que vous devez vous décider dès le départ, plutôt que d'essayer de bachoter la POO pour un type qui a une vague idée de la programmation. En ce qui concerne spécifiquement les systèmes de trading automatique, donnez aux traders un minimum de complexité et il se développera un maximum de complexité sous la couverture d'une interface graphique (et, éventuellement, un cauchemar pour le programmeur du système) - n'est-il pas plus facile de ne pas tromper qui que ce soit et de permettre une flexibilité maximale dans la création de systèmes, plutôt que d'essayer de trouver un compromis de ce qui est autorisé, de sorte qu'il fonctionne pour 95% des cas (lire - "tous sauf quelques plumitifs sont très heureux, c'est ainsi que notre société se positionne") ?

À propos, MQL4.community reçoit plus de 30 000 visiteurs uniques chaque jour et nous estimons qu'il y a plus d'un million d'utilisateurs de MetaTrader 4 dans le monde.
Qu'allez-vous faire de ces statistiques ? Il est clair qu'en termes de business, les sociétés de courtage ont 98% de pauvres traders qui ont acheté un Expert Advisor de belle apparence dans un terminal de trading avec sans doute un beau terminal avec toutes sortes d'astuces...

MQL4: automated forex trading, strategy tester and custom indicators with MetaTrader
  • www.mql4.com
MQL4: automated forex trading, strategy tester and custom indicators with MetaTrader
 

Chère Pisara,

Soyons clairs : il y a une dispute entre un théoricien et un praticien. Bien sûr, personne ne vous interdit de vous battre pour la "paix dans le monde", mais prenez en compte d'autres facteurs que "pourquoi ne pas s'améliorer ?

Ради бога, берите готовые API разнообразных брокеров и делайте свои решения.
Иногда к этому склоняют. А почему бы не постараться улучшить ситуацию, тем более если позиция позволяет?

C'est ce que j'ai écrit - vous ne l'utiliserez pas, car vous ne voulez pas vous engager dans des travaux de routine. Vous devrez tout recevoir sur un plateau d'argent - tous les indicateurs, tout l'environnement du marché, tout l'historique des différentes périodes, etc. Et il devra y avoir des graphiques, car vous ne pourrez pas manipuler tous les indicateurs dans votre tête.

Donc, en fait, vous avez besoin d'un terminal à part entière. Et nous vous le donnons : MetaTrader 5 + MQL5 + DLL. Appelez-le un framework ou donnez-nous simplement le terminal en code source/composants (car c'est ce que vous voulez).


Les programmeurs pensent à tort qu'il est "puissant" de pouvoir écrire des scripts pour des systèmes de négociation dans des langues maternelles non protégées, et s'étonnent ensuite que personne n'utilise leurs créations. C'est pourquoi ils meurent avant de naître. Ceux qui ont développé et créé une communauté d'utilisateurs réfléchissent beaucoup plus profondément (parce qu'ils ont reçu les coups plus tôt) et ne font pas de telles erreurs.

L'appel contrôlé (désactivé par défaut) de DLL est acceptable, mais le téléchargement de DLL fabriquées par quelqu'un d'autre dans votre terminal de négociation est un trou aussi grand qu'un Internet Explorer 6 non patché.


Pour information, les statistiques de Google Trends sur les terminaux de trading avec automatisation:


Google Тренды - Сервис: Поиск по Интернету. Запросы не указаны. - По всему миру, 2004 – настоящее время
Google Тренды - Сервис: Поиск по Интернету. Запросы не указаны. - По всему миру, 2004 – настоящее время
  • www.google.ru
Изучайте популярные поисковые запросы при помощи службы "Google Тренды".