ATcl - Interprète Tcl pour MT4 - page 7

 
Maxim Kuznetsov:

Je ne pense pas que je vais compliquer les choses, c'est-à-dire que je ne vais pas beaucoup creuser dans le code bwise.

Tout au plus, je l'adapte pour qu'il puisse être utilisé avec ATcl (c'est-à-dire transférer des données de Mql à ses entrées) et recevoir des sorties.
Bien sûr, je vais devoir écrire un HowTo "comment dessiner des carrés et les attacher à l'EA". Et pratiquez l'anglais lorsque vous communiquez avec l'auteur ou les auteurs :-)

Je n'ai pas besoin de la passerelle, il est préférable de transférer les données via un fichier texte, donc l'optimisation fonctionnera .....

 
Aleksey Vyazmikin:

Vous n'avez pas besoin d'un pont à cet endroit, il est préférable de faire passer les données par un fichier texte, afin que l'optimisation fonctionne.....

L'astuce est qu'ATcl travaille DÉJÀ dans l'espace d'adressage mql, c'est un véritable interprète pour les besoins du programmeur. L'échange de données est évidemment plus rapide que par le biais de n'importe quel fichier.

Le démarrage par lot ou terminal (ala R) n'est d'aucun intérêt. Lent, fastidieux.

string s = "0 1 2 3.14159 4 5 6";

double d=tcl.Double(tcl.Obj(s),3)); // выдаст 3.14159, то есть интепретаор разберёт строку в вектор, возьмёт 4-й элемент (с №0) и преобразует в double

avez-vous déjà pensé que la formule telle qu'elle est, par exemple, peut être spécifiée par une chaîne de caractères dans les paramètres d'un exercice ? et qu'elle sera comptée rapidement ?

 
Maxim Kuznetsov:

L'astuce est que ATcl s'exécute DÉJÀ dans l'espace d'adressage mql, c'est un véritable interprète pour les besoins du programmeur. L'échange de données est connu pour être plus rapide que par le biais de n'importe quel fichier.

Le démarrage par lot ou terminal (à l'instar de R) ne présente aucun intérêt. Lent, fastidieux.

string s = "0 1 2 3.14159 4 5 6";

double d=tcl.Double(tcl.Obj(s),3)); // выдаст 3.14159, то есть интепретаор разберёт строку в вектор, возьмёт 4-й элемент (с №0) и преобразует в double

Avez-vous déjà pensé que la formule peut être spécifiée comme une chaîne de caractères dans les paramètres d'un exercice ?

Je pense à MT5 et au cloud ...

À propos des formules dans la ligne - il y avait un script similaire dans la base de code quelque part.

 
UPDATE

Comme promis précédemment - je prépare un article (à la fois du code et des scripts) sur l'envoi de courrier.

Le programme fonctionne réellement, une ébauche de l'article est prête, vous pouvez la consulter : http://nektomk.ru/atcl:tradebiff.

Le soir, je le "relis", corrige les erreurs stylistiques/grammaticales et le duplique sur le blog local. Encore une fois, pour que l'information ne se perde pas.

En bref :

Mettez-vous à la place du client et formulez la tâche :

Нужно сделать программу которая будет следить за роботом
и при выставлении/изменении/удалении ордеров
будет отправлять скриншот мне и двум инвестор

Nous disposons d'un programme utile sous la forme d'un indicateur, qui "s'installe dans le graphique" et envoie des lettres avec un rapport et une capture d'écran si quelque chose se produit dans l'ordre. C'est un outil formidable pour le SDV, il est indispensable.

Le programme peut envoyer des courriers à plusieurs destinataires et avec des pièces jointes.

le code s'ouvre, le code fonctionne...voir ci-joint, seul tcl a dû être enveloppé dans zip :-)
MISE À JOUR : je viens de télécharger le code source de TradeBiff avec la structure de répertoire "correcte". Pour le décompresser dans le répertoire de données du terminal et le charger aux bons endroits.

L'article sur cet indicateur est volumineux et je vous conseille vivement de le lire.

TradeBiff
  • nektomk.ru
Очень важно получать детальные оповещения о действиях любого робота. Универсальный способ оповещений - это отправка почты. TradeBiff будет следить за изменениями и отправлять вам необходимые отчёты. Таким образом у вас в почтовом ящике получится хороший торговый журнал. Постановка задачи Ставим себя на место заказчика и формулирует задачу...
 
Il y a quelque chose à propos de l'archive qui n'est pas attachée à l'email précédent :-)
seulement maintenant
Dossiers :
TradeBiff.zip  52 kb
 

Publication d'un article dans les blogs locaux https://www.mql5.com/ru/blogs/post/718364

Une grande partie de ce document ne porte pas tant sur ATcl que sur le processus de développement de logiciels en général et constitue une sorte de polémique avec les publications sur le"développement de TOR pour EA/indicator/NYOH".

PS/ ma question précédente sur les make-files est toujours d'actualité. J'ai corrigé un bug d'une mqh et maintenant je dois "compiler à la main" toutes les mq4 qui l'incluent... 21ème siècle, ouais.
TradeBiff - отправка почты со скриншотами
TradeBiff - отправка почты со скриншотами
  • 2018.05.19
  • Maxim Kuznetsov
  • www.mql5.com
Очень важно получать детальные оповещения о действиях любого робота. Универсальный способ оповещений - это отправка почты. TradeBiff будет следить за изменениями и отправлять вам необходимые отчёты. Таким образом у вас в почтовом ящике получится хороший торговый журнал. Постановка задачи Ставим себя на место заказчика и формулируем задачу...
 

MS nmake n'est pas suffisant pour vos besoins (pour compiler des scripts/experts et faire des archives sans changer de makefile)
et tout le monde ne l'a pas.

Je vais donc écrire un scénario qui fonctionne pour tout le monde, avec éventuellement un petit dialogue dans une fenêtre. Tout le monde ne connaît pas la ligne de commande :-)

Le script ressemble à quelque chose comme ceci :

- choisir/définir un fichier arbitraire de votre produit

- le script utilise cette entrée

* essaie de trouver le "nom_du_produit"

* et la racine de l'installation MT (répertoire de données)

- puis faire une liste des fichiers qui correspondent au "nom du produit".

- compile tous les fichiers mq4 et les ajoute à la liste

- tout ce qui est dans la liste est rassemblé dans le fichier zip en sauvegardant les chemins relatifs aux "données du catalogue".

- l'archive résultante s'enregistre sous le nom de "nom du produit"-date-heure.zip à la racine du répertoire de données

Voilà à quoi ça ressemble... Si vous avez des idées, dites-le moi.

 
Quel est le but de tout cela ? Est-ce vraiment un moyen de plier le marché des changes ?
 
Evgeniy Zhdan:
Quel est le but de tout cela ? Est-il possible de plier le forex avec elle ?

Faites-vous référence à la bibliothèque ATcl dont il est question dans le fil du forum ?

Il est conçu pour simplifier les transactions. Plus précisément, la création d'EAs/Inductors/scripts pour le trading.

C'est déjà possible (malgré le fait que tout ne fonctionne pas) :

- Écrire/lire des données directement à partir d'Excel et d'autres outils de bureautique. Sans CSV intermédiaire

- travailler avec des bases de données SQLite, PostgreSQL, MySQL, (et plus ODBC).

- faire une WebRequest sans aucune restriction et de manière asynchrone

- lire des flux à partir de WebSocket

- envoyer un courriel avec une pièce jointe

- analyser le html, le xml

c'est ce qui est testé directement à partir de MT4, et il y a beaucoup de possibilités.

J'aurai une interface graphique (Tk)... et un backend http (c'est possible, je ne l'ai pas vérifié).

 
Maxim Kuznetsov:

MS nmake est insuffisant pour les besoins (pour compiler des scripts/experts et faire des archives sans modifier constamment le makefile)
et tout le monde ne l'a pas.

J'écrirai donc un scénario adapté à tous, avec éventuellement un petit dialogue dans une fenêtre. Tout le monde ne connaît pas la ligne de commande :-)

Le script ressemble à quelque chose comme ceci :

- choisir/définir un fichier arbitraire de votre produit

- le script utilise cette entrée

* essaie de trouver le "nom_du_produit"

* et la racine de l'installation MT (répertoire de données)

- puis faire une liste des fichiers qui correspondent au "nom du produit".

- compile tous les fichiers mq4 et les ajoute à la liste

- tout ce qui est dans la liste est rassemblé dans un zip et stocké dans des chemins relatifs aux "données du catalogue".

- l'archive résultante s'enregistre sous le nom de "nom du produit"-date-heure.zip à la racine du répertoire de données

Voilà à quoi ça ressemble... Si vous avez des idées, dites-le moi.

Voici à quoi cela ressemble :


il sélectionne correctement la bibliothèque ATcl à partir de n'importe lequel de ses fichiers, la reconstruit correctement et fait une archive.
peut-être quelques retouches supplémentaires (et éventuellement une feuille d'exe) et je la rendrai disponible pour examen.

Il n'y a qu'un MAIS - comment trouver le bon métaéditeur dans Windows ? Maintenant il prend celui dans la racine des répertoires ou dans les chemins du système, mais ce n'est pas très correct.
Ces métaéditeurs sont comme un chien sur l'ensemble du système et pour chaque hiérarchie est censé avoir sa propre

Raison: