Freitag, 19. April 2024, 01:03 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Lieber Besucher, herzlich willkommen bei: INVESTOX-Forum. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

MacDschie

unregistriert

1

Mittwoch, 16. April 2014, 21:36

Fehler beim Verwenden einer Definition für den Prozentsatz im Kapitaltest eines Handelssystems

Hallo,

Ich habe ein Handelssystem, bei dem ich in den Testbedingungen, Register Management, im Kapitaltest eingestellt habe, dass für jeden Trade vom Kapital jeweils ein gewisser Prozentsatz investiet werden soll. Im Eingabefeld "Prozentsatz" habe ich dabei eine Optimierungsvariable eingetragen. Steht die auf einer ganzen Zahl, funktioniert alles. Wenn ich sie aber z. B. auf den Wert 4,5 setze, bekomme ich folgende Fehlermeldung ins Logbuch:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
Projekt: Testprojekt
System: T5
Modul: Formelberechnung
Prozedur: Formel-Endberechnung
Vorgang: Parameter-Ermittlung
Titel: Google
Parameter: 4,5
Meldung: Unverständliche oder ungültige Angaben.
Abschnitt:
4,5
Berechnung:
4,5


Trage ich die 4,5 direkt in das Eingabefeld "Prozentsatz" ein, geht alles. Die Positionsgröße passt. Investox kommt also wohl prinzipiell mit Kommazahlen in diesem Feld zurecht. Nur wenn die Zahl von einer Variablen aus den HS-Definitionen (deklariert als "Global Const PositionSize: [PositionSize:4.5,1,5,1,5,0.1,3];") geliefert wird, geht etwas schief. Woran könnte das liegen?

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

2

Mittwoch, 16. April 2014, 22:22

Sieht nach einem Problem mit den sogenannten "locals" aus auf Deinem PC (in dem Fall eine simple Punkt-Komma Verwaxseling).

Während Du hier ein Komma als Dezimalpunkt zeigst für die 4,5 ...
Trage ich die 4,5 direkt in das Eingabefeld "Prozentsatz" ein, geht alles.

... hast Du im Code den Dezimalpunkt als Punkt bei der 4.5:
Nur wenn die Zahl von einer Variablen aus den HS-Definitionen (deklariert als "Global Const PositionSize: [PositionSize:4.5,1,5,1,5,0.1,3];") geliefert wird, geht etwas schief.

Da würd' ich jetzt mal anfangen zu suchen. Der Fehler passiert übrigens gerne, wenn man Code von einer deutschen Maschine auf eine in Lokalisation Swissgerm oder Englisch kopiert bzw. umgekehrt.
Gruss
Bernd

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Bernd« (17. April 2014, 07:15)


Investox

Administrator

Registrierungsdatum: 31. August 2002

Beiträge: 5 680

3

Donnerstag, 17. April 2014, 09:31

Hallo,

event. liegt auch ein Programm-Problem vor, werden wir prüfen. Wenn Sie "calc" statts "const" einsetzen, sollte es vorläufig auf jeden Fall gehen:

Quellcode

1
Global Calc PositionSize: [PositionSize:4.5,1,5,1,5,0.1,3];


Viele Grüße
Andreas Knöpfel

MacDschie

unregistriert

4

Donnerstag, 17. April 2014, 13:18

Im Code steht immer schön der Punkt, mit Komma ([PositionSize:4,5,1...) würde die Optimierungsvariable auch syntaktisch nicht funktionieren. Im Eingabefeld dagegen kann ich manuell keinen Punkt eintragen. Der wird vom Programm rausgenommen und aus der 4.5 wird eine 45. Das passt alles soweit.

Ich vermute hier auch einen Bug in Investox. Die 4.5 aus der Konstante wird wohl intern in 4,5 umgewandelt (vielleicht damit's mit dem Eingabefeld passt) und dann, bevor damit gerechnet wird, nicht wieder in 4.5 zurück konvertiert. Oder irgend sowas. Mit "calc" statt "const" klappt alles prima - danke auch für den Tipp! Damit kann ich weiter machen :-) - und ich drücke die Daumen, dass der Fehler schnell gefunden werden kann.