[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 281

 
 
DDFedor >> :

Nein... keine Notwendigkeit für Bremsen... Bei meinen Recherchen bin ich nicht darauf gestoßen, also habe ich gefragt... Schleifen, Ausrutscher und Verzögerungen sind nicht die Lösung... Danke!

Übrigens, wenn die Berechnung sehr lang ist, können Sie das Durchlaufen bestimmter Phasen des Codes visualisieren, indem Sie die Farbe des Objekts ändern. Das ist zwar cool, aber es braucht trotzdem Ressourcen für die Visualisierung; die langsamsten Funktionen sind die Arbeit mit Dateien und Funktionen mit Objekten.

 
granit77 писал(а) >>
Blinkender Text.

Großartig! >> Danke!

 

Kann mir jemand ein Beispiel für einen Code zum Lesen aus einer *.csv-Datei in ein 1D/2D-Array in MQL5 zeigen?

Es gab keine Probleme beim Schreiben.

Ich danke Ihnen.

Es wäre toll, ein Beispiel mit Klassen zu haben.

 
joo >> :

Kann mir jemand ein Beispiel für einen Code zum Lesen aus einer *.csv-Datei in ein 1D/2D-Array in MQL5... zeigen?

>>: >>:::::::::::::::::::::::::::::::::::::.

Was für ein "Neuling", komm schon :))) Es ist an der Zeit, einen eigenen Thread für die "Mittelschicht" zu eröffnen.

 
Oh, Mann, das wird ja immer verrückter. :) -Während der Arbeit mit Beta-Produkten. Davor hatte ich mit Arrays zu kämpfen. Ich habe ein Upgrade durchgeführt - es hat funktioniert...
 

Für MQL4:

void start()
{
double m[]={1.1,2.2,3.3,4.4,5.5,6.6};//Массив источник
double m_[6]; //Массив приемник

ArrayInitialize(m_,0);

string str;
int handle;
//=======Запись в массив============
handle=FileOpen("p.csv", FILE_CSV|FILE_WRITE,";");
//Цикл записи строчек в файл
for(int i=0; i<6; i++)
{
str=DoubleToStr(m [i], 8);
FileWrite (handle,str);
}
FileClose(handle);
//==================================

//========Чтение из файла===========
FileOpen("p.csv",FILE_CSV|FILE_READ,";");
int cnt;
while(FileIsEnding(handle)!=true)
{
m_[cnt]=StrToDouble(FileReadString(handle));
cnt++;
}
FileClose(handle);
//==================================

//Посмотрим, что там записалось в массив?
for(i=0;i<6;i++)
{
Alert(m_[i]);
}
}

Und für MQL5 müssen Sie das tun:

void OnStart()
{
double m[]={1.1,2.2,3.3,4.4,5.5,6.6};//Массив источник
double m_[6]; //Массив приемник

ArrayInitialize(m_,0);

string str;
int handle;
//=======Запись в массив============
handle=FileOpen("p.csv",FILE_CSV|FILE_WRITE,";");
//Цикл записи строчек в файл
for(int i=0;i<6;i++)
{
str=DoubleToString(m[i],8);
FileWrite(handle,str);
}
FileClose(handle);
//==================================

//========Чтение из файла===========
FileOpen("p.csv",FILE_CSV|FILE_READ,";");
for(int i=0;i<6;i++)
{
m_[i]=StringToDouble(FileReadString(handle));
}
FileClose(handle);
//==================================

//Посмотрим, что там записалось в массив?
for(int i=0;i<6;i++)
{
Alert(m_[i]);
}
}

Achtung, Frage: "Warum?"

 

Können wir diesen Algorithmus umsetzen?
1. Wie würde der Expert Advisor einen anderen Zeitrahmen betrachten und beispielsweise den gleitenden Durchschnitt verwenden, um falsche Signale herauszufiltern?
2. Was ist, wenn ich möchte, dass mein Expert Advisor einen Stop-Loss nicht bis zum Break-Even-Level zieht? Wenn beispielsweise ein Stop-Loss anfänglich auf 50 Pips gesetzt ist, und wenn er 30 Pips erreicht, würde ich den Stop-Loss um 20 Pips ziehen.

Vielen Dank im Voraus!

 
Vereinfachung des Musters aus dem Artikel "Relying on the power of patterns" durch Entfernen von SL, TP, Pending Orders und deren Modifikation. Andernfalls ist es unmöglich, zu experimentieren.
 
shap писал(а) >>
Wie vereinfacht man eine Vorlage aus dem Artikel "Relying on the power of templates", indem man SL, TP, schwebende Aufträge und deren Änderung entfernt. Andernfalls ist es unmöglich, zu experimentieren.

Für ein korrektes Muster ist ihre Anwesenheit (SL, TP) kein Hindernis. Und Änderungen sind in der Regel kein Hindernis. Sie können sie deaktivieren. Um genau zu sein, rufen Sie diese Funktion nicht auf.