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

 
Wie viele Testzyklen kann ein Festplattenlaufwerk überstehen? Ich meine, wie schnell wird es sterben? Hat es solche Fälle gegeben?
 
macleta:

Hallo, ich möchte unterschiedlich ausgerichtete Positionen schließen, wenn Gewinn =0 Unterschiedliche Anzahl von Kauf- und Verkaufspositionen, unterschiedliche Losgrößen.

Was stimmt nicht mit der Durchschnittspreissuchfunktion, d.h. dem Nullgewinnpunkt?

double AveroProf(string sy="", int op=-1, int mn1=-1) 
   {
 

   double Buylots=0;
   double Buysum=0;
   double Selllots=0;
   double Sellsum=0;
 
   double zeroprice=0;
 
   for (int i=0; i<OrdersTotal(); i++)
   {
      if (!OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) continue;
      if (OrderSymbol()!=Symbol()) continue;
      if (OrderMagicNumber()!=mn1) continue;
      if (OrderType()==OP_BUY)
      {
       Buylots+=OrderLots();
       Buysum+=OrderLots()*OrderOpenPrice();
      }
      if (OrderType()==OP_SELL)
      {
       Selllots+=OrderLots();
       Sellsum+=OrderLots()*OrderOpenPrice();
      }
   
   }
   if ((Buylots-Selllots)>0)
   zeroprice=NormalizeDouble((Buysum - Sellsum)/(Buylots - Selllots),_Digits);

   return( zeroprice);
   }
 
Vladimir Pastushak:

Ich glaube, dieser Code funktioniert nur für anders gerichtete 2 Bestellungen

Wenn es mehrere Kauf- und Verkaufsaufträge mit unterschiedlichen Eröffnungskursen gibt, scheint dies nicht zu funktionieren - Sie müssen den Gewinn des Auftrags und den Punktwert in der Währung berücksichtigen

Ich habe mir angesehen, was ich zur Hand habe, ich habe nichts gefunden, aber ich weiß, dass ich diesen Code getestet habe

es scheint einen Indikator in cb zu geben, der die Niveaus für multidirektionale Aufträge korrekt berechnet - ich habe ihn letztes Jahr gesucht und gefunden

 
macleta:

Hallo, ich möchte unterschiedlich ausgerichtete Positionen schließen, wenn Gewinn =0 Unterschiedliche Anzahl von Kauf- und Verkaufspositionen, unterschiedliche Losgrößen.

Was stimmt nicht mit der Durchschnittspreissuchfunktion, d.h. dem Nullgewinnpunkt?

Wenn Sie Stopps setzen wollen, ist es besser, dies nicht bei multidirektionalen Positionen zu tun. Bei einer engen Streuung könnte das natürlich gut funktionieren. Aber auch bei diesen Maklerunternehmen gibt es Momente, in denen der Spread sprunghaft ansteigt. Deshalb ist die beste Variante, den Gewinn zu berechnen und die Positionen zu schließen, wenn er ein wenig über 0 liegt(Slippage wird noch berücksichtigt). Das heißt, mit dem aktuellen Marktgeschehen arbeiten.
Совершение сделок - Торговые операции - MetaTrader 5
Совершение сделок - Торговые операции - MetaTrader 5
  • www.metatrader5.com
Торговая деятельность в платформе связана с формированием и отсылкой рыночных и отложенных ордеров для исполнения брокером, а также с управлением текущими позициями путем их модификации или закрытия. Платформа позволяет удобно просматривать торговую историю на счете, настраивать оповещения о событиях на рынке и многое другое. Открытие позиций...
 
Igor Makanu:

Ich glaube, dieser Code funktioniert nur für anders gerichtete 2 Bestellungen

Wenn es mehrere Kauf- und Verkaufsaufträge mit unterschiedlichen Eröffnungskursen gibt, scheint dies nicht zu funktionieren - Sie müssen den Gewinn des Auftrags und den Punktwert in der Währung berücksichtigen

Ich habe mir angesehen, was ich zur Hand habe, ich habe nichts gefunden, aber ich weiß, dass ich diesen Code getestet habe

Es scheint einen Indikator in QB zu geben, der die korrekten Niveaus für gegenläufige Aufträge berechnet - ich habe letztes Jahr danach gesucht und ihn gefunden

Dann haben Sie es nicht richtig geprüft... Dies ist eine klassische 100%-Berechnung 0

 
Vladimir Pastushak:

Sie haben es also nicht richtig geprüft... Dies ist eine klassische 100%-Berechnung 0

Nun, ich werde nicht einmal streiten, kommen Sie zurück auf den Boden der Tatsachen, versuchen Sie zu prüfen, wo Sie eine Gewinnschwelle haben, wenn Sie sie von oben nach unten auf das Diagramm legen

1. kaufen - kaufen - kaufen - verkaufen - verkaufen - verkaufen

2. kaufen - verkaufen - verkaufen - verkaufen - kaufen - kaufen

dies ist die korrekte Berechnunghttps://www.mql5.com/ru/code/10007 Version 2 , dies ist die zu verwendende Berechnung

      if(BuyLots>0) BuyPrice = Bid - ((BuyProfit + SellProfit - MyProfit) / (TickValue * BuyLots) * Point); //уровень безубытка для всех BUY ордеров
      if(SellLots>0) SellPrice = Ask + ((SellProfit + BuyProfit - MyProfit) / (TickValue * SellLots) * Point); //уровень безубытка для всех SELL ордеров


überprüfen Sie besser Ihre klassische Berechnung

 
Sind die Zitate im Ordner tester/history gespeichert?
 

Hallo, helfen Sie einem Anfänger bei einer einfachen Aufgabe. Der Indikator zeigt in einem separaten Fenster die Bruchzahlen 0.123456 1.123456 und ich brauche ganze Zahlen wie 123 1123

Kann mir jemand einen Tipp geben, wie ich das Problem beheben kann?

 
potom:

Hallo, helfen Sie einem Anfänger bei einer einfachen Aufgabe. Der Indikator zeigt in einem separaten Fenster die Bruchzahlen 0.123456 1.123456 und ich brauche ganze Zahlen wie 123 1123

Kann mir jemand einen Tipp geben, wie ich das Problem beheben kann?

int value = (int) 0.12456789*1000000;

Die einfachste Sache, die mir einfiel)

 
Konstantin Nikitin:
Wenn Sie Stopps setzen wollen, ist es besser, dies nicht bei multidirektionalen Positionen zu tun. Es ist eine sehr gute Idee, für diese Positionen Stopps zu setzen. Aber auch bei diesen Maklerunternehmen gibt es Momente, in denen der Spread sprunghaft ansteigt. Deshalb ist die beste Variante, den Gewinn zu berechnen und die Positionen zu schließen, wenn er etwas mehr als 0 beträgt (Slippage wird noch berücksichtigt). Das heißt, mit dem aktuellen Marktgeschehen arbeiten.

Versuchen Sie es mit Pyramiding, d. h. mit einer kleineren Partie im Trend, aber mit entgegengesetzter Öffnung.

Vielen Dank an alle, die geholfen haben.