Anomalie auf einem Snippet

3 Antworten

Aschab

Abonnent, bbp_participant, Gemeinschaft, 3 Antworten.

Profil besuchen

vor 8 Jahren #114530

Ich habe ein erweitertes Equity Control mit einer Reihe von Protokollen zu Testzwecken erstellt:

 

public PF() {
      setName("PF");
      
      addDoubleParameter("StartValue", "Start Trading Value", 2d, 0d, 200d, 0.1d);
      addDoubleParameter("StopValue", "Stop Trading Value", 1.5d, 0d, 200d, 0.1d);
      addIntParameter("Zeitraum", "Zeitraum", 10, 1, Integer.MAX_VALUE, 1);
 
   }
 public void computeNewTradeSizes(Trade[] trades, double[] balanceControlLine) throws Exception {
      double startv = getDoubleParameterValue("StartValue");
      double stopv = getIntParameterValue("StopValue");
      boolean totrade = false;
      logToFile("test", String.valueOf(startv));
      logToFile("test", String.valueOf(stopv));
        for(int i=0; i<trades.length; i++) {
            if(balanceControlLine[i] >= startv){
               totrade = true;
            }
            if(balanceControlLine[i] <= stopv){
               totrade = false;
            }
            logToFile("test", String.valueOf("para " + i + " control line es: " + balanceControlLine[i] + " el valor de to trade es: " + totrade));
            if(balanceControlLine[i] == VALUE_UNDEFINED || totrade == true) {         
            } sonst {
               trades[i].size = 0f;
            }
        }
    }
 
Auf meinem Computer funktioniert die Testversion einwandfrei, aber auf dem Computer meines Kunden wird der "StopValue"-Parameter immer als 0 protokolliert. Wir mussten ihn im Code in eine Konstante umwandeln, aber ich würde gerne wissen, was da passiert ist.

 

0

tomas262

Administrator, sq-ultimate, 2 Antworten.

Profil besuchen

vor 8 Jahren #134524

Hallo, verwenden Sie in beiden Fällen dieselben Versionen von QA?

0

Aschab

Abonnent, bbp_participant, Gemeinschaft, 3 Antworten.

Profil besuchen

vor 8 Jahren #134525

Ich habe die kostenlose Testversion, ist das ein Problem?

0

Tamas

Kunde, bbp_participant, community, sq-ultimate, 73 Antworten.

Profil besuchen

vor 8 Jahren #134526

Hallo Aschab, 

 

Ich denke, das Problem ist, dass definieren Sie einen "StopWert" als doppelter Wert

addDoubleParameter("StopValue", "Stop Trading Value", 1.5d, 0d, 200d, 0.1d);

 

aber im folgenden Code erhalten Sie es als Integer, wodurch der Dezimalteil des Wertes entfernt wird

double stopv = getIntParameterValue("StopValue");

 

Mit freundlichen Grüßen,

Tomas

0

Ansicht von 3 Antworten - 1 bis 3 (von insgesamt 3)