Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 1101

 
AlexeyVik:
Kann ein Ticket gleich Null sein?

Aus der Dokumentation zu OrderSend():

.......

Rückgabewert

Gibt die Ticketnummer zurück, die dem Auftrag vom Handelsserver zugewiesen wurde, oder -1 im Falle eines Fehlers. Um die Fehlerinformationen zu erhalten, rufen Sie GetLastError() auf.

 
Sepulca:

Aus der Dokumentation zu OrderSend():

.......

Zurückgegebener Wert

Gibt die Ticketnummer zurück, die dem Auftrag vom Handelsserver zugewiesen wurde, oder -1 im Falle eines Fehlschlags. Um die Fehlerinformationen zu erhalten, rufen Sie GetLastError() auf.

Genau mein Punkt... Die Ticketnummer kann auch im Tester nicht 0 sein, und im Fehlerfall gibt die Funktion -1 zurück, was kleiner als 0 ist. Also habe ich gefragt, in welchem Fall das Ticket gleich Null sein kann... Denn die Bedingung lautet >=, d.h. größer als oder gleich...
 
h-l


Können Sie mir sagen, ob es einen Indikator für mt4, die Volatilität auf dem ausgewählten Zeitrahmen zählt?

Zum Beispiel für Tage( H-L)n, wobei n die Anzahl der Tage ist.

 
lempopo:


Können Sie uns mitteilen, ob es einen Indikator für MT4 gibt, der die Volatilität für einen ausgewählten Zeitrahmen berechnet?

Zum Beispiel für Tage( H-L)n, wobei n die Anzahl der Tage ist.

Ist es die Volatilität?

"Die Volatilität ist ein statistisches Maß für die Entwicklung der Preisschwankungen. - So ungefähr hört sich die Definition an.

Die historische Volatilität ist ein Wert, der der Standardabweichung des Wertes eines Finanzinstruments über einen bestimmten Zeitraum entspricht und auf der Grundlage historischer Daten über seinen Wert berechnet wird.

Und als Indikator für die Volatilität im Terminal gibt es einen Indikator für die Standardabweichung - die Standardabweichung.

 
AlexeyVik:
Das ist es, was ich sage... Die Ticketnummer kann auch im Tester nicht 0 sein, und die Fehlerfunktion gibt -1 zurück, was kleiner als 0 ist. Also habe ich gefragt, in welchem Fall das Ticket gleich Null sein kann... Denn die Bedingung lautet >=, d.h. größer als oder gleich...

Mit dem Ticket ist alles klar.ich habe eine Funktion um die letzte offene Bestellung zu ermitteln (laut Ticket) auch durch OrderTupy geteilt.Jungs die Frage ist wie folgt.complimator gibt keine Fehler aus und im Tester keine Fehler aber die Bestellung wird nicht geändert....why????? wenn ich meinen Fehler nicht verstehen kann, kann ich es nicht realisieren

if(OrderSend(Symbol(),OP_BUYLIMIT,0.10,Ask,Slippage,0,0, "erste Kauforder gesetzt",Magik,0)== true)

{
TicketB = FindLastTicket(OP_BUY);
if(TicketB >0)
{
SL = priseBuy + NormalizeDouble(takeP1 * Point,Digits);
TP = priseBuy - NormalizeDouble(stopL1 * Point,Digits);
if(OrderModify(TicketB,priseBuy,SL,TP,0)== true)
Kommentar("hooraaaahhhh");
}
 

Wo kann ich einen Assistenten finden, der ein kleines Skript schreiben kann, um es kostenlos auszuprobieren?

 
burbur87:

Ich habe die Funktion der Bestimmung der letzten offenen Bestellung (durch Ticket) auch durch OrderTupy.guys die Frage ist dies: die complimator nicht ausgeben Fehler und in der Tester keine Fehler, aber die Reihenfolge ist nicht geändert....why????? wenn ich nicht verstehen kann mein Fehler kann ich nicht realisieren


if(OrderSend(Symbol(),OP_BUYLIMIT,0.10,Ask,Slippage,0,0,"первый ордер бай установлен",Magik,0)== true)
      { 
          TicketB = FindLastTicket(OP_BUY);
          if(TicketB >0)
          {
             SL = priseBuy + NormalizeDouble(takeP1 * Point,Digits);
             TP = priseBuy - NormalizeDouble(stopL1 * Point,Digits);
             if(OrderModify(TicketB,priseBuy,SL,TP,0)== true)
             Comment("урааааааа");
            
          }

Verwenden Sie die Schaltfläche SRC in der Leiste über dem Texteingabefenster.

Grundsätzlich gilt: Nur weil der Compiler keine Fehler ausgibt, bedeutet das noch lange nichts. Sie müssen das Protokoll auf eventuelle Fehler überprüfen und die Bedingungen und Parameter ausdrucken. Es handelt sich um allgemeine Empfehlungen.

Genau zu Ihrem Code: die Funktion OrderSend() gibt die Ticketnummer oder -1 im Falle eines Fehlers zurück. Wenn Sie die Dokumentation für Datentypen, insbesondere für den Typ bool, aufmerksam lesen, können Sie verstehen, dass false der Wert 0 ist, alles andere ist true. Unabhängig davon, wie die Funktion OrderSend() beendet wird, ist der boolesche Wert daher immer wahr.

Im obigen Beispiel ist es nicht erforderlich, mit einer zusätzlichen Funktion nach einer Ticketbestellung zu suchen, da diese von OrderSend() zurückgegeben wird.

Limitierte Aufträge werden nicht zum aktuellen Kurs erteilt. Von welcher Art von Änderung ist die Rede, wenn der Auftrag nicht durch einen solchen Befehl geöffnet werden soll?

 
virginvl:

Wo kann ich einen Assistenten finden, der ein kleines Skript schreiben kann, um es kostenlos auszuprobieren?


Auf jedem Forum ein paar Themen mit Angeboten, kostenlos zu schreiben. Die Menschen lernen, wie man schreibt ...
 
virginvl:   Wo finde ich einen Assistenten zum Schreiben eines kleinen Skripts, das ich kostenlos ausprobieren kann?

Der Assistent befindet sich in MetaEditor: Datei --> Erstellen. Was soll das Skript tun? Komm, lass es uns gemeinsam schreiben!!! Ich werde es Schritt für Schritt erklären...


 
AlexeyVik:

Verwenden Sie die Schaltfläche SRC in der Leiste über dem Texteingabefenster.

Kurz gesagt: Die Tatsache, dass der Compiler keine Fehler erzeugt, hat nichts zu bedeuten. Sie sollten das Protokoll auf eventuelle Fehler überprüfen und die Bedingungen und Parameter ausdrucken. Es handelt sich um allgemeine Empfehlungen.

Genau zu Ihrem Code: die Funktion OrderSend() gibt die Ticketnummer oder -1 im Falle eines Fehlers zurück. Wenn Sie die Dokumentation für Datentypen, insbesondere für den Typ bool, aufmerksam lesen, können Sie verstehen, dass false der Wert 0 ist, alles andere ist true. Unabhängig davon, wie die Funktion OrderSend() beendet wird, ist der boolesche Wert daher immer wahr.

Im obigen Beispiel ist es nicht erforderlich, mit einer zusätzlichen Funktion nach einer Ticketbestellung zu suchen, da diese von OrderSend() zurückgegeben wird.

Limitierte Aufträge werden nicht zum aktuellen Kurs erteilt. Von welcher Art von Änderung ist die Rede, wenn der Auftrag nicht durch einen solchen Befehl geöffnet werden soll?


Und der Tester eröffnete eine Position... Außerdem war dieser Auftrag wie eine Flagge, die später ein Gitter öffnen würde...

void OnTick()

{

if(Trend == 1)

Comment("Innerhalb von sieben Monaten wird der Trend zum Kauf gehen");

else Comment("Trend ist seit sieben Monaten rückläufig");

double priseBuy = FindLastOrderPrise (OP_BUY);

double priseSel = FindLastOrderPrise (OP_SELL);


double frezeelevl = MarketInfo(OrderSymbol(),MODE_FREEZELEVEL);

rsi = iRSI(Symbol(),PERIOD_D1,7,PRICE_CLOSE,0);

trend = WhatTrend();

wenn (Anzahl der Geschäfte() == 0)

{

if(trend == 1 && rsi <=30)

{ double vtoroilimt = NormalizeDouble (priseBuy - Vtoroilimit * Point,Digits);

double tretiilimit = NormalizeDouble (priseBuy - Tretiilimit * Point,Digits);

double hetvertiilimit = NormalizeDouble (priseBuy - Hetvertiilimit * Point,Digits);

double pervstop = NormalizeDouble (priseBuy + Pervstop * Point,Digits);

double vtoroistop = NormalizeDouble (priseBuy + Vtoroistop * Point,Digits);

if(OrderSend(Symbol(),OP_BUYLIMIT,0.04,Ask,Slippage,0,0, "erste Kauforder gesetzt",Magik,0)== true)

{

OrderSend(Symbol(),OP_BUYLIMIT,0.06, Ask - vtoroilimt,Slippage,0,0,",Magik,0);

OrderSend(Symbol(),OP_BUYLIMIT,0.08, Ask - tretiilimit,Slippage,0,0,",Magik,0);

OrderSend(Symbol(),OP_BUYLIMIT,0.10,Ask - hetvertiilimit,Slippage,0,0,",Magik,0);

OrderSend(Symbol(),OP_BUYLIMIT,0.02,Ask - pervstop,Slippage,0,0,",Magik,0);

OrderSend(Symbol(),OP_BUYLIMIT,0.01,Ask - vtoroistop,Slippage,0,0,",Magik,0);

}

}// if(trend == 1 && rsi <=30)

sonst if(trend == 2 && rsi >= 70)

{ double vtoroilimt = NormalizeDouble (priseSel + Vtoroilimit * Point,Digits);

double tretiilimit = NormalizeDouble (priseSel + Tretiilimit * Point,Digits);

double hetvertiilimit = NormalizeDouble (priseSel + Hetvertiilimit * Point,Digits);

double pervstop = NormalizeDouble (priseSel - Pervstop * Point,Digits);

double vtoroistop = NormalizeDouble (priseSel - Vtoroistop * Point,Digits);

if(OrderSend (Symbol(),OP_SELLLIMIT,0.04,Bid,Slippage,0,0, "erste Order ist gesetzt",Magik,0)== true)

{

OrderSend(Symbol(),OP_SELLLIMIT,0.06, Bid + vtoroilimt,Slippage,0,0,",Magik,0);

OrderSend(Symbol(),OP_SELLLIMIT,0.08, Bid + tretiilimit,Slippage,0,0,",Magik,0);

OrderSend(Symbol(),OP_SELLLIMIT,0.10,Bid + hetvertiilimit,Slippage,0,0,",Magik,0);

OrderSend(Symbol(),OP_SELLSTOP,0.02,Bid + pervstop,Slippage,0,0,",Magik,0);

OrderSend(Symbol(),OP_SELLSTOP,0.01,Bid + vtoroistop,Slippage,0,0,",Magik,0);

}// if(OrderSend(Symbol(),OP_SELLLIMIT,0.10,Bid,Slippage,0,0, "erste Order ist gesetzt",Magik,0)== true)


}// sonst if(trend == 2 && rsi >= 70)

}// if(CountTrades() == 0)


}

//+------------------------------------------------------------------+

der code wächst mit einer menge quälerei.aber ohne auftragsänderung geht gar nichts.ich werde den ersten auftrag ändern.aber was ist der cp-button???

Grund der Beschwerde: