Dienstag, 16. April 2024, 13:32 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.

Lenzelott Männlich

Experte

Registrierungsdatum: 30. Dezember 2002

Beiträge: 3 050

Wohnort: Giessen

1

Freitag, 5. Juni 2009, 13:19

Robustheitstest als Excelfile

Hallo Herr Knöpfel,

da ich bei Robustheitstest die Ergebnisse mittels einer Multifaktor Auswertung mit Excel "nachbearbeite" um eine stabile Einstellung für die Paremter zu finden wäre es für mich sehr hilfreich, wenn man den Robustheitstest komplett als Excelfile abspeichern könnte.
Aktuell muss ich nach jedem RT jeden Parameter einzeln mit CTRL+D kopieren und in ein Blatt einfügen.

Sample volalang volafak.zip
If you think it´s expensive to hire a professional, wait until you hire an amateur.

VBS

Fortgeschrittener

Registrierungsdatum: 9. November 2008

Beiträge: 109

2

Sonntag, 2. Dezember 2018, 19:56

Hallo Herr Knöpfel,
das würde ich mir auch wünschen! :D
LG VBS

dubi

Profi

Registrierungsdatum: 1. September 2002

Beiträge: 331

3

Montag, 3. Dezember 2018, 01:26

Das braucht es meines Erachtens gar nicht. Ich habe mir ein "eigenes Testerbebnis" erstellt und dann dieses robustet. In dem "Testergebnis" schreibe ich mir die interessanten Ergebnisse dann in eine Datei (da kann ich ja mehr also nur das robustete Testergebnis wegschreiben). Die Daten können dann einfach mit Excel eingelesen werden (wenn der Robustheitstest fertig ist).
Kann das gerne etwas ausführlicher beschreiben, wenn es so nicht klar ist.

Grüsse
-dubi

VBS

Fortgeschrittener

Registrierungsdatum: 9. November 2008

Beiträge: 109

4

Montag, 3. Dezember 2018, 21:13

Hallo dubi,
ja ein Beispiel wie du das machst wäre sehr hilfreich. Ich kann mir da kaum was vorstellen.

Auch nur die Testergebnisse rausschreiben, wie geht das?

Und dann wieder in den Robustheitstest bringen?
LG VBS

Philipp Männlich

Benutzer

Registrierungsdatum: 9. Mai 2016

Beiträge: 47

5

Montag, 3. Dezember 2018, 22:14

Hallo,

an so einem Beispiel wäre ich auch sehr interessiert! Lustigerweise hätte ich diesem Thread demnächst selbst wieder hervorgeholt weil ich fragen wollte ob Lenzelotts Wunsch (an dieser Stelle ein "Happy Birthday" von mir) in naher Zukunft vielleicht umgesetzt werden könnte denn ich würde auch gerne die Ergebnisse des Robustheitstest gerne bei Bedarf in Excel weiter auswerten.
Wenn das auf diese Weise wie Dubi es angedeutet hat schon möglich wäre würde mich das auf jeden Fall freuen...wobei ich eine fest eingebaute Exportfunktion wie von Lenzelott in seinem Ursprungspost gewünscht vermutlich noch komfortabler wäre, oder?

Lg,
Philipp

dubi

Profi

Registrierungsdatum: 1. September 2002

Beiträge: 331

6

Montag, 3. Dezember 2018, 23:43

Hallo zusammen,

also die Ergebnisse aus Investox (auch dem Rob-Test) in eine Datei zu schreiben geht bei mir so:
1. Erstelle ein benutzerdefiniertes Testergebnis (z.B. #ForumTest)
2. Beziehe dieses Testergebnis in die Testergebnisse vom Rob-Test ein (Unter "Rob-Test einstellen, Schritt 2 von 3)
3. Rob-Test laufen lassen (dabei werden die Ergebnisse im Beispiel unten in C:tempTestoutput.txt geschrieben).

Das benutzerdefinierte Testergebnis kann z. B. so aussehen:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
dim i, wshShell
Set filesys = CreateObject("Scripting.FileSystemObject")
Set wshShell = CreateObject( "WScript.Shell" )
Set filetxt = filesys.OpenTextFile("C:tempTestoutput.txt", 8, True)


x=TestErg("AnnualNetProfit%")
if TestErg("AllTrades")>0 then 
	filetxt.WriteLine( vbtab & TestErg("AllTrades") & vbtab & round(x,5) & vbtab & round(TestErg("EquityRSquared"),5) & vbtab & round(TestErg("MaxUnderwaterDrawdown"),5) & vbtab & TestErg("LongTrades") & vbtab & TestErg("ShortTrades") & vbtab & TestErg("AnnualNetProfit%") & vbtab & TestErg("EquitySharpeRatio"))
end if

' LogbuchMeldung 2, 1, "Datei geschrieben", "Datei geschrieben"

if err.number<>0 then 
	LogbuchMeldung 0, 1, "ErrHandler", "Calling Error Handler..."
	call myErrHandler
end if

set filetxt = nothing
set filesys = nothing
set wshshell = nothing
sub MyErrHandler
	for i =1 to 30 
		LogbuchMeldung 0, 1, "Dateifehler", "Kann Ausgabedatei nicht schreiben, Versuche erneut...."
		WScript.Sleep(500)
		filetxt.WriteLine( vbTab & SCES & vbTab & TestErg("AllTrades") & vbTab & round(x,5) & vbTab & round(TestErg("EquityRSquared"),5) & vbTab & round(TestErg("MaxUnderwaterDrawdown"),5) & vbTab & TestErg("LongTrades") & vbTab & TestErg("ShortTrades") & vbTab & TestErg("LongShortRatio") & vbTab & TestErg("EquitySharpeRatio"))
		if err.number=0 then 
			exit for
		end if
	next 
end sub

Ergebnis =  x


Wie die Datei heisst, welche Ergebnisse da weggeschrieben werden und wie die formatiert werden, kann dann ja jeder selbst zusammenbauen. Das oben soll nur illustrativ sein.
Die erstellte Datei kann dann einfach mit Excel eingelesen werden (kann man ja auch noch als csv ausgeben etc.).

Wie man die Ergenbisse dann allerdings zurück in den Rob-Test bringt wüsste ich auch nicht. Was soll denn da genau zurückgeschrieben werden?

Grüsse
-dubi

VBS

Fortgeschrittener

Registrierungsdatum: 9. November 2008

Beiträge: 109

7

Dienstag, 4. Dezember 2018, 22:06

Hallo dubi,

herzlichen Dank für dein gutes Beispiel!
Es hilft einem in der Auswertung in der Tat weiter. :thumbsup:


Allerdings gibts auch Probleme; wenn z.B. bei 10 Trades kein Verlusttrade dabei ist, dann wird bspw. der entsprechende Profitfaktor nicht mit ausgegeben.

- Wenn ich nach dem durchgeführten Investox Robustheitstest die Daten in Excel lade, dann steht da 1E+308.
- Im exportierten Testfile fehlt diese Variable komplett.

Kurz: Immer wenn es bei einem Testergebnis zu 1E+308 kommt fehlt in der Textdatei die entsprechende Zeile.
Läßt sich das zumindest auf 0 stellen? Ist mir nicht gelungen.


Das zweite Problem das ich habe: Wie bekomme ich die Parameter der Variable des Robustheitstests mit in die TxT-Ausgabe? Z.B. GD(10) bis GD(200).
(Das "Cluster" Beispiel hat bei mir nicht funktioniert.)

LG und schon mal Danke im Voraus
VBS

dubi

Profi

Registrierungsdatum: 1. September 2002

Beiträge: 331

8

Dienstag, 4. Dezember 2018, 22:52

Hallo VBS

Hab grad nur wenig Zeit.

Zum ersten Problem: du kannst das ja innerhalb vom Script abfangen. Also weise einer Variablen Z.B. ProfFakt den Wert von Profitfaktor zu, aber nur wenn der Profitfaktor z.B. grösser als -1000 und kleiner als 1000 ist. Falls das nicht der Fall ist, gibst du dem einen Wert, den du in Excel als Fehler einlesen kannst. Macht das in etwa Sinn?

Zum zweiten Problem: du kannst in deinem Handelssystem (welches du robustest) eine Variable definieren (zB. GDVal), die zu dann für den GD verwendest. Die Variable kannst du im Script dann mit
GetGlobalVar "GDVal", GDVal
einlesen und als GDVal entsprechend in die Ausgabe an die erste Stelle der Zeile hängen.

Hab das grad nicht getestet. Melde Dich gerne, wenn du noch Hilfe brauchst.

Grüsse
-dubi

VBS

Fortgeschrittener

Registrierungsdatum: 9. November 2008

Beiträge: 109

9

Mittwoch, 5. Dezember 2018, 00:27

Hallo dubi,
habs hin bekommen. :D
Vielen Dank für die Hilfe!
LG
VBS

dubi

Profi

Registrierungsdatum: 1. September 2002

Beiträge: 331

10

Mittwoch, 5. Dezember 2018, 07:08

gerne :D

Philipp Männlich

Benutzer

Registrierungsdatum: 9. Mai 2016

Beiträge: 47

11

Donnerstag, 6. Dezember 2018, 17:51

Hallo dubi,

auch von mir ein herzliches Dankeschön für dein Beispiel! :thumbsup:

LG,
Philipp