MetaTrader 5 Python User Group - Comment utiliser Python dans Metatrader - page 33

 
jaffer wilson:

Comment changer la peau du MetaEditor ? Faites-moi savoir.

J'ai utilisé un thème sombre de Windows10
Regardez attentivement sur le site web la compatibilité avec votre version de Windows.
Si le thème ne s'installe pas correctement, vous risquez de perdre votre système d'exploitation.
Commencez donc par installer votre version de Windows sur VirtualBox, et essayez-la sur une machine virtuelle.
Si tout va bien, vous pouvez alors l'installer sur la machine de production.

Couleurs du MetaEditor que j'ai personnalisées

Éléments Texte Contexte
Texte 200,200,170 35,35,35
Texte sélectionné 255,255,255 61,85,109
Indentation Défaut 50,50,50
Mots clés 66,142,200 Défaut
Commentaires 128,128,128 Défaut
Numéros 181,206,168 Défaut
Opérateurs 192,192,192 Défaut
Cordes 214,157,133 Défaut
Macros 190,183,255 Défaut
Fonctions et points d'entrée 216,16,223 Défaut
Indicateurs 100,200,70 Défaut
Variables prédéfinies 255,140,0 Défaut
Variables d'entrée 210,105,30 Défaut
Caractères non ASCII 255,20,147 Défaut

Voici ce que j'ai obtenu



Placebo
Placebo
  • 7themes.su
Порт одной из лучших тем которая была создана на семерку. Сейчас тема Placebo стала доступной на Windows 10, при этом во всей оригинальной красе. Поддерживается стилизация панели задач и меню...
 
J'ai installé Visual Studio 2019 (j'ai immédiatement noté quelque chose à propos de Python) et oh merveille ! Maintenant les scripts fonctionnent à la fois dans Studio et MetaEditor !
 
Renat Fatkhullin:
Python est-il activé dans Visual Studio ?

En raison du zoo de pythons déployés indirectement ou automatiquement par différents systèmes, il est facile d'obtenir des bibliothèques installées dans une autre copie de python et d'essayer ensuite d'exécuter d'autres copies.

Sortez les pythons, s'il vous plaît. Ceux qui passent à Python doivent être prêts à passer le reste de leur vie à se battre avec des bibliothèques, des dépendances et des incompatibilités.

C'est le destin d'un pythoniste - construire un environnement de bibliothèques et prier pour que la mise à jour d'une bibliothèque ne perturbe pas un autre nombre inconnu de bibliothèques.

De manière générale, je ne comprends pas pourquoi vous soutenez l'intégration de Python et rejetez activement R. Certes, il y a des "kolkhozes", comme vous dites, mais il y a plus d'ordre. Et pour ce qui est de l'état actuel, Python est utilisé dans R en natif, mais il est plus difficile de l'inverser.

Juste une pensée à voix haute.

Bonne chance

 
Vladimir Perervenko:

De manière générale, la raison pour laquelle vous soutenez l'intégration de Python et rejetez activement R n'est pas claire. Certes, il y a du "kolkhoze", comme vous dites, mais il y a plus d'ordre. En ce qui concerne l'état actuel, Python est utilisé dans R en tant que natif, mais l'inverse est plus difficile.

L'avenir se joue très rapidement et simplement.

R est perdu.

 
Vladimir Karputov:
J'ai installé Visual Studio 2019 (j'ai immédiatement noté quelque chose à propos de Python) et oh merveille ! Maintenant les scripts fonctionnent à la fois dans Studio et MetaEditor !

Nous trouverons une solution, en même temps qu'une réécriture complète de la bibliothèque.

Apparemment, ils ont laissé des trucs en plus dans le paquet.
 
Renat Fatkhullin:

On va s'en occuper, mais en même temps qu'on réécrit complètement la bibliothèque.

Il a dû être oublié dans le paquet.

La parallélisation de njit (parallel=True) ne fonctionne pas, il y a des erreurs
parallel=False le script s'exécute

#!/usr/bin/env python3

from numba import njit, prange
import time


@njit(parallel=True, fastmath=True, cache=False)
def calc_pi(num_steps):
    x, sum1 = 0.0, 0.0
    step1 = 1.0 / num_steps
    for i in prange(num_steps):
        x = (i + 0.5) * step1
        sum1 = sum1 + 4.0 / (1.0 + x * x)
    return sum1 * step1


calc_pi(1)  # minus jit compilation time
start_time = time.time()
pi = calc_pi(1000000000)
msvcr = time.time() - start_time

print(f"--- {msvcr} seconds --- The value of PI is {pi}")
 
Roman :

La mise en parallèle de njit (parallel=True) ne fonctionne pas, des erreurs sont lancées.
parallel=False le script s'exécute

Quelle est l'erreur qui se produit ?

 
jaffer wilson:

Quelle est l'erreur déclenchée ?

Il y en a beaucoup, je ne sais pas à quoi ils peuvent être liés.
J'ai essayé d'exécuter le code à partir de la ligne de commande python, mêmes erreurs.
Il s'avère que le problème est dans le python installé, peut-être un paquet est nécessaire, mais n'écrit pas lequel.
Python a été installé à partir du programme d'installation, qui est téléchargé à partir de Outils -> Paramètres -> Compilateurs


 
Roman:

Il y en a beaucoup, je ne comprends pas ce que ça peut être.

Cela n'a rien à voir avec Metatrader.

L'erreur se produit également lorsque le script est exécuté séparément avec le parallélisme activé.

 
Renat Fatkhullin:

Cela n'a rien à voir avec Metatrader.

L'erreur se produit également lorsque le script est exécuté séparément avec le parallélisme activé.

Oui c'est le cas, les erreurs apparaissent sur windows python, python est installé depuis l'onglet compilateurs.
Sur linux j'ai Spyder et l'environnement VSCode, ce code fonctionne sans problèmes et sans erreurs là.

Raison: