Vince'e göre lot hesaplama - sayfa 6

 
Vinin :

Sadece analiz edilen işlem sayısından bahsediyorum. gerçek veya sanal


Ahhh, şimdi anlıyorum, belki de bu pek doğru bir yaklaşım değil çünkü. örnek, her şeyden önce, temsili olmalıdır, yani. daha büyük daha iyi...

Elbette herkesin kendi kriterleri vardır - bazıları için 200 yeterli, bazıları için 500 yeterli değil ...

Geometrik ortalama yöntemini kullanarak R. Vince'e göre optimal (toftoloji için üzgünüm) f bulmak için optimal çözüm üzerinde daha fazla kazmaya devam ediyorum.

 
MaxZ :
Ben böyle bir tavsiye vermedim. Bu daha çok senin yaklaşımın. Ana şey, onun da doğru olduğu ortaya çıktı.


Eh, elbette - sonuçta, yaptığım tam olarak buydu, sadece TWR ile ilgili olarak - ama geometrik ortalaması G ile değil.

"Sonuçta, _1 numaralı K derecesinin kökü, 2 numaralı K derecesinin kökünden büyükse, o zaman _1 numaralı sayı_2'den büyüktür! :)))))))"

TWR, "nispi nihai sermaye" anlamına gelir ( Terminal Varlık akraba ),

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


2002'den bugüne tüm hesaplarımı açılış fiyatlarında, ticarette terah olarak yapıyorum. sıcaklık 2011 - 503, maks. öldürmek ticaret = -628.

Sonuçlar daha yüksektir. Şimdi diğer danışman türlerini kontrol ediyorum.

İşte orijinal kaynaktan bu sorunu çözme yaklaşımının metni - sayfa 31.

En iyi ticaret sisteminin geometrik ortalaması en yüksek olan sistem olduğunu gördük. Geometrik ortalamayı hesaplamak için f bilmeniz gerekir. Öyleyse adım adım eylemlerimizi tanımlayalım.

1. Belirli bir piyasa sistemindeki işlemlerin tarihini alın.

2. 0'dan 1'e kadar çeşitli f değerlerine bakarak optimal f'yi bulun. Optimum f, en yüksek TWR'ye karşılık gelir.

3. f'yi bulduktan sonra, TWR'nin N. kökünü alın ( N toplam işlem sayısıdır). Bu, bu piyasa sistemi için geometrik ortalamanızdır. Artık bu sistemi diğerleriyle karşılaştırmak için elde edilen geometrik ortalamayı kullanabilirsiniz. f'nin değeri, belirli bir piyasa sisteminde kaç tane sözleşmeyle işlem yapacağınızı söyleyecektir. f bulunduğunda, en büyük kaybı negatif optimal / değerine bölerek parasal değere dönüştürülebilir. Örneğin, en büyük kayıp 100$ ise ve optimal f = 0,25 ise, o zaman -100 dolar / -0,25 = 400 dolar. Başka bir deyişle, hesabınızdaki her 400$ için 1 birim bahis yapmalısınız. Kolaylık olması açısından, her şey birim bazında hesaplanabilir (örneğin, bir 5 dolarlık fiş veya bir vadeli işlem sözleşmesi veya 100 hisse). Her birime ayrılacak dolar sayısı, en büyük kaybınızın negatif optimal f'ye bölünmesiyle hesaplanabilir. Optimum f , sistemin karlılığı (1 birim bazında) ve riski (1 birim bazında) arasındaki dengedir. Birçok kişi, optimum sabit payın, tahsis edilen hesabın yüzdesi olduğunu düşünür.


Belki logaritmalara gitmek mantıklıdır. Ürünü toplamla değiştir
 
Vinin :

Belki logaritmalara gitmek mantıklıdır. Ürünü toplamla değiştir


Teşekkürler Victor, hariç tutulmadı, denemek gerekecek, ancak ürünü azaltmak için böyle bir seçeneği hala kontrol ediyorum - 1/3 gücüne yükseltmek.

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


Eh, elbette - sonuçta, yaptığım tam olarak buydu, sadece TWR ile ilgili olarak - ama geometrik ortalaması G ile değil.

"Sonuçta, _1 numaralı K derecesinin kökü, 2 numaralı K derecesinin kökünden büyükse, o zaman _1 numaralı sayı_2'den büyüktür! :)))))))"

TWR "nispi nihai sermaye" dir ( Terminal Varlık akraba ),

operasyonunu kaybettin

TWR = TWR* ...

Bunun Vince için partinin hesaplanmasını nasıl etkileyeceğini bilmiyorum, ancak tavsiyem bu işlemi hariç tutmadı.

Bir dizi TWR[] yapmayı önerdim. Ve G şöyle sayılır:

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


Roma. :


Teşekkürler Victor, hariç tutulmadı, denemek gerekecek, ancak ürünü azaltmak için böyle bir seçeneği hala kontrol ediyorum - 1/3 gücüne yükseltmek.

Evet, üçüncü derecenin kökü kaldırılsa bile yine de çift taşma oluşmayacaktır.
 
Roman. :
 for ( orderIndex = 1 ;orderIndex<Qnt; orderIndex++) //при заданной f проходим по всем закрытым ордерам
{                                                  // и считаем относительный конечный капитал (TWR)
   TWR = TWR*( 1 +f*(-Mas_Outcome_of_transactions[orderIndex]/(D))); // TWR - это произведение всех HPR
}

Ve neden for() döngüsünde "orderIndex<Qnt" koşuluna sahipsiniz? TWR dizisinin son elemanını kaçırdığınız ortaya çıktı ?
 
MaxZ :

operasyonunu kaybettin

Bunun Vince için partinin hesaplanmasını nasıl etkileyeceğini bilmiyorum, ancak tavsiyem bu işlemi hariç tutmadı.

Bir dizi TWR[] yapmayı önerdim. Ve G şöyle sayılır:


Evet, üçüncü derecenin kökünü çıkarsak bile yine de çift taşma oluşmayacaktır.


Toplamlar dahil olmak üzere bir taşma ceteris paribus yaşıyorum: işlem sayısı = 503 ve maksimum kayıp = -628...

Kendiniz kontrol edin, baykuşlarınızdan herhangi birinde - kod ilk sayfada yayınlanır - onu harici değişkenlere ve de-init işlevine ekleyin ... İşte bu kadar.

 

Maksimum Z :


Ve neden for() döngüsünde "orderIndex<Qnt" koşuluna sahipsiniz? TWR dizisinin son öğesini kaçırdığınız ortaya çıktı?


Hiç TWR dizisi yok, düzenlemeye gerek yok, f'yi hesaplamak yeterli ve bu kadar, orada değerini bulmak için sadece TWR'yi farklı f (bir döngüde) ile karşılaştırmak ilgi çekicidir. f maksimum TWR'de ve bu kadar.

Orada her şey yolunda gidiyor, karşılaştırın - ilk ve son satırlar - sırasıyla "Günlük" ve "Sonuç" sekmelerinin son işlemi için kâr değeri...


İşlem numaraları farklıdır, çünkü baykuşumda, piyasadaki son siparişten birinciye kadar kapanış gerçekleşir. Ana şey, sayının - 503 işlem - orada (test cihazında) ve orada (hesaplamalarda) +

son kapatılan anlaşma 503'ün değeri 1076'dır - başlangıçtan son kapatılana kadar de-init işlevindeki siparişlerin geçmişi boyunca yinelenir.

 
Roman. :


Hiç TWR dizisi yok, düzenlemeye gerek yok, f'yi hesaplamak yeterli ve bu kadar, orada değerini bulmak için sadece TWR'yi farklı f (bir döngüde) ile karşılaştırmak ilgi çekicidir. f maksimum TWR'de ve bu kadar.

Orada her şey yolunda gidiyor, karşılaştırın - ilk ve son satırlar - sırasıyla "Günlük" ve "Sonuç" sekmelerinin son işlemi için kâr değeri...


Tamamen karıştı. Mas_Qutcome_of_transactions[] dizisini kastetmiştim. Sonuçta, döngünün unsurlarından birini saymadığı ortaya çıktı ...

Ve kodda bir yanlışlık görürsem neden raporu izleyeyim. Mucizelere inanmıyorum! :D

Ve belki de test kullanıcısı tarafından kapatılan anlaşmaların dikkate alınması gerekmez? Sonuçta, kapattıkları aracınıza göre değil ...

 
MaxZ :

Tamamen karıştı. Mas_Qutcome_of_transactions[] dizisini kastetmiştim. Sonuçta, döngünün unsurlarından birini saymadığı ortaya çıktı ...

Ve kodda bir yanlışlık görürsem neden raporu izleyeyim. Mucizelere inanmıyorum! :D

Ve belki de testçi tarafından kapatılan anlaşmaların dikkate alınması gerekmiyor mu? Sonuçta, kapattıkları aracınıza göre değil ...


Evet, şu anda <=Qnt koşuluyla kontrol edeceğim. Tüm işlemler TS tarafından kapatılır, son 10 işlem testçi tarafından kapatılır (bence bu makul bir tolerans dahilinde... :-))) ).