Aide au codage - page 82

 

Bonjour,

J'ai un EA qui est 50% automatique, 50% manuel. Je dessine donc manuellement des lignes de tendance et cet EA fonctionne en fonction de ces lignes. Cet EA n'est pas fait par moi, c'est pourquoi j'ai besoin d'aide à ce sujet. J'ai testé cette EA pendant les 6 derniers mois sur un compte de démonstration avec des résultats positifs, mais avec de petits profits. Finalement j'ai décidé de l'essayer sur un compte réel. J'ai essayé les plateformes MT4 de Forex.com et d'Oanda, mais sur les deux, je n'ai eu que l'erreur 130 de OrderSend. Bien sûr, tout le monde sait de quoi il s'agit, mais je ne suis pas très doué en codage pour le résoudre. Je me demandais s'il y a quelqu'un qui peut réparer cet EA (pour qu'il fonctionne sur des comptes réels) pour moi et combien cela peut me coûter ?

Merci d'avance.

 
tiiniz:
Bonjour,

J'ai un EA qui est 50% automatique, 50% manuel. Je dessine donc manuellement des lignes de tendance et cet EA fonctionne en fonction de ces lignes. Cet EA n'est pas fait par moi, c'est pourquoi j'ai besoin d'aide à ce sujet. J'ai testé cet EA pendant les 6 derniers mois sur un compte de démonstration avec des résultats positifs, mais avec de petits profits. Finalement j'ai décidé de l'essayer sur un compte réel. J'ai essayé les plateformes MT4 de Forex.com et d'Oanda, mais sur les deux, je n'ai eu que l'erreur 130 de OrderSend. Bien sûr, tout le monde sait de quoi il s'agit, mais je ne suis pas très doué en codage pour le résoudre. Je me demandais s'il y a quelqu'un qui peut réparer cet EA (pour qu'il fonctionne sur des comptes réels) pour moi et combien cela peut me coûter ?

Merci d'avance.

Il faut simplement le coder pour qu'il fonctionne sur les courtiers de type ECN/STP. Ce qui veut dire : ouvrir un ordre avec un stop loss et un take profit à 0 et seulement quand un ordre est ouvert, modifier le stop loss et / ou le take profit désiré.

 
mladen:
Il faut simplement le coder pour qu'il fonctionne sur les courtiers de type ECN/STP. Ce qui signifie : ouvrir l'ordre avec le stop loss et le take profit à 0 et seulement quand un ordre est ouvert, modifier le stop loss et / ou le take profit désiré.

Oui, merci de m'avoir aidé, mais quand j'ouvre le code, je peux bien sûr trouver les endroits où EA ouvre des ordres, mais je ne peux trouver que peu d'endroits. EA ouvre des ordres avec peu de paramètres et j'ai peur que si je change quelque chose, cela ne fonctionne pas du tout Il est même impossible à 100% de dire si ce sont les bons endroits pour ouvrir des ordres.

 
tiiniz:
Oui, merci de m'avoir aidé, mais quand j'ouvre le code, je peux bien sûr trouver les endroits où EA ouvre des ordres, mais je ne peux trouver cela qu'à quelques endroits. EA ouvre les ordres avec peu de paramètres et j'ai peur que si je change quelque chose, cela ne fonctionne pas du tout . Il est même impossible à 100% de dire si ce sont les bons endroits pour ouvrir les ordres.

tiiniz

En général, les gens postent un code qui les dérange.

Si vous ne postez pas le code qui vous pose problème, tout ce que vous pouvez obtenir est une réponse générale sur ce qu'il faut faire car il n'y a aucun moyen pour quelqu'un de deviner quel code vous utilisez. Si vous ne pouvez pas poster le code, la meilleure réponse que je puisse vous donner est celle du post précédent + : cela doit être fait à chaque endroit où vous trouvez la fonction OrderSend().

Bonne continuation

 

merci pour les directives générales est-ce suffisant avec une partie du code ? puisque tout le code est sur 15 pages MS Word.

Comme ceci ?

OrderSend(Symbol(), OP_BUYLIMIT, a_lots_4, a_price_12, slip, StopLong(ad_20, ai_28), TakeLong(a_price_12, ai_32), a_comment_36, MagicNumber, 0, CLR_NONE)

oui, et j'ai trouvé la fonction OrderSend() à 8 endroits. Est-il possible de voir à partir de cette petite partie du code si cela peut générer l'erreur 130 ?

 
tiiniz:
merci pour les directives générales est-ce que cela suffit avec une partie du code ? puisque tout le code est sur 15 pages MS Word Comme ceci ?

OrderSend(Symbol(), OP_BUYLIMIT, a_lots_4, a_price_12, slip, StopLong(ad_20, ai_28), TakeLong(a_price_12, ai_32), a_comment_36, MagicNumber, 0, CLR_NONE)

oui, et j'ai trouvé la fonction OrderSend() à 8 endroits. Est-il possible de voir à partir de cette petite partie du code si cela peut générer l'erreur 130 ?

En règle générale, lorsque le courtier est ECN/STP, un nouvel ordre doit être ouvert de la manière suivante (en donnant un exemple d'achat) :

int ticket = OrderSend(Symbol(), OP_BUY, lots, price, slippage, 0, 0, comment, magicNumber, 0, CLR_NONE);

if (ticket>-1)

OrderModify(ticket,OrderOpenPrice(),stopLossToUse,takeProfitToUse,0,CLR_NONE);

 
mladen:
En règle générale, lorsque le courtier est ECN/STP, un nouvel ordre doit être ouvert de la manière suivante (en donnant un exemple d'achat) :
int ticket = OrderSend(Symbol(), OP_BUY, lots, price, slippage, 0, 0, comment, magicNumber, 0, CLR_NONE);

if (ticket>-1)

OrderModify(ticket,OrderOpenPrice(),stopLossToUse,takeProfitToUse,0,CLR_NONE);

WOW, maintenant je commence à avoir l'impression que c'est quelque chose que je peux faire moi-même Je vais essayer de réécrire ces lignes demain, et nous verrons ce qui se passe.

 

mladen, pouvez-vous s'il vous plaît jeter un coup d'oeil si cela peut probablement fonctionner ?

Code original :

li_ret_44 = OrderSend(Symbol(), OP_BUYLIMIT, a_lots_4, a_price_12, slip, StopLong(ad_20, ai_28), TakeLong(a_price_12, ai_32), a_comment_36, MagicNumber, 0, CLR_NONE) ;

Code modifié :

li_ret_44 = OrderSend(Symbol(), OP_BUYLIMIT, a_lots_4, a_price_12, slip, 0, 0, a_comment_36, MagicNumber, 0, CLR_NONE) ;

si (li_ret_44>-1)

OrderModify(li_ret_44,OrderOpenPrice(),StopLong(ad_20, ai_28), TakeLong(a_price_12, ai_32),0,CLR_NONE) ;

J'ai trouvé que la variable "li_ret_44" est définie comme Int.

Merci !

 
tiiniz:
mladen, pouvez-vous s'il vous plaît jeter un coup d'oeil si cela peut probablement fonctionner ?

Code original :

li_ret_44 = OrderSend(Symbol(), OP_BUYLIMIT, a_lots_4, a_price_12, slip, StopLong(ad_20, ai_28), TakeLong(a_price_12, ai_32), a_comment_36, MagicNumber, 0, CLR_NONE) ;

Code modifié :

li_ret_44 = OrderSend(Symbol(), OP_BUYLIMIT, a_lots_4, a_price_12, slip, 0, 0, a_comment_36, MagicNumber, 0, CLR_NONE) ;

si (li_ret_44>-1)

OrderModify(li_ret_44,OrderOpenPrice(),StopLong(ad_20, ai_28), TakeLong(a_price_12, ai_32),0,CLR_NONE) ;

J'ai trouvé que la variable "li_ret_44" est définie comme Int.

Merci !

tiiniz

Cela devrait fonctionner

 

Bonjour Mladen,

Je sais que sur le web il y a beaucoup d'indicateurs automatiques de fibonacci............. mais je voudrais avoir 2 indicateurs séparés, un pour le support et un pour la résistance :

1) NOM : FIBO SUPP

A) entrée pour le plus haut de la dernière N BAR et entrée pour le plus bas de la dernière N BAR

B) entrée pour le niveau 9 de fibonacci

C) entrée pour le style (point...ligne)

D) entrée pour la couleur

2) FIBO RES

A) entrée pour la plus haute valeur des N dernières BAR et entrée pour la plus basse valeur des N dernières BAR

B) entrée pour le niveau 9 de fibonacci (faux/vrai)

C) entrée pour le style (point...ligne)

D) entrée pour la couleur

Je code Fibo SUPP et Fibo RES dans le langage metastock......ici pour supp....

hi:=HHV(H,100) ;

lo:=LLV(L,180) ;

BeginPlot:=C>0 ;

ValueWhen(1,BeginPlot,(hi-(hi-lo)*.236)) ;

ValueWhen(1,BeginPlot,((hi-lo)*.382)+lo) ;

ValueWhen(1,BeginPlot,(hi-(hi-lo)*.4142)) ;

ValueWhen(1,BeginPlot,((hi-lo)*.5)+lo) ;

ValueWhen(1,BeginPlot,((hi-lo)*.618)+lo) ;

ValueWhen(1,BeginPlot,(hi-(hi-lo)*.786)) ;

lo ;

Bonjour ;

Je veux ces niveaux de fibonacci :

23.6

38.2

41.42

50

61.8

70.7

78.6

88.6

94.2

Merci d'avance !

Dossiers :