Répondre

Utilisation génétique ou aléatoire du processeur

26 réponses

gentmat

Client, bbp_participant, communauté, 234 réponses.

Visiter le profil

Il y a 8 ans #113897

Je pose une question d'avant-vente pour savoir quel ordinateur acheter pour votre application : 

 

D'après ce que je sais (et corrigez-moi si je me trompe), il est préférable d'acheter un xeon (Multi core) plutôt qu'un CPU à haute vitesse d'horloge. 

Ainsi, 24 intel xeon double cœur (2,8 GHZ) sont meilleurs que 8 cœurs (3,7 GHZ). 

 

Mais cela est vrai lors de l'utilisation d'algorithmes génétiques car le multithread permet d'évaluer toutes les générations dans différents cœurs. 

 

Ma question est la suivante : 

 

Je n'utilise que la population aléatoire (parce que la génétique conduira à des stratégies similaires, quoi que je fasse).

 

La population aléatoire utilise-t-elle des cœurs multiples ou seulement des processeurs à haute vitesse d'horloge et à mémoire cache ? 

Les stratégies aléatoires sont-elles créées chacune sur un noyau différent ? comme la génétique ? 

 

Ou si j'ai 24 cœurs, les 24 cœurs créeront 24 stratégies différentes simultanément. 

 

Merci de votre attention. 

0

tomas262

Administrateur, sq-ultimate, 2 réponses.

Visiter le profil

Il y a 8 ans #131152

Oui, les deux méthodes peuvent utiliser tous les cœurs disponibles (selon Tool - Options - Performance setting).

0

Mark Fric

Administrateur, sq-ultimate, 2 réponses.

Visiter le profil

Il y a 8 ans #131158

Oui, je confirme à nouveau - les deux méthodes utilisent tous les cœurs disponibles (à condition que vous les définissiez dans Tool - Options - Performance setting), et dans SQ 3, la génération aléatoire est encore plus efficace que l'évolution génétique, car certaines opérations génétiques simples ne sont pas parallélisées, 

Il fonctionnera encore mieux avec le nouveau SQ 4.

Marque
StratégieArchitecte de Quantités

0

gentmat

Client, bbp_participant, communauté, 234 réponses.

Visiter le profil

Il y a 8 ans #131190

Merci à vous tous,

J'ai un Xeon 5650, 24 threads ... J'ai changé les paramètres à 24 threads et la moyenne du cpu est de 4% (la plupart du temps).

Max peak à 12% ou 14 (temps moyen d'environ 0,5 seconde par stratégie par rapport à ce qui est indiqué ci-dessous).

 

Mon macbook pro late 2014 , 3.7 ghz , 1260 xeon avec 8 threads peak à 80-100% et est beaucoup plus rapide pour trouver des stratégies (0.04) temps moyen sur h4.

 

Y a-t-il un bug qui fait que les multicœurs ne sont pas utilisés et que le processeur n'atteint que 4-10% ?

0

geektrader

Customer, bbp_participant, community, 524 replies.

Visiter le profil

Il y a 8 ans #131298

SQ3 est très inefficace dans l'utilisation multi-cœur, malheureusement. Je peux confirmer ce comportement également. J'espère que SQ4 le fera beaucoup mieux.


🚀 Unlock Your Edge in Automated Forex Strategy Development 🚀

Historical Forex Data Starting From 1987, 28 Pairs, M1, 99% Error-Free, Lifetime Free Updates

0

Seuil

Client, bbp_participant, communauté, 723 réponses.

Visiter le profil

Il y a 8 ans #131373

+1 J'espère une utilisation plus importante du CPU. J'ai une moyenne de 15% d'utilisation du CPU pour X2 xeons quadcore avec SQ réglé sur la plus haute priorité et le threading maximum. J'aimerais voir ce qu'il peut faire avec 80+%. L'ordinateur est entièrement dédié à SQ.

Dois-je me contenter d'utiliser x3 SQ ?

0

nolube

Client, bbp_participant, communauté, 115 réponses.

Visiter le profil

Il y a 8 ans #131387

+1 J'espère une utilisation plus importante du CPU. J'ai une moyenne de 15% d'utilisation du CPU pour X2 xeons quadcore avec SQ réglé sur la plus haute priorité et le threading maximum. J'aimerais voir ce qu'il peut faire avec 80+%. L'ordinateur est entièrement dédié à SQ.

Dois-je me contenter d'utiliser x3 SQ ?

 

Oui, c'est ce que je fais. Vos licences sont spécifiques à votre ordinateur, vous pouvez donc utiliser le même code de licence 3 fois sur le même ordinateur.

0

geektrader

Customer, bbp_participant, community, 524 replies.

Visiter le profil

Il y a 8 ans #131388

Je règle les cœurs du processeur dans les paramètres sur "1" et j'ouvre autant d'instances (vous devez les copier chacune dans leur propre répertoire - je le fais avec un fichier .BAT intelligent) que j'ai de cœurs et j'exécute la tâche de génération de la stratégie. De cette façon, tous les cœurs sont utilisés 100% du temps.


🚀 Unlock Your Edge in Automated Forex Strategy Development 🚀

Historical Forex Data Starting From 1987, 28 Pairs, M1, 99% Error-Free, Lifetime Free Updates

0

gentmat

Client, bbp_participant, communauté, 234 réponses.

Visiter le profil

Il y a 8 ans #131391

C'est vrai, mais Plusieurs instances ne fonctionneront pas comme une véritable application à instance unique (je suis un développeur).

Espérons que sq4 corrigera ce problème. 

Merci de confirmer que vous avez les mêmes résultats. Je suggère comme je l'ai écrit au début d'obtenir une horloge de cpu élevée et pas beaucoup de cœurs . même l'instance 1 sera 

surpassent les 4 instances en multi-cœur. 

0

geektrader

Customer, bbp_participant, community, 524 replies.

Visiter le profil

Il y a 8 ans #131392

Je suis également développeur et ce n'est pas toujours vrai, cela dépend de la qualité de l'implémentation. De plus, en utilisant plusieurs instances, j'obtiens une plus grande diversification des chemins d'optimisation génétique qui aboutissent à des résultats différents car ils empruntent des voies d'évolution (aléatoires) différentes. C'est pourquoi je préfère personnellement utiliser plusieurs instances plutôt qu'une seule.


🚀 Unlock Your Edge in Automated Forex Strategy Development 🚀

Historical Forex Data Starting From 1987, 28 Pairs, M1, 99% Error-Free, Lifetime Free Updates

0

Seuil

Client, bbp_participant, communauté, 723 réponses.

Visiter le profil

Il y a 8 ans #131405

Je fais tourner 4 SQ maintenant, chacun assigné à 2 cœurs et j'utilise en moyenne 85% de CPU sans perte de vitesse de génération. J'ai juste besoin de plus de mémoire vive, mais j'ai 32 Go.

Cela permet d'obtenir des résultats beaucoup plus rapidement. (littéralement 4x plus rapide)

0

Seuil

Client, bbp_participant, communauté, 723 réponses.

Visiter le profil

Il y a 8 ans #131407

Je dois également ajouter que les stratégies dont les blocs de construction sont dotés de règles simples semblent générer des résultats plus de deux fois supérieurs à ceux des stratégies dépourvues de règles simples.

0

Seuil

Client, bbp_participant, communauté, 723 réponses.

Visiter le profil

Il y a 8 ans #131421

Je pense que l'idée de GeekTrader est peut-être la meilleure voie à suivre (beaucoup de cœurs, beaucoup de RAM, et plusieurs instances de SQ) plutôt que moins de cœurs, une fréquence plus élevée, et l'exécution d'un seul SQ.

La génération aléatoire est de 25k stratégies testées en environ 1 heure sur chaque SQ. Donc 4SQ x 25k= 100k générations en 1 heure @ 2.83GHZ 8 cores. Cela devrait faire quelques millions en une journée.

Sur mon quadcore 4.1GHZ exécutant 1 instance de SQ, il faudrait quelques jours pour atteindre 1 million.

0

gentmat

Client, bbp_participant, communauté, 234 réponses.

Visiter le profil

Il y a 8 ans #131445

Seuil haut,

Merci pour votre temps et vos tests. Je pense que votre test ne tient pas compte de nombreux facteurs. 

ex :

L'utilisation d'un délai plus court rendra les cœurs plus efficaces et c'est l'effet du cache cpu l3,l2, le temps de saisir ces données et de les synchroniser prend du temps.

mais si vous utilisez h4 ou d1

Vous remarquerez que le processeur le plus rapide sera plus performant que le multi-cœur 4 cœurs 4.1 > 8 cœurs 2.8

 

Ajoutez à cela la génération de l'architecture du cpu. pouvez-vous me dire le numéro de série des 2 cpu que vous comparez.

 

note : Les règles simples sont plus rapides pour une raison : la période maximale est d'environ 40 périodes et le nombre de périodes est compris entre 50 et 50.

Mais les règles non simples peuvent utiliser des EMA de 100 ou 150 en fonction de la période maximale que vous choisissez, ce qui fera que le processeur calculera plus de bougies plutôt que 40 bougies à l'envers.

Mais si vous diminuez le nombre maximum de période de l'indicateur à environ 50 vous remarquerez que cela devrait donner la même vitesse ( en théorie ) . en théorie parce que les BBands par exemple utilisent des mathématiques plus complexes que le rsi et ainsi de suite . donc en fonction de l'indicateur choisi il faudra du temps pour le traiter . 

0

gentmat

Client, bbp_participant, communauté, 234 réponses.

Visiter le profil

Il y a 8 ans #131446

En tout cas, je voudrais vous demander, puisque vous êtes un vieux client, combien de temps vous faut-il pour trouver une bonne stratégie ? J'ai joué pendant une semaine, mais toutes mes stratégies ont échoué au test de robustesse, et je commence à perdre espoir.

0

Seuil

Client, bbp_participant, communauté, 723 réponses.

Visiter le profil

Il y a 8 ans #131450

Je pense que 5 millions de générations vous donneront généralement une stratégie solide lorsqu'elle est générée à partir d'une seule paire (en utilisant uniquement la génération aléatoire) et même en utilisant des données supplémentaires provenant d'autres courtiers. Cela dépend de vos filtres, des blocs de construction et de la paire sur laquelle vous générez. Certaines paires prennent beaucoup de générations en fonction du TF et des blocs de construction.

A strategy built on only 1 asset will usually “fail” a robustness test when data and parameters are altered because the strategy is curve fitted, but that doesn’t mean the strategy won’t work. The Robustness test feature is very discretionary. I think if a strategy has a 15%DD in backtest, and 35%DD @ 95% confidence in RT, its definitely a pass with data and parameters altered and the EA was generated from only 1 pair. If you want more robust strategies, use multiple broker data and make sure they are all the same timezone. Broker data varies that much and your strategies will be less curve-fitted. Also don’t rely so much on robustness testing. Just put them on a demo account and see.

Le quadcore de 4,1 GHz est un AMD Phenom Black Edition 975 overclocké.
L'autre est composé de 2 xeon e5440s.

0

Affichage de 15 réponses de 1 à 15 (sur un total de 26)

1 2