J'ai fait un de ces trucs une fois... - page 13

 
Prival:

A propos de la spline, une approximation très intéressante, je vais essayer d'expliquer comment je la comprends et ce que l'on peut en faire.

  1. il existe un segment de l'histoire décrit par un polynôme du troisième degré
  2. il existe une condition de continuité des dérivées du premier et du second degré
  3. c'est la seule fonction qui interpole "correctement" une fonction inconnue sur un segment donné

c'est en quelque sorte la définition, le spline cubique. Disons maintenant que nous analysons le mouvement d'un objet (ce peut être n'importe quel objet, un avion, une voiture, une monnaie...).

En utilisant de cet algorithme sur une partie donnée de l'histoire, nous trouverons une fonction (la seule qui ait une vitesse et une accélération, ce qui est mieux que rien (bien que j'en doute)). Il suffit de supposer que pendant un certain temps, l'objet se déplacera à la même vitesse et à la même accélération. Extrapoler. Et contrôler le biais (erreur d'extrapolation). Autres options, vous pouvez le faire à l'arrivée de nouvelles données, ou vous pouvez fixer un seuil pour le moment où l'écart dépasse une valeur prédéterminée, puis recalculer.

Z.I. Je peux me tromper, mais je pense qu'il y a quelque chose à cela et que c'est la physique...

J'essaie de vous mettre au pluriel, il y a plus de programmeurs que moi ici, c'était une référence à tous. Tu fais changer ton code, je suis jaloux... Je ne peux pas grandir, je ne peux que poster de mauvaises idées...)

Fourier ferait un meilleur travail encore. Y a-t-il une lutte pour le nombre de paramètres à estimer ? Ou bien la signification physique du modèle est-elle prise en compte ?

Revenons au tableau de Galton, d'accord ? ;)

Et les clous correspondront aux niveaux et échelles des niveaux cibles (possibles) des "joueurs".

Les cinq chiffres ont considérablement modifié l'image du monde financier. Et je pense que c'est cette variabilité (dans le temps et le prix) des "clous" sur le rebond/la rupture qui donne, lorsqu'on ajoute deux ou plusieurs vagabondages aléatoires dans leurs propres grilles de coordonnées, la "queue épaisse" dans les distributions que nous observons.

Pardonnez, s'il vous plaît, une autre intrusion peu cérémonieuse dans la conversation tranquille d'hommes érudits. ;)

-----

une spline est vraiment bien pour décrire un rivage lissé !

 

Je suppose que la conclusion sur l'absence d'intérêt particulier dans la discussion du tour précédent d'un thème ne sera pas hâtive :).

Logiquement, si quelqu'un avait obtenu les statistiques pertinentes et les avait jugées peu prometteuses, il les aurait presque certainement publiées ici :). Il est donc probable que personne n'ait tenté d'obtenir des statistiques sur le sujet. Si quelqu'un a essayé, le résultat a probablement été tel qu'il a choisi de ne pas le dire :).


En attendant, j'ai de nouvelles idées en tête :). Le marquage automatique n'est presque jamais parfait. Mais si nous faisons un marquage hybride ? C'est-à-dire utiliser l'automatique comme un poisson et le corriger manuellement. Bien sûr, seule une personne extrêmement assidue peut obtenir des statistiques significatives sur un tel zigzag hybride (par exemple). Mais corriger certains segments, sur lesquels le script va dessiner toutes sortes de tendances et de niveaux - c'est tout à fait réaliste.

Mais comme tout a déjà été inventé avant nous, il est probable que quelque chose a été fait dans ce sens et qu'il vaudrait la peine de le chercher. Mais il est plus facile et plus rapide pour moi de faire certaines choses simples moi-même. Cependant, je n'ai pas décidé de faire un zigzag hybride, mais j'ai fait un script pour dessiner des niveaux équidistants sur les graphiques. Pour être plus précis, j'ai d'abord créé un modèle pour la culture de tels hybrides(sanyooooook , qui m'a d'ailleurs aidé à le peaufiner), puis j'ai cultivé l'hybride susmentionné à partir de ce modèle. Par coïncidence, ils se sont retrouvés attachés au post précédent, c'est là que vous pouvez les obtenir :). Le modèle est un peu différent maintenant .


Le script a deux paramètres : le nombre de niveaux et leur couleur. En sélectionnant et en déplaçant l'une des lignes épaisses avec la souris, le dessin entier devrait se déplacer. La même action sur l'une des lignes fines devrait entraîner une modification de la distance entre les niveaux. Jusqu'à présent, c'est ce qui s'est passé pour moi, mais bien sûr, je ne peux pas garantir l'absence de problèmes.


Les observations et les demandes seront reçues avec intérêt, mais il ne faut pas s'attendre à leur mise en œuvre rapide dans le cas général.


P.S. J'ai oublié d'avertir : après avoir supprimé les lignes de script, il restera des lignes, c'est pour laisser une balise après elle-même et c'est voulu.

Et je vais ajouter une photo en même temps.


 

Des conclusions hâtives sur les échecs.

Je pense.

Beaucoup de choses ont déjà été dites (et montrées !). C'est juste qu'il y a aussi beaucoup de mithrophanies...

;)

 
Sorento:

Une conclusion hâtive d'échec.

Il n'y a pas eu de conclusion d'échec, juste qu'il n'y a pas eu de discussion :). Le succès ou l'échec dépend du degré de réalisation de l'objectif. Si le but est, disons, de vous promouvoir en tant que pop-trader, alors bien sûr c'est un échec. Et si le but, disons, quelque chose comme la reconnaissance ou la recherche, alors la situation est tout à fait normale. Bien qu'une plus grande récolte serait agréable :). Eh bien, si le but est, disons, d'envoyer une sorte de message, alors c'est assez réussi.

Je dois préciser que je ne reconnais officiellement aucun de ces objectifs pour moi-même :).

 

Au fait, pour l'analogie avec le tableau de Galton. Voici ce que j'ai fait avec le script le matin sur H4


Et voici le résultat du passage à M1, l'élan est actuel.


On a vraiment l'impression qu'il va exactement sur les ongles.


P.S. A propos, j'ai en même temps obtenu l'illustration d'une des méthodes d'utilisation du script. L'autre peut consister à spécifier manuellement le niveau dans les propriétés de l'objet, Ainsi, d'ailleurs, il est très facile de marquer les niveaux "ronds" dont il est question ci-dessus, disons que dans la ligne du milieu nous mettons le prix de type 00, et dans la ligne fine voisine - le prix le plus proche de type 50. Ou 10, si vous voulez.

 

J'ai légèrement affiné le logiciel. Il s'agit maintenant d'une série de scripts, avec EquLevelsB comme base, EquLevelsM comme milieu et EquLevelsT comme sommet.

De plus, nous avons ajouté un script pour supprimer les balises faites par les scripts de cette série. En principe, c'est bon pour supprimer tout objet dont le nom est préfixe+numéro. A N=0, il supprime les numéros de 0 au premier saut de la numérotation. En d'autres termes, s'il y a des sauts, il suffit de mettre N de plus.

Tous les scripts ont un paramètre supplémentaire qui vous permet de définir un préfixe pour le nom de l'objet.


En fait, toutes ces fonctionnalités sont faciles à combiner dans un seul script. Et quelques autres à ajouter. Mais c'est comme un chemin vers la version commerciale, c'est seulement s'il y aura un million d'applications :), plus qu'ils ne feront rien du tout :) .


P.S. On dirait qu'il est temps de repasser en mode "no-go-go" :)

Dossiers :
 

Je pense que le sujet est intéressant, mais difficile à saisir et à comprendre ; je veux essayer de le comprendre plusieurs fois, mais je n'ai pas assez de temps. Si j'avais une simple EA, même si c'était un drain, alors la discussion commencerait .....)).

 
Vitya:

Je pense que le sujet est intéressant, mais difficile à saisir et à comprendre ; je veux essayer de le comprendre plusieurs fois, mais je n'ai pas assez de temps. Si j'avais un simple conseiller expert, même s'il était en train de couler, alors la discussion commencerait .....)).

Eh bien, un conseiller expert "approximation zéro" peut être assez simple.

Disons que la variante suggérée par Prival peut être approximée comme suit :

Nous plaçons des ordres stop aux niveaux les plus proches autorisés par les stop leveller (pour un achat, au niveau supérieur le plus proche, pour une vente, au niveau inférieur le plus proche). Dès que l'un d'entre eux est déclenché, nous attendons le début d'une nouvelle barre d'une minute et plaçons immédiatement un nouvel ordre stop similaire à la place de celui qui a été déclenché.

Nous vérifions deux choses dans le bloc de suivi des commandes:

Pour les ordres en attente, vérifiez la différence entre l'heure actuelle et l'heure d'ouverture, et fermez-les s'ils sont supérieurs.

Pour les ordres en cours - possibilité de passer au niveau du tour précédent (pour un Bai à la baisse, pour une vente à la hausse). En d'autres termes, il s'agit d'un mécanisme similaire à un stop suiveur.

C'est tout !

La façon de déterminer les niveaux ronds les plus proches à partir du code de mon indicateur devrait être claire. Cependant, je peux aussi les écrire explicitement. Le plus proche est celui du bas :

    int ILvl = Bid*100;
    double DownLvl = NormalizeDouble(0.01*ILvl,Digits);

Le plus proche depuis le haut

    double UpLvl = NormalizeDouble( DownLvl+0.01,Digits);
 

Je ne m'y intéresse pas particulièrement, mais il me semble que dans les niveaux de la livre, un multiple de 50 donnera de moins bons résultats que dans d'autres monnaies..... La raison en est que le strike sur le câble est de 100 pips, et pour les autres devises de 50. Quelqu'un peut-il me dire si c'est vrai ou non ?

Je vais ajouter un peu de confusion dans l'ordre - voici quelques images, peut-être qu'elles ne sont pas dans l'ordre, mais il me semble qu'il y a quelque chose dans ces images.

Les graphiques montrent le spread moyen et la fréquence du swing ZZ par symbole et TF, la discrétisation du changement est de 5 pips.

Vous trouverez ci-joint l'archive avec les fichiers et le script qui les crée...

Dossiers :
zz.zip  24 kb
 
xrust:

1. je ne suis pas particulièrement intéressé par cette question, mais il me semble que dans les niveaux de la livre, un multiple de 50 donnera de moins bons résultats que dans d'autres monnaies..... La raison en est que le strike sur le câble est de 100 pips, et pour les autres devises de 50, peut-être que quelqu'un me le dira ou pas ?

2) Je vais ajouter un peu de confusion dans l'ordre - voici les photos, peut-être qu'elles ne sont pas dans l'ordre, mais je pense qu'il y a quelque chose dans celles-ci

Les graphiques montrent le spread moyen et la fréquence d'oscillation pour ZZ par symbole et TF, la discrétisation du changement est de 5 pips.

1. Je peux seulement dire que l'histogramme de la pg. 11 pour la livre est proche de l'histogramme pour le canadien, mais pour l'euro on a l'impression que l'effet est plus net.

2. Sur les photos :

Je ne suis pas sûr d'avoir tout compris dans les fichiers sources, j'aurais peut-être dû l'expliquer plus en détail en paroles.

Bref, ce que j'ai compris, c'est que la première colonne des fichiers est l'amplitude du segment avec une précision de 5 points, la deuxième est la fréquence relative des amplitudes de l'intervalle donné, en pourcentage, et la troisième est la valeur inverse de la durée moyenne des segments de l'intervalle donné.

Je peux affirmer d'emblée ce qui suit :

Premièrement, dans un zigzag standard, la commutation ne se fait pas seulement en amplitude, mais aussi dans le temps. Plus précisément, les segments trop courts sont tout simplement interdits. C'est-à-dire que la troisième quantité doit avoir une caractéristique dans la région de faible amplitude. Et c'est le cas si j'ai bien compris les images.

Deuxièmement, la sécurité statistique devrait diminuer à mesure que le délai augmente. Et, bien qu'il n'existe pas de données sur le nombre de segments, à en juger par l'indistinction croissante des graphiques, c'est ce qui se passe. Par conséquent, le graphique en haut et en minutes est le plus fiable.

Ainsi, selon moi, tout semble plutôt attendu. Ou est-ce que je rate quelque chose ?