Y a-t-il un modèle dans ce chaos ? Essayons de le trouver ! Apprentissage automatique sur l'exemple d'un échantillon spécifique. - page 26

 

Votre méthode ne peut pas être utilisée directement sur mes données. Car en s'entraînant sur la barre précédente, on se projette un peu dans le futur.
Mais si vous faites une section d'embargo de 1000 lignes, vous aurez un résultat fiable.



Appliquer pour l'entraînement pas D(i)=D(i-1)+ Target_100_Buy

а

sauter les 1000 lignes les plus proches de la barre actuelle. Probablement D(i)=D(i-1000)+ Target(i-999) - mais je n'en suis pas sûr. Je vais devoir y réfléchir. En général, il est nécessaire d'ajouter un shifter pour 1000 lignes.


P.S. Si les données d'Alexey peuvent également contenir plusieurs transactions incomplètes en même temps, alors il y aura également un aperçu de celle qui n'est pas encore terminée, mais qui a déjà été soumise à l'entrée pour l'entraînement.

 
Forester #:

Votre méthode ne peut pas être utilisée directement sur mes données. Car en s'entraînant sur la barre précédente, on se projette un peu dans le futur.
Mais si vous faites une section d'embargo de 1000 lignes, vous aurez un résultat fiable.



Appliquer pour l'entraînement pas D(i)=D(i-1)+ Target_100_Buy

а

sauter les 1000 lignes suivantes jusqu'à la barre actuelle.

Pour être honnête, je n'ai pas du tout compris le discours... :(

La formule est appliquée à une ligne qui décrit le delta du mouvement entre les étapes. Quel genre de coup d'œil sur l'avenir ?

 
RomFil #:

Pour être honnête, je n'ai pas du tout compris le match .... :(

La formule est appliquée à une série qui décrit le delta du mouvement entre les étapes. Quel genre de coup d'œil dans le futur ?

Dans mon exemple, il n'y a pas d'"entre les étapes" - jusqu'à 100 étapes ou plus seront effectuées simultanément (c'est-à-dire que les transactions ne sont pas clôturées, mais qu'elles sont déjà entrées dans le balisage, et qu'elles doivent donc être ignorées).

 
RomFil #:

"Qu'est-ce que j'ai fait ?

Le train d'échantillons a une taille d'environ 1 Go. Il faut beaucoup de temps pour le charger dans l'espace de travail. J'ai un i5-3570 avec 24 Go de RAM et un SSD rapide et il faut plusieurs minutes à Excel pour ouvrir ce fichier. C'est pourquoi j'ai décidé de le raccourcir. J'étais trop paresseux pour trouver les exposants pour plus de 5000 colonnes. J'ai pris la colonne 5584 5586 et j'ai appliqué un signal à toutes les lignes, par exemple BUY (pour être honnête, je ne me souviens pas lequel, peut-être SELL). Ainsi, cette colonne a formé un graphique selon la formule ci-dessus. C'est-à-dire que la première étape était zéro, puis 0,00007, puis 0,00007-0,00002=0,00005, puis 0,00005+0,00007=0,00012, etc. C'est-à-dire qu'à partir de la colonne 5584 5586, j'ai formé un graphique de mouvement sans contrainte, pour ainsi dire un graphique de mouvement relatif. Comme s'il s'agissait d'un graphique de clôture, c'est-à-dire qu'à la fin de chaque étape du graphique, le prix de l'actif change de la valeur correspondante.

P.S. J'ai triché sur le nombre de colonnes... J'ai pris le 5586 le plus récent (je viens de le chercher dans Excel) avec le signal SELL.

"... pourquoi un nouvel échantillon" :

Pour montrer et raconter dans une certaine mesure l'approche sur son exemple. Si vous me donnez le nombre de colonnes où les prix OHLC ou simplement Clause peuvent être pris, ce sera suffisant.

Pour le reste :

Les données des fichiers d'exemple ne sont pas du tout utilisées. Sur la base des colonnes 5584 5586 de chaque fichier, un graphique est établi comme décrit ci-dessus. Et l'approche est déjà appliquée à ces graphiques obtenus.

Bon, comme le topikstarter ne veut pas donner de nouveaux échantillons, je suggère à toute personne intéressée de poster les siens ... :)

Salutations, RomFil !

Dans Excel, le décompte se fait à partir de un, et dans CatBoost et mql (et d'autres langues) à partir de zéro.

En d'autres termes, si j'ai bien compris, il suffit de prendre la dernière colonne, de faire un tableau cumulatif et d'obtenir une sorte de graphique. Disons qu'il s'agit d'un graphique. Vous avez créé des prédicteurs basés sur ces données. Et la cible est la prochaine valeur de cette série, ou l'originale, c'est-à-dire le delta ? C'est-à-dire un modèle de régression qui donne le résultat conditionnellement (+x||-x), et si +x, nous entrons dans la transaction, n'est-ce pas ?

Je vais essayer de donner les données pour ces dernières colonnes, mais un peu plus tard - des modifications ont été apportées par moi au code depuis, puis elles ont été perdues et tout a été retravaillé à nouveau - cas difficile.

 
Aleksey Vyazmikin #:

Dans Excel, le décompte se fait à partir de un, et dans CatBoost et mql (et d'autres langages) à partir de zéro.

En d'autres termes, si j'ai bien compris, il suffit de prendre la dernière colonne, de faire un tableau cumulatif et d'obtenir un graphique. Disons que vous avez créé des prédicteurs basés sur ce graphique. Vous avez créé des prédicteurs basés sur ces données. Et la cible est la prochaine valeur de cette série, ou l'originale, c'est-à-dire le delta ? C'est-à-dire un modèle de régression qui donne le résultat conditionnellement (+x||-x), et si +x, nous entrons dans la transaction, n'est-ce pas ?

Je vais essayer de donner les données pour ces dernières colonnes, mais un peu plus tard - des modifications ont été apportées par moi au code depuis, puis elles ont été perdues et tout a été retravaillé à nouveau - cas difficile.

Alexey - pouvez-vous avoir plusieurs transactions en attente dans vos données en même temps ? C'est-à-dire que le signal suivant est apparu, mais que la transaction sur le signal précédent n'est pas encore terminée ?
 
Forester #:

Il n'y a pas d'étapes intermédiaires dans mon échantillon - il y aura jusqu'à 100 étapes simultanées ou plus (c'est-à-dire des transactions non clôturées, mais déjà dans le balisage).

Je ne comprends toujours pas... :( Quelles transactions, quelle majoration ?

L'approche commerciale est la suivante :

1) Il y a un mouvement de prix (Close chart, par exemple bitcoin). Un mouvement avec une période de 9 et un décalage de -2 est dessiné sur le graphique pour plus de clarté.

2) Le trading avec l'approche décrite ci-dessus implique des signaux de vente ou d'achat d'un actif sans être lié au lot. À un moment donné, il n'y a qu'une seule transaction sur l'actif.

3) Si la transaction a généré un bénéfice, le total est enregistré +A nombre de points, sinon -A.

4) C'est ainsi que se forme le revenu en points.

Il est clair que si vous ajoutez le spread et la commission aux graphiques de profit mentionnés ci-dessus, les images ne seront pas si roses.

 
RomFil #:

2) La négociation selon l'approche décrite ci-dessus implique des signaux de vente ou d'achat d'un actif sans être lié à un lot. À un moment donné, il n'y a qu'une seule transaction sur l'actif.

Dans ma marge, il peut y avoir jusqu'à 100 transactions ou plus simultanément. Il est donc absurde d'appliquer votre algorithme au mien. Cela reviendrait à faire du "peeking".

 
Forester #:
Alexey - Peut-il y avoir plusieurs transactions incomplètes dans vos données en même temps ? C'est-à-dire que le signal suivant est apparu, mais que la transaction sur le signal précédent n'est pas encore terminée ?

Non, dans ces données, il n'y a que des transactions consécutives.

 
RomFil #:

Je ne comprends toujours pas... :( Quels contrats, quelles marques ?

Les offres selon ce marquage https://www.mql5.com/ru/code/903

Nous ajoutons une transaction sur chaque barre et chacune attend son TP ou SL. Une transaction de la barre précédente n'est généralement pas terminée au début de la barre suivante. Au total, il y aura plusieurs transactions en même temps.

Sampler
Sampler
  • www.mql5.com
Индикатор i_Sampler рассчитывает идеальные входы, предназначен для обучения нейросети.
 
Aleksey Vyazmikin #:

Non, il n'y a que des transactions séquentielles dans ces données.

La méthode RomFil n'examine donc pas vos données. Ce n'est pas un mauvais résultat.