Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Es ist schade, dass ich die Depot- und Gewinnfunktion nicht für mich habe.
gibt 1.#INF.
Servicedesk hat bereits geschrieben...
und man kann keine Null nach dem Punkt einfügen wie hier.
Egal wie man es schreibt, es heißt immer noch 1.#INF.
Es scheint keinen Unterschied zu machen, ob es 10. oder 10.0 ist.
Egal wie man es schreibt, es heißt immer noch 1.#INF.
Es scheint keinen Unterschied zu machen, ob 10. oder 10.0.
Ich habe den Ausdruck gerade überprüft.
Es gibt keine Fehlermeldung, es funktioniert einwandfrei.
Ich habe gerade den Ausdruck überprüft.
kein Fehler, alles funktioniert einwandfrei.
Natürlich ist es gut und es wird gut werden!
Ich verwende zwei Bibliotheken.... Ich werde nicht die ganze Situation beschreiben.
Natürlich ist es gut und es wird gut werden!
Ich habe zwei Bibliotheken in use.... Ich werde nicht die ganze Situation beschreiben.
Warum fragen Sie dann, warum es einen Fehler gibt, es gibt keinen Fehler in dem Ausdruck, den Sie als Beispiel angegeben haben, der Fehler muss in etwas anderem liegen.
Ich habe nicht danach gefragt).
Was ist dann der Sinn Ihres Beitrags?
Was ist dann der Sinn Ihres Beitrags?
Wo haben Sie die Frage gesehen? )))
Ich habe beschlossen, eine Strategie zu testen. Aber irgendwie verhielt sich der Expert Advisor in der Testversion seltsam.
Ich wollte es über einen längeren Zeitraum nutzen. Obwohl der Algorithmus fast scalper ist. ;)
Also beschloss ich, die Daten zu überprüfen, die für die Eingabe des Expert Advisors benötigt werden.
Ich habe einen unprätentiösen Expert Advisor gestartet
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;
}
und erhielt ein seltsames Protokoll. Wer kann mir den Grund für das Überspringen von Datenzeiträumen nennen?
Und noch etwas - die Datei, die im Verzeichnis erstellt werden muss (xp2sp), wird nicht erkannt.
Bitte klären Sie mich auf, ich habe mich schon lange nicht mehr mit MT5 beschäftigt und bin völlig ratlos...
:(