Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 483

 
culler :

İki MA çizgisinin kesişme anını belirleme problemini çözmeye yardımcı olun.

Nasıl tarif edeceğimi bulamıyorum.

MAfast ve MAslow var

double MAfast=iMA(NULL,0,9,0,MODE_EMA,PRICE_CLOSE,1);

double MAslow=iMA(NULL,0,21,0,MODE_EMA,PRICE_CLOSE,1);

if(MAfast>MAslow) ayarladığımda MAfast gerçekten alttan gelene kadar çalışır, kesiştiğinde kesişme anını yakalar ve ardından MAfast yukarıdandır ve SATIN AL 'da daha fazla flop sipariş eder)))

Böylece, kesişme anını tam olarak bu şekilde belirleyebilir ve aşağıdan yukarıya veya tam tersi ile kesiştiği yeri karşılaştırabilirsiniz.

Ve sonra kodumda az ya da çok var, çıkıyor. Bu nedenle söveler.

if ((x1 - y1)*(x2 - y2) < 0)
{
// bir kavşağımız var
}
 
culler :

İki MA çizgisinin kesişme anını belirleme problemini çözmeye yardımcı olun.

Nasıl tarif edeceğimi bulamıyorum.

MAfast ve MAslow var

double MAfast=iMA(NULL,0,9,0,MODE_EMA,PRICE_CLOSE,1);

double MAslow=iMA(NULL,0,21,0,MODE_EMA,PRICE_CLOSE,1);

if(MAfast>MAslow) ayarladığımda MAfast gerçekten alttan gelene kadar çalışır, kesiştiğinde kesişme anını yakalar ve ardından MAfast yukarıdandır ve SATIN AL 'da daha fazla flop sipariş eder)))

Böylece, kesişme anını tam olarak bu şekilde belirleyebilir ve aşağıdan yukarıya veya tam tersi ile kesiştiği yeri karşılaştırabilirsiniz.

Ve sonra kodumda az çok var, çıkıyor. Bu nedenle söveler.

Burada birçok ilginç şey bulacaksınız.
 
artmedia70 :
if ((x1 - y1)*(x2 - y2) < 0)
{
// bir kavşağımız var
}


TarasBY :
Burada birçok ilginç şey bulacaksınız.

Teşekkür ederim. Teşekkür ederim.
 
culler :

İki MA çizgisinin kesişme anını belirleme problemini çözmeye yardımcı olun.

Nasıl tarif edeceğimi bulamıyorum.

MAfast ve MAslow var

double MAfast=iMA(NULL,0,9,0,MODE_EMA,PRICE_CLOSE,1);

double MAslow=iMA(NULL,0,21,0,MODE_EMA,PRICE_CLOSE,1);

if(MAfast>MAslow) ayarladığımda MAfast gerçekten alttan gelene kadar çalışır, kesiştiğinde kesişme anını yakalar ve ardından MAfast yukarıdandır ve SATIN AL 'da daha fazla flop sipariş eder)))

Böylece, kesişme anını tam olarak bu şekilde belirleyebilir ve aşağıdan yukarıya veya tam tersi ile kesiştiği yeri karşılaştırabilirsiniz.

Ve sonra kodumda az ya da çok var, çıkıyor. Bu nedenle söveler.


Çok faydalı bir konu ve sorunuz üzerine!
 
Belgeler diyor ki:

boolWindowIsVisible ( int indeksi)
Çizim alt penceresi görünürse DOĞRU, aksi takdirde YANLIŞ döndürür. Grafik alt penceresi, içine yerleştirilen göstergenin görünürlük özellikleri nedeniyle gizlenebilir.
Seçenekler:
dizin - Grafik alt pencere dizini.
Misal:
 int maywin=WindowFind("MyMACD");
  if(maywin>-1 && WindowIsVisible(maywin)==true)
    Print("MyMACD penceresi görünür");
  başka
    Print("MyMACD penceresi bulunamadı veya görünmüyor");

Lütfen ne anlama geldiğini açıklayın: "Grafik alt penceresi, içine yerleştirilen göstergenin görünürlük özellikleri nedeniyle gizlenebilir. "??? Göstergenin bu özelliği nedir????
 

Stoplevel bir int döndürmez mi?

Derleyici, aşağıdaki gibi bir kod için " tür dönüşümü nedeniyle olası veri kaybı " uyarısı verir:

   int slevel = MarketInfo ( Symbol (), MODE_STOPLEVEL );
да и на 
   int digits = MarketInfo ( Symbol (), MODE_DIGITS );
тоже
 

Yardıma ihtiyacınız var, bir danışmanı test ederken pozisyonun bir kısmı kapalı değil

 void Zacritie_poz_sell ()
{
 
 int     i, k= OrdersTotal ();
 string sy= Symbol ();
 
for (i= 0 ; i<k; i++) 
{
 if ( OrderSelect (i, SELECT_BY_POS , MODE_TRADES ))
 {
   if ( OrderSymbol () == sy)
   {
     if ( OrderType ()== OP_SELL )
     {
       if ( OrderMagicNumber ()==Magic)
       {
         double TP = OrderTakeProfit ();
         double Prise = OrderOpenPrice ();
         double Close_poz = NormalizeDouble ( Prise-(Prise-TP)/ 2 , Digits );
         double Lots1 = NormalizeDouble (Lots/ 4 , Digits );
         double TP1 = OrderTakeProfit ()+ 1 * Point ;
         double SL = OrderOpenPrice ()- 20 * Point ;
         if ( Bid == Close_poz && OrderStopLoss () != SL && TP == TP1 && Lots != Lots1)
         {
          
           OrderClose ( OrderTicket (),Lots1, Bid , 40 * Point , Yellow);

           break ;
           Sleep ( 1000 * 5 );
           RefreshRates ();
         
          
         }
         
       }
     }
  
    }
   }
 }
}
 
miha91 :

Yardıma ihtiyacınız var, bir danışmanı test ederken pozisyonun bir kısmı kapalı değil


 for (i=k- 1 ; i>= 0 ; i--)
 
evillive :

Stoplevel bir int döndürmez mi?

Derleyici, aşağıdaki gibi bir kod için " tür dönüşümü nedeniyle olası veri kaybı " uyarısı verir:

Açık dönüştürme:

 int slevel = ( int ) MarketInfo ( Symbol (), MODE_STOPLEVEL );
Görüyorsunuz... İşlev double türündedir , ancak istek tanımlayıcısı, int bilgilerinin dönüş türünü belirleyebilir. Bu yüzden yemin ediyor.
 

Expert Advisor'ı optimize ediyorum, çok fazla arama var, yaklaşık 10 ^ 17 derece, hala parametreler var, ancak artık optimize edilemezler. Neden böyle kısıtlamalar???

Ayrıca genetik algoritmayla ilgili bir soru . Böyle büyük veriler üzerinde normal şekilde çalışmayı bırakıyor gibi görünüyor, nihai kâr oldukça fazla atlıyor, çoğu zaman düşüyor. Yani, şimdi karlı ortamlar buldu, ancak başka bir zaman bulamadı. Geliştiriciler bunu düzeltecek mi?