[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 4. - pagina 61

 
silatyt:
Trova la linea: #include <strlib.mgh>

e sostituire con: #include <stdlib.mgh>.

E ho sia tale e tale biblioteca. Il secondo è arrivato con l'EA. Ma quando lo compila l'editor non lo vede e dà un errore.

 
E trovare la linea: #include <strlib.mqh>
e sostituire con: #include <stdlib.mqh>.
 
È stato silatyt che ha sbagliato a stampare e ho ripetuto =). Il messaggio di cui sopra è corretto. Errore 'strlib.mqh' - impossibile aprire il file del programma
 
oDin48:
È stato silatyt che ha sbagliato a stampare e ho ripetuto =). Il messaggio di cui sopra è corretto. L'errore è 'strlib.mqh' - impossibile aprire il file del programma

controlla se esiste nella cartella terminal/experts/includes/
 
FAQ:

controllare la sua presenza nella cartella terminal/experts/includes/
Grazie. Problema risolto. Pensavo che dovessero essere messi nelle biblioteche. =)
 

Aiutatemi a inserire correttamente per questo array, le funzioni per spostare sl al pareggio, a un certo profitto in un trade.

extern int tp = 0; // valore di profitto

extern int sl = 0; // valore della perdita

extern int BeginHour = 0; // ora di inizio del trade
extern int EndHour = 0; // ora di fine del trade


extern int lots =0;




int start()
{

//-- Compra il trade. Controlla se non ci sono ordini aperti e il prezzo di chiusura della barra precedente è inferiore al prezzo aperto.
//-- Ordine di acquisto quando il prezzo di acquisto corrente raggiunge il massimo della barra precedente. Periodo di tempo in cui il robot eseguirà il trade.

if (OrdersTotal()==0 && Hour() >= BeginHour && Hour() < EndHour && Close[1]<Open[1] && High[1]<Bid )
OrderSend(Symbol(),OP_BUY,lots,Ask,0,Ask-sl*Point,Ask+tp*Point,"",777,0,Red);


if (OrdersTotal()==0 && Hour() >= BeginHour && Hour() < EndHour && Close[2]<Open[2] && High[2]<Bid )
OrderSend(Symbol(),OP_BUY,lots,Ask,0,Ask-sl*Point,Ask+tp*Point,"",777,0,Red);

//if (OrdersTotal()==0 && Hour() >= BeginHour && Hour() < EndHour&& Close[3]<Open[3] && High[3]<Bid )
// OrderSend(Symbol(),OP_BUY,Ask,0,Ask-sl*Point,Ask+tp*Point,"",777,0,Red);


//-- Sell trade. Controlla se non ci sono ordini aperti e se il prezzo di chiusura della barra precedente è superiore al prezzo aperto.
//-- Ordine di vendita quando il prezzo Bid della barra corrente raggiunge il minimo della barra precedente. Periodo di tempo in cui il robot eseguirà il trade.

if (OrdersTotal()==0 && Hour() >= BeginHour && Hour() < EndHour && Close[1]>Open[1] && Low[1]>Bid )
OrderSend(Symbol(),OP_SELL,lots,Bid,0,Ask+sl*Point,Ask-tp*Point,"",777,0,Red);

if (OrdersTotal()==0 && Hour() >= BeginHour && Hour() < EndHour && Close[2]>Open[2] && Low[2]>Bid )
OrderSend(Symbol(),OP_SELL,lots,Bid,0,Ask+sl*Point,Ask-tp*Point,"",777,0,Red);

//if (OrdersTotal()==0 && Hour() >= BeginHour && Hour() < EndHour && Close[3]>Open[3] && Low[3]>Bid )
//OrderSend(Symbol(),OP_SELL,lots,Bid,0,Ask+sl*Point,Ask-tp*Point,"",777,0,Red);

//----

//----


return(0);
}
 

Ciao, puoi dirmi come trovare la parte intera.

double PriceHigh = iHigh   (NULL,PERIOD_D1,1); // присвоение переменной максимального значение цены с 1 бара
double PriceLow  = iLow    (NULL,PERIOD_D1,1);  // присвоение переменной минимального значение цены с 1 бара
teloCendle = (PriceHigh-PriceLow); // находим общий ценовой диапозон в пунктах

Ottengo un numero frazionario, "0,0053 per esempio", ma come faccio ad andare a solo 53? per trovare il volume in pip della candela precedente...

 
frixer:

Ciao, puoi dirmi come trovare la parte intera.

Ottengo un numero frazionario, "0,0053 per esempio", ma come faccio ad andare a solo 53? per trovare il volume in pip della candela precedente...

Ho provato a moltiplicare per 10.000 non funziona, sarei grato in anticipo
 
frixer:

Ciao, puoi dirmi come trovare la parte intera.

Ottengo un numero frazionario, "0,0053 per esempio", ma come faccio ad andare a solo 53? per trovare il volume in pip della candela precedente...

double PriceHigh = iHigh(NULL,PERIOD_D1,1); // присвоение переменной максимального значение цены с 1 бара
double PriceLow  = iLow(NULL,PERIOD_D1,1);  // присвоение переменной минимального значение цены с 1 бара
int teloCendle = (PriceHigh-PriceLow) * 10000; // находим общий ценовой диапозон в пунктах
 
Zhunko:


Grazie naturalmente, ma ho provato poi dopo il decimale rimane decimale, e arrotondato come non è abbastanza intelligente ;(
Motivazione: