[ARCHIV] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 3. - Seite 532

 
FAQ:
Im Falle des von mir gezeigten Eintrags behalten die Eingangsvariablen, wenn sie in der Funktion geändert werden, ihre geänderten Werte am Ausgang der Funktion bei.
vielen Dank ... ))))
 
Tantrik:

Hallo Programmierer, gibt es ein Skript, das die ausstehenden Aufträge in einem Fenster nicht nach der Eröffnungszeit, sondern nach dem Instrumentennamen anzeigt und sie gruppiert?

Wenn Sie mit 10 Währungspaaren arbeiten, können Sie die benötigte Order nicht finden. Hat sie jemand?

Siehe MetaEditor-Hilfe für OrderSymbol()
 
Reshetov:
Siehe OrderSymbol() in der MetaEditor-Hilfe
Danke, Sie können es also selbst ändern.
 
Tantrik:
Danke, damit Sie es selbst ändern können.
Wenn es niemand verbietet und die Möglichkeit besteht, dann ist es möglich.
 
Reshetov:
Wenn es niemand verbietet und die Möglichkeit besteht, dann kann man es tun.
Können Sie mir sagen, wo ich es finden kann? Es ist alles auf Englisch.
 

Wie hoch ist der maximale Einsatz bei Devisengeschäften über MetaTrader 4? Auf meinem Demokonto setze ich bis zu 50 Abschläge. 51 funktioniert nicht mehr. Kann ich diese Zahl auf eine höhere ändern? Ich habe in den Einstellungen des Programms gesucht, aber nichts gefunden. Wenn ich mehr als 50 eingebe, werden die Schaltflächen Verkaufen und Kaufen deaktiviert.

Wenn diese Parameter nicht geändert werden können, geben Sie bitte an, wie man mehrere Aufträge hintereinander eröffnen kann, ohne dass der Preis vom geplanten Einstiegspunkt wegspringt.

Um einen neuen Auftrag zu öffnen, gibt es die Tastenkombination F9, aber danach muss man überall klicken und das kann einige Zeit dauern.

Gibt es eine Funktion in MT4, um alle Aufträge auf einmal zu schließen? Oder eine Tastenkombination, um sie alle auf einmal zu schließen?

 

Ich versuche , die Höchststände (keine Tiefststände) für den folgenden Tag zu finden (für einen 1-Stunden-Rahmen)... einen Indikator zu erstellen.

zeigt nichts...

int start()
{
int counted_bars = IndicatorCounted();
int lowest=0;
int highest=0;
//----
int limit;
//---- последний посчитанный бар будет пересчитан
if((counted_bars > 0))
counted_bars--;
limit = Bars - counted_bars;
//---- основной цикл

if ((Hour()> 0 && Hour()<=1 && Minute()>0 && Minute()<=1 ) ){

for(int i = 1; i < limit; i++)
{
//+++++++++++++++++++++++
for(int k = 1; k < 24; k++)
{if (iClose(NULL,0,k) >highest)
{highest=iClose(NULL,0,k);
}
}
ExtMapBuffer1[i] = highest ;

//+++++++++++++++++

for(int l = 1; l < 24; l++)
{if (lowest ==0) {lowest=iClose(NULL,0,l);}
if (iClose(NULL,0,l)< lowest) {lowest=iClose(NULL,0,l);} }
ExtMapBuffer2[i] = lowest;

//------------------
}
//----
return(0);
}

}

 
Tantrik:
Können Sie mir sagen, wo ich es finden kann? Es ist alles auf Englisch.
Danke, ich habe es verstanden.
 
DOCTORS:

Ich versuche, die Höchststände (keine Tiefststände) für den folgenden Tag zu finden (für einen 1-Stunden-Rahmen)... einen Indikator zu erstellen.

zeigt nichts...

int start()
{
int counted_bars = IndicatorCounted();
int lowest=0;
int highest=0;
//----
int limit;
//---- последний посчитанный бар будет пересчитан
if((counted_bars > 0))
counted_bars--;
limit = Bars - counted_bars;
//---- основной цикл

if ((Hour()> 0 && Hour()<=1 && Minute()>0 && Minute()<=1 ) ){

for(int i = 1; i < limit; i++)
{
//+++++++++++++++++++++++
for(int k = 1; k < 24; k++)
{if (iClose(NULL,0,k) >highest)
{highest=iClose(NULL,0,k);
}
}
ExtMapBuffer1[i] = highest ;

//+++++++++++++++++

for(int l = 1; l < 24; l++)
{if (lowest ==0) {lowest=iClose(NULL,0,l);}
if (iClose(NULL,0,l)< lowest) {lowest=iClose(NULL,0,l);} }
ExtMapBuffer2[i] = lowest;

//------------------
}
//----
return(0);
}

}

Bereits um ein Uhr morgens findet eine Lesung statt...
 

Ich kann die Logik des Compilers nicht verstehen. Ich habe eine Funktion. Ich deklariere eine externe Variable.

int start;

weiter den Funktionskörper

double B()
{

int i=0, k=OrdersHistoryTotal();
for (i=k-1; i<=k; i++) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)!=false) {
if (OrderType()==OP_SELL) {
if(OrderProfit()< 0) {start=1;}

}

}

}

}

Der Wert der Startvariable muss gespeichert und bei Bedarf auf Null abgeglichen werden. Aber hier stellt sich heraus, dass wenn OrderProfit()<0 , dann Start=1, und wenn OrderProfit()> 0 , dann automatisch Start=0.

Habe ich die Logik des Compilers richtig verstanden?

Grund der Beschwerde: