[Arşivle!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 2. - sayfa 10

 
volshebnik :
"Kod Tabanından" denediğim kadarıyla karlı bir şey yoktu (henüz bitirmedim). Aksi takdirde, onu gerçek olarak koyardım. Optimizasyonda - iyi, testte - kötü. Optimizasyondaki tüm MA'ların böyle bir araştırması, bana öyle geliyor ki, MA (5), MA (12), MA (18), MA (23) ve MA'ya sahip olduğu sürece stratejimde en iyi seçeneği verecektir. (28) Ancak bunlar en iyi MA'lar olmayabilir. Ve her biri (aynı zamanda kesişimleri) ile ne yapmalı, en iyi MA'ları seçmek için genetik algoritmayı optimizasyonda çalıştırmak daha kolay değil mi? Bir önceki mesajımdaki soru bu.

Orada, bence, kararın mantığı topal. Görevi uygun şekilde formüle edin (kodunuz olmadan da mümkündür), ondan biraz soyutlayın ve görevin koşullarını açıkça yazın ...
 
Roman. :

Orada, bence, kararın mantığı topal. Görevi uygun şekilde formüle edin (kodunuz olmadan da mümkündür), ondan biraz soyutlayın ve görevin koşullarını açıkça yazın ...
Görev: MA'nın kırılmasını bekliyoruz, o zaman - ilk fraktal. Ve ilk fraktalı kırmak bir anlaşma işaretidir. Ancak MA'nın farklı dönemlerinde, fraktallar farklı yerlerde (zamanda) olabilir, çünkü Düzleştirmenin periyoduna ve türüne bağlı olarak, bazı MA'lar daha erken, diğerleri - daha sonra "kırılır" ve buna bağlı olarak, bir ticaret için sinyaller farklıdır. Bu yüzden hangisinin sinyali daha iyi verdiğini (daha karlı) bulmak için tüm MA'ları gözden geçirmek istiyorum (eğer doğruysalar henüz söyleyemem). Her MA'yı 50 periyottan ve hatta 4 seçenekten - üstel, düzleştirilmiş, vb. - yineleyin ve çalıştırın. - çok çok uzun. Ve optimizasyonda MA, TP ve SL Periyodunu harici bir değişkene alırsak, o zaman neyin daha iyi olduğunu hemen gösterecektir. Ancak optimizasyon, bir nedenden dolayı MA = 7 Dönemi'nin ötesine geçmiyor. İşte yardım arıyorum.
 
volshebnik :
Görev: MA molasını, ardından ilk fraktalı bekliyoruz. Ve ilk fraktalı kırmak bir anlaşma işaretidir. Ancak MA'nın farklı dönemlerinde, fraktallar farklı yerlerde (zamanda) olabilir, çünkü Düzleştirmenin periyoduna ve türüne bağlı olarak, bazı MA'lar daha erken, diğerleri - daha sonra "kırılır" ve buna göre bir ticaret için sinyaller farklıdır. Bu yüzden hangisinin sinyali daha iyi verdiğini (daha karlı) bulmak için tüm MA'ları gözden geçirmek istiyorum (eğer doğruysalar henüz söyleyemem). Her bir MA'yı 50 periyottan ve hatta 4 seçenekten (üstel, düzleştirilmiş, vb.) yineleyin ve çalıştırın. - çok çok uzun. Ve optimizasyonda MA, TP ve SL Periyodunu harici bir değişkene alırsak, o zaman neyin daha iyi olduğunu hemen gösterecektir. Ancak optimizasyon, bir nedenden dolayı MA = 7 Dönemi'nin ötesine geçmiyor. İşte yardım arıyorum.


Karar:

Almak için vereceğim (sat - analojiyle):

1. MA molası - 3., 2. ve 1. çubuklardaki MA değerlerini alın - karşılaştırın. 3>2 ve 2<1 numaralı çubuklardaki MA değerleri ise, bu bir dönüm noktasıdır.

2. ayrıca - fraktal - penetrasyon - bir anlaşma sinyali

   
   double fractal_l;
   double fractal_h;
     
   fractal_h = iFractals ( Symbol (), PERIOD , MODE_UPPER, 3 );
   if (fractal_h!= 0 )  upfractal= iFractals ( Symbol (), PERIOD , MODE_UPPER, 3 ); 
   
   fractal_l = iFractals ( Symbol (), PERIOD , MODE_LOWER, 3 );
   if (fractal_l!= 0 )  dwfractal= iFractals ( Symbol (), PERIOD , MODE_LOWER, 3 ); 

   if (Ask > upfractal) {открытие ордеров при пробитии последнего (свежайшего) фрактала }


3. MA'nın numaralandırılmasına gelince - harici (optimize edilmiş) değişkenlere alın:

Period_MA (2'lik adımlarla 2 ila 240 arasında ayarlayabilirsiniz), MOD - (MA hesaplama yöntemi - 0 ila 3 adım 1 arasındaki değişiklik aralığı), PRICE_TYPE - ( fiyat sabiti - 0 ila 6 adım 1 arasındaki değişiklik aralığı), Duyduğuma göre gün içi çalışırken ortalama değerlerle (kapanış fiyatı önemli değil) MA hesaplamak daha mantıklı, günlük mumlar üzerinde çalışırken MA günlerin kapanış fiyatları ile hesaplanıyor.

PERİYOD - sonraki her optimizasyonda manuel olarak değiştirin - 1,5,15,30,60,240...

iMA'da F1'e basın - oradaki her şeyi dikkatlice tekrar okuyun.

Ve tabii ki TR'yi optimize edin ve her zamanki gibi kaybı durdurun.

 double MA_1 = iMA ( Symbol (),PERIOD,Period_MA, 0 ,MODE, PRICE_TYPE, 1 );
 double MA_2 = iMA ( Symbol (),PERIOD,Period_MA, 0 ,MODE, PRICE_TYPE, 2 );
 double MA_3 = iMA ( Symbol (),PERIOD,Period_MA, 0 ,MODE, PRICE_TYPE, 3 );
not Test sonuçları hakkında bilgi yazmayı unutmayın... :-)))
 
Roman, çok teşekkür ederim! Danışmanımla karşılaştırın. Test sonuçlarımı mutlaka yayınlayacağım. Emekleriniz boşa gitmeyecektir. Son martingale teklifin araştırma kuyruğunda, eğer Kâse'ye yaklaşırsam)) sana da haber veririm.
 
volshebnik :
Roman, çok teşekkür ederim! Danışmanımla karşılaştırın. Test sonuçlarımı mutlaka yayınlayacağım. Emekleriniz boşa gitmeyecektir. Son martingale teklifin araştırma kuyruğunda, eğer Kâse'ye yaklaşırsam)) sana da haber veririm.

Senks, bekliyoruz...
 
Merak ediyorum, "price" parametresinin olduğundan farklı ayarlanacağı OrderModify() işlevi nasıl işlenecek? Örneğin, OrderPrice=1.3200'e sahiptik ve OrderModify işlevinde bunu 1.3300 olarak ayarladık. Kim bilir? (Uygulamada kendim kontrol etmek zorunda değildim ve test cihazında kontrol etmek zorunda değildim, üzgünüm)
 
ikatsko :
Merak ediyorum, "price" parametresinin olduğundan farklı ayarlanacağı OrderModify() işlevi nasıl işlenecek? Örneğin, OrderPrice=1.3200'e sahiptik ve OrderModify işlevinde bunu 1.3300 olarak ayarladık. Kim bilir? (Uygulamada kendim kontrol etmek zorunda değildim ve test cihazında kontrol etmek zorunda değildim, üzgünüm)

emir türü izin veriyorsa, bekleyen bir emrin açılış fiyatını değiştirir
 
abolk :

emir türü izin veriyorsa, bekleyen bir emrin açılış fiyatını değiştirir

" Sipariş türü izin veriyorsa" ne anlama geliyor? Açık emir türü AL veya SAT olabilir.

Diyelim ki fiyatı değiştirdiler ama aradaki fark nereye gidecek? Artı veya eksi bakiyede mi? Bu şekilde mi çalışıyor? Yayılma oraya eklenecek mi? Mesela eski düzeni (spread) kapatıp yenisini mi açtı?

 
ikatsko :

"Sipariş türü izin veriyorsa" ne anlama geliyor? Açık emir türü AL veya SAT olabilir.

Diyelim ki fiyatı değiştirdiler ama aradaki fark nereye gidecek? Artı veya eksi bakiyede mi? Bu şekilde mi çalışıyor? Yayılma oraya eklenecek mi? Mesela eski düzeni (spread) kapatıp yenisini mi açtı?

İşlev, yalnızca bekleyen bir sipariş vermenin fiyatını değiştirebilecektir. Bir piyasa emrinin açılış fiyatını değiştirmeye çalışırken, fonksiyon "Geçersiz fonksiyon parametresi" gibi bir hata döndürür. Daha doğrusu, bu işlevin yardımına bakabilirsiniz - size bağlantı veremeyecek kadar tembelim, uyumak istiyorum ... :)
 
artmedia70 :
İşlev, yalnızca bekleyen bir sipariş vermenin fiyatını değiştirebilir. Bir piyasa emrinin açılış fiyatını değiştirmeye çalışırken, fonksiyon "Geçersiz fonksiyon parametresi" gibi bir hata döndürür. Daha doğrusu, bu işlevin yardımına bakabilirsiniz - size bağlantı veremeyecek kadar tembelim, uyumak istiyorum ... :)

Evet, dikkatiniz için teşekkürler! Ben de bakmaya üşendim ve soru yazdım. Afedersiniz. AMA hala baktı ve anladım (deneyler olmadan). fiyat - bekleyen bir emir için yeni talep edilen fiyat veya bir piyasa emrinin açılış fiyatı. İyi geceler!