[WARNUNG GESCHLOSSEN!] Alle Fragen von Neulingen, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen. - Seite 693

 
Hedin:


Im Devisenhandel sind fast alle Server kostenlos.

Darüber hinaus bietet fast jedes Brokerhaus Demokonten an, auf denen Sie mit virtuellem Geld statt mit echtem Geld handeln können.

Danke, können Sie mir einen konkreten Link nennen? Ich kann es nicht googeln. Nochmals vielen Dank.
 
artmedia70:
Was ist ein Margin CALL?
Ein Margin Call ist eine Bedingung, die zu einer erzwungenen Schließung einer Position führt.

Dies ist der Fall, wenn Ihr Kontostand (Eigenkapital) Null der erforderlichen Marge (Margin) für den Betrag aller offenen Positionen erreicht hat.

Der Vorgang ist automatisch. In einigen Unternehmen ist die Nachschusspflicht auf 30 % des Eigenkapitals festgelegt.

D.h. [AccountFreeMargin() = AccountEquity() - Margin] ?

wobei Marge -> Summe für alle offenen Positionen.




 
Guest77:
Danke, können Sie bitte einen konkreten Link angeben? Ich kann es nicht googeln. Nochmals vielen Dank.

Alles, was Sie tun müssen, ist MetaTrader 4 von einem beliebigen Broker herunterzuladen und zu installieren.

Sie müssen ein Demokonto eröffnen und schon können Sie es nutzen. Alles ist kostenlos. Sie können einen Makler über Google finden, es gibt viele von ihnen.

 

Hallo zusammen. Ich habe mit einem Problem konfrontiert, wenn das Schreiben eines EA, ich fühle, dass der Fehler irgendwo auf der Oberfläche ist, aber ich kann es nicht finden. Ich würde mich freuen, wenn mir jemand sagen könnte, was ich tun soll.

Die Essenz des Problems: Ich wurde gebeten, einen Trailing-Stop in einen EA von Igor Kim für mehrere Positionen gleichzeitig einzufügen. Ich habe alles hinzugefügt, aber das Ergebnis ist schlecht :( Trailing-Stop bewegt sich immer in TStop.Sell und TStop.Buy Punkten weg von Bid und Ask, d.h. Preis steigt, Trailing-Stop geht auch nach oben, Preis fällt - Trailing-Stop nach unten... Ich brauche das telepathische Team nicht anzurufen, ich werde den Code selbst hinzufügen :)

int start()
{
 if(GetProfitOpenPosInCurrency(Symbol(),-1,MagicNumber)>=ProfitToStartTral) //если прибыль в валюте депозита больше заданной в настройках
    {
     CloseLoss(Symbol(),-1,MagicNumber);//закрываем все убыточные позы советника по текущему символу
     start3();//запускаем трал
    }
  //бла-бла-бла, тут еще куча рабочего кода :)
}

Benutzerdefinierte Funktionen:

void start3() 
 {
  if (ShowComment) {
    Comment(IIFs(AllSymbols, "AllSymbols  ", "")
           ,"Magic="+IIFs(Magic<0, "Любой", DoubleToStr(Magic, 0))+"  "
           ,IIFs(TSProfitOnly, "TSProfitOnly  ", "")
           ,"TStop.Buy="+DoubleToStr(TStop.Buy, 0)+"п  "
           ,"TStop.Sell="+DoubleToStr(TStop.Sell, 0)+"п  "
           ,"TrailingStep="+DoubleToStr(TrailingStep, 0)+"п  "
           );
  } else Comment("");

  string sy=IIFs(AllSymbols, "", NULL);
  SimpleTrailing(sy, -1, Magic);
 } 
//*********************************************************************//
void SimpleTrailing(string sy="", int op=-1, int mn=-1) {
  double po, pp;
  int    i, k=OrdersTotal();

  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if ((OrderSymbol()==sy || sy=="") && (op<0 || OrderType()==op)) {
        po=MarketInfo(OrderSymbol(), MODE_POINT);
        if (mn<0 || OrderMagicNumber()==mn) {
          if (OrderType()==OP_BUY) {
            pp=MarketInfo(OrderSymbol(), MODE_BID);
            if (!TSProfitOnly || pp-OrderOpenPrice()>TStop.Buy*po) {
              if (OrderStopLoss()<pp-(TStop.Buy+TrailingStep-1)*po||OrderStopLoss()==0) {
                ModifyOrder(-1, pp-TStop.Buy*po, -1);
              }
            }
          }
          if (OrderType()==OP_SELL) {
            pp=MarketInfo(OrderSymbol(), MODE_ASK);
            if (!TSProfitOnly || OrderOpenPrice()-pp>TStop.Sell*po) {
              if (OrderStopLoss()>pp+(TStop.Sell+TrailingStep-1)*po || OrderStopLoss()==0) {
                ModifyOrder(-1, pp+TStop.Sell*po, -1);
              }
            }
          }
        }
      }
    }
  }
} 
//****************************************************
string IIFs(bool condition, string ifTrue, string ifFalse) {
  if (condition) return(ifTrue); else return(ifFalse);
}
 

Ich möchte wissen, ob es möglich ist, die im Indikatorcode angegebenen Parameter (nicht die Parameter des Indikators selbst) an einen anderen Indikator zur Verarbeitung zu übergeben?

Die zweite Frage, wie man Parameter vom Indikator an den EA übergeben und wie dieser EA im Testmodus verhalten wird?

Vielen Dank im Voraus!

 

Sie erklären das auf eine sehr verworrene Weise.

Der einfachste Weg zur Übertragung nach MT über GlobalVariable ist ungefähr so wie eine Zwischenablage. Der eine legt, der andere nimmt sie.

Aber es gibt noch viele andere Möglichkeiten, die von der jeweiligen Situation abhängig sind. Da es keine Situation gibt, ist es schwierig, über Optionen zu sprechen. Siewird an demselben Zeichen getestet.

 
zhuki:

Sie erklären das auf eine sehr verworrene Weise.

Der einfachste Weg zur Übertragung nach MT über GlobalVariable ist ungefähr so wie eine Zwischenablage. Der eine legt, der andere nimmt sie.

Es gibt aber noch viele andere Möglichkeiten, die von der jeweiligen Situation abhängig sind. Da es keine Situation gibt, ist es schwierig, über Optionen zu sprechen. Sie wird mit demselben Zeichen getestet.


GlobalVariable wird in der MT-Hilfe nicht gefunden, ....

über die Varianten. Zum Beispiel ist die Berechnung wie folgt: Es gibt einen Zickzack-Indikator, fügte ich einen Code, der die Muster der Zickzack-Code, wie If (Bedingung), wenn die Bedingung erfüllt ist, a =1 Variable, wenn es nicht erfüllt ist, a=0. Ich brauche, um diese Variable Wert zu einem anderen Indikator und die folgenden in diesem Fall tun, wenn die Variable in diesem Indikator gleich war (a=1), wenn a=0. Hier geht es um die Übergabe von Parametern zwischen Indikatoren.

bzw. in der gleichen Form, um Parameter vom Indikator an den Expert Advisor zu übergeben. Wenn ich es im Strategy Tester teste, wird der Expert Advisor den Indikator für die Berechnung laden und die Variablenwerte an den EA weitergeben? Oder es wird ein Fehler auftreten, da die Variable nicht zugänglich ist, weil sie sich in der Indikatorumgebung befindet!

 

Dieselbe Frage. Wie übertrage ich Daten von einem Nicht-Standard-Indikator zu einem anderen?

 
zhuki:

Sie erklären das auf eine sehr verworrene Weise.

Der einfachste Weg zur Übertragung nach MT über GlobalVariable ist ungefähr so wie eine Zwischenablage. Der eine legt, der andere nimmt sie.

Es gibt aber noch viele andere Möglichkeiten, die von der jeweiligen Situation abhängig sind. Da es keine Situation gibt, ist es schwierig, über Optionen zu sprechen. Siewird mit demselben Zeichen getestet.

Sie können es nicht wie das Standard-iMA mit einem Kurznamen benennen, zum Beispiel?
 
Abzasc:
Kann man sie nicht wie die Standard-iMA zum Beispiel mit einem Kurznamen aufrufen?

Sie können es aufrufen, es gibt keine Fehler, aber wie man den Parameter übergeben? Ich mache einen Anruf, setzen Sie den Parameter in Klammern (die ich aufrufen), aber in der Antwort schwören solche Parameter nicht in den Indikator existieren.