Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1913

 
Alekseu Fedotov #:

Ich sehe den Fehler hier nicht.

if(TimeFrame != PERIOD_CURRENT)

dieselbe Sache

if(TimeFrame != 0)
 
Alekseu Fedotov #:

Ich kann hier keinen Fehler erkennen.

PERIOD_CURRENT ist 0 - die magische Konstante

Es sollte mindestens _Period (die Periode des aktuellen Diagramms) sein, und es ist immer nicht 0

 
Alekseu Fedotov #:

Ich kann hier keinen Fehler erkennen.

An der Stelle, an der dieser Code entnommen wird, gibt es auch einen Eingabeparameter

sinput ENUM_TIMEFRAMES TimeFrame = PERIOD_CURRENT; // Период

Dementsprechend erhalten wir die Bedingung, wenn 0 ungleich 0 ist.

Ersetzen wir jedoch PERIOD_CURRENT durch eine andere Periode im Eingabeparameter, gilt die Bedingung unabhängig von der Diagrammperiode. Welchen Sinn hat diese Bedingung dann?

 
Alexey Viktorov #:

An der Stelle, an der dieser Code entnommen wird, gibt es auch einen Eingabeparameter

Dementsprechend ergibt sich die Bedingung, dass 0 nicht gleich 0 ist

Ersetzen wir jedoch PERIOD_CURRENT durch eine beliebige andere Periode im Eingabeparameter, gilt die Bedingung unabhängig von der Diagrammperiode. Was ist also der Sinn dieser Bedingung?

Es macht nur einmal Sinn, damit die Funktion ChartSetSymbolPeriod() Sie nicht zu sehr stört;

 
Alekseu Fedotov #:

Der Punkt ist nur einer, damit die Funktion ChartSetSymbolPeriod() nicht unnötig in Anspruch genommen wird;

Im Prinzip ja. Aber die Frage bezog sich auf das Vorhandensein von Fehlern, nicht auf die Zweckmäßigkeit dieser Bedingung...

 

Guten Tag, liebe Entwickler!

Ich muss Aufträge gruppieren, um mit jeder Gruppe getrennt arbeiten zu können (Abschluss, Aufstockung usw.). Ich denke, die Aufgabe ist nicht allzu schwierig, aber ich habe keine Ahnung, wie ich sie lösen soll. Ich habe eine sehr unklare Vorstellung, das ist alles. Niemand ist mit einem solchen Problem konfrontiert worden? Die Gruppierung kann auf beliebige Weise erfolgen(globales Variablenterminal, Kommentare, usw.). Ich wäre für jede Hilfe dankbar.

 
AMarkov (globales Variablenterminal, Kommentare, usw.). Ich wäre für jede Hilfe dankbar.

Warum wollen Sie keine Magie einsetzen? Denn es kann mehr als einen Magier in einer EA geben...

 
Magie
Alexey Viktorov #:

Warum ist ein Magier nicht geeignet? Schließlich kann in einem Ratsmitglied mehr als ein Magier stecken...

Magik ist ebenfalls geeignet. Ich gehe davon aus, dass alle diese Optionen fast den gleichen Algorithmus haben. Es spielt also keine Rolle. Die Hauptsache ist, die Lösung zu finden).

 
AMarkov #:
Magie

Magik ist ebenfalls geeignet. Ich gehe davon aus, dass alle diese Optionen fast den gleichen Algorithmus haben. Es ist also alles das Gleiche. Die Hauptsache ist, eine Lösung zu finden).

Die Lösung ist natürlich dieselbe. Bestimmen Sie das Kriterium, nach dem der Auftrag zu dieser oder jener Gruppe gehört, und identifizieren Sie ihn nach diesem Kriterium...
 
Alexey Viktorov #:
Die Lösung ist natürlich dieselbe. Sie definieren das Kriterium, nach dem der Auftrag zu dieser oder jener Gruppe gehört und identifizieren ihn nach diesem Kriterium...

Wir danken Ihnen für Ihre Teilnahme. Die Aufgabenstellung ist für mich klar. Ich hänge bei der Umsetzung fest...

Ich habe es mit den Kommentaren versucht. Bis zur zweiten Gruppe nummeriert er richtig. Beim dritten Mal gibt er einen Kommentar ab, obwohl die erste Gruppe noch auf dem Markt ist. Es geht nicht darum, die Zahlen zu vervielfachen, sondern die frei gewordenen Zahlen zu nehmen. Ich hoffe, ich habe mich klar ausgedrückt).

for(int a=1; a<10; a++)

{

comment=";

for(int i=0; i<OrdersTotal(); i++)

{

if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))

{

if(OrderSymbol()==Symbol() && OrderMagicNumber()==magisch)

{

//Drucken(Bestellkommentar();

if(OrderComment()==IntegerToString(a)) weiter;

sonst

{

comment=IntegerToString(a);

Pause;

}

}

}

}

if(Kommentar!="") break;

}

if(CountOfBuy(magic)<1 && CountOfSell(magic)<1) comment="1";

Grund der Beschwerde: