Zum Inhalt springen
View in the app

A better way to browse. Learn more.

#T/N/X/T

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Positionsgröße in Abhängigkeit der Equitycurve

Geschrieben

Hallo,

 

ich hab die letzten Tage damit verbracht ein Positionsgrößenmodell in Abhängigkeit der Equitycurve in Amibroker zu programmieren.

Allerdings hab ich damit so meine Probleme.

Vielleicht kann jemand helfen.

Was ich will:

Wenn die aktuelle Equity größer ist als z.B der MA(20) der Equity, dann will ich die Positionsgröße erhöhen.

equity() scheint dabei überhaupt nicht zu funktionieren:

 

SetOption( "InitialEquity", 10000 );
e1=equity();
e2=ma(equity(),20);
positionsize=iif(e1>e2,-20,-10);

 

Hierbei wird immer die selbe Positionsgröße gehandelt, egal ob equity über oder unter ihrem MA(20) liegt.

 

Nun hab ich versucht anstatt equity auf ~~~equity zuzugreifen:

SetOption( "InitialEquity",10000);
e1=Foreign("~~~Equity","C");
e2=MA(Foreign("~~~Equity","C"),10);
positionsize=iif(e1>e2,-20,-10);

 

Das scheint zum Teil zu funktionieren, allerdings ist es so (wenn ich das richtig verstande habe), daß ~~equity erst nach einem Backtest berechnet wird, dh. man muß den backtester mindestens 2mal aufrufen.

Allerdings bekomme ich damit jedesmal andere Ergebnisse.

 

Wäre toll wenn jemand bereit wäre hier zu erklären wie man das richtig macht.

Vielen Dank,

faked

Featured Replies

Geschrieben
Hallo,

 

ich hab die letzten Tage damit verbracht ein Positionsgrößenmodell in Abhängigkeit der Equitycurve in Amibroker zu programmieren.

...

Das scheint zum Teil zu funktionieren, allerdings ist es so (wenn ich das richtig verstande habe), daß ~~equity erst nach einem Backtest berechnet wird, dh. man muß den backtester mindestens 2mal aufrufen.

HI faked,

 

ja das sind so die lieben Probleme mit dem Thema :pfue: aber eigentlich bis Du doch schon woanders mit dem Thema unterwegs: AmiBroker Mailinglist aber dafür kennen wir jetzt deinen richtigen Namen :pfue: den gebe ich nicht so gerne raus, auch wenn ich nichts böses im Netz vorhabe... wenn meine Kinder mir etwas Zeit geben, dann schau ich mal in meine Toolbox. Gruß Duncan

Geschrieben

Hi,

 

versuch mal das:

 

if( Status("action")== actionPortfolio )

{

// retrieve the interface to portfolio backtester

bo = GetBacktesterObject();

 

...here is your custom backtest formula.

}

 

Siehe Handbuch unter actionPortfolio ... und geht es damit? :pfue: wenn nicht versuche if( NOT Status("action") eins von beiden sollte rennen.

 

Gruß Duncan

 

PS: Sory bin heute nur kurz angebunde.

Geschrieben
  • Autor

Hallo Duncan,

 

vielen Dank. Hab mal ein wenig damit herumgespielt.

Allerdings bin ich nicht viel schlauer geworden.

Ich bin mir nicht ganz im Klaren was nun in dem neu hinzugefügten Block stehen soll.

Ich nehm an die Equityberechnung.

Hab einiges probiert, allerdings ist es nach wie vor so, daß ich jedesmal, wenn ich auf backtest klicke, ein anderes Ergebnis bekomme.

Vielleicht kannst Du ein wenig Klarheit schaffen was in diesem Custombacktest-Block passiert bzw. was man da reinpacken muß?

 

Vielen Dank,

faked

 

Hi,

 

versuch mal das:

 

if( Status("action")== actionPortfolio )

{

// retrieve the interface to portfolio backtester

bo = GetBacktesterObject();

 

...here is your custom backtest formula.

}

 

Siehe Handbuch unter actionPortfolio ... und geht es damit? :pfue: wenn nicht versuche if( NOT Status("action") eins von beiden sollte rennen.

 

Gruß Duncan

 

PS: Sory bin heute nur kurz angebunde.

  • 2 Wochen später...
Geschrieben

Hi,

Ich habe gesehen, das Du einigen Input aus der AmiBroker Mailing list bekommen hast … konnten Sie Dir weiterhelfen? Wenn ja wäre es nett, wenn Du das Ergebnis hier präsentieren könntest. Wenn DU das Problem immer noch hast, schaue ich es mir gern noch einmal an, bin nur momentan etwas Land unter … (poste hier auch momentan sehr wenig, also nicht böse sein) :empathy2:

Gruß Duncan

Geschrieben

Guten Tag!

 

Ich möchte Dir unabhängig von der Programmierung meine Erfahurngen mit dem "Equity Trading" mitteilen. Die Lösung Moving Average ist scheinbar die schlechteste, leider aber die am meisten publizierte. Die Equity Kurve ist volatil und mit einem MA erreichst Du immer die Tops er Entwicklung und gehst dann sehr oft mit Deiner höheren Positionsgörße in den nächsten Draw Down.

 

Vorschlag: Miss die Steigerung der Equity oder das Abfallen in prozentschritte und kopple das Risk je Trade an diese Schritte

 

Beispiel: Die Equity steigt nach einem DrawDown um ein Prozent, Du erhöhst pro Prozent Equity Steigerung Dein Risk je Trade um 0.25 Prozentpunkte

 

wenn die Equity von einem Höchststand um ein Prozent gefallen ist, reduzierst Du das Risk/Trade um 0.25 Prozentpuntke. Das Risk Je Trade muss Du natürlich durch einen Minimal und Maximalwert begrenzen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

Account

Navigation

Suche

Suche

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.