Comment coder ? - page 255

 

Savez-vous comment supprimer les propriétés des indicateurs à l'écran ?

Bonjour, je voudrais supprimer le texte sur les sous fenêtres dans Mt4

J'ai réussi à supprimer une partie du texte directement dans le code mais il reste toujours des chiffres... et je ne sais pas où cela peut être dans le code...

//---- name for DataWindow and indicator subwindow label

switch(TimeFrame)

{

case 1 : string TimeFrameStr="Period_M1"; break;

case 5 : TimeFrameStr="Period_M5"; break;

case 15 : TimeFrameStr="Period_M15"; break;

case 30 : TimeFrameStr="Period_M30"; break;

case 60 : TimeFrameStr="Period_H1"; break;

case 240 : TimeFrameStr="Period_H4"; break;

case 1440 : TimeFrameStr="Period_D1"; break;

case 10080 : TimeFrameStr="Period_W1"; break;

case 43200 : TimeFrameStr="Period_MN1"; break;

default : TimeFrameStr="Current Timeframe";

}

string short_name="MTF AbsoluteStrength("+TimeFrameStr+","+Mode+","+Length+","+Smooth+","+Signal+",,"+ModeMA+")";

IndicatorShortName(short_name);

SetIndexLabel(0,"Bulls");

SetIndexLabel(1,"Bears");

SetIndexLabel(2,"SignalBulls");

SetIndexLabel(3,"SignalBears");

//----

SetIndexDrawBegin(0,Length+Smooth+Signal);

SetIndexDrawBegin(1,Length+Smooth+Signal);

SetIndexDrawBegin(2,Length+Smooth+Signal);

SetIndexDrawBegin(3,Length+Smooth+Signal);

return(0);

}

J'ai réussi à supprimer une partie du texte directement dans le code, mais il reste toujours des chiffres et je ne sais pas comment faire pour les supprimer complètement.

 

Aide pour le codage mt4

Bonjour,

J'essaie d'apprendre le codage mt4. J'ai lu les leçons de CodersGuru et je suis en train de lire le manuel MLQ4. J'ai codé pour la dernière fois à l'époque de Fortran 4, il y a environ 40 ans, donc je suis très loin du cadre.

J'ai dessiné un organigramme de ce que je veux réaliser, mais je ne sais pas comment procéder.

J'ai ouvert MetaEditor et créé un nouveau fichier programme, mais je suis bloqué.

Ce que j'essaie de faire est de tracer une ligne horizontale de base et ensuite le programme tracera 4 lignes supplémentaires à intervalles réguliers. La valeur de la ligne de base et la valeur incrémentale sont sélectionnées par l'utilisateur.

Mais ce que je dois ajouter au programme me laisse perplexe, cela devrait être simple, mais pas pour moi.

Si quelqu'un avait l'amabilité de me guider à travers les étapes et de m'expliquer comment et pourquoi les choses sont faites, je lui en serais très reconnaissant.

Je vous en serais très reconnaissant.

Salutations Allon

 

Comment coder : une seule transaction

Bonjour,

Je vais écrire un EA avec deux Trades si certaines règles sont correctes mais l'EA ne doit ouvrir qu'un seul Trade avec :

Trade("AUDCAD",OP_BUY, dLots, 0,0, 0, iMagic, sComment) ;

et un trade avec

Trade("AUDCHF",OP_BUY, dLots, 0,0, 0, iMagic, sComment) ;

Le but est que l'EA s'ouvre :

- 1 Trade "OP_BUY" avec AUDCAD

- et 1 Trade "OP_BUY" avec AUDCHF

Comment dois-je le coder ?

Merci d'avance.

halobungie

 

EA changeant la couleur de la ligne MA

Bonjour à tous,

J'ai essayé de résoudre ce problème au cours des derniers jours. J'ai quelques lignes de moyenne mobile et je veux changer la couleur des lignes.

Je ne parviens pas à le résoudre. Quelqu'un peut-il m'indiquer la bonne direction ?

Je sais que les fonctions utilisées sont ima() et icustom(), mais comment puis-je les assembler ?

Merci beaucoup par avance.

Nouveau venu

 

Profit calculé pour plusieurs ordres

Bonjour à tous,

Je veux qu'un EA ferme toutes les positions ouvertes si le profit de tous les ordres est égal à zéro + x pips. Comment le programmer ?

Par exemple

- ordre de vente 0.5 lot prix ouvert = 1.3789

- ordre d'achat 0.4 lot prix ouvert = 1.3745

- ordre de vente 0.2 lot prix ouvert = 1.3721

- ordre de vente 0.1 lot openprice = 1.3676

Désolé pour mon mauvais anglais

Salutations

derumuro

 

Bonjour à tous,

Où puis-je trouver le meilleur indicateur stochastique de momentum (SMI) ?

L'édition 3-28-2008 de MLaden semble être la bonne ! ?

Je serais particulièrement intéressé par une version du SMI avec alerte (sur cross et sur niveaux) mais je ne la trouve pas.

Ma deuxième demande concerne un outil d'alerte sur les divergences. Il y en a beaucoup (avec des résultats différents), mais lequel semble être le plus utile (sur les grandes échelles de temps H4, D1, W1) ?

Merci pour votre aide,

CiloX

 

Comment tout fermer ? Aide nécessaire

Je veux simplement fermer tous les ordres ouverts dans mon EA lorsque l'équité atteint -250$. J'ai trouvé un EA en ligne qui ferme tous les ordres. Il a une fonction CloseAll() qui ferme tous les ordres. Je l'ai donc copié dans mon EA et l'ai appelé dans la fonction start() comme ceci :

if(AccountBalance()-AccountEquity()< -250)

CloseAll() ;

Mais l'EA fonctionne comme d'habitude, sans redémarrage.Si un programmeur pouvait m'indiquer la bonne direction, ce serait formidable.

Merci.

 
ndtexpert:
Je veux simplement fermer tous les ordres ouverts dans mon EA lorsque l'équité atteint -250$. J'ai trouvé un EA en ligne qui ferme tous les ordres. Il a une fonction CloseAll() qui ferme tous les ordres. Je l'ai donc copié dans mon EA et l'ai appelé dans la fonction start() comme ça :

si(AccountBalance()-AccountEquity()< -250)

CloseAll() ;

Mais l'EA fonctionne comme d'habitude, sans redémarrage.Si un programmeur pouvait m'indiquer la bonne direction, ce serait formidable.

Merci.

La condition est ok, c'est une condition très simple donc elle doit fonctionner. C'est quelque chose de différent, le code de votre ea serait utile.

La condition que vous avez indiquée vérifie l'équité globale et la balance du compte, vous devriez écrire votre propre fonction pour vérifier uniquement les profits/pertes générés par cette seule ea et les séparer par un nombre magique. De cette façon, vous pouvez vérifier plusieurs ea en même temps.

 
derumuro:
Bonjour à tous,

Je veux un EA qui ferme toutes les positions ouvertes si le profit de tous les ordres est égal à zéro + x pips. Comment programmer l'EA ?

Par exemple

- ordre de vente 0.5 lot prix ouvert = 1.3789

- ordre d'achat 0.4 lot prix ouvert = 1.3745

- ordre de vente 0.2 lot prix ouvert = 1.3721

- ordre de vente 0.1 lot openprice = 1.3676

Désolé pour mon mauvais anglais

Salutations

derumuro

Le moyen le plus simple est de vérifier le profit de chaque ordre (au lieu de compter les pips et de les multiplier par la valeur du lot). Vous devriez également séparer les transactions par numéro magique (afin de compter les profits également). Voici un exemple de la fonction que j'utilise pour compter le profit de l'ea sélectionné (basé sur le nombre magique) :

double profitCount()

{

double oc = 0;

for(int cnt = 0 ;cnt<OrdersTotal();cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderMagicNumber() == Magic)

{

oc+= OrderProfit()+OrderSwap()+OrderCommission();

}

}

return(oc);

}

 
halobungie:
Bonjour,

Je vais écrire un EA avec deux Trades si certaines règles sont correctes mais l'EA ne doit ouvrir qu'un seul Trade avec :

Trade("AUDCAD",OP_BUY, dLots, 0,0, 0, iMagic, sComment) ;

et un trade avec

Trade("AUDCHF",OP_BUY, dLots, 0,0, 0, iMagic, sComment) ;

Le but est que l'EA s'ouvre :

- 1 Trade "OP_BUY" avec AUDCAD

- et 1 Trade "OP_BUY" avec AUDCHF

Comment dois-je le coder ?

Merci d'avance.

halobungie

Hey !

Vous devez utiliser la fonction MarketInfo (pour obtenir l'Ask/Bid du cross spécifié) pour cela, et envoyer le nom du symbole à la fonction OrderSend.

Salutations

Kale