Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 486
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
Wenn du deine Zahl 108 nimmst, erhältst du höchstens 151 hoch 151 - 108^151=1,11426138071861e+307
108^152=1,20340229117609e+309 ist zu viel für die MCL-Programmierung, ganz zu schweigen von 108^4096
Für welche Art von Berechnungen wird eine solche Skala benötigt?
Ich versuche, die Analyse der Preisentwicklung und das nlp-Aufmerksamkeitsmanagement zu verbinden, und mein Gehirn ist auf Autopilot :)
Ich habe begonnen, MQL4 zu lernen und kann nicht verstehen, wie ein Auftrag ausgewählt wird
aus dem Lernprogramm:
for(int i=1; i<=OrdersTotal(); i++) // Die Bestellschleife
{
if (OrderSelect(i-1,SELECT_BY_POS)==true) // Wenn
{
wenn (OrderSymbol()!= Symbol) weiter;
Mein Verständnis ist: For i=1, solange i<= Anzahl der Aufträge
Wenn der ausgewählte Auftrag an Position i-1 (d.h. Auftrag #0) existiert
Vergleiche es mit dem Symbol
Dann addiere 1(i++) zu i und beginne eine neue Iteration
Ich verstehe den Kommentar // Wenn es einen nächsten Auftrag gibt (was meinen Sie: nächster nach Position oder dieser Auftrag, der gerade ausgewählt wird?)
Bitte erklären Sie das auf Russisch.
Wenn es einen Auftrag gibt, d.h. unter der Nummer und-1 existiert, dann gehe zur nächsten Bedingung.
Es wird immer eine Bestellung mit der Nummer Null (also i-1) gefunden. Was für eine verrückte Methode zur Bestimmung der "nächsten" Bestellung, wirklich irreführend...
Es wird immer eine Reihenfolge mit der Nummer Null (also i-1) gefunden. Das ist eine wilde Methode zur Bestimmung der "nächsten" Bestellung, die wirklich irreführend ist...
Wenn es keine Aufträge gibt, dann mit diesem Entwurf:
wird nicht zur nächsten Bedingung übergegangen.
weil es keine Ordnung und-1 (in unserem Fall =0) gibt
Natürlich ist es nicht bequem, es so zu schreiben, und es ist nicht klar, warum es so sein sollte,
und nicht zum Beispiel auf diese Weise:
Hallo Herr Programmierer, ich habe eine Frage, ich kann nicht lernen, einen Teil des Codes, um den Prozentsatz des Kontostandes zu schließen. es schließt nicht den Prozentsatz, sondern alle auf einmal und alle Aufträge, die auf dem Markt sind. Ich brauche, dass ein bestimmter Auftrag und der berechnete Prozentsatz des Gleichgewichts der deposit.advise schließen würde, was ich falsch mache?
extern double Percent = 2.0;
extern int Slippage = 2;
double stop;
void OnStart()
{
if (Digits == 3 || Digits == 5)
{
Slippage *= 10;
}
for(int i = OrdersTotal()-1; i>=0; i--)
{
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
{
if (OrderSymbol() == Symbol())
{
if (OrderType() == OP_BUY || OrderType() == OP_SELL)
{
if(stop==Kontostand()/100*Perzent)
stop=Kontostand()/100*Perzent;
if(stop<=Kontostand())
{
OrderClose(OrderTicket(),OrderLots(),Ask,Slippage,Aqua);
OrderClose(OrderTicket(),OrderLots(),Bid,Slippage,Aqua);
}//if(ostop<=AccountBalance())
}////(ostop==Kontostand()/100*Prozent)
}//// (OrderSymbol() == Symbol() )
}// (OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
}//// for(int i = OrdersTotal()-1; i>=0; i--)
return;
}////void OnStart()
//+-----------------------------------------------------------------
Wie kommt das?
und dies:
wird niemals erfüllt werden.
daher:
wird immer mit jeder Bestellung funktionieren.
SCHLUSSFOLGERUNG: Alles ist falsch.
Ihre Funktion muss durchdacht werden, eine schnelle Antwort habe ich nicht.
Aber wenigstens ist es so, dass es am Anfang so ist:
Wenn es keine Aufträge in einer solchen Konstruktion gibt:
wird nicht zur nächsten Bedingung übergegangen.
weil es keine Ordnung und-1 (in unserem Fall =0) gibt
Natürlich ist es nicht bequem, es so zu schreiben, und es ist nicht klar, warum es so sein sollte,
und nicht, zum Beispiel, so:
Als ich es las, dachte ich auch, warum nicht einfach i=0, das scheint einfacher und klarer zu sein.
Hier ist der gesamte Skriptcode, vielleicht gibt es einen guten Grund, warum der Autor i=1 anstelle von i=0 gesetzt hat. Ich weiß nur nicht genug darüber und sehe es vielleicht einfach nicht, während ich den Funktionsmechanismus verstehen muss, um später keine Fragen zu stellen