Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 1823

 
Tretyakov Rostyslav #:

Und ich habe den Elefanten nicht bemerkt))) Was glauben Sie, wie hoch der Schlusskurs eines offenen Auftrags ist?

Versuchen Sie, es auf diese Weise zu tun.

Eine weitere Frage

Wie berechnen Sie den Gewinn in Punkten - ist das OrderProfit * Punkt?

 
Mihail Matkovskij #:

Dann SymbolInfoDouble

Warum nicht gleich?

 
Alexander Avksentyev #:

Eine weitere Frage

Ist die Gewinnberechnung in Pips ein OrderProfit * Point?

OrderProfit Gibt den Wert des Nettogewinns zurück (in der Einzahlungswährung)
Punkt-
Punktgröße des aktuellen Instruments in der Kurswährung

Alle von Referenz

 
Andrey Sokolov #:

OrderProfit Gibt den Nettogewinnwert zurück (in der Einzahlungswährung)
Point - Aktuelle Instrumentenpunktgröße in der Kurswährung

Alle von Referenz

Ich stimme zu, ich habe den Hinweis gelesen.

Ich multiplizierte den Gewinn mit dem Punkt und erhielt 0,00001 oder weniger.

 
Alexander Avksentyev #:

Ich stimme zu, ich habe den Hinweis gelesen.

Multipliziert man den Gewinn mit Punkt, erhält man 0,00001 oder weniger.

Es ist seltsam, so etwas zu tun.

 
Alexander Avksentyev #:

Eine weitere Frage

Ist die Gewinnberechnung in Pips ein OrderProfit * Point .

Der Preis kann 20 Pips überschreiten und 50$ Gewinn bringen.

Es kann in 5 Punkten passieren, aber der Gewinn wird $80 sein

Dies ist das gleiche für jedes Symbol, mit dem Franken wird der Gewinn größer sein als mit dem Kanadier im gleichen Durchgang in Pips

 
Artyom Trishkin #:

Warum nicht gleich?

Ich habe online ein einfaches Beispiel geschrieben. Ich bin nicht einmal in den Editor gegangen. Alexander ist ein unerfahrener Programmierer und braucht keine zusätzliche Komplexität. Schauen Sie sich seinen Code oben an. Wenn es jedoch um die Entwicklung eines Roboters mit mehreren Symbolen geht, können Sie SymbolInfoDouble verwenden. Wer hindert Sie daran, das zu tun?

 
Mihail Matkovskij #:

Die Funktion SymbolInfoTick schreibt Tick-Daten in eine spezielleMqlTick-Struktur, aus deren Feldern sie abgerufen werden können.

dank

 

Eine weitere Frage kam auf

Ich habe die Inschrift in der Ecke gemacht

//+-----------------------------------------------------------------------------------------------+
int OnInit()
  {
Start          = TimeCurrent();
MaxMartinLot   = Lot*MathPow(1.4,OrdersClose);
MaxMartinLot2  = Lot*MathPow(K_Martin2,OrdersClose2);
AC             = StringConcatenate(" ", AccountCurrency());
int Y          = 20;
DrawLABEL("lab_Take",1,5,Y,clrLime,"LOT: "); 
return(INIT_SUCCEEDED);
  }
//+-----------------------------------------------------------------------------------------------+
void OnDeinit(const int reason)
  {

  }
//+-----------------------------------------------------------------------------------------------+
void OnTick()
  {
// Получим значение индикатора
   dMA = iMA(Symbol(), 0,PeriodMA, MovingShift, MODE_SMA, PRICE_CLOSE, 0); // MODE_SMA - простое усреднение , значение 0. PRICE_CLOSE- цена закрытия, значение 0.

// Если нет открытых ордеров, то входим в условие
      if(CountOrders()==0)
     {
// Если появился сигнал на покупку, то откроем ордер на покупку
      if(bSignalBuy() == true)
         vOrderOpenBuy();

// Если появился сигнал на продажу, то откроем ордер на продажу
      if(bSignalSell() == true)
         vOrderOpenSell();
     }
       DrawLABEL("lab_Take",1,5,0,Color(),StringConcatenate("LOT: ",DoubleToStr(LOT(),2)));  
  }

in der gelben Zeile gibt diese Warnung aus:

möglicher Datenverlust aufgrund von Typumwandlung

Es sieht so aus, als hätte ich sie verwechselt.

alles funktioniert

wenn es keine Transaktion gibt, ist nur eine Farbe eingeschaltet

wenn ein Geschäft geöffnet ist - leuchtet in einer anderen Farbe

Farbe() auf diese Weise einstellen:

double Color()
  {
   double CL =clrRed;
   if(CountOrders()==0) CL =clrYellow;
   return(CL);
  }
Bitte sehen Sie sich das an.
 
законопослушный гражданин möglicher Datenverlust aufgrund von Typumwandlung

Es sieht so aus, als hätte ich sie verwechselt.

alles funktioniert

wenn es keine Transaktion gibt, ist nur eine Farbe eingeschaltet

wenn ein Geschäft geöffnet ist - leuchtet in einer anderen Farbe

Farbe() auf diese Weise einstellen:

Bitte schauen Sie sich das an.

Die Funktion Color sollte color zurückgeben, nicht double.

color Color()
  {
   color CL = clrRed;
   if(CountOrders() == 0) 
     CL = clrYellow;
   return(CL);
  }

Der von der Website-Engine hinzugefügte Link wäre ebenfalls von Nutzen für die Untersuchung.