Pas pour les développeurs MT ! Par quoi remplacer INIT_PARAMETERS_INCORRECT ? - page 9

 
Alexey Navoykov:

D'accord, vous ne comprenez pas, mais c'est normal. Pour les personnes entendantes, j'ai déjà dit tout ce que je voulais dire. Je ne vois pas l'intérêt de continuer.

Et pour moi, il est tout à fait inattendu que quelqu'un puisse voir une différence entre 1200 et 0012, si là et là la fonction 1 est exécutée en premier et ensuite la fonction 2.

C'est juste incroyable qu'il y ait autant de ... hum... les aveugles...

 
Сергей Таболин:

pourquoi la première population ne peut-elle pas être construite uniquement à partir de paramètres "acceptables" ?

Et dans l'ensemble, qu'est-ce qui empêche les populations ultérieures de n'être collectées qu'à partir de paramètres valides également ???

La première question me semble logique. Il est possible de collecter 512 individus valides au début de l'optimisation. @Renat Fatkhullin, quel est le problème avec ça ?

Mais alors, il y a un problème. Si une combinaison des meilleurs de ces 512 individus vous donne un résultat non valide, de quel droit pouvez-vous lui substituer une autre variante ? Adopter un enfant en cas de fausse couche ? Ce n'est plus de la génétique.

 
Andrey Khatimlianskii:

La première question me semble logique. Il est possible de collecter 512 individus valides au début de l'optimisation. @Renat Fatkhullin, quel est le problème avec ça ?

Dans le cas de TC, la génétique ne sera d'aucune aide. Peut-être un peu.

Vous pouvez simplement définir une taille de génération adaptative, basée sur le nombre de passages valides dans la première génération.

 
TheXpert:

Eh bien, dans le cas de TC, la génétique n'aidera pas du tout. Peut-être un peu.

Non, je ne considère pas le problème de TC. La génétique ne l'aidera pas du tout.

 
Andrey Khatimlianskii:

La première question me semble logique. Il est possible de collecter 512 individus valides au début de l'optimisation. @Renat Fatkhullin, quel est le problème avec ça ?

Mais alors, il y a un problème. Si une combinaison des meilleurs de ces 512 individus vous donne un résultat non valide, de quel droit pouvez-vous lui substituer une autre variante ? Adopter un enfant en cas de fausse couche ? Ce n'est plus de la génétique.

Dans mon esprit, "une combinaison des meilleurs de ces 512 individus" ne peut donner un résultat non faussé. Mais après avoir sélectionné les meilleurs individus dans la population suivante pour ajouter à nouveau des individus avec des paramètres acceptables (éliminer les individus invalides) - quelle est la difficulté ici ?

 
Сергей Таболин:

A mon sens, "une combinaison des meilleurs de ces 512 individus" ne peut produire un résultat invalide.

Vous devriez peut-être aller au-delà de votre objectif étroit.

 
Andrey Khatimlianskii:

Vous devriez peut-être aller au-delà de votre tâche étroite.

Ma tâche "étroite" est un cas particulier. Et, bien sûr, cela m'intéresse beaucoup )))).

Mais nous parlons d'un problème plus vaste.

Voici un autre exemple "étroit" :

La stratégie implique l'utilisation d'un simple МА mobile. Mais selon la logique de la stratégie (peu importe !) МА période doit être comprise entre 9 et 32, ou entre 80 et 92.

Comment exclure la gamme qui n'est pas nécessaire dans l'optimisation ? Le plus évident et le plus facile :

if(period_MA > 32 && period_MA < 80) return(INIT_PARAMETERS_INCORRECT);

Mettre les paramètres d'optimisation :

VariableValeurDébutÉtapeStop
Période AI99292

C'est reparti pour un problème de génétique dû à des paramètres "inacceptables"...

 
Сергей Таболин:
Pourquoi incluez-vous délibérément des paramètres incorrects dans l'optimisation ?
 
TheXpert:
Et pourquoi inclure volontairement des paramètres incorrects dans l'optimisation ?

Les paramètres incorrects sont généralement désactivés pour 3 raisons :

1. l'étude de la zone ne présente pas d'intérêt (par exemple, en excluant un certain nombre d'échéances, comme l'option la plus compréhensible) ;

2. la zone a été étudiée précédemment et il n'est pas nécessaire de l'étudier à nouveau ;

3. la zone n'existe pas. À titre d'exemple, nous pouvons présenter un oscillateur de pourcentage où il y a deux niveaux - le supérieur et le inférieur ; évidemment, le niveau supérieur ne doit pas être supérieur au niveau inférieur. Eh bien et ici, je peux vous parler des mésaventures mathématiques, lorsqu'une variable conduit à une division par zéro et qu'une certaine combinaison est désactivée pour cette raison.

 
TheXpert:
Et pourquoi incluez-vous spécifiquement les paramètres incorrects dans l'optimisation ?

Comment organiser l'optimisation MA à partir de l'exemple sans inclure les paramètres "incorrects" ?