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

 
Yury Reshetov:

Trader a déjà échoué en essayant de porter l'ancienne version de libVMR vers R et a manqué de mémoire pour une grande machine nucléaire, ainsi que de performances complètes pour une petite (il a réduit le nombre de cycles par 100 fois), il est peu probable que des personnes soient prêtes à marcher sur le même râteau ?


Il est donc préférable de ne pas parler du portage de ce type de tâches vers R, car cet engin n'est pas à la hauteur de la tâche.

Seule une connaissance très superficielle de R permettrait de parler de "canassons".

Bien sûr, on met R et on voit un interpréteur de chaînes de caractères. Si vous allez plus loin, vous pouvez voir le bytecode, mais cela ne résout aucun des problèmes d'efficacité de l'interpréteur. Il n'y a même pas de quoi discuter - râleur.

Mais si vous vous plongez un peu dans les paquets R, vous verrez rapidement que ce que vous voyez dans le code R fait référence à d'autres codes. Et si vous commencez à enquêter, vous verrez que pour les algorithmes à forte intensité de calcul, R utilise toujours des paquets tiers, qui ont été choisis selon le principe de l'efficacité maximale. Il s'agit généralement de bibliothèques C ou Fortran.

Ou, par exemple, les opérations matricielles. Étant donné que R n'a aucune notion de scalaire et que tout commence par des vecteurs et que l'arithmétique matricielle est complètement naturelle pour R, la question de l'utilisation d'une bibliothèque appropriée qui n'est PAS écrite en R est une question de principe. La bibliothèque Intel Math Kernel est utilisée.

De plus, la mise en parallèle des calculs non seulement avec tous les cœurs de son propre ordinateur, mais aussi avec les ordinateurs voisins, est une opération courante dans R.

La question est donc de savoir ce qui est "harcelant" et ce qui ne l'est pas.

PS.

Vous n'avez pas besoin de porter quoi que ce soit à R, vous devez juste apprendre les mathématiques. R a tout ce dont vous avez besoin et bien plus que cela.

 
Les postes sont-ils rémunérés ? :)
 
mytarmailS:

question : comment donner aux nouvelles colonnes le nom "a_minus_b" ? , "a_minus_c"

a <- 1:5
b <- 6:10
c <- 11:15
d <- 16:20
dt <- data.frame(a,b,c,d)

res.dt <- data.frame(matrix(nrow=nrow(dt), ncol=0))

for(i in 1:(ncol(dt)-1)){
        for(j in (i+1):ncol(dt)){
                colname <- paste0(colnames(dt)[i], "_minus_", colnames(dt)[j])
                res.dt[, colname] <- dt[, i] - dt[,j]
        }
}
res.dt

Nous serons payés pour les postes par forex lui-même :) Si vous lisez les 38 pages, que vous les mettez en pratique et que vous combinez toutes les connaissances, je pense que vous pouvez créer un EA qui fonctionne.

 
SanSanych Fomenko:
Pourriez-vous réfuter de manière appropriée le contenu de l'article dont j'ai donné le lien. A ce stade, leDr. Trader: a tenté d'utiliser ce matériel. Pour l'utiliser de manière très spécifique. Le résultat est négatif. Peut-être pouvez-vous également donner votre avis sur le sujet ?

Je m'excuse d'être hors sujet.
SanSanych, dans quelle langue pensez-vous ?
Votre post ressemble à un traducteur Google. Respectez la langue russe, s'il vous plaît.

PS : si vous voulez être compris...

 
Événement:

Je m'excuse d'être hors sujet.
SanSanych, dans quelle langue pensez-vous ?
Votre post ressemble à un traducteur Google. Respectez la langue russe, s'il vous plaît.

PS : si vous voulez être compris...

J'ai dit ça toute ma vie... Vous êtes le premier...

Si tu ne comprends pas quelque chose, je suis prêt à t'expliquer.

 
SanSanych Fomenko:

J'ai dit ça toute ma vie... Vous êtes le premier...

Si vous ne comprenez pas, je suis prêt à vous expliquer.

Tu n'as pas à t'expliquer. Quelqu'un doit être le premier))

 
Dr. Trader:

Nous serons payés par le forex lui-même pour nos posts :) Tout le monde sait et connaît quelque chose de différent, et si vous lisez les 38 pages et essayez en pratique, et combinez toutes les connaissances - je pense que vous pouvez faire un EA qui fonctionne.

Merci beaucoup !

Bp. cette idée soignée de double boucle a besoin de plus de travail)

 

Fait une description pour le classificateur binaire jPrediction, posté le code source.

Table des matières :

  1. Caractéristiques principales.
  2. Exécution de jPrediction
  3. Comment créer un modèle mathématique d'un classificateur binaire dans jPrediction ?
  4. Sauvegarder le modèle dans un fichier
  5. Réduction - suppression des caractéristiques non informatives du modèle
  6. Charger et utiliser le modèle pour la classification des objets
  7. Annexe
    1. Échantillons supplémentaires pour la classification binaire
    2. Format de fichier CSV pour jPrediction

Texte complet dans l'archive jointe (format PDF)

jPrediction - бинарный классификатор для машинного обучения | Reshetov & Co
jPrediction - бинарный классификатор для машинного обучения | Reshetov & Co
  • yury-reshetov.com
Основные характеристики Запуск jPrediction Как создать математическую модель бинарного классификатора в jPrediction Сохранение модели в файл Редукция - удаление неинформативных признаков из модели Загрузка и использование модели для классификации объектов Приложение Дополнительные выборки для бинарной классификации Формат CSV файлов для...
Dossiers :
Reshetov_150.zip  2217 kb
 
Yury Reshetov:

Fait une description pour le classificateur binaire jPrediction, posté le code source.


Bonjour Yuri, merci pour votre travail !

1) Pouvez-vous expliquer plus en détail ce que cela signifie ?

  • Sensibilité est la sensibilité du modèle en pourcentages.
  • Spécificité - la spécificité du modèle en pourcentage

2) Si j'ai un ordinateur faible, combien de temps faudra-t-il au modèle pour apprendre le modèle sur un échantillon de 300 prédicteurs et 100 000 observations.

(Il serait bien de remplacer l'inscription "please wait" par le calcul de la progression de la formation en % ou quelque chose comme ça, afin de ne pas attendre 100 ans jusqu'à l'achèvement).

3) Qu'en est-il du "R" ?

 
mytarmailS:

Bonjour Yuri ! Merci pour votre travail acharné !

1) Pouvez-vous expliquer plus en détail ce que cela signifie ?

  • Sensibilité - est la sensibilité du modèle en pourcentage
  • Spécificité - la spécificité du modèle en pourcentage

Sensibilité de la capacité de généralisation - prédiction correcte de résultats positifs sur l'échantillon test : 100% * TP / (TP + FP)

Spécificité de la capacité de généralisation - prédiction correcte des résultats négatifs sur l'échantillon testé : 100% * TN / (TN + FN)

où :

TP - nombre de résultats positifs réels

TN - nombre de vrais négatifs

FP - nombre de résultats faussement positifs

FN - nombre de faux négatifs

mytarmailS:

2) Si j'ai un ordinateur faible, combien de temps faudra-t-il pour entraîner le modèle sur un échantillon de 300 prédicteurs et 100 000 observations ?

3) Qu'en est-il du "R" ? ne le fera-t-il pas ?

N'apprendra pas du tout, mais donnera un message d'erreur si le nombre de prédicteurs dans l'échantillon dépasse 10 pcs.

mytarmailS:

3) Qu'en est-il du "R" ?


Si vous êtes aussi désespéré, installez le paquet gJava. Appeler du code Java depuis R

Calling Java code from R
Calling Java code from R
  • 2011.01.01
  • View all posts by darrenjw
  • darrenjw.wordpress.com
In the previous post I looked at some simple methods for calling C code from R using a simple Gibbs sampler as the motivating example. In this post we will look again at the same Gibbs sampler, but now implemented in Java, and look at a couple of options for calling that code from an R session. Stand-alone Java code Below is some Java code for...