[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 617

 
Pouvez-vous me dire comment connaître le lot de la dernière position fermée? Par exemple : la dernière position a clôturé avec un takeaway et nous voulons augmenter le lot de la prochaine position.
 
Vadimkin:
Pouvez-vous me dire comment déclarer un indicateur superposé à un autre indicateur (par exemple MA sur RSI) dans un EA ?
seulement calculer explicitement, par exemple en utilisant iMAOnArray() ou par mon propre algorithme.
 
david2:
Pouvez-vous me dire comment connaître le lot de la dernière position fermée ? Par exemple : la dernière position a clôturé avec un takeaway et nous voulons augmenter le lot de la prochaine position.
int oht = OrdersHistoryTotal();
double last_lot;
OrderSelect(oht-1,SELECT_BY_POS,MODE_HISTORY);
if(NormalizeDouble(OrderClosePrice()-OrderTakeProfit(),Digits)==0) //ордер закрыт по тейкпрофиту
{
   last_lot = OrderLots();
   // ура
}
 
alsu:

Merci beaucoup, mais il n'est pas clair pourquoi les parenthèses sont oht-1 et non oht.
 
david2:
Merci beaucoup, mais il n'est pas clair pourquoi les parenthèses sont oht-1 et non oht.

le premier élément du tableau a le numéro 0, le dernier a la taille-1
 
alsu:

le premier élément du tableau a le numéro 0, le dernier la taille-1
Je vois.
 
alsu:
seulement calculer explicitement, par exemple en utilisant iMAOnArray() ou mon propre algorithme.

Merci, je vais faire un essai.

J'ai essayé une approche différente. J'ai créé un indicateur MA simple et personnalisé à partir du RSI. Maintenant, je dois formuler des conditions pour que le conseiller expert ouvre des positions par ce biais.

Par exemple :

si (RedLine1>BlueLine1&&RedLine2<BluLine2) OP_BUY

si (RedLine1<BlueLine1&&RedLine2>BluLine2) OP_SELL

Mais je ne sais pas comment les déclarer. C'est-à-dire :

double RedLine1 = iCustom(Symbol(), 0, "MARSI", ?, ?, ......, 1) ;

Pourriez-vous s'il vous plaît y jeter un coup d'œil. Ou quelqu'un peut y jeter un coup d'oeil.

Dossiers :
marsi.mq4  2 kb
 
Vinin:


iHigh(NULL, PERIOD_D1,1) - le sommet d'hier

iLow(NULL, PERIOD_D1,1) - le minimum d'hier

iOpen(NULL, PERIOD_D1,1) - ouverture d'hier

iClose(NULL, PERIOD_D1,1) - clôture d'hier

Est-il possible de définir iHai, iLo, iOpen et iClose pour une date spécifique, qui peut être modifiée dans les paramètres de l'indicateur?

extern int data = 08/03/2011

iOpen(NULL, 08/03/2011,1) - quelle est l'ouverture ?

 
Vadimkin:

Merci, je vais faire un essai.

J'ai essayé une approche différente. J'ai créé un indicateur MA simple et personnalisé à partir du RSI. Maintenant, je dois formuler les conditions pour que le conseiller expert ouvre des positions avec elle.

Par exemple :

si (RedLine1>BlueLine1&&RedLine2<BluLine2) OP_BUY

si (RedLine1<BlueLine1&&RedLine2>BluLine2) OP_SELL

Mais je ne sais pas comment les déclarer. C'est-à-dire :

double RedLine1 = iCustom(Symbol(), 0, "MARSI", ?, ?, ......, 1) ;

Je me demande si vous pourriez y jeter un coup d'oeil. Ou quelqu'un peut y jeter un coup d'oeil.


Dans votre cas, il n'y a pas de paramètres externes, donc vous n'avez pas besoin d'écrire quoi que ce soit à la place des questions :

double RedLine1 = iCustom(0, 0, "MARSI", indice de ligne, numéro de barre) ;

Plus précisément,

double RedLine1 = iCustom(0, 0, "MARSI", 0, 1) ; - rouge à 1 barre

double RedLine2 = iCustom(0, 0, "MARSI", 0, 2) ; - rouge sur 2 barres

double BlueLine1 = iCustom(0, 0, "MARSI", 1, 1) ; - bleu sur 1 barre

double BlueLine2 = iCustom(0, 0, "MARSI", 1, 2) ; - Bleu sur la barre 2
 
alsu:

Dans votre cas, il n'y a pas de paramètres externes, donc vous n'avez pas besoin d'écrire quoi que ce soit à la place des questions :

double RedLine1 = iCustom(0, 0, "MARSI", indice de ligne, numéro de barre) ;

Soyez plus précis,

double RedLine1 = iCustom(0, 0, "MARSI", 0, 1) ; - rouge à 1 barre

double RedLine2 = iCustom(0, 0, "MARSI", 0, 2) ; - rouge sur 2 barres

double BlueLine1 = iCustom(0, 0, "MARSI", 1, 1) ; - bleu sur 1 barre

double BlueLine2 = iCustom(0, 0, "MARSI", 1, 2) ; - Bleu sur la barre 2


Merci beaucoup.