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

 
Vinin:

iBarShift

Dies ist die laufende Nummer, nicht der Balkenwert.
 
001:
Dies ist die laufende Nummer, nicht der Wert des Balkens.
Wir können also den Index verwenden, um herauszufinden, was wir wollen))MQL4 Referenzhandbuch / Vordefinierte Variablen
 

Wie kann ich programmatisch Gewinn/Verlust für SL/TP-Aufträge in der Depotwährung (Rubel) berechnen?

D.h., ich brauche genau die Gewinnzahlen, die MT4 anzeigt, wenn ich mit dem Mauszeiger über die SL/TP-Linie fahre oder sie mit der Maus ziehe.

Wie wäre es, MODE_TICKVALUE zu erhalten und mit dem Abstand in Pips zu SL/TP zu multiplizieren? Ich habe es mit EURUSD versucht und es scheint dasselbe zu sein, aber bei anderen Paaren erscheint zumindest eine leichte Divergenz. Und im MT4 sind es immer mindestens einige Rubel mehr. Zum Beispiel auf GBPNZD.

 

Ich habe einen einfachen EA erstellt, der Informationen an das Protokoll ausgibt, wenn ein neuer Balken erscheint.

#property strict
//+------------------------------------------------------------------+
int OnInit()
  {
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
void OnTick()
  {
   if(IsNewBar(_Symbol,PERIOD_CURRENT)==true) Print("New bar!");
  }
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
  }
//=== Function
bool IsNewBar(string f_Symbol,      // symbol
              ENUM_TIMEFRAMES f_TF) // timeframe
  {
//---
   static datetime f_LastBar=0;
   datetime f_CurrentBar=iTime(f_Symbol,f_TF,0);
//---
   if(f_LastBar!=f_CurrentBar)
     {
      f_LastBar=f_CurrentBar; return(true);
     }
   else return(false);
  }

Sie funktioniert korrekt, d. h. beim ersten Tick eines neuen Balkens erscheint eine Meldung. Aber aus irgendeinem Grund bezieht sich die Zeit der Nachricht auf den vorherigen Takt. Ich möchte ein Bild anhängen. Die erste zeigt, dass die aktuelle Zeit 21:50:57 istund es nur 2 neue Nachrichten gibt. Auf der 2. Abb. die aktuelle Zeit 21:51:23, gibt es eine 3. Aufzeichnung einer neuen Bar UND sah, dass die Nachricht, es erschien nach 21:51:00 ABER Zeit der Aufnahme in das Protokoll irgendwie, dass 20:50:47 (klar, es gibt einen Unterschied von 1 Stunde zwischen dem Server und meinem Computer), dass meine Zeit nicht korrekt ist. Können Sie Ihre überprüfen? Ist das bei allen gleich oder handelt es sich um eine Störung?



 

Die Uhr Ihres Computers geht ein paar Sekunden nach, oder die Uhr des Servers geht ein wenig vor, oder vielleicht beides. Print() die aktuelle Taktzeit.

if(IsNewBar(_Symbol,PERIOD_CURRENT)!=true) Print("New bar! ", Time[0]);

oder sowohl Server- als auch Ortszeit

 
Vadim_2015:
Nun, wir können den Index verwenden, um herauszufinden, was wir wollen))MQL4 Reference / Predefined Variables

Nein, das ist nicht der Fall. Ich habe gefragt: Wie kann man den Wert eines Balkens in einem Indikator in Abhängigkeit von seiner Zeit( nach Balkenzeit) bestimmen? Wenn wir einfach in iBarShift eine WANTED Zeit des Tages (z. B. in TF H1, dann bekommen wir Verschiebung auf dem Chart D1, die immer mit jedem neuen Tag ändert, dh jede neue Bar wird die gleiche Sache haben.

 
001:

Nein, das ist ein bisschen anders. Ich habe gefragt: Wie kann man den Wert eines Balkens(WANTED DAY) in einem Indikator durch seine Zeit (durch die Balkenzeit) bestimmen? Wenn wir in iBarShift einfach die Zeit eines WILLKÜRLICHEN Tages eingeben (z.B. auf TF H1), erhalten wir die Verschiebung auf dem Diagramm D1, die sich immer mit der Ankunft eines neuen Tages ändert, d.h. jeder neue Balken wird den gleichen Wert haben.


- Wie findet man den Wert in einem Indikator?

Was ist ein "Wert"?

- "Wenn wir stumpfsinnig austauschen."

Wenn Sie die Funktion nicht verstehen, erhalten Sie einen "neuen" Wert, was bedeutet, dass jeder neue Balken den gleichen Wert hat.

 

Guten Tag.

Ich bin beim Testen von EAs auf ein Problem gestoßen. Ein paar Monate lang war alles in Ordnung, ich schrieb mehrere EAs, die Aufträge nach meinen Regeln öffneten und schlossen. Eines Tages stellte ein anderer EA die Tests ein. Unabhängig von der im Tester eingestellten Zeit vergeht ein Monat, es war immer September 2014 und der Test wurde abgebrochen. Ich habe lange gebraucht, um ihn auszugraben, historische Daten herunterzuladen usw. Dann habe ich beschlossen, MetaTrader neu zu installieren. Dann beschloss ich, Meta Trader neu zu installieren, deinstallierte es und installierte es erneut. Jetzt funktionieren alle verfügbaren Expert Advisors im Allgemeinen nicht mehr. Meine Bestellungen werden nicht geöffnet. Ich habe einige historische Daten. Wenn das Imaging aktiviert ist, durchläuft das Diagramm den gewünschten Zeitraum, aber es findet kein Handel statt. Bitte beraten Sie mich wenigstens in welche Richtung ich graben soll, alle meine Ideen sind vorbei.

Vielen Dank im Voraus.

 
sergeev:

- Wie findet man den Wert in einem Indikator?

Was ist "Wert"?

- "Wenn wir es einfach einstecken"

Zeigen Sie mir diesen "dummen" Code, damit wir etwas zu besprechen haben. Bis jetzt können wir nur sehen, dass Sie nicht verstehen, wie die Funktion funktioniert.


Ich werde nicht einmal darüber streiten. Ich bin nicht sehr gut im Programmieren. Ich bin nur ein gelegentlicher Typ. Code später. "Wert" ist offen.

 

Hallo zusammen, könnt ihr mir sagen, wie man ein Dreieck zeichnet und den stumpfen Winkel eines Dreiecks berechnet?

Grund der Beschwerde: