1 dakikalık OHLC vs her kene - zıt sonuçlar

 

Her kene veya 1dk OHLC üzerinde test yaparken tam tersi sonuç alıyorum. EA ve giriş parametreleri tamamen aynıdır ancak 1dk ohlc durumunda 50000 kar elde ederken, her tikte -7000 kayıp alıyorum.

bu, 2 yıllık bir periyotta test edilen birçok çiftte olur 0811-0813

aynı sorunu yaşayan var mı? Buradaki sorunun ne olduğunu anlamıyorum ve gerçek parayla ticaret yaparken ne yapacağım.

her ikisi de aşağıdaki grafik

1 dakika OHLC

1 dakika ohlc

her tik

her tik

 

EA'nızın nasıl satın almaya/satmaya karar verdiğine dair herhangi bir bilgi olmadan bunu yanıtlamak zor.

Piyasada bir çubuğun çok büyük olduğu birçok durum görüyoruz (örneğin önemli haberlerde).

Böylece test cihazı, böyle bir çubuk için 11'e kadar onay işareti üretir. Mantığınıza bağlı olarak çok farklı davranır (yalnızca testte).

EA'nızı gerçek parayla kullanırsanız, çok daha kötü olacağına eminim çünkü böyle büyük çubukların bir dakikada 200'e kadar tıklaması olabilir.

Mevcut çubuk üzerinde mantığınızın çalıştığını varsayıyorum, mantığınızı bir önceki çubuğun değerleriyle denemelisiniz.

En iyi dileklerimle

Uwe

 
ugo58 :

EA'nızın nasıl satın almaya/satmaya karar verdiğine dair herhangi bir bilgi olmadan bunu yanıtlamak zor.

Piyasada bir çubuğun çok büyük olduğu birçok durum görüyoruz (örneğin önemli haberlerde).

Böylece test cihazı böyle bir çubuk için 11'e kadar onay işareti üretir. Mantığınıza bağlı olarak çok farklı davranır (yalnızca testte).

EA'nızı gerçek parayla kullanırsanız, çok daha kötü olacağına eminim çünkü böyle büyük çubukların bir dakikada 200'e kadar tıklaması olabilir.

Mevcut çubuk üzerinde mantığınızın çalıştığını varsayıyorum, mantığınızı bir önceki çubuğun değerleriyle denemelisiniz.

En iyi dileklerimle

Uwe

Şimdi sadece bir çubukta "tıklamak" için bir numara gönderiyorum. Bu mantığı kenenin başına koymanız yeterli. Çubuk yeni değilse çıkar...

Sizce bu hile hangi durumlarda işe yarayabilir?

   //--- Let's first check if a new bar has come!         
   if ( CopyTime ( _Symbol , _Period , 0 , 1 , m_currentBarTime) > 0 ) 
     {
       if (m_previousBarTime != m_currentBarTime[ 0 ])
        {
         m_isNewBar = true ;
         m_previousBarTime = m_currentBarTime[ 0 ];
        }
     }
   else
     {
       Alert ( "Error copying historical data, error: " , GetLastError ());
       return ;
     }
     
   if (!m_isNewBar) return ;

Bu ekstra keneleri çözmek için de ne önerirsiniz? Bunu açıklayan bir makale falan var mı? Teşekkür ederim.

 
laplacianlab :

Şimdi sadece bir çubukta "tıklamak" için bir numara gönderiyorum. Bu mantığı kenenin başına koymanız yeterli. Çubuk yeni değilse çıkar...

Sizce bu hile hangi durumlarda işe yarayabilir?

Bu ekstra keneleri çözmek için de ne önerirsiniz? Bunu açıklayan bir makale falan var mı? Teşekkür ederim.

"Bu fazladan keneleri çözmek" ile ne demek istiyorsun?
 
ugo58 :

EA'nızın nasıl satın almaya/satmaya karar verdiğine dair herhangi bir bilgi olmadan bunu yanıtlamak zor.

Piyasada bir çubuğun çok büyük olduğu birçok durum görüyoruz (örneğin önemli haberlerde).

Böylece test cihazı böyle bir çubuk için 11'e kadar onay işareti üretir. Mantığınıza bağlı olarak çok farklı davranır (yalnızca testte).

EA'nızı gerçek parayla kullanırsanız, çok daha kötü olacağına eminim çünkü böyle büyük çubukların bir dakikada 200'e kadar tıklaması olabilir.

Mevcut çubuk üzerinde mantığınızın çalıştığını varsayıyorum, mantığınızı bir önceki çubuğun değerleriyle denemelisiniz.

En iyi dileklerimle

Uwe

merhaba,

önceki çubuğun değerlerini kullanarak ne demek istiyorsun? maVal[0] yerine maVal[1] (maVal'in hareketli ortalama değerleri içerdiği ve dizinin seri olarak ayarlandığı) kullanılsın mı?

veya son çubuk sırasında koşulun doğrulanıp doğrulanmadığını kontrol edin ve bu çubuğun açılmasını girin?

benim çok basit EA kodunun altında

 triggerLong=maVal[ 1 ]-diff;
 triggerShort=maVal[ 1 ]+diff; 

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

Buy_Condition_1=(now_ask<triggerLong);
Sell_Condition_1=(now_bid>triggerShort);

Exit_long_Condition=(closeAtCross? now_ask>=maVal[ 1 ]: false ) || Sell_Condition_1;
Exit_short_Condition=(closeAtCross? now_bid<=maVal[ 1 ]: false ) || Buy_Condition_1;

maVal[1] veya maVal[0] kullansam da durum o kadar değişmiyor, her tik değişmese de ohcl hala karlı.

Teşekkürler

 
ugo58 :

EA'nızın nasıl satın almaya/satmaya karar verdiğine dair herhangi bir bilgi olmadan bunu yanıtlamak zor.

Piyasada bir çubuğun çok büyük olduğu birçok durum görüyoruz (örneğin önemli haberlerde).

Böylece test cihazı böyle bir çubuk için 11'e kadar onay işareti üretir . Mantığınıza bağlı olarak çok farklı davranır (yalnızca testte).

EA'nızı gerçek parayla kullanırsanız, çok daha kötü olacağına eminim çünkü böyle büyük çubukların bir dakikada 200'e kadar tıklaması olabilir.

Mevcut çubuk üzerinde mantığınızın çalıştığını varsayıyorum, mantığınızı bir önceki çubuğun değerleriyle denemelisiniz.

En iyi dileklerimle

Uwe

Bu doğru değil, test cihazı 11'den fazla onay işareti üretebilir. Bu gönderiye bakın.
 
angevoyageur :
"Bu fazladan keneleri çözmek" ile ne demek istiyorsun?

ugo58'e kesinlikle katılıyorum. Büyük çubuklar OnTick olayını birçok kez tetikleyebilir, küçük çubuklar ise çok daha az tetikleyecektir.

Bunun otomatik ticaret stratejiniz üzerinde bir etkisi olabilir, bu nedenle geliştiricilerin, OnTick etkinliğinizin çubuk başına birçok kez yürütülebileceği gerçeğini azaltan çözümler aramamız gerekiyor.

Daha önce gönderdiğim şeyin sadece bir çözüm olduğunu düşünüyorum. ugo50 başka bir çözüm önerdi: OnTick mantığınızı en yakın geçmişteki çubukta çalıştırmak. Her neyse, OnTick mantığınızı mevcut çubukta çalıştırmak istiyorsanız, belki daha önce gönderdiğime benzer bir şey kullanabilirsiniz.

OnBar olayı gibi bir şey uygulamaya çalışıyoruz.

Bunun hakkında ne düşünüyorsun?

 
michelino :

merhaba,

önceki çubuğun değerlerini kullanarak ne demek istiyorsun? maVal[0] yerine maVal[1] (maVal'in hareketli ortalama değerleri içerdiği ve dizinin seri olarak ayarlandığı) kullanılsın mı?

veya son çubuk sırasında koşulun doğrulanıp doğrulanmadığını kontrol edin ve bu çubuğun açılmasını girin?

benim çok basit EA kodunun altında

maVal[1] veya maVal[0] kullansam da durum o kadar değişmiyor, her tik değişmese de ohcl hala karlı.

Teşekkürler

Kodunuz maVal[1] veya maVal[0] kullanıyorsa veya genel olarak yalnızca Kapalı çubuk üzerinde veya Açık çubukta veya bir çubuk içinde çalışıyorsanız, büyük bir fark vardır.

Son durumda Her tik modunu kullanmanız gerekir, diğer tüm modlar uygun değildir.

 
angevoyageur :
Bu doğru değil, test cihazı 11'den fazla onay işareti üretebilir. Bu gönderiye bakın.

Teşekkür. Oh iyi. Yeniden öğrenmem gereken şeylerden biri. ;)


Dediğim gibi mantığınıza bağlı.

Bu sorunları çözmenin birçok yolu vardır, maVal[1] daha kolay çözümlerden biridir, çünkü hareketli ortalamalar her çubukta çok hızlı değişmeyebilir (dönem uzunluğuna ve yumuşatma yöntemine bağlı olarak).

Örneğin, bir dizi çubuktan yüksek ve düşük bir değere bağlıysanız, bu farklı olabilir.

 
Paylaşım için teşekkürler... Güzel
 
Belki bu bağlantı da yararlıdır, https://www.mql5.com/en/articles/159
"New Bar" Event Handler
"New Bar" Event Handler
  • 2010.10.11
  • Konstantin Gruzdev
  • www.mql5.com
MQL5 programming language is capable of solving problems on a brand new level. Even those tasks, that already have such solutions, thanks to object oriented programming can rise to a higher level. In this article we take a specially simple example of checking new bar on a chart, that was transformed into rather powerful and versatile tool. What tool? Find out in this article.
Neden: