Fehler, Irrtümer, Fragen - Seite 1898

 
fxsaber:

Die Lot-Auswahl dieses EAs wird durch den Handel Dritter (einschließlich anderer Instanzen) mit dem ursprünglichen Symbol beeinflusst.

In diesem Stück geschieht dies

Vergessen, die Datei anzuhängen, jetzt in hinzugefügt. Dort

double TradeSizeOptimized(void)
  {
   double price=0.0;
   double margin=0.0;
//--- select lot size
   if(!SymbolInfoDouble(_Symbol,SYMBOL_ASK,price))
      return(0.0);
   if(!OrderCalcMargin(ORDER_TYPE_BUY,_Symbol,1.0,price,margin))
      return(0.0);
   if(margin<=0.0)
      return(0.0);

   double lot=NormalizeDouble(AccountInfoDouble(ACCOUNT_MARGIN_FREE)*MaximumRisk/margin,2);
//--- calculate number of losses orders without a break
   if(DecreaseFactor>0)
     {
      //--- select history for access
      HistorySelect(0,TimeCurrent());
      //---
      int    orders=HistoryDealsTotal();  // total history deals
      int    losses=0;                    // number of losses orders without a break

      for(int i=orders-1;i>=0;i--)
        {
         ulong ticket=HistoryDealGetTicket(i);
         if(ticket==0)
           {
            Print("HistoryDealGetTicket failed, no trade history");
            break;
           }
         //--- check symbol
         if(HistoryDealGetString(ticket,DEAL_SYMBOL)!=_Symbol)
            continue;
         //--- check Expert Magic number
         if(HistoryDealGetInteger(ticket,DEAL_MAGIC)!=MA_MAGIC)
            continue;
         //--- check profit
         double profit=HistoryDealGetDouble(ticket,DEAL_PROFIT);
         if(profit>0.0)
            break;
         if(profit<0.0)
            losses++;
        }
      //---
      if(losses>1)
         lot=NormalizeDouble(lot-lot*losses/DecreaseFactor,1);
     }
 
Rashid Umarov:

Ich habe vergessen, die Datei anzuhängen, sie wurde jetzt zu hinzugefügt. Dort

Ja, genau darum ging es. Das ist richtig.

Stimmt, ich hätte es anders geschrieben (nicht kompiliert).

//--- calculate number of losses orders without a break
   if((DecreaseFactor>0) && HistorySelect(0,TimeCurrent()))
   {
      int    losses=0;                    // number of losses orders without a break

      for(int i=HistoryDealsTotal()-1;i>=0;i--)
      {
         ulong ticket=HistoryDealGetTicket(i);

         if((HistoryDealGetString(ticket,DEAL_SYMBOL)!=_Symbol) &&
            (HistoryDealGetInteger(ticket,DEAL_MAGIC)!=MA_MAGIC))
         {
           double profit=HistoryDealGetDouble(ticket,DEAL_PROFIT);
           if(profit>0.0)
              break;
           else if(profit<0.0)
              losses++;
         }
      }
      //---
      if(losses>1)
         lot=NormalizeDouble(lot-lot*losses/DecreaseFactor,1);
   }


Ich möchte diese Gelegenheit nutzen, um Sie und andere Teilnehmer zu fragen, welche MT5-Berater in kodobase gibt es, die die Geschichte in ihrer Handelslogik verwenden?

 

MT5 hat die Nase voll - lags schrecklich - nur 11 Fenster offen - Standardindikatoren.

Was zu tun ist - bei großen Bewegungen einfach aufhängen....


2017.05.24 18:02:43.549 Terminal Opening Broker x64 build 1596 started
2017.05.24 18:02:43.550 Terminal Windows 7 Ultimate (x64 basierter PC), IE 10.00, AMD Processor Model Unknown, RAM: 9782 / 16357 Mb, HDD: 22385 / 114470 Mb, GMT+03:00

Mehr als 100 Fenster und 50 Zuhaltungen in Quicksave geöffnet - CPU-Last 1-5% dort
 

AMD-Prozessor-Modell Unbekannt

Wird beim Hochfahren des PCs und in Windows auch die CPU erkannt?

 
Vladimir Zubov:

AMD-Prozessor-Modell Unbekannt

Wird beim Hochfahren des PCs und in Windows auch die CPU erkannt?

Beim Starten des PCs wird der Prozessor nicht erkannt - er steht nur im Bios, aber das werde ich jetzt nicht nachschlagen.

Windows sagt das, ebenso wie MT5.

Echte CPU ist AMD Phenom II 960T (übertaktet 3,5 Mhz), aber ein Kern ist freigeschaltet - es stellt sich heraus, fünf insgesamt.

 

Das Terminal ist auf einer SSD-Festplatte installiert.

 

Es hat sich herausgestellt, dass die hohe CPU-Auslastung nur bei einem echten Konto auftritt - irgendwelche Ideen?

 

Das Terminal ist tot, ich kann die Öl- und RTS-Futures-Position nicht schließen - was für ein Chaos!

 
-Aleks-:

Das Terminal ist tot, ich kann die Öl- und RTS-Futures-Position nicht schließen - was für ein Chaos!


Und von einem Mobiltelefon aus?
 
-Aleks-:

Das Terminal ist tot, ich kann die Öl- und RTS-Futures-Position nicht schließen - was für ein Chaos!

Wenn es kritisch ist, können Sie von Quick oder per Telefon schließen.

Das habe ich schon lange nicht mehr gesehen (auch heute beim Öl), aber ich habe keine Indikatoren mehr auf meinen Charts.