une stratégie commerciale basée sur la théorie des vagues d'Elliott - page 273
Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Dans tous les cas, quelque chose ne va pas dans les calculs. Mon courriel est rosh AT metaquotes DOT ru.
Je me suis peut-être à nouveau mal exprimé. Je ne parlais pas d'un seul échantillon - 600 comptes pendant 20 minutes. En gros 500 itérations, c'est-à-dire premier échantillon, pour la zone morte [0 ; 100], deuxième [0 ; 101], puis [0 ; 102], [0 ; 103]..... [0 ; 600]. En outre, il s'agit de MathCAD, et les produits de cette classe ne sont pas les meilleurs en termes de calculs optimaux. Les développeurs ont introduit une optimisation sérieuse seulement dans la version 13 que j'utilise. Avant cela, même la résolution numérique d'une équation simple pouvait prendre beaucoup de temps.
Mon calcul de l'indice est légèrement différent de ce que l'on peut trouver dans les sources disponibles, mais je ne m'écarte pas de l'idéologie classique de Hearst. En d'autres termes, je ne peux pas dire que je calcule des statistiques par nom. :о) L'algorithme lui-même est écrit de manière optimale, vérifié et revérifié.
PS : Merci beaucoup pour votre volonté d'aider. Il est très possible qu'elle soit nécessaire. Je partagerai l'algorithme, si un meilleur mécanisme peut être mis en œuvre dans un avenir proche. J'ai quelques idées.
Il existe un grand nombre d'algorithmes. J'ai trouvé un calcul de spectre de singularité dans mes archives. Il est décrit conceptuellement dans de nombreux ouvrages, notamment par Feder, Bozhokin et bien d'autres. Le nombre d'itérations pour un échantillon est assez décent. En particulier, un processus itératif d'exponentiation est effectué pour estimer le "mouvement" apporté par chaque intervalle, révélant différents types de comportement du signal (par exemple, les intervalles "maintenant" avec des écarts plus importants par rapport à la tendance apportent plus de "mouvement", etc.)
Vous pouvez tout lire, mais laissez-moi vous rappeler la caractéristique principale - la valeur alpha, à laquelle F(alpha) atteint le maximum, est l'indice de Hurst généralisé (parfois, le paramètre d'horizon)
Calcul pour l'échantillon de 500 échantillons. L'indice de Hurst généralisé est égal à 0,6.
Et voici la série elle-même (jusqu'à la ligne rouge verticale) pour laquelle le calcul a été effectué et ce qui s'est passé ensuite.
Je ne me suis pas lancé dans le "business" (bien que ce soit très intéressant) car je n'ai pas encore compris certaines choses, notamment la méthode pour supprimer les tendances locales. L'utilisation de différentes méthodes donne lieu à différentes caractéristiques de la série. Une autre particularité est qu'elle nécessite des échantillons décents.
à Rosh, solandr
J'ai une question pour l'avenir. Je suis préoccupé par le fait que le conseiller expert sera "hors service" pendant un temps objectivement long et ne sera donc pas engagé dans le processus de suivi des ordres en cours. Je suppose que l'appel du script ne sera pas non plus utile - le conseiller expert attendra que le script soit exécuté. Je me suis donc demandé si je devais introduire une variable externe (ou globale, qu'est-ce qui est mieux ?), par exemple :
Lorsque je reçois un signal indiquant qu'il n'y a pas de prévision pour une raison quelconque, le conseiller expert définit la valeur appropriée de ce paramètre avec l'exigence de son exécution. A ce moment, un indicateur (il ne fait pas de prévisions mais a des fonctions de calcul) lit cette variable en permanence. Dès qu'il reçoit un ordre d'exécution de la prévision, il initialise le calcul, mais avant cela il écrit "calcul commencé" dans la variable. Après l'exécution "calcul effectué". Le conseiller expert lit que le calcul est effectué .....
Est-ce que tout cela va fonctionner ? C'est-à-dire que le conseiller expert sera théoriquement libéré de la charge de tout calculer ?
Le conseiller expert effectue des calculs et enregistre le drapeau du signal et les paramètres pertinents dans un ensemble de variables globales à la réception du signal. Le script ouvre les ordres en fonction des instructions reçues et les exécute. Le script tourne en boucle sans fin, modifiant lui-même la fréquence de cette boucle en fonction de la situation. Le conseiller expert, bien sûr, fonctionne après l'achèvement des calculs, par l'arrivée d'un tick.
L'indicateur ne convient pas ici car (pour autant que je sache) ses calculs sont interrompus lorsqu'un nouveau tick arrive.
En tout cas, j'ai décidé de suivre exactement ce schéma.
La seconde variante présente l'inconvénient de devoir passer manuellement ce même script au graphique à chaque nouveau lancement du terminal. On s'en lassera très vite. Il est préférable d'utiliser la première variante. Vous pourriez tout aussi bien organiser exactement la même boucle infinie dans la fonction start() que dans le script.
Merci beaucoup pour les conseils. Je ne travaille pas avec MT depuis longtemps, pendant que je faisais des recherches, j'ai oublié que les scripts peuvent être exécutés en boucle et je n'ai même pas pensé à deux Expert Advisors.
Mais d'un autre côté, vous ne pouvez pas placer un testeur sur un tel astrolabe, n'est-ce pas ? Bien que ce ne soit probablement pas si crucial.
Merci encore. :о)))
Pourtant, votre temps de calcul est trop long. Je pense que dans cette situation, il serait préférable de les faire en dehors de MT (après tout, C est 17 fois plus rapide que MQL4). Je ne sais pas si Matcad peut générer du code C, mais ce serait pratique. Le résultat sera écrit dans un fichier et lu par l'Expert Advisor. Ce fichier peut être une sorte d'instruction étape par étape pour l'Expert Advisor (en général, le transfert de données vers MT ne m'a pas beaucoup intéressé jusqu'à présent, peut-être y a-t-il d'autres moyens). Après avoir écrit l'"instruction" pour un certain intervalle historique, vous pouvez utiliser le testeur. Mais le testeur supportera-t-il Expert Advisor+Expert ou Expert Advisor+Script ? Je soupçonne qu'il n'en sera rien.
Pourtant, votre temps de calcul est trop long. Je pense que dans cette situation, il serait préférable de les faire en dehors de MT (après tout, C est 17 fois plus rapide que MQL4). Je ne sais pas si Matcad peut générer du code C, mais ce serait utile. Le résultat sera écrit dans un fichier et lu par l'Expert Advisor. Ce fichier peut être une sorte d'instruction étape par étape pour l'Expert Advisor (en général, le transfert de données vers MT ne m'a pas beaucoup intéressé jusqu'à présent, peut-être y a-t-il d'autres moyens). Après avoir écrit l'"instruction" pour un certain intervalle d'histoire, vous pouvez utiliser le testeur. Mais le testeur supportera-t-il Expert Advisor+Expert ou Expert Advisor+Script ? Je soupçonne qu'il n'en sera rien.
C'est vrai, le temps de calcul est assez long, je vais m'en occuper. MathCAD ne peut pas générer de code C, mais MathLab peut le faire (s'ils ne mentent pas bien sûr :o) Les tests dans MT sont nécessaires pour obtenir des résultats plus ou moins fondés du point de vue du commerce (et non des tests de prévisions multiples dans MathCAD, bien que positifs). Après avoir testé dans MT, je réfléchirai à ce qu'il faut faire ensuite, y compris déplacer les calculs vers un serveur séparé, à propos de ce que j'ai écrit auparavant. Mais c'est comme les alpinistes, plus il y a de nœuds sur la corde, plus c'est mauvais.