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

 
Maxim Dmitrievsky:

Dans mon 1er article, sauvegarde et chargement "rapide" via binaire, dans le 2ème article, chargement lent via désérialisation, la vitesse de sauvegarde ne semble pas être affectée.


Peut-être que les fichiers sont petits là-bas. Mais s'il s'agit de 300 Mo, la différence sera probablement sensible.

 
elibrarius:

Il y a peut-être des petits fichiers. Et si c'est de 300 mb dont vous parlez, il y aura probablement une différence notable.

Si vous enregistrez en ANSI, c'est deux fois moins qu'en unicode. Eh bien, il y a un chargement direct dans la structure de la forêt est obtenu, à mon avis, je ne sais pas comment autrement plus rapide.

au moins c'est plus rapide maintenant, comme dans le 1er article, ça me va maintenant.

int setRDF=FileOpen("RDFBufsize"+_Symbol+(string)_Period+".txt",FILE_READ|FILE_WRITE|FILE_CSV|FILE_ANSI|FILE_COMMON);
      RDF.m_bufsize=(int)FileReadNumber(setRDF);
      FileClose(setRDF);

      setRDF=FileOpen("RDFNclasses"+_Symbol+(string)_Period+".txt",FILE_READ|FILE_WRITE|FILE_CSV|FILE_ANSI|FILE_COMMON);
      RDF.m_nclasses=(int)FileReadNumber(setRDF);
      FileClose(setRDF);

      setRDF=FileOpen("RDFNtrees"+_Symbol+(string)_Period+".txt",FILE_READ|FILE_WRITE|FILE_CSV|FILE_ANSI|FILE_COMMON);
      RDF.m_ntrees=(int)FileReadNumber(setRDF);
      FileClose(setRDF);

      setRDF=FileOpen("RDFNvars"+_Symbol+(string)_Period+".txt",FILE_READ|FILE_WRITE|FILE_CSV|FILE_ANSI|FILE_COMMON);
      RDF.m_nvars=(int)FileReadNumber(setRDF);
      FileClose(setRDF);

      setRDF=FileOpen("RDFMtrees"+_Symbol+(string)_Period+".txt",FILE_READ|FILE_WRITE|FILE_BIN|FILE_ANSI|FILE_COMMON);
      FileReadArray(setRDF,RDF.m_trees);
      FileClose(setRDF);

Le dernier est le plus lourd, qu'il faut écrire/lire dans un format binaire.

 
Maxim Dmitrievsky:

Si vous enregistrez en ANSI, c'est deux fois moins qu'en unicode. Eh bien, il y a un chargement direct dans la structure de la forêt est obtenu, à mon avis, je ne sais pas comment autrement plus rapide.

au moins c'est plus rapide maintenant, comme dans le 1er article, ça me va maintenant.

Le dernier - le plus lourd, qui est nécessaire pour écrire/lire le binaire.

C'est plus ou moins comme ça que je l'imaginais)
Mais cela devrait être encore plus rapide en binaire et la taille du fichier est beaucoup plus petite. Et si le tableau de données est converti en flottant avant d'être enregistré, la taille sera deux fois plus petite.
Mais je n'ai pas compris pourquoi ça marcherait.

setRDF=FileOpen("RDFMtrees"+_Symbol+(string)_Period+".txt",FILE_READ|FILE_WRITE|FILE_BIN|FILE_ANSI|FILE_COMMON);

Vous lisez et écrivez des données binaires dans le fichier texte. Et avant cela, il est écrit sous forme de texte. MQL semble être capable de combiner ces fonctions d'une certaine manière. Il serait plus logique de procéder de la manière suivante

FILE_READ|FILE_WRITE|FILE_BIN|FILE_COMMON
sauvegarder et lire.
 
elibrarius:

C'est plus ou moins comme ça que je l'imaginais).
Mais le binaire devrait être encore plus rapide et la taille du fichier sera plusieurs fois plus petite. Et si nous convertissons le tableau de données en flottant avant de l'enregistrer, la taille sera deux fois plus petite.
Mais je n'ai pas compris pourquoi ça marcherait.

Vous lisez des données binaires dans un fichier texte. Mais avant cela, il est écrit en tant que texte. MQL semble être capable de combiner ces fonctions d'une certaine manière. Il serait plus logique de procéder de la manière suivante

sauvegarder et lire.

L'extension n'a pas d'importance ici, vous pouvez utiliser n'importe quelle extension. L'élément principal est le drapeau|FILE_BIN.

 
Maxim Dmitrievsky:

L'extension n'a pas d'importance ici, vous pouvez utiliser n'importe quelle extension. L'élément principal est le drapeau|FILE_BIN.

Je n'ai pas remarqué les différents noms de fichiers. Vous pouvez les enregistrer en une seule fois.
 
elibrarius:
ah - je n'ai pas remarqué que les noms de fichiers sont différents. Vous pouvez tout enregistrer en une seule fois.

peut être en 1, les autres n'ont presque aucun effet sur la performance, seul le dernier avec la structure forestière, le plus lourd. Les autres sont là pour un mandat

 
Maxim Dmitrievsky:

peut être en 1, les autres n'ont presque aucun effet sur la performance, seul le dernier avec la structure forestière, le plus lourd. Les autres sont là pour un mandat

alors vous pouvez vous perdre dans cet amas de fichiers)
Et 1 fichier pour 1 modèle est plus pratique
 
Elibrarius:
alors vous pouvez vous perdre dans cet amas de fichiers)
Et un fichier pour un modèle est plus pratique.

Eh bien, oui, les autres fichiers sont simples : nombre d'arbres, nombre de caractéristiques, nombre de classes et nombre d'échantillons. Si vous les connaissez à l'avance, vous n'avez même pas besoin de les sauvegarder. Je viens de mettre ce qui étaient sur le défaut, et de sauvegarder seulement la structure avec des divisions, bien, encore compter les échantillons varie.

 
elibrarius:

On n'a pas le temps - c'est vrai. Même la lecture du forum me détourne de choses plus utiles. Et vous parlez de préparer un communiqué... C'est quelques heures pour tout faire correctement, fournir et expliquer, et ensuite demander de l'aide)).

Vous êtes un programmeur - en tant que programmeur, je suis beaucoup plus à l'aise lorsque le quoi et le pourquoi sont clairs. Entrez dans le code. Vous pouvez comprendre la fonction de construction d'arbres en quelques heures et y insérer la limitation du nombre d'échantillons et tout ce que vous voulez.

Fait pour faire le prefetching des prédicteurs.

Je ne suis pas un programmeur, donc travailler avec du code demande beaucoup d'efforts, mais en général, je comprends la position.

 
Aleksey Vyazmikin:

Je ne suis pas un programmeur, donc travailler avec du code demande beaucoup d'efforts, mais en général la position est comprise.

Ne vous sentez pas trop mal). Le fait que vous ayez 5 produits (ou peut-être que vous ne les avez pas écrits ?) et beaucoup de signaux (probablement de vos propres Expert Advisors), qui vous permettent de vivre des profits du forex.

Je suis toujours en recherche et je vis d'autre chose.