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

 
Vladimir Karputov:

Comment faire un décalage ?

Voici le tableau (cadre de données)

comment le faire comme ça :

Pour quoi ? Il suffit de l'imprimer ?

 
Vladimir Karputov:

Comment faire un décalage ?

Voici le tableau (cadre de données)

Comment le faire comme ça :

Ici, j'ai trouvépandas.DataFrame.shift.

L'essentiel est de ne pas oublier de supprimer la dernière ligne, car elle contiendrait des déchets.

 
Je suis sauvagement désolé) je voudrais savoir s'il est possible de pousser le clavier par python dans MQL5 ? pas le temps d'expérimenter du tout
 
Un fil de discussion assez instructif sur l'intégration de python dans mt5... Pourquoi lorsque j'ajoute mon script python dans le terminal mt5, il est ajouté puis immédiatement supprimé ?
 

Chers Messieurs, veuillez me conseiller sur ce qui ne va pas dans ma compréhension.

J'ai construit un réseau neuronal. Préparer les données.

(10452, 50) (10452, 2)  полный набор данных
(7316, 50) (7316, 2)    тренировочный набор
(3136, 50) (3136, 2)    тестовый набор

Je l'ai formé.

Параметры модели:
clf__epochs = 66
clf__layers
> Размерность слоёв:
>>> Входной слой = 50
>>>>>> Скрытых слоёв -- 2
>>>>>>>> 1-й слой    = 25
>>> >> слой имеет dropout = 0.3
>>>>>>>> 2-й слой    = 12
>>> Выходной слой    = 2
clf__loss = BCE
clf__metric = accuracy
clf__optimizer = adam

Résultat.

Score on train data is 0.9672635197639465
Score on test data is  0.9674744606018066

#  Оцениваем на тестовых данных
test loss, test acc: [0.1585625737373318, 0.96747446]

Et puis je ne comprends pas ce qui se passe...

predictions = model.predict(X_test[:15])

.

predictions[:15] =  
[[0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]]

Pourquoi de tels résultats "prédictifs" ? Attendu soit 0-0, 0-1 ou 1-0....

 

C'est toujours comme ça...

Lorsque vous posez une question, tout le monde pense : à quoi bon ?

Opinion subjective : 93% du temps, il faut aller sur google..... 90% du temps qu'il faut pour répondre à la bonne question....

Merci pour les commentaires ! C'est tout pour le moment. Je vais aller sur google....

 

ce sont les probabilités des classes 1 et 2

Le second a une probabilité plus élevée, il est donc prédit.

leur somme doit être égale à 1, il y a une sorte d'erreur de formation ici.

Il devrait sortir 1 neurone s'il s'agit d'une classification binaire. Ou softmax
 
Maxim Dmitrievsky:

ce sont les probabilités des classes 1 et 2

Le second a une probabilité plus élevée, il est donc prédit.

leur somme devrait être égale à 1, il y a une sorte d'erreur de formation ici.

Il faut un neurone par sortie s'il s'agit d'une classification binaire. Ou softmax

La classification binaire n'implique pas un neurone par sortie. Du moins, d'après ce que j'ai trouvé...

Mais le problème est que l'image ne change pas non plus lorsqu'on utilise d'autres fonctions de perte !

J'écrirai demain un testeur de données avec validation des prédictions. Mais quelque chose me dit que le résultat sera déplorable !

Je n'arrive pas à comprendre pourquoi la "précision" est supérieure à 96% et la prédiction est "comme ça"...

Peut-être que je fais quelque chose de mal ?

 
Сергей Таболин:

La classification binaire n'implique pas un neurone par sortie. Du moins, d'après ce que j'ai trouvé...

Mais le problème est que l'image ne change pas non plus lorsqu'on utilise d'autres fonctions de perte !

J'écrirai demain un testeur de données avec validation des prédictions. Mais quelque chose me dit que le résultat sera déplorable !

Je n'arrive pas à comprendre pourquoi la "précision" est de plus de 96% et la prédiction est "comme ça"...

Peut-être que je fais quelque chose de mal ?

Je suppose que je n'ai aucune idée du type de constructeur de réseau que c'est.

1 neurone n'implique pas, mais un additionneur devrait se tenir et une activation f-e. Habituellement, vous mettez 1 neurone

il peut y avoir de nombreuses raisons. Par exemple, les données ne sont pas normalisées, pas correctement préparées, le réseau est tordu
 
Maxim Dmitrievsky:

Je suppose que je n'ai aucune idée du type de constructeur de réseau que c'est.

1 neurone n'implique pas, mais un additionneur doit être en place et une activation f-e. C'est généralement un neurone.

Il peut y avoir de nombreuses raisons. Par exemple, les données ne sont pas normalisées, ne sont pas préparées correctement, le réseau n'est pas construit correctement.

Le problème est que la normalisation est une cause perdue !

Laissez-moi vous expliquer. Il y a quelques données A, B, C...

Ils sont différents en termes d'importance, etc. Tout le monde (google) dit que la normalisation doit être faite par colonnes (A-A-A, B-B-B, C-C-C) et non par lignes. C'est logiquement compréhensible.

Mais lorsque de nouvelles données apparaissent pour la "prédiction", comment les normaliser s'il ne s'agit que d'une seule ligne ? Et tout terme de cette ligne peut aller au-delà de la normalisation sur les données de formation et de test ?

Et la normalisation par les chaînes de caractères n'a aucun effet !

En fait, déjà après avoir vérifié ces nuances, j'ai eu ce "cri de l'âme" )))).