[UYARI, KONU KAPALI!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde. - sayfa 399

 
gross >> :

Merhaba, MQL4 çalışmaya başlamaya karar verdim, dizilerle çalışmaya başladım, bir soru ortaya çıktı: Time[] öğesini görüntülerken, örneğin 2006.11.01 14:35 formu yerine aşağıdaki değer 1264149780 çıkıyor veya belki 1264149780 bir koordinat mı?

https://docs.mql4.com/en/convert/TimeToStr'ı okuyun

1264149780, 01/01/1970 tarihinden bu yana geçen saniye sayısıdır

 
alsu писал(а) >>

daha fazla mantıksal hata arayın.

SRC'nin durumu şu şekildedir:

Mantıksal bir hata buldum, her şey eşleşiyor.
Şimdi senaryo şöyle görünüyor, belki biri ilgilenir:
 int start ( )
   {
int Period_CCI = 18 ;
int Period_MA = 9 ;
double MApoCCI ;
double ind_CCI , ind_CCI_2 ;
double Sum_CCI ;
for ( int k = 0 ; k < 5 ; k + + )
   {
       for ( int i = 1 + k ; i < Period_MA + 1 ; i + + )
       {
         ind_CCI = iCCI ( Symbol ( ) , 0 , Period_CCI , PRICE_TYPICAL , i ) ;
         Sum_CCI = Sum_CCI + ind_CCI ;
       }
     MApoCCI = Sum_CCI / Period_MA ;
     int n = k + 1 ;
     ind_CCI_2 = iCCI ( Symbol ( ) , 0 , Period_CCI , PRICE_TYPICAL , n ) ;
     Alert ( "MA по СиСиАй " + k + " = " + MApoCCI ) ;
     Alert ( "СиСиАй " + k + " = " + ind_CCI_2 ) ;
     Sum_CCI = 0 ;
}
//----
   return ( 0 ) ;
   }
 
Vekker писал(а) >>

Yani bir komut dosyasına veya bir göstergeye ihtiyacınız var mı?

Bir gösterge örneği olarak

Dosyalar:
 
Vinin писал(а) >>

Yani bir komut dosyasına veya bir göstergeye ihtiyacınız var mı?

Bir gösterge örneği olarak

Bu komut dosyası daha sonra Expert Advisor'da olacaktır - bir komut dosyası olarak, bu parçanın performansını ve sonraki işlemler için verdiği sayıların doğruluğunu kontrol etmek için yazılmıştır.

Ekteki gösterge için teşekkürler - açıklayabilir misiniz - ne hakkında?

 
Vekker писал(а) >>

Bu komut dosyası daha sonra Expert Advisor'da olacaktır - bir komut dosyası olarak, bu parçanın performansını ve sonraki işlemler için verdiği sayıların doğruluğunu kontrol etmek için yazılmıştır.

Ekteki gösterge için teşekkürler - açıklayabilir misiniz - ne hakkında?

// WPR'yi oluştur

(i=limit;i>0;i--) için WPR[i]=iWPR(NULL,0,WPR.Period,i);

// İlk Düzeltme
(i=limit;i>0;i--) için EMA1[i]=iMAOnArray(WPR,0,EMA.1.Period,0,MODE_EMA,i);

// İkinci Düzleştirme
(i=limit;i>0;i--) için EMA2[i]=iMAOnArray(EMA1,0,EMA.2.Period,0,MODE_EMA,i);

Daha sonra bir danışmanda kullanılabilecek bir gösterge yapmak gereklidir.

Böylece daha iyi ve daha hızlı olacak

 

Söyle bana, lütfen, burada ne var? Tüm işlemleri tek yönde kapatan iki adet kod veriyorum:

 for ( ii = 0 ; ii < OrdersTotal ( ) ; ii + + )
       {
         OrderSelect ( ii , SELECT_BY_POS , MODE_TRADES ) ;
        
         if ( OrderType ( ) = = OP_BUY )
           {
             if ( closelong = = 1 )
               {
                 OrderClose ( OrderTicket ( ) , OrderLots ( ) , Bid , 20 , Blue ) ;
                 return ( 0 ) ;
               }
           }
         if ( OrderType ( ) = = OP_SELL )
           {
             if ( closeshort = = 1 )
               {              
                 OrderClose ( OrderTicket ( ) , OrderLots ( ) , Ask , 20 , Red ) ;
                 return ( 0 ) ;
               }
           }
       }

ve ikinci:

 for ( ii = OrdersTotal ( ) ; ii > 0 ; ii - - )
       {
         OrderSelect ( ii , SELECT_BY_POS , MODE_TRADES ) ;
        
         if ( OrderType ( ) = = OP_BUY )
           {
             if ( closelong = = 1 )
               {
                 OrderClose ( OrderTicket ( ) , OrderLots ( ) , Bid , 20 , Blue ) ;
                 return ( 0 ) ;
               }
           }
         if ( OrderType ( ) = = OP_SELL )
           {
             if ( closeshort = = 1 )
               {              
                 OrderClose ( OrderTicket ( ) , OrderLots ( ) , Ask , 20 , Red ) ;
                 return ( 0 ) ;
               }
           }
       }

Her şey aynı gibi görünüyor, yalnızca ikincisi, sonuncusundan başlayarak ve ilkinden başlayarak - ilkinden başlayarak anlaşmaları kapatmalı.

Yani ilki düzgün çalışıyor, tüm işlemler kapanıyor, ikincisi sadece en son işlemi kapatırken geri kalanı kapatmıyor. Niye ya?

 
Azimuth >> :

Söyle bana, lütfen, burada ne var? Tüm işlemleri tek yönde kapatan iki adet kod veriyorum:

ve ikinci:

Her şey aynı gibi görünüyor, yalnızca ikincisi, sonuncusundan başlayarak ve ilkinden başlayarak - ilkinden başlayarak anlaşmaları kapatmalı.

Yani ilki düzgün çalışıyor, tüm işlemler kapanıyor, ikincisi sadece en son işlemi kapatırken geri kalanı kapatmıyor. Niye ya?

Garip dönüş kullanımı, koşullar ve eğer yuvalama azaltılabilir.

 if ( ( OrderType ( ) = = OP_BUY ) & & ( closelong = = 1 ) )


Ve geri sayımda SiparişlerToplam bir patlama .


 
Test cihazında zikzak çalışmasını nasıl yapacağımı söyle. Pivot noktaları arayan bir komut dosyası çalıştırıyorum ve gerçek tırnak penceresinden sonuçlar veriyor, bu bunu yapan ilk gösterge değil. Nasıl başa çıkılır bununla.
 
Andrei-1 писал(а) >>
Test cihazında zikzak çalışmasını nasıl yapacağımı söyle. Pivot noktaları arayan bir komut dosyası çalıştırıyorum ve gerçek tırnak penceresinden sonuçlar veriyor, bu bunu yapan ilk gösterge değil. Nasıl başa çıkılır bununla.

Görselleştirme modunda çizelgeye atılan zikzak geleceğe bakar.

Geleceğe bakmayan bir zikzak verebilirim

 
Deneyeceğiz. Evet, savchenkoandrei-ya@yandex.ru veya bir bağlantı yakaladım.