TSR - ticaret sistemlerinin canlandırılması

 

Konunun devamında: Uydurma ve gerçek kalıplar arasındaki çizgi nerede?


TSR, Trading Systems Recovery'nin kısaltmasıdır


Teoriyi açıklamadan ve ekran görüntüleri olmadan yayın. Ekran görüntüleri Kod Tabanında olacak


Hemen yeteneklileri uyarıyorum:

1. Danışmanın ekteki versiyonu, eğitim amaçlarına uygun minimum seviyeye indirilmiştir.

2. Danışmanın iyileştirilmesiyle ilgili sorularınız için ZHOBa'ya gidin.

3. "Neden farklı sonuçlar alıyorum" gibi sorular yazar tarafından cevaplanmayacaktır.



Ağırlık katsayılarını ayarlayarak, fiyat tekliflerinin gelecekteki yönüne ilişkin bir tahmine dayalı bir ticaret sistemi üzerinde bir deney yapalım. temel tek katmanlı sinir ağı - tarihsel veriler üzerinde algılayıcı. Bu ticaret sisteminin çalışma prensibi, "Bir ticaret sistemi nasıl bulunur" makalesinde tarafımdan ayrıntılı olarak açıklanmıştır. H1 zaman dilimi ile grafikte önceki 9 ay veya daha fazla EURUSD döviz çifti için geçmiş verileri alalım. Üç ay boyunca onları üç bağımsız bölüme ayıralım. İlk bölümü final testi için, diğer ikisini hikayeye uydurmak için bırakacağız. Ticaret sistemini ayrı ayrı yürütmemek için hemen iki algılayıcıyı tek bir ticaret sisteminde birleştirdim. Ve ayrı test ve optimizasyon için, geçiş giriş parametresine bağlı olarak ticaret sisteminin üç çalışma moduna sahip olduğu Supervisor() anahtar işlevini oluşturdum: 1 - birinci algılayıcıyı takma ve test etme, 2 - ikinci algılayıcıyı takma ve test etme, 3 - optimizasyon olmadan test modunda veya bir demo veya gerçek para yatırmada otomatik ticaret modunda her iki algılayıcının çelişkili okumalarını filtreleyerek filtreleme.

Geçmiş verilere göre ayarlanmış algılayıcı ağırlıkları: x11, x12 … x 42 ve ayrıca p ve sl. Giriş parametresi sl, tüm segmentler için bir sabittir. Bu değere göre, açılan tüm pozisyonlar için zararı durdur ve kârı durdur seviyeleri belirlenir. Diğer bir girdi parametresi p, yine bir sabit olan açılış fiyatı farkının gecikme süresidir. Piyasaya yeni bir çubuğun oluşumunun başlangıcında girilir, yani. geçiş giriş parametresinin değerine bağlı olarak bar açılış fiyatları ve perceptron okumaları ile ve sadece zararı durdur veya kar al tetikleyerek çıkış. Optimizasyon, ekstremum aramak için genetik bir algoritma kullanılarak gerçekleştirilir ve denge açısından maksimum, ekstremum olarak alınır. Algoritmanın optimizasyon sırasında marj çağrılarına takılmaması için, örneğin 1.000.000 $ gibi çok büyük bir başlangıç tutarı almanız gerekir. Girdi parametreleri: lotlar - lot ve mn cinsinden açılan pozisyonların hacmi - danışmanın kendi (açtığı) emirlerinin yönetimini başka birinin (açmadığı) emirleriyle karıştırmaması için benzersiz bir sihirli sayı.


İlk aşamada p ve sl giriş değişkenlerinin değerlerinin ne olması gerektiğini bulmamız gerekiyor. Bunu yapmak için tarihin son iki bölümünü seçiyoruz, yani. 6 ay öncesinden bugüne. Tüm perceptron ağırlık parametrelerini Başlangıç = 0'dan Dur = 200'e 1'lik bir adımla değerlere ayarlıyoruz. Başlangıç = 3'ten Dur =100'e 1'lik bir adımla p değeri, Başlangıç = 100'den Stop =1000'e kadar sl değeri 10'luk bir adımla (veya dört basamaklı tırnak işaretleri için 1'lik artışlarla 10'dan 100'e kadar). Geçiş değeri 1 olarak ayarlanır. Optimize edilmiş parametreleri işaretliyoruz: x11, x21, x31, x41, p ve sl . Diğer tüm onay kutuları devre dışı bırakılmalıdır. Optimizasyona başlıyoruz. Montaj tamamlandıktan sonra giriş parametrelerini en iyi geçişe göre ayarlıyoruz.


İkinci aşama. Birinci algılayıcının ağırlıklarını ikinci tarihsel veri parçasına uydurma. Optimizasyon tarihini ve saatini 6 ay öncesinden 3 ay öncesine ayarlayın. Optimize edilmiş parametrelerin onay kutularını yalnızca p ve sl giriş değişkenlerinden kaldırırız. Optimizasyona başlıyoruz. Montaj tamamlandıktan sonra giriş parametrelerini en iyi geçişe göre ayarlıyoruz.


Üçüncü sahne. İkinci algılayıcının ağırlıklarını üçüncü tarihsel veri parçasına sığdırmak. Optimizasyonun tarihini ve saatini şu tarihten itibaren ayarlayın: 3 ay önce bugün. Optimize edilmiş parametrelerin işaretini kaldırıyoruz: x11, x21, x31, x41 ve bunları x12, x22, x32 ve x 42 için ayarladık. Geri kalan onay kutuları devre dışı bırakılmalıdır. Geçiş girdi değişkeninin değerini 2 olarak ayarlayın. Optimizasyonu çalıştırın. Montaj tamamlandıktan sonra giriş parametrelerini en iyi geçişe göre ayarlıyoruz.


İşte bu kadar, ticaret sistemimiz 6 ay öncesinden günümüze kadar olan geçmiş verilere göre ayarlanmıştır. Giriş parametrelerinin değerlerini ayarlar dosyasına kaydediyoruz. Geçiş girdi değişkenini 3 olarak ayarlayın. "Tarihi kullan"dan onay işaretini kaldırın. Teste başlayalım. Test programına bakalım. Bakiye ve öz sermaye eğrisinin grafiğin sağ tarafında yukarı, sol tarafında ise aşağı doğru eğilim gösterdiğini görüyoruz. Şimdi, terazinin yükseliş eğiliminin, uygun numunenin dışındaki bölgede gerçekleştiğinden emin olmamız gerekiyor. Fare imlecini kâr artışının başladığı denge çizgisine getiriyoruz ve araç ipucundaki tarihe bakıyoruz. Bakiye eğrisinin bugünden itibaren 10 gün hariç, yani neredeyse dokuz ay önce yukarı doğru eğilim gösterdiği ortaya çıktı. 8 ay 20 gün. Ve 6 ay boyunca yerinde ayarlamayı gerçekleştirdik. Bu nedenle, başarılı bir test optimize edilmiş testin dışındadır. örnekleme gerçekleşir. Aynı alanı numunenin dışında da daha detaylı analiz edebilmek için seçiyoruz. Genel olarak, sonuçlar J. Soros'un kayıtlarından önemli ölçüde daha düşük olmasına rağmen oldukça tatmin edicidir, ancak V. Niederhoffer'in kayıtlarını aşmaktadır.


Tarihin bazı bölümlerinde uydurma ile uğraştığımızdan emin olmak için “Kullanım tarihi” kutusunun işaretini kaldırmak gerekli ve yeterlidir. Ve EA testini mevcut tüm geçmiş üzerinden 1 ve 2 değerleriyle çalıştırın. Bu modların her birinde, denge eğrisinin yukarı doğru büyümesinin yalnızca bireysel algılayıcıların ayarlandığı bölümlerde gözlemlendiğini görüyoruz. Tarihin diğer tüm dönemlerinde, depresyonla sonuçlanan bireysel tümsekler dışında hiçbir olumlu dinamik gözlemlenmez.


Gördüğümüz gibi, her iki algılayıcının da geçmiş verilerin optimize edilmiş seçimi dışında testleri geçmemesine rağmen, yine de ortak sinyallerinin filtresi, uydurma sırasında hakkında hiçbir şey bilinmeyen geçmiş veriler üzerinde olumlu sonuçlar verdi. Ayrıca, örneğin basit hareketli ortalamaların dökümüne veya daha gelişmiş çok katmanlı sinir ağlarına dayalı olarak diğer ticaret sistemleriyle de deneyler yapabilirsiniz. Bir ticaret sisteminin sağlamlığı varsa, optimizasyon dönemi dışında filtrelenmiş ticaret sinyallerinde olumlu sonuçlar vermesi daha olasıdır. Sağlam değilse, filtre açıkken optimize edilmiş kısımda bile olumlu sonuçlar vermeyebilir. Ancak, TS'nin sağlamlığı, spread, takas ve aracılık ücretlerinin genel maliyetlerine kıyasla ikincildir. Bu nedenle, önemli genel masraflarla, ileriye dönük testlerde yalnızca olumlu sonuçlar hayal edilebilir, çünkü beklenti olumsuz olacaktır.



Dosyalar:
tsr.mq4  4 kb
 

Reshetov ile büyük ölçüde aynı fikirde değildim (bu konuda değil). Bazen fikir alışverişinde bulunduk ve kural olarak, beni gönderdi, bana açık veya gizli bir aptal ve moron dedi. Benim açımdan, bunu kalbe almadım.

Herkesten büyük bir ricam var: Bu başlıkta dalga geçmeyin. Konuyla ilgili söyleyeceğiniz yapıcı bir şey varsa - yazın, hayır - yazmayın.

 

Gg :) Reshetov'dan sonra inekler için başka bir kase :)

Yapıcı? OOC'ye arkadan kim bakıyor? Bu apaçık ortada.

 
TheXpert :


Yapıcı? OOC'ye arkadan kim bakıyor? Bu apaçık ortada.


OOS'u öne koyun - kimse sizi yasaklamıyor. Sonuç olarak, TS'nin önce bir nedeni vardır - bir ticaret sinyali ve ardından bir sonuç - zarar veya kârla kapatılacak açık bir emir. Ve bu nedenle, OOS'un önünde bile, hatta arkada bile, bu neden-sonuç ilişkilerini hiçbir şekilde etkilemeyecektir, çünkü sinyal ayarları OOS'ta yapılmaz, sadece orada bit kontrolü yapılır. Alım satım sinyalleri hala piyasaya girişlerden önce olacaktır ve bunun tersi olmayacaktır, yani. sıra değişmeyecek. Danışman bir tahliye ise, hem ön hem de arka tahliye olacaktır. Karlıysa, OOS'un montaj sırasında tam olarak nerede hiçbir şey bilmediğini de umursamıyor. En önemlisi, OOS bölgesi, uydurma bölgelerine bitişik olmalıdır. Ve pazarlar sürekli değiştiğinden ve karlı bölüm sınırlı bir raf ömrüne sahip olduğundan, OOS'ta arkadan kontrol etmenin daha iyi olduğu oldukça açıktır, çünkü. ticaret yapacağımız gelecek ileride.

Daha fazla kesinlik için, hem ön hem de arka OOS için testi çalıştırabileceğinizi söyleyelim. TS burada veya orada birleşirse, o zaman açıkça sağlam değildir.

 
Yuri, araştırmanızın özü ve sonucu nedir birkaç cümleyle kısaca anlatır mısınız?
 
Avals :
Yuri, araştırmanızın özü ve sonucu nedir birkaç cümleyle kısaca anlatır mısınız?
Başlangıç burada belirtilmiştir: https://www.mql5.com/ru/forum/131724
 
Avals :
Yuri, araştırmanızın özü ve sonucu nedir birkaç cümleyle kısaca anlatır mısınız?

1. Uydurmadan bile, bir dereceye kadar, yanlış sinyaller belirlenebilir ve ortadan kaldırılabilir. Ancak bunun için optimizasyonun yapıldığı en az iki farklı alana ihtiyacımız var. Bunlardan, okumaların çakışma (olmama)sını karşılaştırarak, potansiyel olarak karlı olanlardan yanlış sinyalleri keseriz. İstisnasız tüm yanlış sinyalleri kesmenin imkansız olduğu oldukça açıktır; bazıları hala sızdıracak. Ancak bazı TS için bu, olumlu bir beklenti şeklinde bir avantaj elde etmek için oldukça yeterlidir.

2. Pek çok araç daha önce sadece iyi oldukları için reddedildi, ancak ileri testlerde tatmin edici olmayan sonuçlar verdiler. Şimdi, arşivlerden alınan ve bu araçları yukarıdaki yönteme göre kullananlardan bazılarının oldukça emek gücü olduğu ortaya çıktı. Onlar. ticaret sistemlerinin bir kısmı bu şekilde yeniden canlandırılabilir.

3. Yukarıdaki yönteme göre yapılandırılmış sağlam TS, yalnızca optimize edilmiş ve OOS üzerinde test edilmiş olmaktan daha güvenilirdir.

 
Reshetov :
... OOS'ta arkadan kontrol etmenin daha iyi olduğu oldukça açık, çünkü ticaret yapacağımız gelecek önümüzde.
Birkaç yıl önce kendim için "arkadaki" OOS'un ne kadar "ön" bir şey verdiğini kontrol ettim. Ve korelasyonun hiç de açık olmadığı sonucuna vardım. Özel garantiler yoktur. TS'nin başarı olasılığı biraz artabilir, ancak danışman kar verip birleşmeyebilir. Burada başka yöntemlere ihtiyaç vardır.
 
voltair :
Birkaç yıl önce kendim için "arkadaki" OOS'un "önde" bir şey verdiğini kontrol ettim. Ve korelasyonun hiç de açık olmadığı sonucuna vardım. Özel garantiler yoktur. TS'nin başarı olasılığı biraz artabilir, ancak danışman kar verip birleşmeyebilir. Burada başka yöntemlere ihtiyaç vardır.

Bir kez daha tekrar ediyorum, yukarıdaki yönteme göre, hiç kimse hem ön hem de arka OOS'u kontrol etmeyi yasaklamıyor. Forvetlerden herhangi birinde kar elde edilmezse, o zaman TS sağlam değildir ve bir ölüyü yeniden canlandırmaya çalışmak yerine ondan kurtulmak daha iyidir. Farklı OOS sonuçlarında bir fark olacağı gerçeğine gelince, hiç kimse %100 tesadüf öngörmedi.


Garantilere gelince, onları kimseye söz vermedim. Herkes benim tarafımdan önerilen, bir yere götürülen veya kendi TS'sini OOS ve demo, cent hesaplarında çıkarmalı ve sonuçtan memnun olup olmadığına bağımsız olarak karar vermelidir.


Tüm hayatını boşuna garantili sonuç veren yöntemler arayarak geçirir ve bulamadan ölürsen hiç şaşırmam.

 
Reshetov :

Konunun devamında: Uydurma ve gerçek kalıplar arasındaki çizgi nerede?

TSR, Trading Systems Recovery'nin kısaltmasıdır ....................

......................

Gördüğümüz gibi, her iki algılayıcının da geçmiş verilerin optimize edilmiş seçimi dışında testleri geçmemesine rağmen, yine de ortak sinyallerinin filtresi geçmiş üzerinde olumlu sonuçlar verdi.

Yuri, bunu seviyorum. Hafif bir kıskançlık bile (birkaç yıl önce bu fikirden bir adım uzaklaşmıştım) zevke gölge düşürmüyor. Memnun. Daha fazla deneyeceğim.

 
Reshetov :
...hiç kimse hem ön hem de arka OOS'u kontrol etmeyi yasaklamıyor. ... TS sağlam değilse ve ondan kurtulmak daha iyidir ... farklı OOS için sonuçlarda bir fark olacaktır, bu yüzden kimse %100 eşleşme sözü vermedi.
Yuri, bu çok açık. Peki, çeki kim yasaklayabilir / ondan kurtulabilir? Mesele bu değil, ama gerçek (bence) tüm bu kontrollerin benzer olduğu ... ek optimizasyon! Yani, OOS'ta olumlu bir sonuç elde ederek, mecazi olarak (ve aslında) başka bir alanda (şimdi OOS dahil) optimize edilmiş bir TS elde ederiz. Geleceğe veya geçmişe doğru daha sağlam olma olasılığı nedir? "Bence" dışında, gelecekteki sağlamlığı değerlendirmek için nesnel kriterler nelerdir?
Neden: