Demandez ! - page 20

 

code lsma

Doc,

Voici le code source de la lsma. Merci pour votre contribution !

//---- paramètres de l'indicateur

#property indicator_chart_window

#property indicator_buffers 3

#property indicator_color1 Yellow

#property indicator_color2 Chartreuse

#property indicator_color3 Red

//---- tampons

double ExtMapBuffer1[] ;

double ExtMapBuffer2[] ;

double ExtMapBuffer3[] ;

int width ;

extern int Rperiod = 34 ;

extern int Draw4HowLongg = 300 ; // 500 // 1000

int Draw4HowLong ;

int shift ;

int i ;

int loopbegin ;

double sum[] ;

int length ;

double lengthvar ;

double tmp ;

double wt[] ;

int c ;

//+------------------------------------------------------------------+

//| Fonction d'initialisation de l'indicateur personnalisé |

//+------------------------------------------------------------------+

int init()

{

//---- 2 tampons supplémentaires sont utilisés pour le comptage.

IndicatorBuffers(5) ;

//---- paramètres de dessin

SetIndexBuffer(2,ExtMapBuffer1) ;

SetIndexBuffer(1,ExtMapBuffer2) ;

SetIndexBuffer(0,ExtMapBuffer3) ;

SetIndexBuffer(3,sum) ;

SetIndexBuffer(4,wt) ;

SetIndexStyle(2,DRAW_LINE,STYLE_SOLID,3) ;

SetIndexStyle(1,DRAW_LINE,STYLE_SOLID,3) ;

SetIndexStyle(0,DRAW_LINE,STYLE_SOLID,3) ;

//---- initialisation terminée

return(0) ;

}

int start()

{ Draw4HowLong = Bars-Rperiod - 5 ;

length = Rperiod ;

loopbegin = Draw4HowLong - length - 1 ;

for(shift = loopbegin ; shift >= 0 ; shift--)

{

sum[1] = 0 ;

pour(i = longueur ; i >= 1 ; i--)

{

lengthvar = longueur + 1 ;

lengthvar /= 3 ;

tmp = 0 ;

tmp = ( i - lengthvar)*Close[length-i+shift] ;

sum[1]+=tmp ;

}

wt[shift] = sum[1]*6/(length*(length+1)) ;

//========== CODAGE COULEUR ===========================================

ExtMapBuffer3[shift] = wt[shift] ; //rouge

ExtMapBuffer2[shift] = wt[shift] ; //vert

ExtMapBuffer1[shift] = wt[shift] ; //jaune

// for(c=loopbegin;c==shift;c++)

// {

si (wt[shift+1] > wt[shift])

{

ExtMapBuffer2[shift+1] = EMPTY_VALUE ;

// ObjectCreate("smiley_face", OBJ_ARROW, 0, Time[shift], Low[shift]-Point*20) ;

// Print("time= ",Time[shift]) ;

// ObjectSet("smiley_face", OBJPROP_ARROWCODE, 242) ;

// ObjectSet("smiley_face", OBJPROP_COLOR , Red) ;

// ObjectSet("smiley_face", OBJPROP_WIDTH , 1) ;

// ObjectsRedraw() ;

//ExtMapBuffer3[shift+1] = EMPTY_VALUE ;

//ExtMapBuffer3[shift+1] = EMPTY_VALUE ;

}

else if (wt[shift+1] < wt[shift])

{

ExtMapBuffer1[shift+1] = EMPTY_VALUE ; //-1 rouge/gris serré

//ExtMapBuffer3[shift+1] = EMPTY_VALUE ;

}

else

{

ExtMapBuffer1[shift+1]=CLR_NONE;//EMPTY_VALUE ;

ExtMapBuffer2[shift+1]=CLR_NONE;//EMPTY_VALUE ;

}

}

return(0) ;

}

//+------------------------------------------------------------------+

 

salut les gars

je veux savoir comment écrire ce code dans ea

rsi 14

paramétrage 30 et 70

acheter

rsi croise au-dessus de la ligne 30 depuis le bas (d'abord le rsi doit croiser en dessous de la ligne 30 depuis le haut, puis ne croise que la ligne où le signal est valide).

vendre

rsi cross below line 70 from above( d'abord le rsi devrait croiser au-dessus de la ligne 70 from below ensuite seulement croiser en arrière la ligne où le signal est valide)

Merci d'avance

 

comment ajouter le temps de transaction à l'EA ?

ex : EA pas de trading en 14~20h et trading normal en d'autres temps !

et fermer tous les trades rentables, et garder les trades perdants avant 14h ???

merci

(désolé pour mon mauvais anglais)

 
quangmach:
Comment ajouter le temps de transaction à l'EA ?

ex : EA pas de trading à 14~20h et trading normal à d'autres moments !

et fermer tous les trades rentables, et garder les trades perdus avant 14h ???

merci

(désolé pour mon mauvais anglais)

Je ne suis pas sûr mais cela peut être opposé avec le timefilter, par exemple, après le démarrage ajouter quelque chose comme ceci :

if (UseHourTrade){

if ((Hour()>=FromHourTrade && Hour()<=ToHourTrade)) {

Comment("Time for trade has not come else!");

return(0);

}

}[/CODE]

And in the settings of EA add the following:

[CODE]extern bool UseHourTrade = True;

extern int FromHourTrade = 14;

extern int ToHourTrade = 20;

Mais notez que le temps (14 et 20) est le temps Metatrader (dépend du courtier). En outre, cela dépend de la période avec laquelle vous utilisez votre EA. Par exemple, si la barre de clôture est à 15, elle sera de 15 à 20 sans tenir compte de votre 14 - 20. Cela dépend des barres de fermeture.

 
newdigital:
Je ne suis pas sûr mais il peut être opposé avec timefilter, par exemple, après le début ajouter quelque chose comme ceci :
if (UseHourTrade){

if ((Hour()>=FromHourTrade && Hour()<=ToHourTrade)) {

Comment("Time for trade has not come else!");

return(0);

}

}[/CODE]

And in the settings of EA add the following:

[CODE]extern bool UseHourTrade = True;

extern int FromHourTrade = 14;

extern int ToHourTrade = 20;
Mais veuillez noter que le temps (14 et 20) est le temps Metatrader (dépend du courtier). En outre, cela dépend de la période avec laquelle vous utilisez votre EA. Par exemple, si la barre de clôture est à 15, elle sera de 15 à 20 sans tenir compte de votre 14 - 20. Cela dépend des barres de fermeture.

wow, merci beaucoup

Et pourquoi pas

et fermer toutes les transactions rentables, et garder les transactions perdues avant 14h ???

C'est possible ?

 

Couleur du commentaire

Bonjour.

Existe-t-il un moyen de changer la couleur des commentaires de l'indicateur - ceux qui s'affichent dans des fenêtres séparées ?

Si oui, comment ?

Merci

 
kiwigold:
Bonjour.

Existe-t-il un moyen de changer la couleur des commentaires de l'indicateur - ceux qui s'affichent dans des fenêtres séparées ?

Si oui, comment ?

merci

Vous pouvez le faire en utilisant des étiquettes. L'étiquette peut être placée à n'importe quel endroit de la fenêtre sélectionnée, elle peut aussi avoir la police que vous voulez et n'importe quelle couleur/taille, etc. Vous pouvez donc utiliser une étiquette comme commentaire, la placer en x=20 et y=20 et définir la couleur de la police comme vous le souhaitez.

 

Compter les barres du passé au présent

Le comptage des barres se fait toujours de droite à gauche (du présent au passé) dans MQL, n'est-ce pas ?

Comment puis-je réaliser le comptage des barres du passé vers le présent ?

Pour un exemple simple, comment dois-je procéder pour numéroter chaque barre d'un mois donné, 1 représentant la première barre du mois et les barres suivantes étant incrémentées ?

Merci pour toute aide.

Bill (toujours pris dans une boucle)

 

créer de nouveaux objets en utilisant le nom et la position d'objets existants

L'un de mes projets d'apprentissage consiste à personnaliser le fichier tester.tpl qui régit l'option d'affichage des graphiques pour le testeur de stratégies. Je trouve le style de graphique par défaut très difficile à visualiser. J'ai donc créé un nouveau modèle, puis construit un script pour remplacer toutes les flèches par des flèches plus attrayantes.

Cependant, j'aimerais aussi récupérer les informations contenues dans les noms des flèches et les afficher sous forme de texte sur le graphique. Les noms des flèches incluent des choses comme "#62 buy" ou "73 sell close". De cette façon, vous pouvez regarder le graphique et voir exactement quand un numéro de transaction particulier est entré/sorti. Je ne sais pas pourquoi cela n'est pas inclus par défaut dans le Strategy Tester comme c'est le cas sur d'autres plateformes (par exemple TradeStation).

Quoi qu'il en soit, j'aimerais saisir le texte en question et insérer de nouveaux objets texte juste en dessous des flèches existantes sur le graphique. Mais je n'arrive pas à trouver comment y parvenir.

Comment dois-je m'y prendre ?

Merci

Bill

 
billworld2:
Le comptage des barres se fait toujours de droite à gauche (du présent au passé) dans MQL, n'est-ce pas ?

Comment réaliser le comptage des barres du passé au présent ?

Pour un exemple simple, comment dois-je procéder pour numéroter chaque barre d'un mois donné, 1 représentant la première barre du mois et les barres suivantes étant incrémentées ?

Merci pour toute aide.

Bill (toujours pris dans une boucle)

Vous devriez vous renseigner sur les fonctions Date et Heure, et utiliser la fonction iBarShift pour obtenir le décalage de la première barre du mois spécifié dans la période spécifiée.