Quel algorithme d'apprentissage automatique peut être utilisé pour prédire le marché boursier?


15

Alternativement, pour prédire les marchés des changes. Je sais que cela peut devenir assez compliqué, donc en guise d'introduction, je recherche un algorithme de prédiction simple qui a une certaine précision.

(C'est pour un projet universitaire M.Sc. qui dure quatre mois)

J'ai lu qu'un réseau neuronal multicouche pourrait être utile. Des réflexions là-dessus? De plus, l'analyse sémantique des médias sociaux peut fournir un aperçu du comportement du marché qui influence le marché boursier. Cependant, l'analyse sémantique est un peu en dehors du cadre du projet pour le moment.


15
Le mien, mais pour des raisons évidentes, je garde tout pour moi!
babelproofreader

7
Si l'on croit l'hypothèse du marché efficace, il est impossible d'obtenir systématiquement des rendements du marché supérieurs à la moyenne (sans connaissance des initiés), qui sont intégrés dans les taux / prix actuels. Beaucoup de gens sont en désaccord avec cela, mais presque tout le monde convient que c'est vrai pour un investisseur occasionnel. En d'autres termes, un modèle à 3 lignes basé sur rand () est probablement presque aussi bon que l'investisseur type: P
rm999

5
Il semble peu probable que quiconque soit disposé à partager un algorithme ayant une précision hors échantillon. Sauf, peut-être, certains travaux universitaires publiés où l'anomalie est faible et ne couvre pas les coûts de transaction.
NPE

2
Pour les travaux universitaires, il pourrait être plus utile de modéliser les prix plutôt que d'essayer de le prévoir. La prédiction s'avérera probablement infructueuse, mais la modélisation pourrait au moins donner un aperçu de la façon dont les choses fonctionnent réellement, et pourrait théoriquement être étendue à la prédiction.
highBandWidth

2
@wayne Je ne pense pas qu'il s'agisse de sur-ajustement, il s'agit d'autoriser des prédicteurs qui ne peuvent pas être utilisés pour les prédictions, par exemple des variables qui se produisent pendant / après les mouvements de stock - si vous trouvez que les stocks de pommes et de microsoft ont tendance à se corréler, ce fait ne peut pas être utilisé pour prédire le stock de msft mais peut être très informatif.
rm999

Réponses:


17

Comme l'a mentionné babelproofreader , ceux qui ont un algorithme réussi ont tendance à être très secrets à ce sujet. Il est donc peu probable qu'un algorithme largement disponible soit très utile, à moins que vous ne fassiez quelque chose d'intelligent avec lui (à ce moment-là, il cesse d'être largement disponible depuis que vous l'ajoutez).

Cela dit, l'apprentissage des modèles autorégressifs à moyenne mobile intégrale (ARIMA) pourrait être un bon début pour prévoir les données de séries chronologiques. Ne vous attendez pas à des résultats meilleurs que aléatoires.


5
+1: Combien de fois j'ai lu ou été dans une classe et entendu des gens qui croient que s'ils ont un algorithme suffisamment compliqué, ils pourraient s'enrichir sur les marchés des actions / électricité / matières premières. Vous essayez d'expliquer le sur-ajustement, etc., mais en vain. Heck, pour autant que je sache, n'étant pas un initié, un logiciel de négociation d'actions réussi n'a dépendu d'aucun frais de transaction, d'arbitrage et d'une vitesse élevée. L'avant-garde consiste désormais à utiliser les failles dans les règles de négociation automatisées et à proposer / retirer rapidement des offres pour percer d'autres commerçants automatisés.
Wayne

1
L'autre problème est lorsque plusieurs personnes se retrouvent avec le même algorithme parce qu'elles ont suivi leur formation sur exactement les mêmes données, puis ont effectué des ventes / achats en volume. Est-ce qu'un algorithme devrait avoir une précision à long terme?
Michelle

@Wayne il existe des stratégies pour réduire le sur-ajustement, bien qu'elles soient difficiles à mettre en œuvre sur les données de séries chronologiques.
Zach

1
@Zach: oui, il existe des moyens de pénaliser le sur-ajustement, mais c'est l'attitude sur laquelle je réfléchis: les gens qui ont fait une courbe de base (probablement erronée) qui s'adaptent dans Excel et pensent qu'ils auraient pu gagner de l'argent avec leur sauce secrète , mais ce dont ils ont vraiment besoin, c'est d'un de ces algorithmes sophistiqués et de pointe que le professeur ne partagera pas avec la classe. Cet algorithme s'adapterait aux données comme un gant, puis prédirait tellement mieux que tous ces autres spéculateurs utilisant des feuilles de calcul Excel ... mais le professeur continue de bourdonner sur le sur-ajustement et les limites des données. Soupir.
Wayne

12

Je pense que pour vos besoins, vous devriez choisir un algorithme d'apprentissage automatique que vous trouvez intéressant et l'essayer.

En ce qui concerne la théorie du marché efficace, les marchés ne sont pas efficaces, quelle que soit l'échelle de temps. En outre, certaines personnes (à la fois dans le monde universitaire et dans la vie réelle) sont motivées par le défi intellectuel, pas seulement pour devenir riche rapidement, et elles publient des résultats intéressants (et je considère un résultat échoué comme intéressant). Mais traitez tout ce que vous lisez avec une pincée de sel; si les résultats sont vraiment bons, peut-être que leur méthode scientifique ne l'est pas.

L'exploration de données avec R pourrait être un livre utile pour vous; c'est cher, alors essayez de le trouver dans votre bibliothèque universitaire. Le chapitre 2 couvre exactement ce que vous voulez faire, et il obtient les meilleurs résultats avec un réseau neuronal. Mais soyez averti qu'il obtient de mauvais résultats et passe beaucoup de temps CPU pour les obtenir. Les critiques d'Amazon soulignent que le livre coûte 20 $ de plus parce que ce chapitre mentionne le mot finance ; en le lisant, j'ai eu l'impression que l'éditeur l'avait poussé à l'écrire. Il a fait ses devoirs, lu les documents, parcouru les bonnes listes de diffusion, mais son cœur n'y était pas. J'ai acquis quelques connaissances utiles en R, mais je ne vais pas battre le marché avec :-)


@Darren - J'aime ton style.
rolando2

1
Une version provisoire (mai 2003) de l' exploration de données avec R est disponible ici . (Je n'ai pas le livre, donc je ne peux pas dire quel est l'écart entre les deux versions.)
chl

@chi Merci! J'ai jeté un coup d'œil rapide, et seulement deux des quatre chapitres sont là. Mais la plus grande différence est que le chapitre Prédire les rendements boursiers est très différent. Aucune mention de xts ou quantmod et à la place en utilisant le paquet ts, et en utilisant acf et le paquet MARS pour les prédictions. C'est presque comme un chapitre bonus, et je vais prendre le temps de le lire correctement. Il utilise toujours des réseaux de neurones, mais ne les compare pas aux SVM comme dans le livre publié.
Darren Cook

10

À mon avis, toute intelligence artificielle puissante qui pourrait faire tout ce qui suit pourrait facilement produire une prédiction statistiquement significative:

  • Recueillir et comprendre les rumeurs

  • Accéder et interpréter toutes les connaissances du gouvernement

  • Faites-le dans tous les pays concernés

  • Faites des prédictions pertinentes sur:

    • Conditions météorologiques

    • Activité terroriste

    • Pensées et sentiments des individus

    • Tout ce qui affecte le commerce

L'analyse statistique est vraiment le moindre de vos soucis.


4

Vous pouvez essayer les fonctions auto.arima et ets dans R. Vous pouvez également avoir un certain succès avec le package rugarch , mais il n'y a aucune fonction existante pour la sélection automatisée des paramètres. Peut-être pourriez-vous obtenir des paramètres pour le modèle moyen auto.arima, puis les transmettre rugarchet les ajouter garch(1,1)?

Il y a toutes sortes de blogs qui prétendent avoir réussi. Voici un système utilisant un modèle arima (et plus tard un modèle garch) et un système utilisant un modèle SVM . Vous trouverez beaucoup de bonnes informations sur le trading FOSS , en particulier si vous commencez à lire les blogs sur son blogroll.

Quel que soit le modèle que vous utilisez, assurez-vous de procéder à une validation croisée et à une analyse comparative! Je serais très surpris si vous trouviez un modèle arima, ets ou même garch qui pourrait constamment battre un modèle naïf hors échantillon. Des exemples de validation croisée de séries chronologiques peuvent être trouvés ici et ici . Gardez à l'esprit que ce que vous voulez vraiment prévoir, ce sont les retours, pas les prix.


2

Je connais une approche d'apprentissage automatique actuellement utilisée par au moins un hedge fund. numer.ai utilise un ensemble d'algorithmes d'apprentissage automatique fournis par l'utilisateur pour diriger les actions du fonds.

En d'autres termes: un hedge fund offre un accès ouvert à une version cryptée des données sur quelques centaines de véhicules d'investissement, probablement des actions. Des milliers de scientifiques des données et similaires forment toutes sortes d'algorithmes d'apprentissage automatique contre ces données et téléchargent les résultats sur un tableau de bord. Les meilleurs marqueurs obtiennent une petite somme d'argent en fonction de l'exactitude de leurs résultats et de la durée de leur mise en ligne.

Les meilleures prédictions sont censées être faites par des ensembles d'algorithmes.

Vous avez donc beaucoup de scientifiques qui proposent des suppositions formées, dont certains sont eux-mêmes des ensembles de suppositions et le hedge fund utilise l'ensemble de toutes les suppositions fournies pour diriger leurs investissements.

Les résultats de ce hedge fund plutôt intéressant m'ont appris deux choses:

  1. Les ensembles sont souvent considérés comme un bon moyen de faire des prévisions sur le marché boursier.
  2. Les bonnes prédictions nécessitent plus d'ensembles que je ne suis prêt à me construire ...

Si vous voulez essayer, visitez: https://numer.ai/ Non, je ne suis PAS affilié avec eux, je ne passerais probablement pas mes journées en ligne si j'étais connecté à un hedge fund qui emploie des milliers de personnes , mais en ne payant que ceux qui fournissent des résultats mesurables :)

La communauté numer.ai a un forum où ils discutent de leur approche afin que vous puissiez apprendre des autres qui essaient de faire de même.

Personnellement, je pense que quiconque avec un bon algorithme va le garder très, très secret.


1

Vous devriez essayer les réseaux de neurones de type GMDH. Je sais que certains packages commerciaux réussis pour la prédiction boursière l'utilisent, mais ne le mentionnez que dans les profondeurs de la documentation. En un mot, il s'agit d'un réseau neuronal itératif multicouche, vous êtes donc sur la bonne voie.


0

Je pense que les modèles de Markov cachés sont populaires en bourse. La chose la plus importante à garder à l'esprit est que vous voulez un algorithme qui préserve l'aspect temporel de vos données.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.