Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
È un peccato non avere la funzione depo e profitto solo per me
dà 1.#INF.
Servicedesk ha già scritto...
e non si può mettere uno zero dopo il punto in questo modo.
Non importa come si scrive, è sempre 1.#INF.
Non sembra fare alcuna differenza se è 10. o 10.0.
Non importa come si scrive, è sempre 1.#INF.
Non sembra fare alcuna differenza 10. o 10.0.
Ho appena controllato l'espressione.
Non dà un errore, funziona bene.
Ho appena controllato l'espressione.
nessun errore, tutto funziona bene.
Certo che va bene e andrà bene!
Sto usando due librerie.... Non descriverò l'intera situazione.
Certo che va bene e andrà bene!
Ho due librerie in use.... Non descriverò l'intera situazione.
Allora perché chiedere perché c'è un errore, non c'è nessun errore nell'espressione che hai dato come esempio, l'errore deve essere in qualcos'altro.
Non stavo chiedendo).
Allora qual è il significato del tuo post
Allora qual è il significato del tuo post
Dove hai visto la domanda? )))
Ho deciso di testare una strategia. Ma in qualche modo l'Expert Advisor ha iniziato a comportarsi stranamente nel tester.
Volevo usarlo per lunghi periodi. Anche se l'algoritmo è quasi scalper. ;)
Così ho deciso di controllare i dati che arrivano per inserire l'Expert Advisor.
Ho iniziato un Expert Advisor senza pretese
input bool File=true;
MqlTradeRequest mReq;
MqlTradeResult mRez;
int handle1,handle2;
double iBuffer1[],iBu1[];
double iBuffer2[],iBu2[];
double vol[22],OTS;
MqlDateTime newT,oldT;
datetime newTT,oldTT;
string FName;
int hF;//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//--------------Set default vaules for all new order requests
mReq.action=TRADE_ACTION_DEAL;
mReq.magic=777;
mReq.symbol=Symbol(); // Trade symbol
mReq.deviation=3; // Maximal possible deviation from the requested price
mReq.type_filling=ORDER_FILLING_AON; // Order execution type
mReq.type_time=ORDER_TIME_GTC; // Order execution time
mReq.comment="MAMASKHA_"+IntegerToString(PeriodSeconds()/60,2);
//----------------------- Set Volume pi
Print ("----- Start init ---");
oldTT=TimeCurrent()+51;TimeToStruct(oldTT,oldT);
oldTT-=oldT.hour; oldTT-=oldT.min;
printf("%02d.%02d.%4d %2d:%2d %3d",oldT.day,oldT.mon,
oldT.year,oldT.hour,oldT.min,
SymbolInfoInteger(Symbol(),SYMBOL_TRADE_STOPS_LEVEL));
StringConcatenate(FName,mReq.comment,"_",oldT.year,"x",oldT.mon,"x",
oldT.day,"_",oldT.hour,"_",oldT.min,".csv");
if (File) {hF=FileOpen(FName, FILE_WRITE|FILE_CSV|FILE_COMMON);
if (hF<-1) Print ("Ошибка открытия файла ",FName," ",
GetLastError());
if (File) FileWrite(hF,oldT.day,oldT.mon,
oldT.year,oldT.hour,oldT.min,"I"
);
Print ("Start on ",FName);
}
Print ("Start ",mReq.comment);
return(0);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
if (File) FileClose(hF);
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
bool poz=true;
int i,per=PeriodSeconds();
MqlTick tick;//------------------
if(!SymbolInfoTick(Symbol(),tick))
{
Print("Failed to get Symbol info!",per);
return;
}
newTT=tick.time;
if(newTT<=oldTT+per+1)
{if (diskret)return;}
else
{
MqlRates rates[];
int copied=CopyRates(Symbol(),0,0,1,rates);
if(copied<=0)
Print("Ошибка копирования ценовых данных ",GetLastError());
else oldTT=rates[0].time;
TimeToStruct(oldTT,oldT);
printf("%02d.%02d.%4d %2d:%2d",oldT.day,oldT.mon,
oldT.year,oldT.hour,oldT.min);
TimeToStruct(newTT,newT);
printf(" New %02d.%02d.%4d %2d:%2d",newT.day,newT.mon,
newT.year,newT.hour,newT.min);
if (File) FileWrite(hF,oldT.day,oldT.mon,
oldT.year,oldT.hour,oldT.min,"I",
tick.ask,tick.bid,tick.last,tick.volume);
}
return;
}
e ho ottenuto uno strano registro. Chi può dirmi la ragione per il salto dei periodi di dati?
E un'altra cosa - il file che deve essere creato (xp2sp) nella directory non viene rilevato.
Per favore, chiarisci, non guardo MT5 da molto tempo e sono completamente perso...
:(