Demandez ! - page 28

 

hii

J'ai besoin du filtre Williams %R. Quelqu'un peut-il m'aider ?

 

Quels sont les facteurs à surveiller dans un rapport de backtest?

Lorsque vous exécutez un EA par Backtesting, quels sont les facteurs clés qui déterminent l'efficacité du code EA ?

S'agit-il de la qualité de la modélisation, du % de gains ou du Drawdown ? Et si vous effectuez un backtesting sur une période d'un an, quels seraient les résultats optimaux/idéaux pour qu'un EA soit considéré comme bon ? Bien sûr, il ne s'agit que de backtesting. Je comprends que les tests prospectifs sont également importants. Mais je veux juste connaître les facteurs qui affectent la qualité d'une EA.

Merci d'avance pour vos réponses et votre temps.

Kent

 

point

Quelqu'un pourrait-il me dire quel est le point dans le code du meta trader ?

merci

 

Bonjour,

Je voudrais s'il vous plaît Kalenzo ou un autre bon programmeur pour m'aider avec cette modification s'il vous plaît.

Mon niveau de connaissance du langage mql est basique car je commence tout juste à apprendre et je dois ajouter une alerte sonore et un popup à un indicateur et je ne trouve toujours pas le code correct pour le faire.

L'indicateur que je veux modifier est le i_trend.mq4, j'ai besoin d'ajouter une alerte sonore et un popup de sorte que lorsque la ligne rouge touche le niveau 0.0002, il montre une alerte SHORT et lorsque la ligne verte touche le niveau 0.0002, il montre une alerte BUY. Il faudrait que les alertes ne soient envoyées que lorsque les lignes montent, car si elles touchent le niveau en descendant, cela ne serait pas utile.

J'ai pris comme exemple le code d'un autre indicateur qui montre des alertes sonores et popup mais je ne peux pas faire la même chose pour le i_trend, l'indicateur d'exemple est le "PerkyAsctrend1.mq4" Je joins les deux indicateurs à ce post comme référence.

Je serai très reconnaissant à quiconque m'aidera à ajouter ces modifications, merci beaucoup par avance.

La section du code dans le PerkyAsctrend où l'"alerte" est écrite est la suivante :

si (val2!=0 && up==0 )

{

val1buffer= val2-1*Point ;

up=1 ;

dn=0 ;

si(shift<=2)

{

Alert (Symbol()," ",Period(), "M Asctrend BUY ") ;

}

}

si (val1 !=0 && dn==0)

{

val2buffer= val1+1*Point ;

dn=1 ;

up=0 ;

si(shift<=2)

{

Alert (Symbol()," ",Period(), "M Asctrend SELL ") ;

}

}

Comment puis-je implémenter la même chose pour le i_trend ? avec les conditions que j'ai spécifiées ci-dessus.

Merci encore !

Dossiers :
 

Programmation de base

Bonjour,

J'ai lu tous vos tutoriels et je vois que vous avez passé beaucoup de temps et d'efforts pour les créer ! Mais comme je viens d'apprendre et que je suis novice en programmation, je me suis perdu très tôt. Je cherche à suivre des cours de programmation de base dans une école technique locale... Je me demande juste si MQL4 est écrit sur la base d'un autre langage de programmation ? Je me demande si MQL4 est écrit sur la base d'un autre langage de programmation ? Ou mieux encore, si je devais apprendre un des langages de programmation les plus courants qui rendrait MQL4 plus facile, lequel serait-il ?

Merci !

 

Rafraîchissement des données des indicateurs

Existe-t-il un moyen de rafraîchir plus rapidement les données des indicateurs ? Parfois, les "commentaires" et les "fenêtres de données séparées" mettent un certain temps à se mettre à jour et vous devez rafraîchir le graphique pour obtenir les dernières données ou est-ce plutôt un problème de configuration des ordinateurs ? Je pose cette question parce que l'ordinateur portable d'un ami semble mettre à jour les données plus rapidement que mon ordinateur.

Est-ce que "RefreshRates" peut être utilisé ?

Toute aide serait grandement appréciée.

Je viens de découvrir que l'endroit où est placé le code de la fenêtre de données est critique - j'ai maintenant placé le code de données au bon endroit dans le code de l'indicateur et il se met à jour correctement maintenant. Au moins, cela a résolu un problème que j'avais avec deux indicateurs, toute autre contribution ou idée serait la bienvenue.

 

Problème d'EA

J'ai créé un EA simple en changeant le MACD Sample EA qui est placé sur la plateforme MT4.

J'ai placé l'EA créé dans 6 dossiers et changé les noms de ces dossiers.

Dans chaque EA, dans chaque dossier, j'ai mis le numéro magique différent. J'ai attaché

J'ai attaché ces 6 EAs sur les 6 paires. Le problème est que chaque EA fonctionne seul et quand un EA ouvre un ordre, un autre EAs est ouvert.

Le problème est que chaque EA travaille seul et que lorsqu'un EA ouvre un ordre, les autres EAs ne peuvent pas travailler en même temps.

Peut-être que l'EA MACD Sample a un code qui empêche cette opération.

 

Codage de la vérification du double top

Dans mon EA, je souhaite vérifier que le prix actuel de la devise est supérieur au High des 10 dernières barres avant d'entrer dans une transaction d'achat. Comment puis-je tester cela dans une déclaration MQ4 ? Merci à l'avance !

Dave <<<
 
Je me demande simplement si MQL4 est écrit sur la base d'un autre langage de programmation ? Ou mieux encore, si je devais apprendre un des langages de programmation les plus courants qui rendrait MQL4 plus facile, lequel serait-il ?

MQL4 est basé sur le langage C, il est donc préférable d'apprendre le C avant de programmer avec lui.

 
iscuba11:
J'ai un problème avec le fait qu'il modifie toujours les trades dans le backtester encore et encore. Comment puis-je faire pour qu'il modifie les trades une seule fois. Comme le programme se met en veille, les seuls trades qui doivent être modifiés sont les trades encore ouverts.

Veuillez voir le fichier .Gif ci-joint des résultats du backtest. Je suis si près d'y arriver - Conseillez-moi ! J'utilise cette modification de Take Profit et Stop Loss en conjonction avec le mode veille. Voir le code ci-dessous

int start()

{

if (UseHourTrade)

{

int a=0 ;

int b=0 ;

int c=0 ;

if( !(Hour()>=FromHourTrade1 && Hour()<=ToHourTrade1)) a=1 ;

if( !(Hour()>=FromHourTrade2 && Hour()<=ToHourTrade2)) b=1 ;

if( !(Hour()>=FromHourTrade3 && Hour()<=ToHourTrade3)) c=1 ;

si(a==1 && b==1 && c==1)

{

Commentaire(

"\n"," * CONSEILLER EXPERT EN ÉNERGIE SOLAIRE *",

"\n",

"\n", " - PROGRAMME EN CYCLE DE SOMMEIL - ",

"\n",

"\n"," > HEURES DE NON-TRADING ! <") ;

///////////////////MODIFIER LE STOP LOSS ET LE TAKE PROFIT AU DÉBUT DU CYCLE DE SOMMEIL /////////////////

int h=0;

for (int cnt1=OrdersTotal()-1;cnt1>=0;cnt1--)

OrderSelect(h, SELECT_BY_POS, MODE_TRADES) ;

if (OrderType()>=OP_SELL && OrderSymbol()==Symbol() && (OrderMagicNumber () == MagicNumber || MagicNumber==0))

{

OrderModify(OrderTicket(),OrderOpenPrice(),Ask+(15 *Point),Bid-(20*Point),Cyan) ; //Modifier le stop loss et le take profit

return(0) ;

}

if (OrderType()>=OP_BUY && OrderSymbol()==Symbol() && (OrderMagicNumber () == MagicNumber || MagicNumber==0))

{

OrderModify(OrderTicket(),OrderOpenPrice(),Bid-(15*Point),Ask+(20*Point),Cyan) ; //Modifier le stop loss et le take profit

return(0) ;

}

return(0) ;

}

}

Dave <<<

votre OrderSelect() n'a pas compté la base sur la boucle en cours.