[Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas votre chemin. Je ne peux aller nulle part sans toi. - page 845

 
Top2n:
Si quelqu'un a un code loca écrit, envoyez-le moi, je vous en serai reconnaissant !
Je vous ai déjà répondu en personne, qu'il s'agit de la même pose d'ouverture, mais dans le sens inverse. Et le volume de la pose voir par vous-même, en fonction de votre logique.
 
Je l'ai fait avec le pending, mais il y a un bug, plus il s'ouvre à cet endroit, plus il s'éloigne de l'ordre. il faut que ce soit sans couverture et sur place, mais je ne peux pas écrire les conditions dans lesquelles il s'ouvre !
 
Top2n:
Je l'ai fait avec un en attente, mais il y a un problème : plus il s'ouvre à cet endroit, plus il s'éloigne de l'ordre. J'ai besoin qu'il soit sans couverture mais sur place, mais je ne peux pas écrire les conditions dans lesquelles il doit s'ouvrir !

Si vous ne pouvez pas décider vous-même des conditions d'ouverture, comment puis-je vous aider ?

Vous devez essayer d'une manière ou d'une autre de formaliser ce que vous voulez faire.

 
L'ordre opposé doit s'ouvrir à un certain point, et s'il est fermé, il doit s'ouvrir à nouveau au même point, si le prix descend jusqu'à lui, bien sûr.
 
Top2n:
L'ordre opposé devrait s'ouvrir à un certain point et ensuite, s'il a été fermé, il s'ouvrira à nouveau à ce point, si le prix est descendu jusqu'à lui. Je pense que oui
.

Honnêtement... Cela ressemble plus à une sorte de TOR d'un client notoire, qui sont nombreux, qu'à une logique de programmeur :)

1. Avez-vous besoin d'un ordre en attente ou d'ouvrir une position opposée si la position actuelle atteint un certain nombre de points de perte ?

2. S'il s'agit d'un ordre contraire, et que le prix l'a touché, alors il sera transformé en un ordre au marché, donc

2.1. si une position de marché a été fermée (avec une perte ? avec un bénéfice ?), le même ordre sera-t-il à nouveau placé au même prix ? (son type dépendra du prix actuel)

2.2 Si un ordre en attente se déclenche, dois-je le fixer à nouveau ?

2.3

2.4.

.... Il y a un million d'autres questions à poser. Ne prenons pas de pincettes pour obtenir des informations sur ce que vous recherchez, hein ?

Écrivez la logique de ce que vous voulez faire. C'est la première chose. Vous pouvez l'écrire sur une feuille de papier et un crayon...

Et ensuite, vous pourrez décider comment mettre tout cela en code.

 

Je suis intéressé par le travail sur les volumes. Il y a des fichiers au format .csv. J'ai regardé, dans le dossier du serveur de trading, il y a des fichiers au format .hst.

quel doit être le format des fichiers csv et comment dois-je les convertir en . hst ?

 

C'est en fait plus simple que ça, il me semble.

1. nous ouvrons un ordre de vente, si le prix baisse de 10 pips, nous ouvrons un ordre de vente,

2.si la vente est fermée par le SL, le prix commence à travailler avec la baie, si le prix descend encore à moins 10 pips, ouvrez à nouveau la vente.

Si sll est fermé par TP, alors mon EA fera tout bien.

J'ai une question sur la façon d'afficher une condition :

1. ouvrir un ordre de vente, si le prix baisse de 10 pips, alors ouvrir un ordre de vente.

2.si la vente est fermée par le SL, le prix commence à travailler avec la baie, si le prix descend encore à moins 10 pips, alors ouvrez la vente à nouveau .

 

Veuillez m'excuser si je vous distrais avec une question probablement stupide.

Je viens de commencer à apprendre et je n'ai personne à qui demander conseil.

J'ai lu le manuel à plusieurs reprises. J'ai commencé un Expert Advisor avec les fonctions les plus simples, les ordres en attente.

Je ne comprends toujours pas ce que je dois faire pour ouvrir des ordres une fois, et non à chaque tick.

//+------------------------------------------------------------------+
//| my.mq4 |
//| serjik |
//| |
//+------------------------------------------------------------------+
#property copyright "serjik"


//---- variables externes
extern double Lots=0.1 ; // taille du lot
extern int StopLoss=0 ; // stop loss
extern int TakeProfit=10 ; // profit
extern int DistanceSet=10 ; // distance du marché des ordres
extern inttern Slippage=3 ; //glissement de prix
//----variables globales

//+------------------------------------------------------------------+
//| fonction d'initialisation de l'expert |
//+------------------------------------------------------------------+
int init()
{
//----

//----
retour(0) ;
}
//+------------------------------------------------------------------+
//| fonction de désinitialisation des experts |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
retour(0) ;
}
//+------------------------------------------------------------------+
//| fonction de démarrage de l'expert |
//+------------------------------------------------------------------+
int start()
{

double ldStop=0, ldTake=0 ;
double pAsk=Ask+DistanceSet*Point ;
double pBid=Bid-DistanceSet*Point ;

si (StopLoss!=0) ldStop=pAsk-StopLoss*Point ;
si (TakeProfit!=0) ldTake=pAsk+TakeProfit*Point ;
SetOrder(OP_BUYSTOP, pAsk, ldStop, ldTake) ; //

si (StopLoss!=0) ldStop=pBid+StopLoss*Point ; //
si (TakeProfit!=0) ldTake=pBid-TakeProfit*Point ;
SetOrder(OP_SELLSTOP, pBid, ldStop, ldTake) ; //



}
//+------------------------------------------------------------------+
//| Order Setup |
//| Paramètres : |
//| op - opération |
//| pp - prix |
//| ldStop - niveau d'arrêt |
//| ldTake - prendre le niveau |
//+------------------------------------------------------------------+
void SetOrder(int op, double pp, double ldStop, double ldTake)
{

OrderSend(Symbol(),op,Lots,pp,Slippage,ldStop,ldTake) ;


retour(0) ;
}
//+------------------------------------------------------------------+



Je l'ai peut-être déjà vu dans ce forum, mais je n'ai pas assez d'énergie pour le relire.

Si quelqu'un m'aide, un GRAND MERCI !

 
Top2n:

C'est en fait plus simple que ça, il me semble.

1. nous ouvrons un ordre de vente, si le prix baisse de 10 pips, nous ouvrons un ordre de vente,

2.si la vente est fermée par le SL, le prix commence à travailler avec la baie, si le prix descend encore à moins 10 pips, ouvrez à nouveau la vente.

Si sll est fermé par TP, alors mon EA fera tout bien.

J'ai une question sur la façon d'afficher une condition :

1. ouvrir un ordre de vente, si le prix baisse de 10 pips, alors ouvrir un ordre de vente.

2.si la vente est fermée par le SL, le prix commence à travailler avec la baie, si le prix descend encore à moins 10 pips, alors ouvrez la vente à nouveau .

A chaque tick, vérifiez le profit des positions ouvertes et s'il est inférieur ou égal à 10 pips, alors faites ce que vous devez faire ensuite.
 
serjik77:

Veuillez m'excuser si je vous distrais avec une question probablement stupide.

Je viens de commencer à apprendre et je n'ai personne à qui demander conseil.

J'ai lu le manuel à plusieurs reprises. J'ai commencé un Expert Advisor avec les fonctions les plus simples, les ordres en attente.

Je ne comprends toujours pas ce que je dois faire pour ouvrir des ordres une fois, et non à chaque tick.

//+------------------------------------------------------------------+
//| my.mq4 |
//| serjik |
//| |
//+------------------------------------------------------------------+
#property copyright "serjik"


//---- variables externes
extern double Lots=0.1 ; // taille du lot
extern int StopLoss=0 ; // stop loss
extern int TakeProfit=10 ; // profit
extern int DistanceSet=10 ; // distance du marché des ordres
extern inttern Slippage=3 ; //glissement de prix
//----variables globales

//+------------------------------------------------------------------+
//| fonction d'initialisation de l'expert |
//+------------------------------------------------------------------+
int init()
{
//----

//----
retour(0) ;
}
//+------------------------------------------------------------------+
//| fonction de désinitialisation des experts |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
retour(0) ;
}
//+------------------------------------------------------------------+
//| fonction de démarrage de l'expert |
//+------------------------------------------------------------------+
int start()
{

double ldStop=0, ldTake=0 ;
double pAsk=Ask+DistanceSet*Point ;
double pBid=Bid-DistanceSet*Point ;

si (StopLoss!=0) ldStop=pAsk-StopLoss*Point ;
si (TakeProfit!=0) ldTake=pAsk+TakeProfit*Point ;
SetOrder(OP_BUYSTOP, pAsk, ldStop, ldTake) ; //

si (StopLoss!=0) ldStop=pBid+StopLoss*Point ; //
si (TakeProfit!=0) ldTake=pBid-TakeProfit*Point ;
SetOrder(OP_SELLSTOP, pBid, ldStop, ldTake) ; //



}
//+------------------------------------------------------------------+
//| Order Setting |
//| Paramètres : |
//| op - opération |
//| pp - prix |
//| ldStop - niveau d'arrêt |
//| ldTake - prendre le niveau |
//+------------------------------------------------------------------+
void SetOrder(int op, double pp, double ldStop, double ldTake)
{

OrderSend(Symbol(),op,Lots,pp,Slippage,ldStop,ldTake) ;


retour(0) ;
}
//+------------------------------------------------------------------+



Je l'ai peut-être déjà vu dans ce forum, mais je n'ai pas assez d'énergie pour le relire.

Si quelqu'un m'aide, un GRAND MERCI !

Avant de passer une commande, vous devez d'abord vérifier si la commande existe déjà... Si elle n'est pas encore là, il faut la placer, et si elle l'est, il ne faut pas...