L'apprentissage automatique dans la négociation : théorie, modèles, pratique et algo-trading - page 1496

 
mytarmailS:

En gros, oui, voici l'article d'où est tirée la base de touthttp://gekkoquant.com/2014/09/07/hidden-markov-models-examples-in-r-part-3-of-4/.

Et voici un extrait de code tiré de l'exemple de l'article.

Si vous enlevez le traitement et la visualisation des données, oui, le code fait trois lignes.

C'est de là que viennent, par exemple, bulmarket, bearmark et bulmarkett, c'est-à-dire qu'un prétraitement des données est nécessaire au départ.

et ensuite vient le calcul du chemin à travers Viterbi et forward-backward, également 2 algorithmes différents. Je ne comprends pas, je vais le lire.

en python, cela ressemble à ceci, dans la librairie hmmlearrn

>>> import numpy as np
>>> from hmmlearn import hmm
>>> np.random.seed(42)
>>>
>>> model = hmm.GaussianHMM(n_components=3, covariance_type="full")
>>> model.startprob_ = np.array([0.6, 0.3, 0.1])
>>> model.transmat_ = np.array([[0.7, 0.2, 0.1],
...                             [0.3, 0.5, 0.2],
...                             [0.3, 0.3, 0.4]])
>>> model.means_ = np.array([[0.0, 0.0], [3.0, -3.0], [5.0, 10.0]])
>>> model.covars_ = np.tile(np.identity(2), (3, 1, 1))
>>> X, Z = model.sample(100)
 

Nous travaillons actuellement sur l'évolution des réseaux neuronaux par l'augmentation des topologies à partir de http://gekkoquant.com/2016/10/23/evolving-neural-networks-through-augmenting-topologies-part-4-of-4-trading-strategy.

Je n'ai pas réussi à installer à distance le paquet RNeat via devtools, j'ai utilisé son alternative - remotes (remotes::install_github). Le script pour MT4 est presque prêt. J'ai exclu les transformations complexes de prétraitement, je vais essayer d'utiliser les données brutes d'abord. J'ai ajouté la possibilité de travailler avec un nombre quelconque de prédicteurs. Si quelque chose d'intéressant apparaît, je vous en informerai.

Je joins un exemple de script R pour les données forex. Le symbole analysé est USDJPY-H1. Données initiales - dernier prix connu et 10 décalages RSI.
Evolving Neural Networks through Augmenting Topologies – Part 4 of 4 – Trading Strategy
Evolving Neural Networks through Augmenting Topologies – Part 4 of 4 – Trading Strategy
  • 2016.10.23
  • GekkoQuant
  • gekkoquant.com
This post explores applying NEAT to trading the S&P. The learned strategy significantly out performs buying and holding both in and out of sample. A key part of any machine learning problem is defining the features and ensuring that they’re normalised in some fashion. The features will be rolling percentiles of the following economic data, a...
 
Ilya Antipin:

J'aimerais voir comment RNeat fonctionne sur mon indicateur.

 
mytarmailS:

C'est une idée pourrie d'utiliser des indicateurs bien connus avec une période fixe, aucun algorithme ne peut y trouver des modèles parce qu'ils n'existent tout simplement pas, le marché a une structure dynamique, fractale (structure mutuellement fermée), nous avons besoin d'un indicateur qui est au moins légèrement adapté au marché, qui prend en compte la fractale au moins indirectement.

Je suis d'accord. J'ai obtenu de bons résultats avec l'indicateur ZigZag. J'alimente les prix des extrema récents ou de leurs dérivés, y compris le prix du dernier extremum inachevé. L'indicateur est calculé pour chaque instance de l'ensemble d'apprentissage, c'est-à-dire qu'il produit une variante sans remodelage. C'est le seul indicateur qui a montré des résultats plus ou moins satisfaisants et qui peut être négocié.
 
Ilya Antipin:
Je suis d'accord. J'ai obtenu de bons résultats avec l'indicateur ZigZag. J'alimente les prix des extrema récents ou leurs dérivés, y compris le prix non fini du dernier extremum. L'indicateur est calculé pour chaque instance de l'ensemble d'apprentissage, c'est-à-dire qu'il produit une variante sans remodelage. C'est le seul indicateur qui a montré des résultats plus ou moins satisfaisants et qui peut être négocié.

Si j'ai bien compris, j'ai aussi fait presque la même chose, mais avec un algorithme différent, j'ai prédit non pas la direction mais le genou tournant, j'ai écrit ici comment j'ai traité le prixhttps://www.mql5.com/ru/forum/86386/page1476.

Машинное обучение в трейдинге: теория и практика (торговля и не только)
Машинное обучение в трейдинге: теория и практика (торговля и не только)
  • 2019.05.16
  • www.mql5.com
Добрый день всем, Знаю, что есть на форуме энтузиасты machine learning и статистики...
 
Premières impressions sur la recherche sur le paquet RNeat. Tout d'abord, le calcul du modèle est très long et exige la puissance de calcul de l'ordinateur. Deuxièmement, il n'obtient pas des résultats parfaits lorsque vous saisissez la cible. Il semble avoir un mécanisme d'apprentissage particulier, qui n'évalue pas directement l'importance des prédicteurs.
 
Ilya Antipin:
Je ne peux pas dire si j'obtiens un résultat parfait lorsque je saisis la cible.

Ce n'est pas très clair... pouvez-vous être plus précis ?


p.s. Et quel était l'objectif ? J'ai regardé le code mais je n'ai pas réussi à le comprendre, la maximisation du profit ?

 
mytarmailS:

Si j'ai eu raison, j'ai aussi fait presque la même chose, mais avec un algorithme différent, j'ai prédit non pas la direction mais le genou d'un retournement, j'ai écrit ici comment j'ai traité le prixhttps://www.mql5.com/ru/forum/86386/page1476.

Je peux donner l'explication de cet effet sur le marché. Aux points de retournement du marché (changement de tendance), il y a un changement dans l'équilibre de l'offre et de la demande en raison de la manifestation de facteurs de prix (fondamentaux) plus forts. Peut-être que la relation mathématique entre différents points passés peut contenir des informations précieuses pour la prévision technique des points futurs.
 
Ilya Antipin:
On peut donner une explication de cet effet par le marché. Aux points de retournement du marché, il y a un changement dans l'équilibre de l'offre et de la demande associé à la manifestation de facteurs de prix (fondamentaux) plus forts. Peut-être que la relation mathématique entre les différents points passés peut contenir des informations précieuses pour la prévision technique des points futurs.

Il me semble que c'est encore plus simple... Si nous ne laissons que les extrema de prix significatifs et abandonnons tout le reste, et que nous ne prévoyons pas la direction mais seulement la trace de l'extremum, cela débarrasse les données de beaucoup de bruit et réduit les degrés de liberté du réseau neuronal, pour lequel il est reconnaissant.

 
mytarmailS:

Il me semble que c'est encore plus simple... Si l'on ne laisse que les extrema de prix significatifs et que l'on laisse tomber tout le reste, et que l'on ne prédit pas la direction, mais seulement la trace de l'extremum, cela ne nettoie pas les données de beaucoup de bruit et réduit le degré de liberté du réseau neuronal, pour lequel il est reconnaissant.

Oui, sans aucun doute, en utilisant des extrema significatifs, nous réduisons la dimensionnalité des données, ce qui aura un impact positif sur les résultats de l'apprentissage.