Critère de sélection automatique des résultats d'optimisation. - page 3

 

ivandurak писал(а) >>
А как же распределение результатов сделок . Львиная доля прибыли может быть и в начале исследуемого периода
. Имхо для начала необходимо договорится о критерии по которому будем отбирать варианты оптимизации, а иначе флуд и опять плевки на спину .Лично мне импонирует - близость результатов торговли к прямой линии на постоянном лоте, но не настаиваю .

Je suis d'accord avec le bleu surligné.

Avec le rouge surligné, non. Une ligne d'équilibre droite n'est pas une indication de résultats stables, surtout si elle est négociée avec un lot fixe. On peut également obtenir une ligne droite du solde par un SL dépendant de la taille du lot variable, exprimé en pourcentage d'un montant de capital initial convenu (et non en pourcentage du solde actuel).

J'essaierai de donner quelques réflexions sur le thème de la branche un peu plus tard.

 
xeon писал(а) >>

Je ne pense pas qu'il suffise d'un seul "critère", il faut un équilibre entre les critères.

Peut-être bien. Un ensemble de critères est probablement préférable à un seul. Mais d'un point de vue pratique, il serait souhaitable d'avoir un critère qui soit le plus large possible. Il n'y a aucun obstacle à l'analyser en combinaison avec autre chose, n'est-ce pas ?

Voici la variante la plus simple qui fonctionne bien (bien mieux que les variantes standard, en termes de vitesse et de résultats) dans mon optimiseur :

Tout d'abord, filtrer par le nombre de transactions, puis simplement le maximum de GP * P * PD/(GL+MD) ; // cela n'a été dérivé de rien, juste intuitivement, après quoi j'ai commencé à penser à une branche.

-Profit = P,

-Bénéfice brut = GP ,

-La perte brute = GL,

-MaxDrawdown (Drawdown) = MD ,

-Nombre de trades rentables = PD, trades perdants = LD, Nombre total de trades = AD,

-Nombre de barres (ticks) de test = TEMPS,

-Max Profit trade = MPD, max loss trade = MLD

-série de transactions rentables = SPD (en unités), = SPD$ (en monnaie de dépôt), série de transactions perdantes =SLD, =SLD$.

 

Profit, MO, facteur de profit. drawdown relatif - ces caractéristiques sont calculées à la fin de l'optimisation, lorsque la position est fermée de force.

Maximum drawdown - une caractéristique que nous pouvons utiliser comme un extrémum de risque. L'optimisation peut se terminer lorsque la ligne d'équilibre se trouve dans le canal horizontal formé par le profit maximum (malheureusement, cette caractéristique est absente du rapport) et le profit maximum moins le drawdown maximum. Je dispose d'un mécanisme d'adaptation du conseiller expert ci-dessus.

Le but de l'optimisation est de calculer les risques. La connaissance des risques possibles nous permet d'appliquer le MM.

 
Ce sujet est nouveau pour moi, qu'est-ce que OOS, IO et BP ?
 

1. Out Of Sample- c'est-à-dire les données (citations) que le TS n'a pas vues et les résultats du travail sur ces données ;

2. Attente - bénéfice moyen d'une transaction en pips ou dans la devise choisie ;

3. Séries chronologiques (lire - citer).

 

Cotier peut être décomposé en ses ondes constitutives avec des fréquences et des amplitudes différentes (je dis cela pour la clarté, sans faire allusion à une décomposition pratique utilisant les transformées de Fourier, etc.) Cela se voit à l'œil nu (les vagues, Eliot n'y est pour rien). Chaque TS, écrite ou à écrire par quiconque, est une tentative de décrire le comportement d'une onde individuelle spécifique. Et comme la fréquence des ondes est différente, le nombre de transactions dans les différents TS sera différent, peut-être beaucoup, peut-être peu.

xeon писал(а) >>

Il me semble qu'un seul "critère" ne suffit pas, nous avons besoin d'un certain équilibre de critères.

Et il me semble qu'il n'y a pas qu'un seul "critère", mais aussi un hypothétique équilibre des critères.

Je vais faire une analogie avec le monde animal (excusez-moi, mais mon cerveau fonctionne plus facilement avec des images "biologiques") :)

Chaque vague de kotir constitutive est l'habitat naturel d'une certaine espèce. Certains vivent dans un désert plat et à la végétation clairsemée, d'autres dans une jungle dense. Ces espèces ont des manières complètement différentes de gagner leur vie et d'utiliser rationnellement l'énergie qu'elles extraient.

Revenons au CT. Comment déterminer ceux qui sont dignes de travailler avec notre sang et ceux qui ne le sont pas ? Sur la base d'un critère unique, bien qu'universel ?

Je suis de plus en plus enclin à l'idée d'utiliser l'optimisation multicritères, chaque critère étant une description d'une certaine population, en termes d'AG. Ainsi, plusieurs populations différentes d'individus de différentes espèces existeront pleinement, donnant une opportunité de croisement avec des individus de différentes populations, il est possible de renforcer les meilleures qualités des représentants de différentes espèces au moyen de l'AG.

PS Il reste à décrire les différentes espèces de CT dans les termes suggérés par FigarO. Ce qui est le plus difficile pour moi, c'est que je ne suis pas familier avec les mathématiques. J'ai fait une demande similaire à l'un des membres du forum, mais soit je n'ai pas réussi à l'intéresser, soit je l'ai faite au mauvais moment.

PPS La formulation de la fonction de fitness est presque plus importante que la recherche d'un ensemble de données d'entrée pour le NS, ceci s'applique également à tout TS.

 

Je vais ajouter mon opinion sur la question.

1) Il n'y a pas moyen de se passer d'un ensemble de paramètres, ces paramètres sont pris du testeur, vous pouvez en ajouter, mais les inutiles devront aussi être éliminés, comme les entrées inutiles dans les réseaux neuronaux(analogie).

2) La sortie du coefficient général au moyen de la multiplication fera très probablement apparaître de nouveaux ensembles de minima locaux, ou ces critères conduiront essentiellement l'AG vers de faux (non nécessaires pour nous) minimum/maximum (il n'y a pas de différence). Je recommande donc d'oublier la multiplication faite par l'auteur de la branche quelques posts plus haut. Je les ai expérimentés, ça ne marche pas bien.

3) Essentiellement, il s'agit d'une "optimisation multicritères" ou d'une optimisation selon plusieurs critères simultanément. Tout ce que j'ai lu sur le sujet : tout se résume à donner à chaque critère un certain poids [0;1] et en utilisant une simple équation linéaire je peux déduire ce critère général (Y = a1*x1 + a2*x2+...an*xn) - cela conduira également à de faux minima dans notre cas, ou nous devrons mener une enquête séparée (pour chaque stratégie) de la surface d'abord, regarder comment les poids influencent les minima/maxima, si GA va vers un faux extremum (faux de notre point de vue) - en général, ce n'est pas la voie à suivre non plus.

C'est pourquoi vous (j'en appelle à ceux qui s'intéressent à la branche) devrez inventer une nouvelle méthode qui ne figurera pas dans les livres.

Problème : la première chose à faire est de se débarrasser des dimensions, par exemple le pourcentage de transactions rentables dans la plage [0;100] alors que votre profit est théoriquement illimité, etc. Laissez-moi vous dire tout de suite que la mise à l'échelle ne fonctionnera pas (c'est la même chose que d'attribuer des poids aux indicateurs), il y aura de nombreuses valeurs aberrantes qui plongeront GA dans un faux minimum.

 
Le critère d'optimisation peut être obtenu par des méthodes de programmation génétique, mais je crains que les ressources informatiques ne soient pas suffisantes pour le moment, bien que les développeurs promettent le cloud computing...
 
joo >>:
Можно критерий оптимизации получить методами генетического программирования, но боюсь, пока вычислительных ресурсов писишек не хватет, хотя разрабы обещают облачные вычисления...

Tout ce qui est brillant est simple... donc je ne pense pas qu'il soit nécessaire de mettre des superlatifs...

 
StatBars писал(а) >>

Tout ce qui est brillant est simple... donc je ne pense pas qu'il y ait besoin de mettre des superlatifs...

Je suis d'accord. Compliquer les choses ne garantit pas de meilleurs résultats.