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

 
igrok2008 >> :

Merhaba.

Böyle bir Uzman Danışman SimpleMA var, kendim için biraz ayarladım, sadece biraz... :-))) ve MASimple_v2x olarak adlandırdım, kodu gönderiyorum

sonra iyileştirmeye çalıştım AMA AMA

denemeden sonra hata veriyor

NEYİ YANLIŞ YAPTIM?????????????

Şimdiden teşekkürler



Şu şekilde deneyin:

- yerine - ise MAF_0 - MAF_1= A
MAS_0 - MAS_1=B ise

bu çift A = MAF_0 - MAF_1;

çift B = MAS_0 - MAS_1;

 

Doğru anladıysam her iki MA aynı yönde hareket ettiğinde durumu takip ediyorsunuz. Daha birçok ilginç keşif sizi bekliyor :))

 //это выражение не имеет смысла, if здесь лишний
   if MAF_0 - MAF_1 = A
   if MAS_0 - MAS_1 = B
//если требовалось определить разницу значений МА на 1-ом и нулевом баре, то можно так
   double A = MAF_0 - MAF_1 ;
   double B = MAS_0 - MAS_1 ;
 
rushman >> :

Söyleyin lütfen, bir piyasa emri için lot sayısını yenilerini açmadan artırmak mümkün müdür?

Bildiğim kadarıyla - hayır! Sadece yeni bir lot açarken. Ve anlaşma yapıldıktan sonra lotları artırmanın anlamı nedir? Yoksa doğru yönde nasıl açıldığını gördüğünüzü ve daha fazla para ve hatta daha fazlasını istediğinizi mi kastediyorsunuz?

 
>>

Ve şimdi onunla ne yapmalı?

NormalizeDouble(Bid,4);   //:))))


Belki daha iyi olurdu (daha çok yönlü):

 NormalizeDouble ( Bid , Digits ) ;
 

Kodda bir hata bulmama yardım edin.Derleme yaparken hata yok ama hesaplamalar ve işlemler geçmiyor (Buraya gelen Profesyonellere şimdiden teşekkürler.

//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж
extern int     EMA1 = 14 ;                                    // Период 1-й EМА
extern int     EMA2 = 48 ;                                    // Период 2-й EМА
extern int     EMA3 = 144 ;                                    // Период 3-й EМА                             
extern int period = 12 ;
extern int porog = 3 ;
extern int metod = 1 ;
extern int metod2 = 1 ;
extern int prise = 0 ;
extern double SL =    1000 ;                                    // СтопЛосс ордера
extern double TP =    500 ;                                    // ТэйкПрофит ордера
extern double Lots = 0.1 ;   
//--------------------------------------------------------------------------------------------
int
   New_Bar ,                                                // 0/1 Факт образования нового бара
   Time_0 ,                                                // Время начала нового бара
   total ;                                                  // Крличество открытых ордеров
//--------------------------------------------------------------------------------------------
double 
   Lot ,                                                    // Количество лотов
   Norm ,                                                  // Предыдущее значение 1-й МА (розов)
   Fast ,                                                    // Текущее    значение 1-й МА (розов)
   Slow ,                                                  // Текущее    значение 2-й МА(голубая)
   Signal [ ] ;
//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж
int init ( )   
   {
//============================================================================================
   SL = SL * Point ;                                          // SL в пунктах
   TP = TP * Point ;                                          // ТР в пунктах
   return ;
//============================================================================================
   }   
//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж
int start ( )   
   {
//============================================================================================
   total = OrdersTotal ( ) ;                                    // Общее количество ордеров
   if ( total = = 2 ) return ;                                    // Уже открыты оба ордера

//----------------------------------------------------------------------------- Новый бар ----
   New_Bar = 0 ;                                              // Для начала обнулимся
   if ( Time_0 ! = Time [ 0 ] )                                  // Если уже другое время начала бара
       {
      New_Bar = 1 ;                                          // А вот и новый бар
      Time_0 = Time [ 0 ] ;                                    // Запомним время начала нового бара
       } 
//--------------------------------------------------------------------------------------------
//---расчет тренда ввех или вниз (XMA)
   int limit ;
   double tmp1 , tmp2 ;
   int counted_bars = IndicatorCounted ( ) ;
   int i ;
   if ( counted_bars < 0 ) return ( - 1 ) ;
   if ( counted_bars > 0 ) counted_bars - - ;
   limit = Bars - counted_bars ;
   for ( i = limit ; i > = 0 ; i - - ) {
     tmp1 = iMA ( Symbol ( ) , 0 , period , 0 , metod , prise , i ) ;
     tmp2 = iMA ( Symbol ( ) , 0 , period , 1 , metod2 , prise , i ) ; 
     if ( MathAbs ( tmp1 - tmp2 ) > = porog * Point )
     {        Signal [ i ] = tmp2 ;        }
     
//--------------------------------------------------------------------------------------------
   Fast   = iMA ( NULL , 0 , EMA1 , 0 , MODE_EMA , PRICE_CLOSE , 0 ) ; // Текущее    значение 1-й EМА
   Norm = iMA ( NULL , 0 , EMA2 , 0 , MODE_EMA , PRICE_CLOSE , 0 ) ; // Предыдущее значение 2-й EМА
   Slow = iMA ( NULL , 0 , EMA3 , 0 , MODE_EMA , PRICE_CLOSE , 0 ) ; // Текущее    значение 3-й EМА
   
//--------------------------------------------------------------------------------------------
   if ( Fast > Norm & & Norm > Slow & & New_Bar = = 1 & & Close [ i ] > Signal [ i ] ) Open_Buy ( ) ;        // Движение снизу вверх = откр. Buy
   if ( Fast < Norm & & Norm < Slow & & New_Bar = = 1 & & Close [ i ] < Signal [ i ] ) Open_Sell ( ) ;      // Движение сверху вниз = откр. Sell
   
   }
       return ;
//============================================================================================
   }   
//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж
int Open_Buy ( )   
   {
   if ( total = = 1 )
       {
       OrderSelect ( 0 , SELECT_BY_POS ) ;                      // Выделим ордер
       if ( OrderType ( ) = = 0 ) return ;                          // Если он buy, то не открываемся
       }
   OrderSend ( Symbol ( ) , 0 , Lots , Ask , 0 , Ask - SL , Ask + TP , "" , 0 , 0 , Blue ) ; // Открываемся
   return ;
   }
//жжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжжж
int Open_Sell ( ) 
   {
   if ( total = = 1 )
       {
       OrderSelect ( 0 , SELECT_BY_POS ) ;                      // Выделим ордер
       if ( OrderType ( ) = = 1 ) return ;                          // Если он sell, то не открываемся
       }
   OrderSend ( Symbol ( ) , 1 , Lots , Bid , 0 , Bid + SL , Bid - TP , "" , 0 , 0 , Red ) ; // Открываемся
   return ;
   }
 

Merhaba! Lütfen bana söyle!!! Kendime çözemediğim birkaç sorum var:

1. Bir çubukta sadece bir siparişin açılması için nasıl yapılır?

2. Alım satım için birkaç koşul var, bunun için hangi fonksiyonu kullanmalıyım?

3. Açık bir pozisyonun başabaşa transferi nasıl organize edilir?

4. Expert Advisor kodunda her üç koşul nasıl uygulanabilir (mümkünse bir örnek kullanarak)?

Cevaplarınızı bekliyorum. Şimdiden çok teşekkür ederim.

 
Piboli >> :

Merhaba. Burada yanlışlıkla ilgimi çeken bir konuyla ilgili bir makaleye rastladım. Yani bu: Pencerenin boyutunu seçme. .... Optimum sonuçlar elde edildi

verilerin fraktal boyutunun sırasına göre bir pencere boyutu seçilmesi durumunda. Bunu hesaplamak için, yeterince büyük bir sürgülü pencere ile seriyi "kesmelisiniz"

(bakınız Şekil 5) ve ardından örneğin Box-count yöntemini kullanarak alınan verilerin fraktal boyutunu hesaplayın...

Lütfen bana (tercihen daha basit) bu sürgülü pencerenin boyutunu nasıl hesaplayacağımı söyleyin. Ya da en azından nerede aranacağını.


Sitede yazarın bağlantıları var, kaynakla iletişime geçmenizi tavsiye ederim.
 

Yaşasın KAZANILDI!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Manyak ve granit77 sayesinde.

Taze şaka. Bir bilgisayar bilimi öğretmeni tarafından yürütülen bir bilgisayar sınıfında edebiyat dersi.

-Gerasim, bu.....bu......iyi......ama ses kartı yoktu :-))))))))))))))) ))))

Expert Advisor'a gelince, ticaret koşulunu kısaltmaya çalıştım. Daha iyi bir algı için.

Yani, matematiksel hesaplamalar varsa, onları çift olarak çağırmak daha iyidir.

 
Maniac >> :

Merhaba! Lütfen bana söyle!!! Kendime çözemediğim birkaç sorum var:

1. Bir çubukta sadece bir siparişin açılması için nasıl yapılır?

....... ...

Cevaplarınızı bekliyorum. Şimdiden çok teşekkür ederim.

https://www.mql5.com/ru/forum/102366

//-----------------

https://www.mql5.com/ru/forum/113983/page2

//------------

https://www.mql5.com/ru/forum/110184

 
morok >> :

Kodda bir hata bulmama yardım edin.Derleme yaparken hata yok ama hesaplamalar ve işlemler geçmiyor (Buraya gelen Profesyonellere şimdiden teşekkürler.

Kodunuzda gözüme çarpan ilk şey ve bundan emin değilim, EA'da IndicatorCounted() işlevini kullanmanın doğruluğu. Test etmedim, ancak doğru çalışmasının yalnızca özel göstergelerde garanti edildiğine inanıyorum.