Einzelnen Beitrag anzeigen
  #5 (permalink)  
Alt 08.01.12
JoeDormann JoeDormann ist offline
Gesperrter Benutzer
 
Registriert seit: Sep 2011
Ort: Kassel
Beiträge: 749
JoeDormann befindet sich auf einem aufstrebenden Ast
JoeDormann eine Nachricht über Skype™ schicken
Standard

Zitat:
Zitat von Biatsch Beitrag anzeigen
PHP-Code:
extern int Delta 20;
extern double Risk 0.02;

double Max High[Highest(NULL,240,MODE_HIGH,5,0)];
double Balance AccountBalance();

if((
Max Bid) >= Delta*Point){
   
double dLotsShort = (Balance*Risk*Bid) / (100000*(Max-Bid));

Diese Funktion führt ständig zur Fehlermeldung "Zero Divide".
Ich vermute also, dass der Nenner, genauer (Max-Bid) häufig zu 0 wird. (?)
Aber sollte die if-Bedingung nicht genau diesen Fehler vermeiden ?
Ich wäre dankbar über Tipps, was da nicht stimmt.
PS: Mein Broker zeigt den Kurs auf 5 Nachkommastellen an.

Diese Funktion soll den maximalen Kurs der letzten 5 Candles ermitteln und den StopLoss so setzen, dass ich ich im Falle eines Verlusts 2% (Risk) meines Kapitals verliere.
Hallo,
da kann man doch vorbeugen ::
double x=Max-Bid;
if(x==0) x=0.0000001;
double dLotsShort = (Balance*Risk*Bid) / (100000*(Max-Bid+x));
Ist doch easy !
Das da keiner allein drauf kommt
Wenn es jetzt noch auftritt, dann muß der Fehler an einer anderen Stelle auftreten.
Kannst ja mal den kompletten Code posten.

Gruß Joe