Aide au codage - page 174

 
jeffpark:
Bonjour mladen,

Vous vous souviendrez sans doute que j'ai demandé de l'aide pour un MA cross EA la semaine dernière, et que j'ai bien sûr fait référence de manière inappropriée à la section Elite. Où pouvez-vous me suggérer de demander cela, s'il vous plaît ? J'ai cherché et je n'ai pas trouvé de réponse évidente. Pour vous rafraîchir la mémoire, voici la spécification :

1. croisement des SMA EMA

2.à la clôture de la bougie

3. OCO avec placement d'un nouvel ordre dans une nouvelle direction

4. possibilité d'ajuster le slippage

5. signal sonore de croisement

6. le croisement n'est pas un vrai croisement sans un écart de pip réglable.

7. si possible, surveillance à l'intérieur de la bougie, de sorte que si une bougie est plus de X fois l'ATR (nombre paramétrable à compter), un ordre est placé avec une alarme dans la direction de cette bougie, et de même pour fermer un ordre mais ne pas en lancer un nouveau.

8. de préférence, si un ordre est placé comme au point 7, il faut déclencher une alarme.

9. la fiabilité du croisement est primordiale. Dans mes graphiques - FXCM, Vantage, FX Choice - certains EAs, y compris Universal Cross ne prennent pas de trades ou sont trop en retard.

10. SL réglable mais peut être laissé de côté si ce n'est pas nécessaire.

11. stop suiveur

12. le SL passe automatiquement au seuil de rentabilité après X pips de profit

13. Nombre maximum de trades ouverts

14. numéro magique

Salutations

Jeff

Jeff

N'importe quel codeur vous posera la question suivante (s'il n'en veut pas à votre argent bien sûr) : avez-vous testé un tel système à l'avance ? C'est la question que nous posons également à toute personne qui propose de construire un EA.

Si vous ne disposez pas d'au moins deux mois de tests à terme (avec des transactions manuelles bien sûr), je doute que quiconque construise un EA basé uniquement sur des règles.

 

Bonjour mladen,

tout d'abord merci pour votre aide ! j'ai attaché l'indicateur au graphique et avec les paramètres actuels j'ai le même problème qu'avant. je reçois un message à chaque tick. veuillez voir la boîte de message ci-jointe.

j'ai ensuite regardé le code. comme je le sais de vous, beaucoup trop professionnel pour un débutant comme moi....

donc je dois vous demander (j'espère que ce n'est pas trop stupide) : vous avez dit que je peux ignorer le temps ou le type. dois-je ignorer l'un d'entre eux avant que cela ne commence à fonctionner correctement ? désolé mais je ne suis pas du tout familier avec ces procédures void appelées avec des variables.

Dossiers :
aaa.jpg  60 kb
 
Marbo:
Bonjour mladen,

tout d'abord merci pour votre aide ! j'ai attaché l'indicateur au graphique et avec les paramètres actuels j'ai le même problème que précédemment. je reçois un message à chaque tick. veuillez voir la boîte de message ci-jointe.

ensuite j'ai regardé le code. comme je le sais de vous, beaucoup trop professionnel pour un débutant comme moi... donc je dois vous demander (j'espère que ce n'est pas trop stupide) : vous avez dit que je peux ignorer le temps ou le type. dois-je ignorer l'un d'entre eux avant que cela commence à fonctionner correctement ? désolé mais je ne suis pas du tout familier avec ces procédures void appelées avec des variables.

Marbo

Je vous ai envoyé un PM, mais vous avez été plus rapide : retéléchargez l'indicateur et vous n'aurez plus ce problème.

Pour ce qui est d'ignorer une partie : si vous voulez être alerté sur le changement de côté opposé, par exemple, alors enlevez simplement la partie "time!=timeToTrack" de cette ligne :

if (time!=timeToTrack || type != message)

Vous ne serez alors alerté que si le type (supérieur ou inférieur) est opposé au type précédemment alerté.

 

merci beaucoup, mladen ! c'est vraiment génial. maintenant je peux continuer avec mes tests... mais avant je dois exactement trouver comment vous avez résolu ce cas. l'indicateur lui-même est assez important pour moi mais comprendre comment il est codé est aussi pertinent.

 

Mladen,

Pouvez-vous s'il vous plaît faire un Indicateur avec ce code :

Buy = MACD (26, 13, 9, EXPONENTIEL) > MACDSIGNAL (26, 13, 9, EXPONENTIEL) AND REF (MACD (26, 13, 9, EXPONENTIEL), 1) > 0 AND REF (MACDSIGNAL (26, 13, 9, EXPONENTIEL), 1) > 0

Sortie d'achat = 0

Sell = MACD (26, 13, 9, EXPONENTIEL) < MACDSIGNAL (26, 13, 9, EXPONENTIEL) AND REF (MACD (26, 13, 9, EXPONENTIEL), 1) < 0 AND REF (MACDSIGNAL (26, 13, 9, EXPONENTIEL), 1) < 0

Sortie de vente = 0

Flèches d'achat/vente sur le graphique...

Merci beaucoup

 
rpasupathy:
Mladen,

Pouvez-vous s'il vous plaît faire un Indicateur avec ce code :

Buy = MACD (26, 13, 9, EXPONENTIEL) > MACDSIGNAL (26, 13, 9, EXPONENTIEL) AND REF (MACD (26, 13, 9, EXPONENTIEL), 1) > 0 AND REF (MACDSIGNAL (26, 13, 9, EXPONENTIEL), 1) > 0

Sortie d'achat = 0

Sell = MACD (26, 13, 9, EXPONENTIEL) < MACDSIGNAL (26, 13, 9, EXPONENTIEL) AND REF (MACD (26, 13, 9, EXPONENTIEL), 1) < 0 AND REF (MACDSIGNAL (26, 13, 9, EXPONENTIEL), 1) < 0

Sortie de vente = 0

Flèches d'achat/vente sur le graphique ...

Merci beaucoup.

rpasupathy

Je ne sais pas ce qu'il en est des indicateurs, mais c'est exactement comme cela que fonctionne l'exemple d'EA macd des experts metatrader inclus dans chaque metatrader (il a 2 conditions supplémentaires, mais dans l'ensemble il s'agit d'une ligne de signal de croisement macd type de signaux)

 

Cher mladen et mrtools, pourriez-vous m'aider à coder un indicateur pour les sorties suivantes avec les entrées données pour Metatrder4.

INPUTS

Clôture d'hier

Ouverture d'aujourd'hui

Pivot quotidien

SORTIE requise

Si le prix actuel est SUPÉRIEUR à ce qui précède, l'indicateur à trois entrées doit créer le texte " BULLISH-GO LONG " dans l'espace supérieur central avec la couleur lime.

Si le prix actuel est inférieur aux trois entrées ci-dessus, l'indicateur doit créer le texte " BEARISH-GO SHORT " dans l'espace supérieur central avec la couleur rouge.

Sinon, l'indicateur devrait créer le texte " RANGE " dans l'espace supérieur central avec la couleur jaune.

Merci d'avance.

Je suis de l'Inde et je fais du commerce sur le marché indien, vos compétences de codage sont louables. Je vous suis très reconnaissant si vous pouvez m'aider.

 

Les gars

J'ai peur que le nom de ce fil soit mal compris.

Comme je le vois, il était destiné (et l'est toujours) à être un fil où l'aide à ceux qui essaient de coder certaines choses est trouvée, pas un fil où les gens demandent que quelque chose soit codé pour eux. S'il vous plaît, restez dans l'esprit original du fil de discussion, sinon les gens qui ont des problèmes de codage se retrouveront sans endroit où ils peuvent obtenir des conseils de codage pour leur travail et leur aide, ce qui ne serait bon pour personne.

 

salut mladen,

Je me permets de poser mes questions idiotes :

est-ce que le repeint se produit habituellement avec le code suivant : for(int i=0;i<limit;i++) ?

mais aucun repeint ne se produit habituellement (certainement aucun) avec le code suivant : for(i=limit;i>=0;i--) ? ?

Merci pour vos conseils.

 
kenwa:
Bonjour mladen,

Je me permets de poser mes questions idiotes :

est-ce que le repeint se produit habituellement avec le code suivant : for(int i=0;i<limit;i++) ?

mais aucun repeint ne se produit habituellement (certainement aucun) avec le code suivant : for(i=limit;i>=0;i--) ? ?

merci pour le conseil.

Il est toujours préférable d'utiliser la deuxième forme (de la barre la plus ancienne à la plus récente), mais le sens de la boucle n'est pas la cause exclusive du repeint (vous pouvez utiliser ce sens de boucle inversé et toujours faire des indicateurs non repeints). Cela dépend donc plus des autres parties du code incluses dans la boucle que du sens de la boucle.