Previous Next

GTrade.CalculateCRV()

Gibt das Chance-Risiko-Verhältnis der eingegebenen Preise zurück.

double  GTrade.CalculateCRV(
   double  stopLoss,    // StopLoss Wert
   double  takeProfit,  // TakeProfit Wert
   double  pending = 0  // Optionaler Pending Wert
   );

Parameter

stopLoss

[in]  Der Preis des StopLoss.

takeProfit

[in]  Der Preis des TakeProfit.

pending

[in]  Optional der Pending-Preis. Sollte kein Wert oder 0 angegeben sein wird der aktuelle Bid bei Long gerichteten CRV und Ask bei Short gerichtetem CRV verwendet.

Rückgabewert

Gibt das Chance-Risiko-Verhältnis als double zurück. Im Fehlerfall wird 0 (Null) zurückgegeben.


Beispiel:

//--- Einbinden der Glib Klassen
#include <Glib.mqh>

//--- Erzeugung eines Zeigers zu einem leeren Klassenobjektes
GTrade *trade;
GChartPatterns *chartPatterns;


int OnInit ()
{
   //--- Die Klasse dem leerem Klassenobjekt zuweisen
   trade = gTrade();
   chartPatterns = gChartPatterns();

   //--- Die Daten der Klasse initialisieren
   trade.Init();
   chartPatterns.Init();

   return(INIT_SUCCEEDED);
}

void OnDeinit (const int reason)
{
   //--- Bei beenden Speicher freigeben
   delete trade;
   delete chartPatterns;
}


void OnTick ()
{
   if ( chartPatterns.Ready() ) //--- Wird erst ausgeführt wenn alle Daten bereit sind
   {
      //--- Struktur Array erstellen
      GStructChartPatterns patternInfo;

      //--- Wartet auf ein Breakout-Signal
      if (chartPatterns.Signal(patternInfo))
      {
         //--- Wenn die Richtung der Formation Long ist
         //--- und CRV über 2.6:1,
         if ( patternInfo.targetDirection == DIRECTION_LONG && trade.CalculateCRV(patternInfo.middle, patternInfo.highest) >= 2.6 )
         {
            //--- dann öffne einen Trade mit StopLoss am Mittelpunkt der Formation
            trade.Open(patternInfo.middle);
         }
      }
   }
}


Sehen Sie auch

GTrade.CalculateCRV