Demandez !

 

Bonjour à tous,

J'ai reçu beaucoup de messages privés me demandant de l'aide pour certains morceaux de code.

Ici vous pouvez poster vos questions relatives à MQL4, et je ferai de mon mieux pour y répondre.

 

Alertes (par sons ou autres)

J'ai deux questions.

La première. Il est parfois nécessaire de tester certaines stratégies de trading manuellement avant de créer l'EA. C'est possible pour M1, M5 et M15. Mais pour H1 et les délais supérieurs, c'est difficile. Quel morceau de code doit être inclus dans un indicateur (n'importe qui) pour l'alarme (sons ou autre) pour indiquer le croisement de deux lignes de l'indicateur ? Par exemple, l'indicateur a deux lignes seulement qui sont censées être croisées (avec alarme).

Deuxièmement. Nous avons deux indicateurs. Quelles parties du code doivent être incluses dans un ou deux indicateurs pour indiquer le croisement de deux lignes : une ligne provient du premier indicateur et une autre ligne provient d'un autre indicateur (toutes ces deux lignes sont dans la même fenêtre bien sûr) ?

Si c'est le cas, il faut créer un EA ou un script. Gardez cette question jusqu'à ce que nous étudions la création d'EA et de script.

 

Alertes sur la croix !

newdigital:
J'ai deux questions.

La première. Il est parfois nécessaire de tester certaines stratégies de trading manuellement avant de créer l'EA. C'est ok pour M1, M5 et M15. Mais pour H1 et les délais supérieurs, c'est difficile. Quel morceau de code doit être inclus dans un indicateur (n'importe qui) pour l'alarme (sons ou autre) pour indiquer le croisement de deux lignes de l'indicateur ? Par exemple, l'indicateur a deux lignes seulement qui doivent être croisées (avec alarme).

Deuxièmement. Nous avons deux indicateurs. Quelles parties du code doivent être incluses dans un ou deux indicateurs pour indiquer le croisement de deux lignes : une ligne provient du premier indicateur et une autre ligne provient d'un autre indicateur (toutes ces deux lignes sont dans la même fenêtre bien sûr) ?

Si c'est une EA ou un script qui doit être créé, gardez cette question jusqu'à ce que nous étudions la création de l'EA et du script.

La deuxième question nécessite un peu de travail (la clé de l'idée est de travailler avec GlobalVariablest pour que les deux indicateurs se connaissent !)

Je vais y travailler plus tard.

Voici le code de la première question. Il doit être testé (il est 6:40 AM ici ).

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

//| Demo1.mq4 |

//| Coders' Guru. |

//| https://www.forex-tsd.com |

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

#property copyright "Coders Guru"

#property link "https://www.forex-tsd.com"

#property indicator_chart_window

#property indicator_buffers 2

#property indicator_color1 Red

#property indicator_color2 Blue

//---- buffers

double ExtMapBuffer1[];

double ExtMapBuffer2[];

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

//| Custom indicator initialization function |

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

int init()

{

//---- indicators

SetIndexStyle(0,DRAW_LINE);

SetIndexBuffer(0,ExtMapBuffer1);

SetIndexStyle(1,DRAW_LINE);

SetIndexBuffer(1,ExtMapBuffer2);

//----

return(0);

}

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

//| Custor indicator deinitialization function |

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

int deinit()

{

//----

//----

return(0);

}

bool Crossed (double line1 , double line2 )

{

static string last_direction = "";

string current_dirction = "";

if(line1>line2)current_dirction = "up";

if(line1<=line2)current_dirction = "down";

if(current_dirction != last_direction)

{

Alert("CRROSED: Line1 is (" + current_dirction + ") Line2 now");

last_direction = current_dirction;

return (true);

}

else

{

return (false);

}

}

int start()

{

int counted_bars=IndicatorCounted();

//---- check for possible errors

if (counted_bars<0) return(-1);

//---- last counted bar will be recounted

if (counted_bars>0) counted_bars--;

int pos=Bars-counted_bars;

while(pos>=0)

{

ExtMapBuffer1[pos]= iMA(NULL,0,5,0,MODE_EMA,PRICE_CLOSE,pos);

ExtMapBuffer2[pos]= iMA(NULL,0,20,0,MODE_EMA,PRICE_CLOSE,pos);

pos--;

}

Print(Crossed (ExtMapBuffer1[0],ExtMapBuffer2[0]));

//----

return(0);

}

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

question

Cher codersguru,

J'ai un couple de systèmes que j'ai besoin d'aide pour traduire de Tradestation en Meta et ensuite un système de trading de base. Je travaille à partir de zéro. Quel est votre taux horaire pour m'aider avec ce service ?

Certains des systèmes sont publiés et 2 des systèmes que j'ai achetés ont signé un accord de confidentialité pour que je puisse les publier. Quels sont vos tarifs ?

Merci beaucoup,

Rick

 

Pas encore. Je n'ai pas encore testé.

Demain je vais insérer ce code dans un indicateur (n'importe qui avec deux lignes qui se croisent).

 

CrossedAlerts

newdigital:
J'ai deux questions.

La première. Il est parfois nécessaire de tester certaines stratégies de trading manuellement avant de créer l'EA. C'est ok pour M1, M5 et M15. Mais pour H1 et les délais supérieurs, c'est difficile. Quel morceau de code doit être inclus dans un indicateur (n'importe qui) pour l'alarme (sons ou autre) pour indiquer le croisement de deux lignes de l'indicateur ? Par exemple, l'indicateur a deux lignes seulement qui doivent être croisées (avec alarme).

Deuxièmement...

Bonjour newdigital,

Avez-vous testé le code ? Est-ce que c'est ce que vous voulez ?

Dossiers :
 

Leçon de backtesting

Bonjour,

Pouvez-vous nous expliquer comment travailler avec le backtesting ?

Que faut-il faire pour préparer notre EA pour le backtesting ?

Comment fonctionne le backtesting (chaque tick, prix ouvert...) ?

Merci.

 
codersguru:
Bonjour newdigital, Avez-vous testé le code ? Est-ce que c'est ce que vous voulez ?

Je l'ai testé. C'est génial.

Nous pouvons l'utiliser comme un échantillon.

Ou si nous avons juste besoin d'un son, nous pouvons utiliser le code ci-joint.

Dossiers :
 

Ou si nous avons juste besoin d'un son (facultatif) et d'un texte écrit sur le graphique (facultatif également), nous pouvons utiliser ce code (ci-joint).

Dossiers :
 

Parfait !

newdigital:
Ou si nous avons juste besoin d'un son (facultatif) et d'un texte écrit sur le graphique (facultatif également), nous pouvons utiliser ce code (ci-joint).

newdigital,

vous rock !

Merci

 

J'ai fait de très petits EAs pour RSTL et Supertrend crossing alert.

Le premier travaille sur la barre actuelle.

Le second travaille sur une barre optionnelle (actuelle, précédente ou autre).

Alertes seulement.

Désolé pour le mauvais codage : nous n'avons pas encore étudié les EAs.

Et peut-être que j'ai fait une erreur ...

mais j'ai testé et ça marche.

Dossiers :
cross.mq4  3 kb
cross1.mq4  3 kb
rstl.mq4  4 kb
Raison: