Einzelnen Beitrag anzeigen
  #6 (permalink)  
Alt 20.02.22
Aleksi Aleksi ist offline
Neues Mitglied
 
Registriert seit: May 2020
Ort: Duisburg
Beiträge: 28
Aleksi befindet sich auf einem aufstrebenden Ast
Standard

Okay hab mich unglücklich ausgedrückt, meine Idee ist es die Kapitalkurve zu zeichnen, also muss ich in der History die Profite der abgeschlossenen Deals holen..

Ist ja keine Kunst, die Werte der History (profit,dealtime) sind dann in einer Struktur als Array gespeichert.

Allerdings ist mir unklar wie ich jetzt die einzelen Arrays an den Graph übermitteln soll.

So speicher ich das ganze in nem Array:

Code:
 void              InitArrays()
     {
      HistorySelect(0,TimeCurrent());
      int deals=HistoryDealsTotal();
      ArrayResize(x_norm,deals);
      ArrayResize(y_norm,deals);
      ArrayResize(y_norm2,deals);
      
      for(int i=0; i<deals; i++)
        {
         ulong deal_ticket=HistoryDealGetTicket(i);
         if(deal_ticket>0)
           {
            string symbol=HistoryDealGetString(deal_ticket,DEAL_SYMBOL);
            datetime time=(datetime)HistoryDealGetInteger(deal_ticket,DEAL_TIME);
            ulong order  =HistoryDealGetInteger(deal_ticket,DEAL_ORDER);
            long pos_ID  =HistoryDealGetInteger(deal_ticket,DEAL_POSITION_ID);
            ENUM_DEAL_ENTRY entry_type=(ENUM_DEAL_ENTRY)HistoryDealGetInteger(deal_ticket,DEAL_ENTRY);

            if(entry_type==DEAL_ENTRY_OUT)
              {

               x_norm[i]=(double)time; //Zeitachse Value
               y_norm[i]=HistoryDealGetDouble(deal_ticket,DEAL_PROFIT); //Testachse1 value
              }
           }
         else
           {
            PrintFormat("Kein Deal in Auflistung %d. Fehler %d",i,GetLastError());
           }
        }

     }
Kann sein das ich noch in dieser Funktion erst noch die Profite zusammenrechnen muss aber das ist ja auch n Kinderspiel