Bibliotheken: CTradeStatistics - Seite 2

 

Hallo,

ich verwende die Klasse CTradeStatistics, um einige spezifische Statistiken über die Trades zu erhalten, aber in einem bestimmten Moment bekam ich den Fehler "zero divide in 'ctradestatistics.mqh'".

Als ich die Situation untersuchte, entdeckte ich im Code:

      for(int i=1; i<limit; i++)
        {
         if(m_balance_data.At(i)!=0.0)
           {
            HPR[i-1]=m_balance_data.At(i)/m_balance_data.At(i-1);
            m_ahpr+=HPR[i-1];
           }
        }

dass die "m_balance_data.At(i-1)" eventuell Null sein könnte.

Also änderte ich zu:

      for(int i=1; i<limit; i++)
        {
         if(m_balance_data.At(i)!=0.0)
           {
            if(m_balance_data.At(i-1)==0){
               HPR[i-1]=1;
            }
            else{
               HPR[i-1]=m_balance_data.At(i)/m_balance_data.At(i-1);
            }
            m_ahpr+=HPR[i-1];
           }
        }

Ist es richtig anzunehmen, dass, wenn der Saldo 0 ist, die HPR gleich 1 ist?

Vielen Dank im Voraus.

 

Danke für die großartige Arbeit. Können Sie die Berechnung von Korrelation(Gewinn,MFE), Korrelation(Gewinn,MAE), Korrelation(MFE,MAE) in Class hinzufügen?

 

Ein schnellerer Weg, um den Z-Score in Prozent zu erhalten. Keine Schleifenbildung.

double CTradeStatistics::CalcZScorePercent(double z_score)
  {
   int total=ArrayRange(Laplas,0);
   double value=NormalizeDouble(MathAbs(z_score),2);

   int index = (int) (value*100.0);

   if ( index < total )
     {
       return Laplas[index][1];
     }

   return(0);
  }
 

Dadurch werden dem mehrdimensionalen Laplas-Array einige weitere Einträge hinzugefügt, nämlich die Einträge 3.02 bis 3.70.

Ich hatte nur Zugang zu 4 Ziffern der Genauigkeit.

const double Laplas[][2]=
{
   {0.00,0.00000},{0.01,0.00798},{0.02,0.01596},{0.03,0.02393},{0.04,0.03191},{0.05,0.03988},
   {0.06,0.04784},{0.07,0.05581},{0.08,0.06376},{0.09,0.07171},{0.10,0.07966},{0.11,0.08759},
   {0.12,0.09552},{0.13,0.10348},{0.14,0.11134},{0.15,0.11924},{0.16,0.12712},{0.17,0.13499},
   {0.18,0.14285},{0.19,0.15069},{0.20,0.15852},{0.21,0.16633},{0.22,0.17413},{0.23,0.18191},
   {0.24,0.18967},{0.25,0.19741},{0.26,0.20514},{0.27,0.21284},{0.28,0.22052},{0.29,0.22818},
   {0.30,0.23582},{0.31,0.24344},{0.32,0.25103},{0.33,0.25860},{0.34,0.26614},{0.35,0.27366},
   {0.36,0.28115},{0.37,0.28862},{0.38,0.29605},{0.39,0.30346},{0.40,0.31084},{0.41,0.31819},
   {0.42,0.32552},{0.43,0.33280},{0.44,0.34006},{0.45,0.34729},{0.46,0.35448},{0.47,0.36164},
   {0.48,0.36877},{0.49,0.37587},{0.50,0.38292},{0.51,0.38995},{0.52,0.39694},{0.53,0.40389},
   {0.54,0.41080},{0.55,0.41768},{0.56,0.42452},{0.57,0.43132},{0.58,0.43809},{0.59,0.44481},
   {0.60,0.45149},{0.61,0.45814},{0.62,0.46474},{0.63,0.47131},{0.64,0.47783},{0.65,0.48431},
   {0.66,0.49075},{0.67,0.49714},{0.68,0.50350},{0.69,0.50981},{0.70,0.51607},{0.71,0.52230},
   {0.72,0.52848},{0.73,0.53461},{0.74,0.54070},{0.75,0.54675},{0.76,0.55275},{0.77,0.55870},
   {0.78,0.56461},{0.79,0.57047},{0.80,0.57629},{0.81,0.58206},{0.82,0.58778},{0.83,0.59346},
   {0.84,0.59909},{0.85,0.60468},{0.86,0.61021},{0.87,0.61570},{0.88,0.62114},{0.89,0.62653},
   {0.90,0.63188},{0.91,0.63718},{0.92,0.64243},{0.93,0.64763},{0.94,0.65278},{0.95,0.65789},
   {0.96,0.66294},{0.97,0.66795},{0.98,0.67291},{0.99,0.67783},{1.00,0.68269},{1.01,0.68750},
   {1.02,0.69227},{1.03,0.69699},{1.04,0.70166},{1.05,0.70628},{1.06,0.71086},{1.07,0.71538},
   {1.08,0.71986},{1.09,0.72429},{1.10,0.72867},{1.11,0.73300},{1.12,0.73729},{1.13,0.74152},
   {1.14,0.74571},{1.15,0.74986},{1.16,0.75395},{1.17,0.75800},{1.18,0.76200},{1.19,0.76595},
   {1.20,0.76986},{1.21,0.77372},{1.22,0.77754},{1.23,0.78130},{1.24,0.78502},{1.25,0.78870},
   {1.26,0.79233},{1.27,0.79592},{1.28,0.79945},{1.29,0.80295},{1.30,0.80640},{1.31,0.80980},
   {1.32,0.81316},{1.33,0.81648},{1.34,0.81975},{1.35,0.82298},{1.36,0.82617},{1.37,0.82931},
   {1.38,0.83241},{1.39,0.83547},{1.40,0.83849},{1.41,0.84146},{1.42,0.84439},{1.43,0.84728},
   {1.44,0.85013},{1.45,0.85294},{1.46,0.85571},{1.47,0.85844},{1.48,0.86113},{1.49,0.86378},
   {1.50,0.86639},{1.51,0.86696},{1.52,0.87149},{1.53,0.87398},{1.54,0.87644},{1.55,0.87886},
   {1.56,0.88124},{1.57,0.88358},{1.58,0.88589},{1.59,0.88817},{1.60,0.89040},{1.61,0.89260},
   {1.62,0.89477},{1.63,0.89690},{1.64,0.89899},{1.65,0.90106},{1.66,0.90309},{1.67,0.90508},
   {1.68,0.90704},{1.69,0.90897},{1.70,0.91087},{1.71,0.91273},{1.72,0.91457},{1.73,0.91637},
   {1.74,0.91814},{1.75,0.91988},{1.76,0.92159},{1.77,0.92327},{1.78,0.92492},{1.79,0.92655},
   {1.80,0.92814},{1.81,0.92970},{1.82,0.93124},{1.83,0.93275},{1.84,0.93423},{1.85,0.93569},
   {1.86,0.93711},{1.87,0.93852},{1.88,0.93989},{1.89,0.94124},{1.90,0.94257},{1.91,0.94387},
   {1.92,0.94514},{1.93,0.94639},{1.94,0.94762},{1.95,0.94882},{1.96,0.95000},{1.97,0.95116},
   {1.98,0.95230},{1.99,0.95341},{2.00,0.95450},{2.01,0.95557},{2.02,0.95662},{2.03,0.95764},
   {2.04,0.95865},{2.05,0.95964},{2.06,0.96060},{2.07,0.96155},{2.08,0.96247},{2.09,0.96338},
   {2.10,0.96427},{2.11,0.96514},{2.12,0.96599},{2.13,0.96683},{2.14,0.96765},{2.15,0.96844},
   {2.16,0.96923},{2.17,0.96999},{2.18,0.97074},{2.19,0.97148},{2.20,0.97219},{2.21,0.97289},
   {2.22,0.97358},{2.23,0.97425},{2.24,0.97491},{2.25,0.97555},{2.26,0.97618},{2.27,0.97679},
   {2.28,0.97739},{2.29,0.97798},{2.30,0.97855},{2.31,0.97911},{2.32,0.97966},{2.33,0.98019},
   {2.34,0.98072},{2.35,0.98123},{2.36,0.98172},{2.37,0.98221},{2.38,0.98269},{2.39,0.98315},
   {2.40,0.98360},{2.41,0.98405},{2.42,0.98448},{2.43,0.98490},{2.44,0.98531},{2.45,0.98571},
   {2.46,0.98611},{2.47,0.98649},{2.48,0.98686},{2.49,0.98723},{2.50,0.98758},{2.51,0.98793},
   {2.52,0.98826},{2.53,0.98859},{2.54,0.98891},{2.55,0.98923},{2.56,0.98953},{2.57,0.98983},
   {2.58,0.99012},{2.59,0.99040},{2.60,0.99068},{2.61,0.99095},{2.62,0.99121},{2.63,0.99146},
   {2.64,0.99171},{2.65,0.99195},{2.66,0.99219},{2.67,0.99241},{2.68,0.99263},{2.69,0.99285},
   {2.70,0.99307},{2.71,0.99327},{2.72,0.99347},{2.73,0.99367},{2.74,0.99386},{2.75,0.99404},
   {2.76,0.99422},{2.77,0.99439},{2.78,0.99456},{2.79,0.99473},{2.80,0.99489},{2.81,0.99505},
   {2.82,0.99520},{2.83,0.99535},{2.84,0.99549},{2.85,0.99563},{2.86,0.99576},{2.87,0.99590},
   {2.88,0.99602},{2.89,0.99615},{2.90,0.99627},{2.91,0.99639},{2.92,0.99650},{2.93,0.99661},
   {2.94,0.99672},{2.95,0.99682},{2.96,0.99692},{2.97,0.99702},{2.98,0.99712},{2.99,0.99721},
   {3.00,0.99730},{3.01,0.99739},{3.02,0.9974}, {3.03,0.9976}, {3.04,0.9976}, {3.05,0.9978},
   {3.06,0.9978}, {3.07,0.9978}, {3.08,0.9980}, {3.10,0.9980}, {3.11,0.9982}, {3.12,0.9982},
   {3.13,0.9982}, {3.14,0.9984}, {3.15,0.9984}, {3.16,0.9984}, {3.17,0.9984}, {3.18,0.9986},
   {3.19,0.9986}, {3.20,0.9986}, {3.21,0.9986}, {3.22,0.9988}, {3.23,0.9988}, {3.24,0.9988},
   {3.25,0.9988}, {3.26,0.9988}, {3.27,0.9990}, {3.28,0.9990}, {3.29,0.9990}, {3.30,0.9990},
   {3.31,0.9990}, {3.32,0.9990}, {3.33,0.9992}, {3.34,0.9992}, {3.36,0.9992}, {3.37,0.9992},
   {3.38,0.9992}, {3.39,0.9994}, {3.40,0.9994}, {3.41,0.9994}, {3.42,0.9994}, {3.43,0.9994},
   {3.44,0.9994}, {3.45,0.9994}, {3.46,0.9994}, {3.47,0.9994}, {3.48,0.9994}, {3.49,0.9996},
   {3.50,0.9996}, {3.51,0.9996}, {3.52,0.9996}, {3.53,0.9996}, {3.54,0.9996}, {3.55,0.9996},
   {3.56,0.9996}, {3.57,0.9996}, {3.58,0.9996}, {3.59,0.9996}, {3.60,0.9996}, {3.70,0.9998}
};
 
Ich danke Ihnen!