Indicateurs: Price prediction by Nearest Neighbor found by a weighted correlation coefficient - page 3

 
Amos Tsopotsa #:

ce code a besoin de légères améliorations mais okayjustask ton idée a du sens

J'ai apporté de très légères améliorations au code en :

  • Ajoutant une variable sur la portée globale pour b, et
  • Ajoutant une variable lastPatternStartTime, une condition qui la compare à l'heure de début d'un nouveau motif, et appelle ChartRedraw() si elles ne sont pas identiques.
(D'après ce que j'ai pu discerner en quelques heures de test, le chaos de la ligne verticale apparaissait lorsqu'un nouveau motif était trouvé).
 

Encore quelques petites améliorations :

  • Changement de OnInit() d'un void à un int, donc il retourne INIT_SUCCEEDED maintenant,
  • Ajout d'une GlobalVariable (GV) à l'échelle du terminal qui stocke la première valeur future de l'indicateur (CopyBuffer() ne fonctionne pas dans un EA avec des "valeurs futures de l 'indicateur Buffer "), et
  • Ajouté OnDeinit() dans lequel la GV est automatiquement supprimée du terminal.

Le but de ces changements est de rendre l'indicateur plus adapté au trading automatisé. Si vous avez besoin de plus de valeurs de prix futurs pour vos besoins, bouclez simplement les barres 0 à 48 à la fin du code et mettez à jour la valeur GV.

 
Ryan L Johnson #:


  • Ajout d'une variable globale (GV) au niveau du terminal qui stocke la première valeur de prix future de l'indicateur(CopyBuffer() ne fonctionne pas dans un EA avec des "valeurs tampons d'indicateurs futurs"),

Le but de ces changements est de rendre l'indicateur plus adapté au trading automatisé. Si vous avez besoin de plus de valeurs de prix futurs pour vos besoins, bouclez simplement les barres 0 à 48 à la fin du code et mettez à jour la valeur GV.

Pourquoi cela ? Vous pouvez accéder à n'importe quelle valeur des tampons de l'indicateur, même dans le futur.
MQL5 Book: Getting timeseries data from an indicator: CopyBuffer / Creating application programs
MQL5 Book: Getting timeseries data from an indicator: CopyBuffer / Creating application programs
  • www.mql5.com
An MQL program can read data from the indicator's public buffers by its handle. Recall that in custom indicators, such buffers are arrays specified...
 
Stanislav Korotky #:
Pourquoi ? Vous pouvez accéder à n'importe quelle valeur des tampons d'indicateurs, même dans le futur.

J'ai pu le faire dans des indicateurs mais pas dans des EA. Avez-vous un autre exemple/article qui le fait dans un EA, s'il vous plaît ?

 
Ryan L Johnson #:

J'ai pu le faire dans des indicateurs mais pas dans des EA. Avez-vous un autre exemple/article qui le fait dans un EA, s'il vous plaît ?

Veuillez ne pas tenir compte de mon post #24. Je soupçonne que j'ai utilisé la mauvaise forme de Copybuffer() dans un EA. La forme correcte semble être :

"[D]ans les paramètres CopyBuffer ( première forme), il faut donner unoffset égal à (- N)..."

int CopyBuffer(int handle, int buffer, int offset, int count, double &array[])
 

@Stanislav Korotky, Merci de m'avoir orienté vers la documentation. La "première forme" est très utile pour copier les futures valeurs du tampon─surtout sur les graphiques personnalisés.

@Vladimir, Merci, bien que tardivement, d'avoir publié le code source de cet indicateur. Je n'avais aucune idée de la validité de ces modèles de prix d'il y a plusieurs décennies. Je l'ai utilisé pour réaliser deux transactions gagnantes dès le départ. L'une datait de 1999 et l'autre de 2005.

Voici le code de l'indicateur que j'utilise actuellement (sans le GV) :