affinamento della strategia del consulente - pagina 4 12345678 Nuovo commento Алексей Тарабанов 2013.05.29 08:09 #31 IRIP: Dove posso leggere come impostare uno stop loss?Ho bisogno, diciamo, di uno stop alla barra bassa 2 https://book.mql4.com/ru/trading/index Irip Irip 2013.05.29 08:17 #32 Grazie Irip Irip 2013.05.29 13:38 #33 Ora ci sono diverse sfide1. Il pareggio quando si raggiunge un certo profitto2. pesca a strascico per frattali o una figura fissa ktest0 2013.05.29 14:31 #34 IRIP: Ora ci sono diverse sfide1. Il pareggio quando si raggiunge un certo profitto2. pesca a strascico per frattali o una figura fissa Inizia a scrivere e fai domande man mano che vai avanti... Роман 2013.05.29 15:32 #35 IRIP: if ( ( (Low[0]>Low[1]) && (Low[1]<Low[2]) && (Low[1]<Low[2]) && (High[1]<High[2]) ) BuyOp=true;if ( ( (High[0]<High[1]) && (Low[0]<Low[1]) && (High[1]>High[2]) && (Open[0]<Close[1]) ) SellOp=true; Vendere . E nessun Trall o Breakeven vi aiuterà. E non servirà mai se non si sfrutta nessuna regolarità, come in questo caso. ktest0 2013.05.29 15:39 #36 DYN: Lo farai. E nessuno strascico o break-even vi aiuterà. E non sarà mai utile se non si sfrutta nessuna regolarità come in questo caso. Lo farà. Ma l'uomo sta imparando a programmare, e non è affatto male! Роман 2013.05.29 17:54 #37 ktest0: Lo farà. Ma si impara a programmare, e non è una brutta cosa! Sì, sono d'accordo. Complimenti al tizio per questo. È difficile imparare da zero all'inizio - so com'è -)-)-) Irip Irip 2013.05.30 03:59 #38 ktest0: Lo farà. Ma si impara a programmare, e non è una brutta cosa! Sì, voglio davvero imparare a programmare. Irip Irip 2013.05.30 05:14 #39 tara: https://book.mql4.com/ru/trading/index Libri, è fantastico. Ma, per esempio, ho trovato un consulente che generalmente fa quello di cui ho bisogno//+------------------------------------------------------------------+//| TrailingStopLight.mq4 |//| Copyright © 2011, Khlystov Vladimir |//| http://cmillion.narod.ru |//+------------------------------------------------------------------+#property copyright "Copyright © 2011, cmillion@narod.ru"#proprietà link "http://cmillion.narod.ru"#proprietà show_inputs//--------------------------------------------------------------------extern int Stoploss = 0, //stopploss, se 0, rimane invariatoTakeprofit = 0; //takeprofit, se 0, rimane invariatoextern int TrailingStop = 20; //lunghezza del tramp, se 0, allora nessun trailing stopextern int StepTrall = 0; //tramp step - sposta StopLoss non più vicino a StepTrallextern int NoLoss = 10, //transfer to Breakeven ad un numero specificato di punti di profitto, se 0, allora nessun trasferimento al BreakevenMinProfitNoLoss = 0; /profitto minimo per il trasferimento a pareggio//--------------------------------------------------------------------int STOPLEVEL,TimeBar;//--------------------------------------------------------------------int init(){}//--------------------------------------------------------------------int deinit(){ObjectDelete("SLb");ObjectDelete("SLs");}//--------------------------------------------------------------------int start(){//while(!IsStopped()){//RefreshRates();STOPLEVEL=MarketInfo(Symbol(),MODE_STOPLEVEL);doppio OSL, OTP, OOP, StLo, SL, TP;doppio 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--){se (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){OMN = OrderMagicNumber();se (OrderSymbol() == Symbol()){OOP = NormalizeDouble(OrderOpenPrice(),Digits);OT = OrderType();OL = OrderLots();se (OT==OP_BUY){prezzo_b = prezzo_b+OOP*OL;b++; LB+= OL;ProfitB+=OrderProfit()+OrderSwap()+OrderCommission();}se (OT==OP_SELL){price_s = price_s+OOP*OL;s++;LS+= OL;ProfitS+=OrderProfit()+OrderSwap()+OrderCommission();}}}}ObjectDelete("SLb");ObjectDelete("SLs");se (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);}se (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;per (i=0; i<OrdersTotal(); i++){se (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)){se (OrderSymbol()==Symbol()){OT = OrderType();OSL = NormalizeDouble(OrderStopLoss(),Digits);OTP = NormalizeDouble(OrderTakeProfit(),Digits);OOP = NormalizeDouble(OrderOpenPrice(),Digits);SL=OSL; TP=OTP;se (OT==OP_BUY){b++;if (OSL==0 && Stoploss>=STOPLEVEL && Stoploss!=0){SL = NormalizeDouble(Bid - Stoploss * Point,Digits);}altrimenti SL=OSL;if (OTP==0 && Takeprofit>=STOPLEVEL && Takeprofit!=0){TP = NormalizeDouble(Ask + Takeprofit * Point,Digits);}altrimenti TP=OTP;se (NoLoss>=STOPLEVEL && OSL<NLb && NoLoss!=0){if (OOP<=NLb && NLb!=0 && NLb <= NormalizeDouble(Bid-NoLoss*Point,Digits))SL = NormalizeDouble(NLb+MinProfitNoLoss*Point,Digits);}se (TrailingStop>=STOPLEVEL && TrailingStop!=0){StLo = NormalizeDouble(Bid - TrailingStop*Point,Digits);se (StLo>=NLb && NLb!=0) se (StLo > OSL) SL = StLo;}se (SL != OSL || TP != OTP){OTicket=OrderTicket();se (!OrderModify(OTicket,OOP,SL,TP,0,White)) Print("OrderModify Error ",GetLastError());}} se (OT==OP_SELL){s++;if (OSL==0 && Stoploss>=STOPLEVEL && Stoploss!=0){SL = NormalizeDouble(Ask + Stoploss * Point,Digits)}altrimenti SL=OSL;if (OTP==0 && Takeprofit>=STOPLEVEL && Takeprofit!=0){TP = NormalizeDouble(Bid - Takeprofit * Point,Digits);}altrimenti TP=OTP;se (NoLoss>=STOPLEVEL && (OSL>NLs || OSL==0) && NoLoss!=0){se (OOP>=NLs && NLs!=0 && NLs >= NormalizeDouble(Ask+NoLoss*Point,Digits))SL = NormalizeDouble(NLs-MinProfitNoLoss*Point,Digits);}se (TrailingStop>=STOPLEVEL && TrailingStop!=0){StLo = NormalizeDouble(Ask + TrailingStop*Point,Digits);se (StLo<=NLs && NLs!=0) if (StLo < OSL || OSL==0) SL = StLo;}se ((SL != OSL || OSL==0) || TP != OTP){OTicket=OrderTicket();se (!OrderModify(OTicket,OOP,SL,TP,0,White)) Print("OrderModify Error ",GetLastError());}}}}}se (IsTesting()){se (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);}}//--------------------------------------------------------------------Potrebbe (teoricamente) essere inserito nel mio? strategy refinement of the Tutte le domande dei Qualsiasi domanda da principiante, Boris 2013.05.30 07:35 #40 IRIP: Libri, è fantastico. Ma, per esempio, ho trovato un consulente che generalmente fa quello di cui ho bisogno//+------------------------------------------------------------------+ //| TrailingStopLight.mq4 | //| Copyright © 2011, Khlystov Vladimir | //| http://cmillion.narod.ru | //+------------------------------------------------------------------+ #property copyright "Copyright © 2011, cmillion@narod.ru" #property link "http://cmillion.narod.ru" #property show_inputs //-------------------------------------------------------------------- extern int Stoploss = 0,//стоплосс, если 0 то не изменяется Takeprofit = 0;//тейкпрофит, если 0 то не изменяется extern int TrailingStop = 20;//длинна тралла, если 0 то нет тралла extern int StepTrall = 0;//шаг тралла - перемещать стоплосс не ближе чем StepTrall extern int NoLoss = 10,//перевод в безубыток при заданном кол-ве пунктов прибыли, если 0 то нет перевода в безубыток MinProfitNoLoss = 0; //минимальная прибыль при переводе вбезубыток //-------------------------------------------------------------------- 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--) { if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { OMN = OrderMagicNumber(); if (OrderSymbol() == Symbol()) { OOP = NormalizeDouble(OrderOpenPrice(),Digits); OT = OrderType(); OL = OrderLots(); if (OT==OP_BUY) { price_b = price_b+OOP*OL; b++; LB+= OL; ProfitB+=OrderProfit()+OrderSwap()+OrderCommission(); } if (OT==OP_SELL) { price_s = price_s+OOP*OL; s++;LS+= OL; ProfitS+=OrderProfit()+OrderSwap()+OrderCommission(); } } } } ObjectDelete("SLb"); ObjectDelete("SLs"); if (b>0) { NLb = NormalizeDouble(price_b/LB,Digits); ObjectCreate("SLb",OBJ_ARROW,0,Time[0],NLb,0,0,0,0); ObjectSet ("SLb",OBJPROP_ARROWCODE,6); ObjectSet ("SLb",OBJPROP_COLOR, Blue); } if (s>0) { NLs = NormalizeDouble(price_s/LS,Digits); ObjectCreate("SLs",OBJ_ARROW,0,Time[0],NLs,0,0,0,0); ObjectSet ("SLs",OBJPROP_ARROWCODE,6); ObjectSet ("SLs",OBJPROP_COLOR, Red); } int OTicket; for (i=0; i<OrdersTotal(); i++) { if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) { if (OrderSymbol()==Symbol()) { OT = OrderType(); OSL = NormalizeDouble(OrderStopLoss(),Digits); OTP = NormalizeDouble(OrderTakeProfit(),Digits); OOP = NormalizeDouble(OrderOpenPrice(),Digits); SL=OSL;TP=OTP; if (OT==OP_BUY) { b++; if (OSL==0 && Stoploss>=STOPLEVEL && Stoploss!=0) { SL = NormalizeDouble(Bid - Stoploss * Point,Digits); } else SL=OSL; if (OTP==0 && Takeprofit>=STOPLEVEL && Takeprofit!=0) { TP = NormalizeDouble(Ask + Takeprofit * Point,Digits); } else TP=OTP; if (NoLoss>=STOPLEVEL && OSL<NLb && NoLoss!=0) { if (OOP<=NLb && NLb!=0 && NLb <= NormalizeDouble(Bid-NoLoss*Point,Digits)) SL = NormalizeDouble(NLb+MinProfitNoLoss*Point,Digits); } if (TrailingStop>=STOPLEVEL && TrailingStop!=0) { StLo = NormalizeDouble(Bid - TrailingStop*Point,Digits); if (StLo>=NLb && NLb!=0) if (StLo > OSL) SL = StLo; } if (SL != OSL || TP != OTP) { OTicket=OrderTicket(); if (!OrderModify(OTicket,OOP,SL,TP,0,White)) Print("Error OrderModify ",GetLastError()); } } if (OT==OP_SELL) { s++; if (OSL==0 && Stoploss>=STOPLEVEL && Stoploss!=0) { SL = NormalizeDouble(Ask + Stoploss * Point,Digits); } else SL=OSL; if (OTP==0 && Takeprofit>=STOPLEVEL && Takeprofit!=0) { TP = NormalizeDouble(Bid - Takeprofit * Point,Digits); } else TP=OTP; if (NoLoss>=STOPLEVEL && (OSL>NLs || OSL==0) && NoLoss!=0) { if (OOP>=NLs && NLs!=0 && NLs >= NormalizeDouble(Ask+NoLoss*Point,Digits)) SL = NormalizeDouble(NLs-MinProfitNoLoss*Point,Digits); } if (TrailingStop>=STOPLEVEL && TrailingStop!=0) { StLo = NormalizeDouble(Ask + TrailingStop*Point,Digits); if (StLo<=NLs && NLs!=0) if (StLo < OSL || OSL==0) SL = StLo; } if ((SL != OSL || OSL==0) || TP != OTP) { OTicket=OrderTicket(); if (!OrderModify(OTicket,OOP,SL,TP,0,White)) Print("Error OrderModify ",GetLastError()); } } } } } if (IsTesting()) { if (TimeBar!=Time[0]) { OrderSend(Symbol(),OP_BUY,1,NormalizeDouble(Ask,Digits),3,0,0,"тест",0,0,Blue); OrderSend(Symbol(),OP_SELL,1,NormalizeDouble(Bid,Digits),3,0,0,"тест",0,0,Red); TimeBar=Time[0]; } } //Sleep(1000); } } //-------------------------------------------------------------------- Può (teoricamente) essere inserito nel mio? Per prima cosa, imparate come inserire il codice con un pulsante SRC! Che "i libri sono grandi" deve essere ancora dimostrato! Nel frattempo, stai pensando di uscire con dei suggerimenti. E "senza lavoro...", probabilmente conosci il risultato o lo scoprirai, e il tempo sta per scadere! Senza conoscenza solo al nulla! [ARCHIVIO]Qualsiasi domanda da principiante, Proposta agli organizzatori del [Qualsiasi domanda da principiante, 12345678 Nuovo commento
Dove posso leggere come impostare uno stop loss?
Ho bisogno, diciamo, di uno stop alla barra bassa 2
https://book.mql4.com/ru/trading/index
Ora ci sono diverse sfide
1. Il pareggio quando si raggiunge un certo profitto
2. pesca a strascico per frattali o una figura fissa
Ora ci sono diverse sfide
1. Il pareggio quando si raggiunge un certo profitto
2. pesca a strascico per frattali o una figura fissa
Inizia a scrivere e fai domande man mano che vai avanti...
Vendere . E nessun Trall o Breakeven vi aiuterà. E non servirà mai se non si sfrutta nessuna regolarità, come in questo caso.
Lo farai. E nessuno strascico o break-even vi aiuterà. E non sarà mai utile se non si sfrutta nessuna regolarità come in questo caso.
Lo farà. Ma l'uomo sta imparando a programmare, e non è affatto male!
Lo farà. Ma si impara a programmare, e non è una brutta cosa!
Sì, sono d'accordo. Complimenti al tizio per questo. È difficile imparare da zero all'inizio - so com'è -)-)-)
Lo farà. Ma si impara a programmare, e non è una brutta cosa!
Sì, voglio davvero imparare a programmare.
https://book.mql4.com/ru/trading/index
Libri, è fantastico. Ma, per esempio, ho trovato un consulente che generalmente fa quello di cui ho bisogno
//+------------------------------------------------------------------+
//| TrailingStopLight.mq4 |
//| Copyright © 2011, Khlystov Vladimir |
//| http://cmillion.narod.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2011, cmillion@narod.ru"
#proprietà link "http://cmillion.narod.ru"
#proprietà show_inputs
//--------------------------------------------------------------------
extern int Stoploss = 0, //stopploss, se 0, rimane invariato
Takeprofit = 0; //takeprofit, se 0, rimane invariato
extern int TrailingStop = 20; //lunghezza del tramp, se 0, allora nessun trailing stop
extern int StepTrall = 0; //tramp step - sposta StopLoss non più vicino a StepTrall
extern int NoLoss = 10, //transfer to Breakeven ad un numero specificato di punti di profitto, se 0, allora nessun trasferimento al Breakeven
MinProfitNoLoss = 0; /profitto minimo per il trasferimento a pareggio
//--------------------------------------------------------------------
int STOPLEVEL,TimeBar;
//--------------------------------------------------------------------
int init()
{
}
//--------------------------------------------------------------------
int deinit()
{
ObjectDelete("SLb");
ObjectDelete("SLs");
}
//--------------------------------------------------------------------
int start()
{
//while(!IsStopped())
{
//RefreshRates();
STOPLEVEL=MarketInfo(Symbol(),MODE_STOPLEVEL);
doppio OSL, OTP, OOP, StLo, SL, TP;
doppio 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--)
{
se (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
OMN = OrderMagicNumber();
se (OrderSymbol() == Symbol())
{
OOP = NormalizeDouble(OrderOpenPrice(),Digits);
OT = OrderType();
OL = OrderLots();
se (OT==OP_BUY)
{
prezzo_b = prezzo_b+OOP*OL;
b++; LB+= OL;
ProfitB+=OrderProfit()+OrderSwap()+OrderCommission();
}
se (OT==OP_SELL)
{
price_s = price_s+OOP*OL;
s++;LS+= OL;
ProfitS+=OrderProfit()+OrderSwap()+OrderCommission();
}
}
}
}
ObjectDelete("SLb");
ObjectDelete("SLs");
se (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);
}
se (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;
per (i=0; i<OrdersTotal(); i++)
{
se (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
{
se (OrderSymbol()==Symbol())
{
OT = OrderType();
OSL = NormalizeDouble(OrderStopLoss(),Digits);
OTP = NormalizeDouble(OrderTakeProfit(),Digits);
OOP = NormalizeDouble(OrderOpenPrice(),Digits);
SL=OSL; TP=OTP;
se (OT==OP_BUY)
{
b++;
if (OSL==0 && Stoploss>=STOPLEVEL && Stoploss!=0)
{
SL = NormalizeDouble(Bid - Stoploss * Point,Digits);
}
altrimenti SL=OSL;
if (OTP==0 && Takeprofit>=STOPLEVEL && Takeprofit!=0)
{
TP = NormalizeDouble(Ask + Takeprofit * Point,Digits);
}
altrimenti TP=OTP;
se (NoLoss>=STOPLEVEL && OSL<NLb && NoLoss!=0)
{
if (OOP<=NLb && NLb!=0 && NLb <= NormalizeDouble(Bid-NoLoss*Point,Digits))
SL = NormalizeDouble(NLb+MinProfitNoLoss*Point,Digits);
}
se (TrailingStop>=STOPLEVEL && TrailingStop!=0)
{
StLo = NormalizeDouble(Bid - TrailingStop*Point,Digits);
se (StLo>=NLb && NLb!=0) se (StLo > OSL) SL = StLo;
}
se (SL != OSL || TP != OTP)
{
OTicket=OrderTicket();
se (!OrderModify(OTicket,OOP,SL,TP,0,White)) Print("OrderModify Error ",GetLastError());
}
}
se (OT==OP_SELL)
{
s++;
if (OSL==0 && Stoploss>=STOPLEVEL && Stoploss!=0)
{
SL = NormalizeDouble(Ask + Stoploss * Point,Digits)
}
altrimenti SL=OSL;
if (OTP==0 && Takeprofit>=STOPLEVEL && Takeprofit!=0)
{
TP = NormalizeDouble(Bid - Takeprofit * Point,Digits);
}
altrimenti TP=OTP;
se (NoLoss>=STOPLEVEL && (OSL>NLs || OSL==0) && NoLoss!=0)
{
se (OOP>=NLs && NLs!=0 && NLs >= NormalizeDouble(Ask+NoLoss*Point,Digits))
SL = NormalizeDouble(NLs-MinProfitNoLoss*Point,Digits);
}
se (TrailingStop>=STOPLEVEL && TrailingStop!=0)
{
StLo = NormalizeDouble(Ask + TrailingStop*Point,Digits);
se (StLo<=NLs && NLs!=0) if (StLo < OSL || OSL==0) SL = StLo;
}
se ((SL != OSL || OSL==0) || TP != OTP)
{
OTicket=OrderTicket();
se (!OrderModify(OTicket,OOP,SL,TP,0,White)) Print("OrderModify Error ",GetLastError());
}
}
}
}
}
se (IsTesting())
{
se (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);
}
}
//--------------------------------------------------------------------
Potrebbe (teoricamente) essere inserito nel mio?
Libri, è fantastico. Ma, per esempio, ho trovato un consulente che generalmente fa quello di cui ho bisogno
Può (teoricamente) essere inserito nel mio?
Per prima cosa, imparate come inserire il codice con un pulsante SRC!
Che "i libri sono grandi" deve essere ancora dimostrato! Nel frattempo, stai pensando di uscire con dei suggerimenti. E "senza lavoro...", probabilmente conosci il risultato o lo scoprirai, e il tempo sta per scadere! Senza conoscenza solo al nulla!