Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Où puis-je trouver des informations sur la manière de définir un seuil de perte ?
J'ai besoin, disons, d'un arrêt à la barre basse 2.
https://book.mql4.com/ru/trading/index
Il y a maintenant plusieurs défis à relever
1. Le seuil de rentabilité lorsqu'un certain bénéfice est atteint
2. chaluter par des fractales ou un chiffre fixe
Il y a maintenant plusieurs défis à relever
1. Le seuil de rentabilité lorsqu'un certain bénéfice est atteint
2. chaluter par des fractales ou un chiffre fixe
Commencez à écrire et posez des questions au fur et à mesure...
Vendre . Et aucun Trall ou Breakeven ne vous aidera. Et cela ne servira jamais si vous n'exploitez aucune régularité, comme dans ce cas.
Vous le ferez. Et aucun chalut ou seuil de rentabilité ne vous aidera. Et cela ne servira jamais si vous n'exploitez aucune régularité comme dans ce cas.
Il le fera. Mais l'homme apprend à programmer, et ce n'est pas si mal !
Il le fera. Mais on apprend à programmer, et ce n'est pas une mauvaise chose !
Oui, je suis d'accord. Félicitations au mec pour ça. Il est difficile d'apprendre à partir de zéro au début - je sais ce que c'est -)-)-)
Il le fera. Mais on apprend à programmer, et ce n'est pas une mauvaise chose !
Oui, je veux vraiment apprendre à programmer.
https://book.mql4.com/ru/trading/index
Des livres, c'est génial. Mais, par exemple, j'ai trouvé un conseiller qui fait généralement ce dont j'ai besoin.
//+------------------------------------------------------------------+
//| TrailingStopLight.mq4 |
//| Copyright © 2011, Khlystov Vladimir.
//| http://cmillion.narod.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2011, cmillion@narod.ru"
#lien de propriété "http://cmillion.narod.ru"
#property show_inputs
//--------------------------------------------------------------------
extern int Stoploss = 0, //stopploss, si 0, reste inchangé
Bénéfice net = 0 ; //le bénéfice net, s'il est égal à 0, reste inchangé.
extern int TrailingStop = 20 ; //longueur de tramp, si 0, alors pas de trailing stop
extern int StepTrall = 0 ; //pas de marche - déplacez le StopLoss pas plus près que StepTrall
extern int NoLoss = 10, //transfert vers le seuil de rentabilité à un nombre spécifié de points de profit, si 0, alors pas de transfert vers le seuil de rentabilité
MinProfitNoLoss = 0 ; //profit minimum pour que le transfert atteigne le seuil de rentabilité.
//--------------------------------------------------------------------
int STOPLEVEL,TimeBar ;
//--------------------------------------------------------------------
int init()
{
}
//--------------------------------------------------------------------
int deinit()
{
ObjectDelete("SLb") ;
ObjectDelete("SLs") ;
}
//--------------------------------------------------------------------
int start()
{
//while(!IsStopped())
{
//RefreshRates() ;
STOPLEVEL=MarketInfo(Symbol(),MODE_STOPLEVEL) ;
double OSL,OTP,OOP,StLo,SL,TP ;
double Profit,ProfitS,ProfitB,LB,LS,NLb,NLs,price_b,price_s,OL,sl ;
int b,s,OT,OMN ;
for (int i=OrdersTotal()-1 ; i>=0 ; i--)
{
si (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
OMN = OrderMagicNumber() ;
si (OrderSymbol() == Symbol())
{
OOP = NormalizeDouble(OrderOpenPrice(),Digits) ;
OT = OrderType() ;
OL = OrderLots() ;
si (OT==OP_BUY)
{
prix_b = prix_b+OOP*OL ;
b++ ; LB+= OL ;
ProfitB+=OrderProfit()+OrderSwap()+OrderCommission() ;
}
si (OT==OP_SELL)
{
prix_s = prix_s+OOP*OL ;
s++;LS+= OL ;
ProfitS+=OrderProfit()+OrderSwap()+OrderCommission() ;
}
}
}
}
ObjectDelete("SLb") ;
ObjectDelete("SLs") ;
si (b>0)
{
NLb = NormalizeDouble(price_b/LB,Digits) ;
ObjectCreate("SLb",OBJ_ARROW,0,Time[0],NLb,0,0,0) ;
ObjectSet ("SLb",OBJPROP_ARROWCODE,6) ;
ObjectSet ("SLb",OBJPROP_COLOR,Blue) ;
}
si (s>0)
{
NLs = NormalizeDouble(price_s/LS,Digits) ;
ObjectCreate("SLs",OBJ_ARROW,0,Time[0],NLs,0,0,0) ;
ObjectSet ("SLs",OBJPROP_ARROWCODE,6) ;
ObjectSet ("SLs",OBJPROP_COLOR,Red) ;
}
int OTicket ;
pour (i=0 ; i<OrdersTotal() ; i++)
{
si (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
si (OrderSymbol()==Symbol())
{
OT = OrderType() ;
OSL = NormalizeDouble(OrderStopLoss(),Digits) ;
OTP = NormalizeDouble(OrderTakeProfit(),Digits) ;
OOP = NormalizeDouble(OrderOpenPrice(),Digits) ;
SL=OSL ; TP=OTP ;
si (OT==OP_BUY)
{
b++ ;
si (OSL==0 && Stoploss>=STOPLEVEL && Stoploss!=0)
{
SL = NormalizeDouble(Bid - Stoploss * Point,Digits) ;
}
sinon SL=OSL ;
si (OTP==0 && Takeprofit>=STOPLEVEL && Takeprofit!=0)
{
TP = NormalizeDouble(Ask + Takeprofit * Point,Digits) ;
}
sinon TP=OTP ;
si (NoLoss>=STOPLEVEL && OSL<NLb && NoLoss!=0)
{
Si (OOP<=NLb && NLb!=0 && NLb <= NormalizeDouble(Bid-NoLoss*Point,Digits))
SL = NormalizeDouble(NLb+MinProfitNoLoss*Point,Digits) ;
}
si (TrailingStop>=STOPLEVEL && TrailingStop!=0)
{
StLo = NormalizeDouble(Bid - TrailingStop*Point,Digits) ;
si (StLo>=NLb && NLb!=0) si (StLo > OSL) SL = StLo ;
}
si (SL != OSL || TP != OTP)
{
OTicket=OrderTicket() ;
if (!OrderModify(OTicket,OOP,SL,TP,0,White)) Print("OrderModify Error ",GetLastError()) ;
}
}
si (OT==OP_SELL)
{
s++ ;
si (OSL==0 && Stoploss>=STOPLEVEL && Stoploss!=0)
{
SL = NormalizeDouble(Ask + Stoploss * Point,Digits)
}
sinon SL=OSL ;
si (OTP==0 && Takeprofit>=STOPLEVEL && Takeprofit!=0)
{
TP = NormalizeDouble(Bid - Takeprofit * Point,Digits) ;
}
sinon TP=OTP ;
si (NoLoss>=STOPLEVEL && (OSL>NLs || OSL==0) && NoLoss!=0)
{
si (OOP>=NLs && NLs!=0 && NLs >= NormalizeDouble(Ask+NoLoss*Point,Digits))
SL = NormalizeDouble(NLs-MinProfitNoLoss*Point,Digits) ;
}
si (TrailingStop>=STOPLEVEL && TrailingStop!=0)
{
StLo = NormalizeDouble(Ask + TrailingStop*Point,Digits) ;
si (StLo<=NLs && NLs!=0) si (StLo < OSL || OSL==0) SL = StLo ;
}
si ((SL != OSL || OSL==0) || TP != OTP)
{
OTicket=OrderTicket() ;
if (!OrderModify(OTicket,OOP,SL,TP,0,White)) Print("OrderModify Error ",GetLastError()) ;
}
}
}
}
}
si (IsTesting())
{
si (TimeBar!=Time[0])
{
OrderSend(Symbol(),OP_BUY,1,NormalizeDouble(Ask,Digits),3,0,0, "test",0,0,Blue) ;
OrderSend(Symbol(),OP_SELL,1,NormalizeDouble(Bid,Digits),3,0,0, "test",0,0,Red) ;
TimeBar=Time[0] ;
}
}
//Sleep(1000) ;
}
}
//--------------------------------------------------------------------
Pourrait-il (théoriquement) être inséré dans le mien ?
Des livres, c'est génial. Mais, par exemple, j'ai trouvé un conseiller qui fait généralement ce dont j'ai besoin.
Peut-il (théoriquement) être inséré dans le mien ?
Tout d'abord, apprenez à insérer du code avec un bouton SRC!
Que "les livres sont géniaux" doit encore être démontré ! En attendant, vous envisagez de sortir sur des indices. Et "sans travail...", vous connaissez probablement le résultat ou vous allez le découvrir, et le temps presse ! Sans connaissance, on ne va nulle part !