[Archive] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 2. - page 45

 
todem:
Merci beaucoup. Mais je ne comprends pas pourquoi il y a un stop-loss ici.

vous avez demandé " le prix peut-il baisser ?"

C'est la distance que j'appelle "stop-loss". Vous pouvez le renommer comme vous le souhaitez.

 
sergeev:

vous avez demandé " le prix peut-il baisser ?"

C'est la distance que j'appelle "stop-loss". Vous pouvez le renommer comme vous le souhaitez.


Merci beaucoup.

 

drknn:

dans la fonction start() de l'EA :

Comment("\n","StopLoss = ",StopLoss,"\n","Lot = ",Lot);

Ce n'est pas ça.

Vous pouvez le charger avec cette fonction : ExpertParameters=proba.set Mais comment résoudre le problème inverse, obtenir ce nom proba.set ? Pouvez-vous au moins me dire dans quelle direction creuser !
 

J'ai ajouté OrderSelect et il ne s'affiche pas avec ceci

void TrailingOrders() {

double di, pa, pb, pp, sl, tp, sp ;
int cnt2 ;
for(cnt2=OrdersTotal();cnt2>0;cnt2--)
{
pp=MarketInfo(OrderSymbol(), MODE_POINT) ;
si (OrderType()==OP_BUY) {
pa=MarketInfo(OrderSymbol(), MODE_ASK) ;
sp=MarketInfo(OrderSymbol(), MODE_ASK)-MarketInfo(OrderSymbol(), MODE_BID) ;
si (OrderOpenPrice()-pa>(TrailingStop+TrailingStep-1)*pp || OrderStopLoss()==0 | pa-OrderOpenPrice()>(TrailingStop+TrailingStep-1)*pp) {
di=OrderOpenPrice()-pa-TrailingStop*pp ;
si (OrderStopLoss()==0) sl=OrderOpenPrice()+(TrailingStop-sp+TrailingStep-1)*pp ; sinon sl=0 ;
si (OrderStopLoss() >0) sl=OrderStopLoss() -di ;
si (pa-OrderOpenPrice()>(TrailingStop+TrailingStep-1)*pp) sl=pa-(TrailingStop+TrailingStep-1)*pp ;
si (OrderTakeProfit()>0) tp=OrderTakeProfit()-di ; sinon tp=0 ;
Modifier l'ordre (pa+TrailingStop*pp, sl, tp) ;
}
}
si (OrderType()==OP_SELL) {
pb=MarketInfo(OrderSymbol(), MODE_BID) ;
si (pb-OrderOpenPrice()>(TrailingStop+TrailingStep-1)*pp || OrderStopLoss()==0 || OrderOpenPrice()-pb>(TrailingStop+TrailingStep-1)*pp) {
di=pb-OrderOpenPrice()-TrailingStop*pp ;
si (OrderStopLoss()==0) sl=OrderOpenPrice()-(TrailingStop+TrailingStep-1)*pp ; sinon sl=0 ;
si (OrderStopLoss() >0) sl=OrderStopLoss() +di ;
si (OrderOpenPrice()-pb>(TrailingStop+TrailingStep-1)*pp) sl=pb+(TrailingStop+TrailingStep-1)*pp ;
si (OrderTakeProfit()>0) tp=OrderTakeProfit()+di ; sinon tp=0 ;
Modifier l'ordre (pb-TrailingStop*pp, sl, tp) ;
}
}
}

}

 
granit77:
Et pourquoi ne peut-il pas être généré via WindowExpertName()+".set" ?

comment est-ce possible ? plus de détails

quelle ligne doit être insérée dans le COMPTEUR ?

 
vitali_yv:

Les gars, veuillez m'indiquer comment coder toutes les combinaisons uniques de 5 chiffres de 1 à 7, sachant que la position du chiffre n'a pas d'importance, c'est-à-dire 12345 = 54321 = 21345 =... Mais chaque chiffre de la combinaison ne peut apparaître qu'une seule fois, c'est-à-dire : 12345 - ok, et 12341 - ne convient pas.

Merci.

stupidement devant la tête avec cinq boucles

pour (a=1 ; a<7 ; a++)

pour (b=1 ; b<7 ; b++)

pour (c=1 ; c<7 ; c++)

....

si (a==b || a==c || a==d || a==e || b==c || b==d || ....) continuez ;

sinon imprimer ;


Dans une autre variante plus civilisée, utilisez deux tableaux. C'est le tableau A [b[]],

où b[] sont les indices du tableau A.

 
granit77:
Pourquoi ne peut-elle pas être générée via WindowExpertName()+".set" ?
Nous obtiendrons le nom du COMPTEUR, mais qu'en est-il du NOM ??.set,
 
string _comment=WindowExpertName();//получаем имя советника, в котором прописана эта строка, допустим, Ilan77
string SetFileName=_comment+".set";//получаем в строковую переменную название set-файла этого советника,"Ilan77.set"  
 
granit77:

Pourquoi se donner cette peine quand on peut déclarer le nom du fichier de paramètres dans le fichier externe...
 
granit77:

C'est ainsi que vous donnez (set) le nom du fichier .set.

Mais comment faire pour qu'il indique à l'écran avec quel .set il travaille actuellement ?

Disons que vous avez 10 ensembles de .set avec des noms différents et que vous voulez voir quel .set est en cours.