Veuillez me conseiller - Comment réécrire un indicateur de Rulang vers MQL4(four) ? - page 3

 
Urman Ru:

... "olyakish_fractals_01"...

Ce n'est pas un très bon exemple pour les débutants. Une approche très peu conventionnelle et extrêmement extravagante des indicateurs d'écriture.

 
Dmitry Fedoseev:

Ce n'est pas un très bon exemple pour les débutants. Une approche très peu conventionnelle et extrêmement extravagante des indicateurs d'écriture.

quand vous en avez vraiment besoin, vous devez enlever votre pantalon par-dessus votre tête).

 
Alexey Viktorov:

Il y a une chose que je ne comprends pas. Dans le titre du sujet et dans votre premier message, vous mentionnez MQL5, mais vous avez obtenu des conseils sur MQL4 et vous êtes heureux d'éditer un indicateur dans MQL4. Alors, pour quel terminal avez-vous besoin d'un indicateur ?

Ils sont dans des langues différentes ? Quelle blague !

Sur MT4, j'ai vérifié !

Si nous prenons un indicateur écrit en MQL4 pour MT4, il ne fonctionnera pas sur MT5 ? Et vice versa, aussi ?

Quel gâchis.

 
Dmitry Fedoseev:
Et à propos de Rulang, qu'est-ce que c'était ?

J'avais l'habitude d'essayer d'imiter un trader et j'ai commencé sur Rumus et la langue là-bas.

J'ai essayé d'utiliser ce langage pour différents indices, mais j'ai décidé de passer à MT4 et de l'apporter ici, mais cela n'a pas fonctionné. J'ai suggéré de vérifier également "i+2". Mais peut-être que je fais quelque chose de mal. Tout est possible.
 
Urman Ru:

Quand tu dois vraiment le faire, tu dois enlever ton pantalon par-dessus ta tête).

Et tu n'as pas besoin de mettre ton pantalon par-dessus ta tête pour ne pas avoir à l'enlever par-dessus ta tête.

Oui, c'est un peu plus compliqué que le primus, mais les possibilités sont illimitées.

 
Dmitry Fedoseev:

Et tu n'as pas besoin de mettre ton pantalon par-dessus ta tête pour ne pas avoir à l'enlever par-dessus ta tête.

Oui, c'est un peu plus compliqué que le primus, mais les possibilités sont illimitées.

Hélas, elle ne fonctionne pas comme une fleur de pierre.(

 
Urman Ru:

Hélas, aucune fleur de pierre n'en sort.

Cela en vaut-il la peine ? Quelle est la formule de cet indicateur ? Peut-être n'avez-vous pas besoin de faire quoi que ce soit ? Peut-être que les fractales standard fonctionneraient ?

 
Alexey Viktorov:

Cela en vaut-il la peine ? Quelle est la formule de cet indicateur ? Peut-être que tu n'as rien à faire ? Peut-être qu'un Fractals standard fonctionnerait ?

Si l'indicateur Fractal standard convenait, je ne serais pas assis toute la journée et la nuit à essayer de comprendre comment coller cet indicateur tenace dans le terminal.

Merci de votre participation.

Voyez par vous-même ce que c'est, vous êtes un programmeur expérimenté.
Dossiers :
evlpcaVOL.mq4  13 kb
 
Urman Ru:

Si un indicateur Fractal standard fonctionnait, je ne serais pas assis toute la journée et la nuit à essayer de comprendre comment insérer cet indicateur récalcitrant dans le terminal.

Merci de votre participation.

Voyez par vous-même ce que c'est, vous êtes un programmeur expérimenté.

C'est justement l'expérience qui vous empêche de piocher dans n'importe quoi pour essayer de comprendre ce que vous vouliez écrire là. Je viens d'avoir un accès de charité et je voulais me rappeler comment écrire sur mql4. Je pense que vous connaissez la théorie selon laquelle il vaut mieux construire que reconstruire. Et c'est moins cher et plus fiable.

Maintenant, quelques commentaires sur votre code :

ArrayInitialize(a_Fractal, 0);

Initialise le tableau entier avec des zéros. Ces valeurs, même si elles ont été saisies dans le tableau tampon de l'indicateur, sont annulées.

a_MFI[-1] = (High[-1] - Low[-1])/ a_Volume[-1];

La numérotation de l'index ne peut être inférieure à zéro.

Et si vous essayez de désigner des barres spécifiques sur l'ensemble de l'historique d'une manière ou d'une autre, vous devriez indexer avec une variable, pas une constante.

 
Alexey Viktorov:

C'est précisément l'expérience qui vous empêche de fouiller pour essayer de comprendre ce que vous essayiez d'écrire là. Je viens d'avoir un accès de charité et je voulais me rappeler comment écrire en mql4. Je pense que vous connaissez la théorie selon laquelle il vaut mieux construire que reconstruire. Et c'est moins cher et plus fiable.

Maintenant, quelques commentaires sur votre code :

Initialise le tableau entier avec des zéros. Ces valeurs, même si elles ont été saisies dans le tableau tampon de l'indicateur, sont annulées.

La numérotation de l'index ne peut être inférieure à zéro.

Et si vous essayez de désigner des barres spécifiques à travers l'histoire, vous devez indexer par une variable, pas par une constante.

Bonjour Alexey. Je suppose que je dois me considérer comme chanceux si vous avez soudainement eu une attaque bienveillante, mais malheureusement l'étoile volait si vite que je n'ai pas eu le temps de faire un vœu.

J'ai corrigé quelque chose dans l'indicateur, en particulier a_MFI[i-1] = (High[i-1] - Low[i-1])/a_Volume[i-1] , mais la fleur ne s'est pas ouverte.

Oui, vous avez raison, faire à partir de zéro est toujours mieux que refaire, si vous savez comment faire.

L'essence de mon idée.

Nous construisons des fractales sur la base des seules barres VERTES, mais pas sur le Haut et le Bas, ni sur le Volume et le MFI, c'est à dire Fractal F(0) = V(0)>V(1) et V (0) >V(2) et V (0) >V(-1) et V (0) >V(-2) et MFI(0)>MFI(1) et MFI (0) >MFI(2)MFI(2) et MFI (0) >MFI(-1) et MFI (0) >MFI(-2), si la fractale F(0) elle-même est Close (0 ) >Open (0), alors la fractale F(0) vers le haut, si Close (0) <Open (0), alors la Fractale F(0) est vers le bas et il faut alors tracer des lignes de support et de résistance par ces Fractales ; il est intéressant que la valeur (i) soit effective jusqu'à (5) , après cela les fractales se répètent. J'ai implémenté cette idée en Rulang dans Rumus, mais ce que j'ai écrit en Rulang n'est pas lisible dans MT4 pour une raison quelconque, quel dommage.

Voici à quoi cela ressemble en Rulang, sentez la différence :

Variable : Lev1($data),Lev2($data) ;
n=inparam("n",1,10000000,1) ;

Lev1=ref(Lev1,-1) ;
Lev2=ref(Lev2,-1) ;

si h>l alors k=(h-l)/v ;
si h>l et v>ref(v,-1) et v>ref(v,-2) et v>ref(v,+1) et v>ref(v,+1) et v>ref(v,+2) et v>ref(v,+1) et v>ref(v,+1) et v>ref(v,+1) et v>ref(v,+1) et v>ref(v,+1) et v>ref(v,+1) et v>ref(v,+1).ref(v,+2) et k>ref(k,-1) et k>ref(k,-2)et k>ref(k,+1) et k>ref(k,+2) alors fv=v ;
si h>l alors f=fv ;
x=HV(f,n) ;
si f=x et c>o alors Lev1=h ;
si f=x et c<o alors Lev2=l ;
Lev1 ;
Lev2;

Comme je ne suis pas un expert en MQL4 j'ai dû chercher un indicateur similaire au mien en chiffres et en lettres et j'ai trouvé "olyakish_fractals_01" mais il a une autre idée et j'ai décidé de le réécrire mais hélas j'ai échoué.

Si vous ressentez soudainement une autre attaque de charité, vous pouvez le regarder et me donner des conseils sur ce que j'ai réécrit, ou simplement écrire un indicateur, peu importe comment l'enfer pendant que Dieu dort.

Salutations !

Dossiers :
Raison: