Losberechnung durch Vince - Seite 6

 
Vinin:

Ich spreche nur von der Anzahl der analysierten Abschlüsse. Real oder virtuell.


Ahh, jetzt verstehe ich, vielleicht ist das nicht der richtige Ansatz, denn die Stichprobe sollte repräsentativ sein, d.h. je mehr, desto besser...

Jeder hat natürlich seine eigenen Kriterien - für den einen sind 200 genug, für den anderen sind 500 nicht genug...

Ich suche weiter nach einer optimalen Lösung, auf der Suche nach dem optimalen (entschuldigen Sie, dass ich tofthologisch bin) f von R. Vince mit seiner Methode des geometrischen Mittels.

 
MaxZ:
Das ist nicht ganz der Rat, den ich gegeben habe. Das ist schon eher Ihr Ansatz. Wichtig ist, dass es sich auch als richtig erweist.


Nun, wie - denn genau das habe ich getan, nur direkt in Bezug auf die TWR - aber nicht auf ihr geometrisches Mittel G.

"Denn wenn die Wurzel vom Grad K von Zahl_1 größer ist als die Wurzel vom gleichen Grad K von Zahl_2, dann ist Zahl_1 größer als Zahl_2! :))))))"

TWR ist "relatives endliches Kapital" (Terminal Wealth Relative) ,

 TWR = MathPow(TWR*(1+f*(-Mas_Outcome_of_transactions[orderIndex]/(D))),0.33); // TWR - это произведение всех HPR    
 
Roman.:


Ich mache alle Berechnungen in Teeter Totter auf Eröffnungskurse, Trades von 2002 bis heute 2011 - 503, der am meisten zurückgezogene Trade = -628.

Die Ergebnisse sind oben aufgeführt. Ich teste jetzt mit anderen EA-Varianten.

Hier ist der Text des Lösungsansatzes für dieses Problem aus der Originalquelle - S. 31.

Wir haben gesehen, dass das beste Handelssystem das System mit dem höchsten geometrischen Mittelwert ist. Um das geometrische Mittel zu berechnen, müssen wir f kennen. Beschreiben wir also unsere Maßnahmen Schritt für Schritt.

1. Nehmen Sie die Historie der Transaktionen in einem bestimmten Marktsystem.

2. Finden Sie das optimale f, indem Sie verschiedene Werte von f zwischen 0 und 1 betrachten. Das optimale f entspricht dem höchsten Wert der TWR.

3. SobaldSie f gefunden haben, nehmen Sie die Wurzel des Grades N TWR (N ist die Gesamtzahl der Abschlüsse). Dies ist Ihr geometrisches Mittel für dieses Marktsystem. Nun können Sie das ermittelte geometrische Mittel verwenden, um dieses System mit anderen zu vergleichen. Der f-Wert gibt an, wie viele Kontrakte in diesem Marktsystem gehandelt werden sollen. Sobald f gefunden ist, kann es in den Geldwert umgerechnet werden, indem der größte Verlust durch das negative Optimum/ geteilt wird. Wenn zum Beispiel der größte Verlust 100 $ beträgt und das optimale f = 0,25, dann ist -100 $ / -0,25 = 400 $. Mit anderen Worten, Sie sollten 1 Einheit für jedes 400 $-Konto setzen. Der Einfachheit halber können Sie alles auf Basis von Einheiten berechnen (z. B. ein 5-Dollar-Chip oder ein Futures-Kontrakt oder 100 Aktien). Die Anzahl der Dollar, die Sie jeder Einheit zuweisen sollten, können Sie berechnen, indem Sie Ihren größten Verlust durch das negative optimale f teilen. Das optimale f ist das Ergebnis des Ausgleichs zwischen der Rentabilität des Systems (basierend auf 1 Einheit) und seinem Risiko (basierend auf 1 Einheit). Viele Menschen denken, dass der optimale feste Anteil der Prozentsatz des Kontos ist, der

zugewiesen wird .

Vielleicht ist es sinnvoll, zu Logarithmen überzugehen. Ersetzen Sie das Produkt durch die Summe
 
Vinin:

Vielleicht ist es sinnvoll, zu Logarithmen überzugehen. Ersetzen Sie das Produkt durch die Summe


Danke Victor, das ist möglich, ich werde es versuchen müssen, aber im Moment teste ich diese Möglichkeit, das Produkt zu reduzieren - indem ich es hoch 1/3 nehme.

//TWR — это «относительный конечный капитал» (Terminal Wealth Relative), 
 TWR = MathPow(TWR*(1+f*(-Mas_Outcome_of_transactions[orderIndex]/(D))),0.33); // TWR - это произведение всех HPR    
 
Roman.:


Nun, wie - denn genau das habe ich getan, nur direkt in Bezug auf die TWR - aber nicht auf ihr geometrisches Mittel G.

"Denn wenn die Wurzel vom Grad K der Zahl_1 größer ist als die Wurzel vom gleichen Grad K der Zahl_2, dann ist die Zahl_1 größer als die Zahl_2! :))))))"

TWR ist "relatives endliches Kapital" (Terminal Wealth Relative) ,

Sie haben eine fehlende Transaktion:

TWR = TWR* ...

Ich weiß nicht, wie sich dies auf die Berechnung des Loses Vince auswirken wird, aber meine Empfehlung war, diesen Vorgang nicht auszuschließen.

Mein Vorschlag war, das Array TWR[] zu machen. Und G zählt wie folgt:

G *= MathPow(TWR[orderIndex], 1/N);


Roman.:


Danke Victor, das ist möglich, ich werde es ausprobieren müssen, aber im Moment teste ich diese Variante der Produktreduzierung, indem ich sie hoch 1/3 nehme.

Selbst wenn Sie die Wurzel dritten Grades entfernen, gibt es immer noch keinen doppelten Überlauf.
 
Roman.:
for ( orderIndex = 1;orderIndex<Qnt; orderIndex++) //при заданной f проходим по всем закрытым ордерам
{                                                  // и считаем относительный конечный капитал (TWR)
   TWR = TWR*(1+f*(-Mas_Outcome_of_transactions[orderIndex]/(D))); // TWR - это произведение всех HPR
}

Und warum haben Sie die Bedingung "orderIndex<Qnt" in der for()-Schleife? Sie lassen also das letzte Element des TWR-Arrays aus?
 
MaxZ:

Sie haben eine fehlende Operation:

Ich weiß nicht, wie sich dies auf die Berechnung des Loses Vince auswirkt, aber meine Empfehlung war, diese Operation nicht auszuschließen.

Ich habe vorgeschlagen, das Array TWR[] zu erstellen. Und G zählt wie folgt:


Selbst wenn Sie die Wurzel dritten Grades entfernen, gibt es immer noch keinen doppelten Überlauf.


Ich habe einen Überlauf, da alle anderen Dinge gleich sind, einschließlich des Gesamtwerts: Anzahl der Trades = 503 und maximaler Verlust = 628...

Sie sollten das bei sich selbst überprüfen, in einem Ihrer Boards - der Code ist auf der ersten Seite gepostet - fügen Sie externe Variablen und die Funktion de-enith ein... Das ist alles.

 

MaxZ:


Und warum haben Sie genau die Bedingung "orderIndex<Qnt" in Ihrer for()-Schleife? Es stellt sich heraus, dass man das letzte Element des TWR-Arrays überspringt?


Es gibt überhaupt kein TWR-Array, es ist nicht notwendig, es zu organisieren, es reicht, f zu berechnen und das ist alles, es ist nur interessant, TWR bei verschiedenen f zu vergleichen (in der Schleife) und das ist alles, den f-Wert bei der maximalen TWR zu kennen und das ist alles.

Dort funktioniert alles einwandfrei, vergleichen Sie - erste und letzte Zeile - den Wert des Gewinns beim letzten Handel auf den Registerkarten "Protokoll" bzw. "Ergebnis"...


Die Handelsnummern sind unterschiedlich, da in meiner Eule der Abschluss vom letzten Auftrag im Markt bis zum ersten erfolgt. Die Hauptsache ist, dass die Zahl schlägt - 503 Angebote - dort (in der Tester) und dort (in der Berechnung) +

Wert des letzten abgeschlossenen 503-Geschäfts 1076 - Die Auftragssuche nach der Historie in der De-it-Funktion wird vom Anfang bis zum letzten (letzten) abgeschlossenen durchgeführt.

 
Roman.:


TWR Array - es gibt keine Notwendigkeit, es überhaupt zu organisieren, es ist genug, um f zu berechnen und das ist alles, es ist nur im Vergleich TWR bei verschiedenen f (in einer Schleife) und alle interessiert, um den Wert f bei der maximalen TWR und das ist alles.

Dort funktioniert alles einwandfrei, vergleichen Sie - erste und letzte Zeile - den Wert des Gewinns beim letzten Handel auf den Registerkarten "Protokoll" bzw. "Ergebnis"...


Ich bin völlig verwirrt. Ich meinte das Array Mas_Qutcome_of_transactions[]. Denn es stellt sich heraus, dass eines seiner Elemente nicht in einer Schleife gezählt wird...

Und warum sollte ich mir den Bericht ansehen, wenn ich eine Ungenauigkeit im Code sehe? Ich glaube nicht an Wunder! :D

Und vielleicht sollten die vom Prüfer abgeschlossenen Geschäfte nicht berücksichtigt werden? Schließlich war es ja nicht Ihr TS, der sie geschlossen hat...

 
MaxZ:

Ich bin völlig verwirrt. Ich meinte das Array Mas_Qutcome_of_transactions[]. Denn es stellt sich heraus, dass die Schleife kein einziges Element in ihr zählt...

Und warum sollte ich mir den Bericht ansehen, wenn ich eine Ungenauigkeit im Code sehe? Ich glaube nicht an Wunder! :D

Und vielleicht sollten die vom Prüfer abgeschlossenen Geschäfte nicht berücksichtigt werden? Es liegt nicht an Ihrem TS, dass sie geschlossen wurden...


Ja, ich werde das mit der Bedingung <=Qnt prüfen. Alle Geschäfte wurden von TS geschlossen, der Tester schloss die letzten 10 ab (ich glaube, das ist innerhalb einer vernünftigen Toleranz... :-))))
Grund der Beschwerde: