Jump to content
Tom Next - Daytrading Community

Equity Curve Simulator


oldschuren
 Share

Recommended Posts

Verbesserungsvorschlag:

 

- Grafik mit Skalierung in R's

- Übergabe einer Liste des eigenen Tradeverlauf in R's, der Einfachheit wegen wie folgt:

 

-1

2

-0,5 (oder -0.5)

-2

 

>> auf deren Basis eine Simulation vornehmen >> vervielfältigen und mischen

- Berechnung von CRV und TQ auf dieser Basis...

 

Finde ich gut, insbesondere den mit der Liste. Wenn ich mich richtig erinnere hatte ich mal mein kleines Simulationsprogramm hier eingestellt (für Windows), das 10000 x 100 Trades anhand so einer R-Liste und Zufallsgenerator simuliert und die Streubreite der Ergebnisse und der Drawdowns als Diagramm darstellt.

 

Wenn das interessiert und nicht mehr zu finden sein sollte bitte kurze Info.

 

Lutz

Link to comment
Share on other sites

Wenn ich mich richtig erinnere hatte ich mal mein kleines Simulationsprogramm hier eingestellt (für Windows), das 10000 x 100 Trades anhand so einer R-Liste und Zufallsgenerator simuliert und die Streubreite der Ergebnisse und der Drawdowns als Diagramm darstellt.

 

Wenn das interessiert und nicht mehr zu finden sein sollte bitte kurze Info.

 

Habe es mal rausgesucht

(Ich denke zumindest, dass es ist was du meintest)

 

http://www.tom-next.com/community/topic/58899-risk-money-management-fr-trader/page-2?do=findComment&comment=111127

Link to comment
Share on other sites

 

Das war eine Vorstufe in Excel. Das Windows-Programm war flinker und stellte die Daten dann besser dar.

Sollte ich das doch noch nicht gepostet haben?

 

Lutz

Link to comment
Share on other sites

Das war eine Vorstufe in Excel. Das Windows-Programm war flinker und stellte die Daten dann besser dar.

Sollte ich das doch noch nicht gepostet haben?

 

Ich habe zumindest in dem Thread aus meinem Link nichts anderes gefunden.

Weiß nicht ob du es eventuell woanders hochgeladen hast, RAINWORM meinte ja, er hätte dein Programm noch.

Link to comment
Share on other sites

Ich habe da noch einen Verbesserungsvorschlag und hoffe, dass das nicht zu viel Arbeit macht. Leider habe ich vom Grafiken erzeugen keinen Plan sonst würde ich es selber einbauen und die neue Version bereit stellen.

 

Also: kann man da rechts eine Skala anbringen so dass man ungefähr abschätzen kann, wo die Equitykurven enden, die gezeichnet werden? Ich mache nämlich gerade einen Test mit "realen" zahlen. Mehr folgt dann bei Interesse noch cool.gif.

Link to comment
Share on other sites

Hab das Unterverzeichnis .svn schon gesehen. Hattest du mit im ZIP drin. Aber anscheinend nur für das .js

jein, ich habs nur für /js vergessen rauslöschen...

 

Also: kann man da rechts eine Skala anbringen so dass man ungefähr abschätzen kann, wo die Equitykurven enden, die gezeichnet werden?

Machbar ja, ich persönlich hab derzeit nur zuviel anderes um die Ohren (vor allem unter der Woche). Allgemein kann man dann natürlich auch überlegen Chartbibs einzubinden. Da hat man dann meist einige Funktionen mehr automatisch dabei. Aber dann sind Sonderwünsche umso schwerer.

Link to comment
Share on other sites

Okay, ich hab jetzt den jqplot drin. Die Grafik sieht deutlich besser aus. Außerdem sind nun viel mehr Optionen im Chart (einfach) umsetzbar. Ist jetzt allerdings ein wenig langsamer. Dafür gibt es aber auch eine Koordinatenanzeige, wenn man die Maus über das Chartbild bewegt palomitas.gif

 

@Mythos: bitte auch online stellen

@lutzs: du kannst dir die Ansteuerung von jqplot anschauen

 

Neues Charting:

new_chart.png

 

Überarbeites Mobil-Layout:

new_mobile.png

ECS_014.zip

  • Upvote 2
Link to comment
Share on other sites

Sehr sexy! Hab nicht gedacht das die Einbindung von jqplot so einfach geht.

Ich hab noch eine kleine Änderung vorgenommen: du machst derzeit direkt nach dem Erzeugen des Charts ein replot. Das macht es bei mir deutlich langsamer weil er den Chart zweimal zeichnet.
Ohne das Replot cleared er aber den alten Chart nicht, deswegen merk ich mir das Chartobjekt und destroye es vor einem neuen Plot. Dadurch wird der Container geleert und trotzdem nicht doppelt gezeichnet.

Änderung nur in :
EquityCurveSimulator.class.js.txt

Version steht wie gehabt online unter http://www.mathewg.at/EquityCurveSimulator

Link to comment
Share on other sites

Sehr sexy! Hab nicht gedacht das die Einbindung von jqplot so einfach geht.

 

Ich hab noch eine kleine Änderung vorgenommen: du machst derzeit direkt nach dem Erzeugen des Charts ein replot. Das macht es bei mir deutlich langsamer weil er den Chart zweimal zeichnet.

Ohne das Replot cleared er aber den alten Chart nicht, deswegen merk ich mir das Chartobjekt und destroye es vor einem neuen Plot. Dadurch wird der Container geleert und trotzdem nicht doppelt gezeichnet.

 

Änderung nur in :

attachicon.gifEquityCurveSimulator.class.js.txt

 

Version steht wie gehabt online unter http://www.mathewg.at/EquityCurveSimulator

 

Dank an die eifrigen Entwickler. Eine kleine Änderung: 100 Trades in der Voreinstellung erscheinen mir realistischer, 1000 bügeln die Startphase in der es auch mal ins Minus gehen kann ganz schön weg.

 

Lutz

Link to comment
Share on other sites

Sehr sexy! Hab nicht gedacht das die Einbindung von jqplot so einfach geht.

Hätte ich auch nicht gedacht, dass es letztlich so einfach war. Bin ja nicht so der Javascript-Held. Damit wären wir beim Thema: derzeit habe ich eine if-Abfrage verwendet, um den Chart linear/logarithmisch zu zeichnen. Der einzige Unterschied ist ein Parameter in den Optionen beim Erstellen des Objekts. Wenn du weißt, wie man die Optionen im Nachhinen (also am erstellten Objekt) ändern kann, dann nur zu. Der Code würde dann was kürzer und der Teil wäre nicht mehr redundant.

 

 

Ohne das Replot cleared er aber den alten Chart nicht, deswegen merk ich mir das Chartobjekt und destroye es vor einem neuen Plot. Dadurch wird der Container geleert und trotzdem nicht doppelt gezeichnet.

Hinzu kommt, dass vorher doch ein Memory-Leak auftrat, oder? Das Objekt wird erzeugt und nie frei gegeben, stattdessen immer wieder ein neues.

 

 

Eine kleine Änderung: 100 Trades in der Voreinstellung erscheinen mir realistischer, 1000 bügeln die Startphase in der es auch mal ins Minus gehen kann ganz schön weg.

Derjenige, der die nächste Version erstellt, kann die eine 0 noch schnell entfernen biggrin.gif

Link to comment
Share on other sites

Wenn du weißt, wie man die Optionen im Nachhinen (also am erstellten Objekt) ändern kann, dann nur zu.

 

Derjenige, der die nächste Version erstellt, kann die eine 0 noch schnell entfernen

There u go:

 

bullet_go.png



var options= {
			  seriesDefaults: {
	        showMarker:false,
	      },
	      axesDefaults:	{
	        labelRenderer: $.jqplot.CanvasAxisLabelRenderer
	      },
	      axes: {
	        xaxis: {
	          label: "# trade",
	          pad: 0
	        },
	        yaxis: {
	          label: "equity"
	        },
	      },
	      cursor: {
	      	show: true,
	      	tooltipLocation:'sw'      
	      }
	    };
	    
    if (this.fieldScaleType.value == 1) {  // logarithmische y-Achse
        options.axes.yaxis.renderer= $.jqplot.LogAxisRenderer;
	      options.axes.yaxis.tickDistribution='power';
    } else {
        options.axes.yaxis.renderer= $.jqplot.LinearAxisRenderer;
    }
	  
    if(this.myChart) {
        this.myChart.data= lines;
        this.myChart.resetAxesScale(true,options);
        this.myChart.replot(options);
    } else
      this.myChart = $.jqplot ('simulatorChart', lines, options);
	  

 

Zip von 0.1.5 (zugegeben nur kleinigkeit, aber die 3. stelle is ja für bugfixes ;)

015.zip

 

und am server is natürlich auch schon.

  • Upvote 2
Link to comment
Share on other sites

Das "Ding" gefällt mir mittlerweile richtig gut dance.gif

 

Was brauchen wir noch an Funktionen für ein offizielles v1 Release?

 

Und bleibt der ECS auf mathewg.at oder kommt der hier hin auf tom-next.com?

 

Außerdem würde ich vorschlagen, dass dieser Thread hier zum Development-Thread wird. Parallel dazu bräuchten wir einen Thread, in dem es inhaltlich um den/einen Equity Curve Simulator geht. Am besten in Post #1 dann mit einer Erklärung, wozu und warum und wie Inputs und Outputs im Zusammenhang stehen und was das fürs Trading bedeutet. Wenn ich Leute einspannen dürfte, würde ich für dieses Post lutzs und oldschuren nominieren (lutzs der ja schon auf eigene Veranlassung hin ein Excelprogramm und Windowsprogramm entwickelt hatte und oldschuren, der für eigene Zwecke sowas suchte).

  • Upvote 1
Link to comment
Share on other sites

Ich würde eine eigene Webseite sponsoren,Die Mitwirkenden am Projekt würden namentlich genannt.

Klasse Arbeit die ihr da vollbracht habt, Respekt :top:

 

btw.

So eine eine Webseite braucht doch sicher auch jemanden dem der Ehrendoktortitel verliehen wurde, für z.b Null Plan oder Top Hijacking.

Stelle mich da gerne zur Verfügung :laugh:

Link to comment
Share on other sites

Wie wahrscheinlich ist es, dass wir irgendwann eine Datenbank benötigen?

 

Momentan wird keine benötigt. Die Frage ist, wie schnell und wie weit sich der ECS entwickeln wird. Wenn wir wirklich eines Tages Benutzer und Projekte speicherbar machen wollen, dann wird auch eine Datenbank benötigt. Wenn eine Datenbank schnell nachbuchbar ist, dann würde ich derzeit erstmal darauf verzichten.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

×
×
  • Create New...