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

 
TarasBY:
Sprechen Sie von "berücksichtigen" und DC?! ;)

Das hat nichts mit DC zu tun.
 

Ich habe mit einem ziemlich einfachen Expert Advisor herumgespielt, den ich geschrieben habe. Aber ich habe beschlossen, meinem Experten nicht nur ein, sondern mehrere Signale zum Einstieg in den Markt zu geben. Ich möchte aber, dass für jedes Signal nur ein Auftrag auf den Markt kommt.

Der Sachverhalt stellt sich wie folgt dar. Ich habe erfunden, um die Aufträge durch Magic abzugrenzen. Die Suche nach Aufträgen würde folgendermaßen aussehen:

//+-------------------------------------------------------------------------------------+
//| Поиск своих ордеров                                                                  |
//+-------------------------------------------------------------------------------------+
int FindOrders(int magic)
{
  int t;                                                 // Количество открытых позиции (buy's + sell's)
  int total = OrdersTotal() - 1;
  
  for(int i=total; i>=0; i--)
  {
    if(!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue;
      if(OrderMagicNumber() == magic && OrderSymbol() == Symbol())
      {
        t++;
      }
  }
  
  return(t);
}

Als Nächstes müssen wir Aufträge für jeden Signaltyp mit seiner eigenen Magic öffnen. Bei den Verkäufen zum Beispiel hatte ich das früher so:

//+-------------------------------------------------------------------------------------+
//| Открытие коротких позиций                                                           |
//+-------------------------------------------------------------------------------------+
bool OpenSell()
{
  int ticket = -1;
  string myNote = "Сов шортанул";
  
  ticket = OrderSend(Symbol(),OP_SELL,0.1,Bid,i_slippage,0,0,myNote,magic,0,Red);
    return(true);
  
  return(false);
}

An diesem Punkt habe ich beschlossen, den Switch-Operator zu verwenden. Ist es sinnvoll, diesen Operator in diesem Fall zu verwenden?

//+-------------------------------------------------------------------------------------+
//| Открытие коротких позиций                                                           |
//+-------------------------------------------------------------------------------------+
bool OpenSell()
{
  int ticket = -1;
  string myNote = "Сов шортанул";
  
    switch(maState)
  {
    case 4:    ticket = OrderSend(Symbol(),OP_SELL,0.1,Bid,i_slippage,0,0,myNote,i_myMagic6,0,Red); break;
    case 5:    ticket = OrderSend(Symbol(),OP_SELL,0.1,Bid,i_slippage,0,0,myNote,i_myMagic25,0,Red); break;
    case 6:    ticket = OrderSend(Symbol(),OP_SELL,0.1,Bid,i_slippage,0,0,myNote,i_myMagic150,0,Red); break;
    case 7:    ticket = OrderSend(Symbol(),OP_SELL,0.1,Bid,i_slippage,0,0,myNote,i_myMagic250,0,Red); break;
    default:   return(false);
  }
    return(true);
}

Und so sieht die Handelsfunktion aus:

//+-------------------------------------------------------------------------------------+
//| Открытие позиций                                                                    |
//+-------------------------------------------------------------------------------------+
bool Trade(int signal)
{
  if(signal == SIGNAL_BUY && FindOrders() == 0)
    if(!OpenBuy())
    return(false);
  
  if(signal == SIGNAL_SELL && FindOrders() == 0)
    if(!OpenSell())
    return(false);
    
  return(true);
}

Soll ich sie auch hier über den Switch-Operator implementieren? Ich dachte auch daran, Magic über formale Parameter an die Funktion FindOrders() zu übergeben, aber ich weiß nicht, wie...

 
Hallo. Können Sie einen möglichen Verlust für einen Cross-Kurs berechnen, z.B. GBPCHF, einen 1-Lot-Auftrag öffnen und 50 Pips stoppen. Soweit ich weiß, hängt der Pip-Wert von der Basiswährung ab, und es ist nicht bekannt, wie er in Zukunft aussehen wird.
 

Der Wert von 1 Pip GBPCHG (wenn ich mich nicht irre) für 1 Lot beträgt $8. Wenn sich der Kurs also gegen Sie entwickelt und ein Stop-Loss ausgelöst wird, entsteht ein Verlust von etwa $50*8=-$400.

Und die Verluste bei der asc-bid-Spanne (6-8 Pips) müssen hinzugerechnet werden...
 
Die Kosten des Artikels ändern sich also jedes Mal
 

Frage zu MT4. Ich teste und optimiere den EA seit geraumer Zeit (ein paar Tage).

Alles war in Ordnung. Und dann plötzlich, wenn ich die EA laufen, es beginnt zu zeigen, Eintrag auf jedem bar und sofort beenden, kurz gesagt, es ist nicht eine Strategie, aber die Hölle weiß was!

Wahrscheinlich ist irgendwo in den Einstellungen etwas schief gelaufen. Wo und was könnte das sein? Hilfe. plz....

 
Caesar34:
Hallo.. Können Sie mir bitte sagen, wie ich eine MA- oder EMA-Periode mit einem Minuswert erstellen kann, wenn die Einstellungen dies nicht zulassen... ? im MT4
Spam?
 
Caesar34:


Nein!!!
Warum dann in mehreren Threads eine Frage stellen?
 

Die iLow-Abfrage gibt einen Wert mit 4 Dezimalstellen zurück, obwohl das Diagramm 5 Dezimalstellen hat.

Aus diesem Grund ist die Entwicklung des ersten mql4-Programms ins Stocken geraten. Können Sie mir sagen, woran das liegen könnte? Oder sollte es vielleicht so sein?

 
PolarsLynx:

Die iLow-Abfrage gibt einen Wert mit 4 Dezimalstellen zurück, obwohl das Diagramm 5 Dezimalstellen hat.

Aus diesem Grund ist die Entwicklung des ersten mql4-Programms ins Stocken geraten. Können Sie mir sagen, woran das liegen könnte? Oder sollte es vielleicht so sein?

Wo ist der Code?
Grund der Beschwerde: