[ARCHIV!] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen - 4. - Seite 170

 
Roman.:


Als ob das nicht reichen würde?

und dann muss man so etwas ausschließen, damit einem der Aufbau egal ist...

In MQL4 gibt es keine Funktionen oder Makros, die die Build-Nummer zurückgeben.
 
Zhunko:
In MQL4 gibt es keine Funktionen oder Makros, die die Build-Nummer zurückgeben.


Ich hab's. Senkue.

Ich dachte, es sei möglich, alles in Analogie zu tun, indem man ein Stück Code aus dem Lernprogramm entfernt, das dafür verantwortlich ist, dass Eulen nur mit einem bestimmten Konto, Passwort usw. handeln.

 
Hallo zusammen. Bitte um Hilfe.

Hier ist das Wesentliche: Es gibt einen Bot, der automatisch schwebende Aufträge zu einem bestimmten Preis erteilt.

Wir müssen ein Verbot der Auftragserteilung aussprechen, sofern der Auftrag oder ein Geschäft zu diesem Preis offen ist.

Ich habe es drei Tage lang versucht und kein Glück gehabt.
 

Es gibt mehrere Optionen.... machen Sie den Test.

//
// проверим среди Выставленных ордеров /сработавших/ - есть ли Байка
//
void CheckOrdBye()
{
  int total = OrdersTotal();
  int TotalOpenOrders = 0;
  for( int cnt=0; cnt<total; cnt++){
     if (OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES) == true)  {
        if (OrderSymbol()==Symbol() ) {
            if ( OrderType() == OP_BUY)   { OrdYN = 1; return;}
            if ( OrderType() == OP_SELL)  { OrdYN = 2; return;}
        }
     }
  }
}
 
bestfx:
Hallo zusammen. Bitte um Hilfe.

Hier ist das Wesentliche: Es gibt einen Bot, der automatisch schwebende Aufträge zu einem bestimmten Preis platziert. ...

Stellen Sie dies vor den Block zum Senden von Aufträgen:
if (OrdersTotal()>0)
{  for (int i=OrdersTotal()-1; i>=0; i--)
   {  if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
      if (OrderSymbol()!=Symbol()) continue;
      if (OrderOpenPrice()==bad_price) // bad_price - значение цены при котором не хотите выставить очередной ордер
      return(0);
}  }
 
Aleksander:

Es gibt mehrere Möglichkeiten.... machen Sie den Test.



Könnten Sie sich bitte zu dem Code äußern? Es ist nicht klar, was zu tun ist.
 
paladin80:
Setzen Sie dies vor den Block zum Senden der Bestellung:


Was ist, wenn es z.B. 30 Aufträge gibt?

Im Wesentlichen geht es um Folgendes: Es werden zwei gegensätzliche Geschäfte mit einer Differenz von 40 Punkten zum Durchschnittspreis bis zu drei Dezimalstellen platziert.

Sagen wir 1,251 für eur/usd, d.h. Kauf 1,253 Verkauf 1,249, dann klammert der Markt z.B. den Kaufkurs aus und kehrt zu 1,251 zurück und erteilt nun zwei weitere Aufträge zu denselben Preisen. Und während sich der Markt zum Kaufkurs bewegte, konnte das Skript beliebig viele weitere Aufträge erteilen, die auf die gleiche Weise behandelt werden sollten, d. h. ein Preis = ein Auftrag. Wie kann man das umsetzen?

 
bestfx:


Was ist, wenn es zum Beispiel 30 Aufträge gibt?

Im Wesentlichen geht es um Folgendes: Es werden zwei gegensätzliche Geschäfte mit einer Differenz von 40 Punkten zum Durchschnittspreis bis zu drei Dezimalstellen platziert.

Sagen wir 1,251 für eur/usd, d.h. Kauf 1,253 Verkauf 1,249, dann klammert der Markt z.B. den Kaufkurs aus und kehrt zu 1,251 zurück und erteilt nun zwei weitere Aufträge zu denselben Preisen. Und während sich der Markt zum Kaufkurs bewegte, konnte das Skript beliebig viele weitere Aufträge erteilen, die auf die gleiche Weise behandelt werden sollten, d. h. ein Preis = ein Auftrag. Wie kann man das umsetzen?


Machen Sie einfach den Magic == Preis
 
FAQ:

Machen Sie einfach den Magic == Preis

Könnten Sie etwas genauer sein?
 
Teilen Sie den Preis durch die Ziffern = reduzieren Sie ihn auf eine ganze Zahl und schreiben Sie ihn in einen Medjic, dann suchen Sie im Array der offenen Aufträge nach dem Medjic, bevor Sie einen neuen Auftrag einstellen.