[ARCHIVE] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 3. - page 234

 
Je n'arrive pas à trouver comment l'implémenter dans le code. Avez-vous vu le code prêt à l'emploi quelque part ? Je serais d'accord si le code calculait une perte sans perte dans trois directions : 1. sur tous les ordres ouverts 2. seulement les ordres d'achat 3. seulement les ordres de vente
 
belck:
je n'arrive pas à trouver comment implémenter cela dans le code. avez-vous vu le code prêt à l'emploi quelque part ? Je serais d'accord pour que le code calcule un breakeven dans trois directions : 1. pour tous les ordres ouverts 2. seulement les ordres d'achat 3. seulement les ordres de vente
https://www.mql5.com/ru/forum/103719
 

Comment calculer la marge (fonds nécessaires pour ouvrir un ordre avec un lot N) avec différentes valeurs de AccountFreeMarginMode?


 

Bonjour !

Pouvez-vous me conseiller si quelqu'un le sait :

l'EA fonctionne à la fois dans le testeur et sur le réel à une déviation de prix=2 points, et au prix du marché, c'est-à-dire à une déviation=0, peut-il y avoir des problèmes ou non ? La communication est bonne - la fibre est vraiment à 60Mbit, si j'ouvre manuellement - l'exécution est généralement de 1-2 secondes en réel. Mon conseiller expert a un replay jusqu'à ce qu'un ordre soit ouvert avec succès. Je pose la question car je négociais sur la plateforme à quatre chiffres et je veux essayer celle à cinq chiffres. Je l'ai essayé sur une démo à cinq chiffres, mais l'ordre ne s'est pas ouvert, le signal est juste apparu en disant "Nous essayons d'ouvrir un ordre...", et c'est tout. Il n'y a pas de changement ou d'erreur dans le journal. Que conseillez-vous ?

D'après votre expérience personnelle, combien de points de déviation par rapport au prix du marché faut-il fixer lors de l'ouverture (fermeture) d'un ordre ? Lors de l'ouverture d'un ordre dans le testeur, le SL et le TP prédéfinis diminueront d'exactement dix fois - exactement d'une décimale ?

P.S. J'ai écrit mon EA pour MQL4 par moi-même.

Sincèrement.

 

J'ai fait quelque chose avec le fichier modifiable <indicator.mq4>, soit en le déplaçant quelque part, soit en le copiant sous un autre nom, mais après la compilation, dans la liste des indicateurs du terminal, le nom est devenu gris et inactif.

Cependant, l'indicateur est disponible par le biais du menu latéral dans la barre de la fenêtre de gauche dans l'"arbre de liste" et est glissé sur le graphique.

Si vous avez rencontré une telle situation, veuillez indiquer comment y remédier ?

Sincèrement.

 
prorab:

J'ai fait quelque chose avec le fichier modifiable <indicator.mq4>, soit en le déplaçant quelque part, soit en le copiant sous un autre nom, mais après la compilation, dans la liste des indicateurs du terminal, le nom est devenu gris et inactif.

Cependant, l'indicateur est disponible par le biais du menu latéral dans la barre de la fenêtre de gauche dans l'"arbre de liste" et est glissé sur le graphique.

Si vous avez rencontré une telle situation, veuillez indiquer comment la corriger.


Faites un clic droit sur la couleur grise de l'indentation dans le terminal, puis un clic gauche dans le menu "modifier", puis compilez dans le méta-éditeur, puis rechargez le terminal et profitez de la vie...:-)
 
Roman.:

Faites un clic droit sur la couleur grise de l'indicateur dans le terminal, puis un clic gauche dans le menu "modifier", puis compilez dans le méta-éditeur, puis rechargez le terminal et profitez de la vie...:-)
Cela n'aidera pas. Le code source est perdu.
 
Zhunko:
Ça n'arrivera pas. La source est perdue.

J'ai fait la même procédure avec mon EA aujourd'hui - sa couleur est devenue bleue dans le terminal, elle était grise.
 
Roman.:

J'ai fait la même procédure avec mon EA aujourd'hui - sa couleur est devenue bleue dans le terminal, elle était grise.
S'il existe une source, mais qu'elle a été modifiée, c'est possible. C'est-à-dire modifier le contenu de la source. Si la source est perdue ou renommée, elle ne sera pas retrouvée.
 

Помогите исправить ошибку в коде советника. Попытался написать советник на основе индикатора Laguerre.mq4. При компиляции выдает ошибку. Место ошибки в коде выделено жирным. Сам индикатор находится в теле советника.

//+------------------------------------------------------------------+
//| Laguerre+.mq4 | |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+

//---- paramètres d'entrée
extern int TrailingStop=0 ;
extern int StopLoss=0 ;
extern double lots=0.1 ;
extern double gamma = 0.7 ;
extern int Price_Type=0 ;
//---- tampons
double Filter[] ;
double L0[] ;
double L1[]; ;
double L2[] ;
double L3[] ;

//+------------------------------------------------------------------+
//| Fonction d'initialisation de l'indicateur personnalisé |
//+------------------------------------------------------------------+
int init()
{
IndicatorBuffers(5) ;
//---- indicateurs
SetIndexStyle(0, DRAW_LINE) ;
SetIndexDrawBegin(0, 1) ;
SetIndexLabel(0, "LaguerreFilter") ;
SetIndexBuffer(0, Filter) ;
SetIndexBuffer(1, L0) ;
SetIndexBuffer(2, L1) ;
SetIndexBuffer(3, L2) ;
SetIndexBuffer(4, L3) ;
//----
string short_name="LaguerreFilter(" + DoubleToStr(gamma, 2) + ")" ;
IndicatorShortName(nom_court) ;
retour(0) ;
}

//+------------------------------------------------------------------+
//| Fonction de désinitialisation de l'indicateur de dépôt |
//+------------------------------------------------------------------+
int deinit()
{
retour(0) ;
}

//+------------------------------------------------------------------+
//| Fonction d'itération de l'indicateur personnalisé |
//+------------------------------------------------------------------+
int start()
{
int limite ;
int counted_bars = IndicatorCounted() ;
double CU, CD ;
//---- dernière barre comptée sera recomptée
if (counted_bars>0)
barres comptées.. ;
sinon
counted_bars = 1 ;
limite = Barres - barres comptées ;
//---- calculs pour le RSI
for (int i=limit ; i>=0 ; i--)
{
double Price=iMA(NULL,0,1,0,0,Price_Type,i) ;

L0[i] = (1,0 - gamma)*Prix + gamma*L0[i+1] ;
L1[i] = -gamma*L0[i] + L0[i+1] + gamma*L1[i+1] ;
L2[i] = -gamma*L1[i] + L1[i+1] + gamma*L2[i+1] ;
L3[i] = -gamma*L2[i] + L2[i+1] + gamma*L3[i+1] ;

CU = 0 ;
CD = 0 ;
si (L0[i] >= L1[i])
CU = L0[i] - L1[i] ;
sinon
CD = L1[i] - L0[i] ;
si (L1[i] >= L2[i])
CU = CU + L1[i] - L2[i] ;
sinon
CD = CD + L2[i] - L1[i] ;
si (L2[i] >= L3[i])
CU = CU + L2[i] - L3[i] ;
sinon
CD = CD + L3[i] - L2[i] ;

si (CU + CD != 0)
Filtre[i] = (L0[i] + 2 * L1[i] + 2 * L2[i] + L3[i]) / 6.0 ;
}
retour(0) ;

//+------------------------------------------------------------------+
//| fonction de démarrage de l'expert |
//+------------------------------------------------------------------+
int start()
{
si (OrdersTotal()>0)
{
CU = 0 ;
CD = 0 ;
{
CommandeSelect(SELECT_BY_POS) ;
si (OrderSymbol()==Symbol())
{
si (OrderType()== OP_BUY)
{
si ((L0[i] >= L1[i])CU = L0[i] - L1[i],(L1[i] >= L2[i])CU = CU + L1[i] - L2[i],(L2[i] >= L3[i])
OrderClose(OrderTicket(),OrderLots()) ;
sinon CU++ ;
}
si (OrderType()== OP_SELL)
{
si (CD = L1[i] - L0[i],CD = CD + L2[i] - L1[i],CD = CD + L3[i] - L2[i])
OrderClose(OrderTicket(),OrderLots())
sinon CD++ ;
}
}
}

si (CU > CD && CU == 0)
{
OrderSend(Symbol(),OP_BUY,lots,Ask,0/*(Ask-StopLoss*Point)*/,0,) ;
}
si (CU < CD && CD ==0)
{
OrderSend(Symbol(),OP_SELL,lots,Bid,0/*(Bid+StopLoss*Point)*/,0,) ;
}



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

Raison: