Dienstag, 16. April 2024, 09:25 UTC+2

Sie sind nicht angemeldet.

  • Anmelden
  • Registrieren

Hans

unregistriert

1

Samstag, 30. März 2013, 12:52

Master Slave Positionsabfrage - kein Testergebnis

Hallo,

Mein Slave Handelssystem fragt die Position und die Kapitalentwicklung des Master wie folgt ab:

Definitionen:
calc Position: #_Position A#;
global calc Kapital: #_Kapital A#;
global calc KapitalSteigt:
Ref(HHVBars(Kapital, [BarsPer:2.0,1,10,1,10,1,1]),-1) <= [Anzahl:2.0,1,10,1,10,1,1];
global calc Exit:
Ref(LLVBars(Kapital, [ExitPer:6.0,1,10,1,10,1,1]),-1) <= [ExitAnzahl:2.0,1,10,1,10,1,1];
global calc EnterLong: Position = 1 and KapitalSteigt;
global calc EnterShort: Position = -1 and KapitalSteigt;

Folgende Fehlermeldung tritt auf:



Die Fehlermeldung wird ignoriert und das Handelssystem funktioniert auch, Trades werden richtig angezeigt. Die Tradeliste ist ebenfalls mit allen Werten vorhanden.
Lediglich das Testergebnis wird nicht ausgegeben.



Wie müssten die Definitionen umgeschrieben werden, um keine Fehlermeldung und das Testergebnis zu erhalten?

Frohe Ostern wünsch ich Euch allen.

Hans

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

2

Sonntag, 31. März 2013, 15:48

Ja und wie ist der in der Fehlermeldung erwähnte Parameter LONG definiert?
Gruss
Bernd

Hans

unregistriert

3

Montag, 1. April 2013, 10:49

Es gibt im Handelssystem kein "Long".
Die Handelsregeln sind wie folgt definiert:
Enter Long: EnterLong
Exit Long: Exit
Enter Short: EnterShort
Exit Short: Exit

Die Definitionen habe ich oben schon ausgeführt. Mehr gibt es im Handelssystem nicht. Worauf sich die Fehlermeldung "Long" bezieht weiss ich nicht.

Hans

unregistriert

4

Montag, 1. April 2013, 11:10

Hallo Bernd,
ich weiss jetzt doch worauf sich die Fehlermeldung bezieht; im Mastersystem habe ich in den Handelsregeln Long stehen und in den Definitionen die Handelsregel definiert.
Was daran aber falsch ist weiss ich trotzdem nicht.

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

5

Montag, 1. April 2013, 13:34

in den Handelsregeln Long stehen

Ohne den betreffenden Code zu kennen, ist es jetzt schwer zu sagen, woran es liegt.

Allgemein kann ich nur sagen, gewöhnlich klappt die Verbindung zum Kontext nicht, weil man irgendwo ein global vergessen hat vor calc oder const. Auch global const statt global calc verwendet führt gere zu solchen Fehlern.
Gruss
Bernd

Hans

unregistriert

6

Montag, 1. April 2013, 14:50

Die Definition für die Handelsregeln im Master lauten wie folgt:

global calc KML1:
KursmusterWerteDTW(High,
#
Relativ: 100,10, -3,-5,-2,
#,
12, 3);


global calc Long: Ref(
KML1>Ref(KML1,-1),-1);

// Kursmuster Short
global calc KMS1:
KursmusterWerteDTW(Low,
#
Relativ: 100, 5,-2,10,-10,
#,
10,2);

global calc Short: Ref(
KMS1<Ref(KMS1,-1),-1);

Testeinstellung bei Master und Slave: Open, Delay 0

Die Definition für das Slave System habe ich oben bereits aufgeführt.

Das ist eigentlich alles woraus die Master/Slave Konstruktion besteht.

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

7

Montag, 1. April 2013, 16:37

OK zugegeben, die Fehlerquelle erschliesst sich einem nicht auf den den ersten Blick.

Was passiert, wenn Du statt calc Position: #_Position A#;
schreibst: global calc Position: #_Position A#;
?
Gruss
Bernd

Hans

unregistriert

8

Montag, 1. April 2013, 17:36

Danke für Deine Hilfe Bernd,

auch das habe ich schon probiert; ich denk ich hab alle Varianten von gobal/calc/const durch. Bei fehlerhafter Definition kommt ohnehin schon beim "testen" eine Fehlermeldung.
Sowohl bei global calc Position und auch bei calc Position gibt es beim Testen keine Fehlermeldung, erst nach dem Handelssystem einstellen/OK kommt die benannte Fehlermeldung mit dem fehlenden Testergebnis.

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

9

Dienstag, 2. April 2013, 14:21

Hallo Hans

Ich habe mal ein Projekt angelegt und die Codes mit deinen Angaben (open, Delay 0) in zwei Systeme kopiert (Master/Slave Geschichte wie von Dir beschrieben), es kommt hier keine Fehlermeldung und die Testergebnisse sehen sachlich korrekt aus. Am Start war Investox V6.7.1.

Irgendwie fehlt da noch eine Angabe, irgendwas muss sich in Deinem Projekt von Deiner textuellen Beschreibung in diesem Thread hier unterscheiden oder Du hast event. eine (sehr viel?) ältere Investox Version als ich. Jedenfalls sehe ich aus Deinem bisherigen Beschrieb nichts, was die von Dir beobachtetetn Symptome erklären würde.
Gruss
Bernd

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Bernd« (2. April 2013, 14:27)


sten

Experte

Registrierungsdatum: 6. September 2002

Beiträge: 2 879

10

Dienstag, 2. April 2013, 17:02

Hallo Hans,
diese Master-Slave-Konstruktion ist nicht sehr elegant, z.B. wegen der Codeverdopplung.
Hast Du es schon mal mit dem Kontoserver für die Kapitalkurvenauswertung versucht?

Viele Grüsse
Daten

Bernd

Experte

Registrierungsdatum: 5. Juni 2005

Beiträge: 4 070

Wohnort: Iringsweg

11

Dienstag, 2. April 2013, 18:30

diese Master-Slave-Konstruktion ist nicht sehr elegant, z.B. wegen der Codeverdopplung.

Sten, ich habe nicht den Eindruck, dass Du den Thread aufmerksam gelesen hast. Da ist keine Code-Verdopplung. Hans hat doch jeweils völlig anderen Codes veröffentlicht für den Master und den Slave!

Der Kontoserver hat andererseits auch nichts mit der Fehlermeldungsproblematik zu tun, die Hans in diesem Thread zur Lösung aufgegeben hat. OK, man kann möglicherweise seine eigentliche Handelsidee (die von ihm hier nicht völlig offen gelegt wurde, by the way) vermittels Kontoserver lösen. Aber was hat das mit Hans' Fragestellung aus Posting Nummer 1 zu tun, und warum bekommt er diese Fehlermeldung, die sich nicht nachvollziehen lässt? Mmh?

Codeverdopplung? Sorry aber :baby: , und ich hoffe, dass Du nicht wegen dieser kritischen Anmerkung gleich wieder Nora aus der Versenkung auspackst.
Gruss
Bernd