Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 112

 
Bana nasıl kredi alacağımı veya nasıl para yatıracağımı söyle?
 

Bu TrendToTrend_open göstergesinin kullanıldığı bir danışman kodu var

aşağıdaki kod

Soru - EA neden bu göstergeyi kapanış fiyatı ile belirliyor?

 //--- входные параметры
input int LongTrend= 14 ; // Период LongTrend
input int ShortTrend= 7 ; // Период ShortTrend
input int EA_Magic= 0 ;   // Magic Number советника
input double Lot= 0.02 ; // Количество лотов
input double STR= 0.14 ;
input double TR= 0.1 ;
input double TP= 0.55 ;

//--- глобальные переменные

int TrendToTrend;
int TrendToTrendOpen;

//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit ()
  {
   //--- достаточно ли количество баров для работы
   if ( Bars ( _Symbol , _Period )< 60 ) // общее количество баров на графике меньше 60?
     {
       Alert ( "На графике меньше 60 баров, советник не будет работать!!" );
       return (- 1 );
     }
TrendToTrend= iCustom ( _Symbol , 0 , "TrendToTrend" ,LongTrend,ShortTrend);
TrendToTrendOpen= iCustom ( _Symbol , 0 , "TrendToTrend_open" ,LongTrend,ShortTrend);

if (TrendToTrend< 0 ||TrendToTrendOpen< 0 )
     {
       Alert ( "Ошибка при создании индикаторов - номер ошибки: " , GetLastError (), "!!" );
       return (- 1 );
     } 
   return ( 0 );
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit ( const int reason)
  {
//--- освобождаем хэндлы индикаторов
   IndicatorRelease (TrendToTrend);
   IndicatorRelease (TrendToTrendOpen);
   }
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick ()
  {
   static datetime Old_Time;
   datetime New_Time[ 1 ];
   bool IsNewBar= false ;

// копируем время текущего бара в элемент New_Time[0]
   int copied= CopyTime ( _Symbol , _Period , 0 , 1 ,New_Time);
   if (copied> 0 ) // ok, успешно скопировано
     {
       if (Old_Time!=New_Time[ 0 ]) // если старое время не равно
        {
         IsNewBar= true ;   // новый бар
         if ( MQL5InfoInteger ( MQL5_DEBUGGING )) Print ( "Новый бар" ,New_Time[ 0 ], "старый бар" ,Old_Time);
         Old_Time=New_Time[ 0 ];   // сохраняем время бара
        }
     }
   else
     {
       Alert ( "Ошибка копирования времени, номер ошибки =" , GetLastError ());
       ResetLastError ();
       return ;
     }
//--- советник должен проверять условия совершения новой торговой операции только при новом баре
   if (IsNewBar== false )
     {
       return ;
     }
//--- Имеем ли мы достаточное количество баров на графике для работы
   int Mybars= Bars ( _Symbol , _Period );
   if (Mybars< 60 ) // если общее количество баров меньше 60
     {
     Alert ( "На графике менее 60 баров, советник работать не будет!!" );
     return ;
     }
return ; 
}
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
 

Merhaba!


Beni dürtün, lütfen, sorunuzun cevabını nerede okuyacağım.

Bir danışman var, içine farklı ilkelere göre işlem açan iki strateji dikiliyor. Sonuç olarak, ortak bir konum oluşur.

Biraz sonra, her stratejinin pozisyona nasıl katkıda bulunduğunu anlamam gerekiyor. Yani, pozisyonu hangi strateji (veya iki) oluşturdu.

Nasıl yapılır?


Teşekkür ederim!

 
sanderz :

Merhaba!


Beni dürtün, lütfen, sorunuzun cevabını nerede okuyacağım.

Bir danışman var, içine farklı ilkelere göre işlem açan iki strateji dikiliyor. Sonuç olarak, ortak bir konum oluşur.

Biraz sonra, her stratejinin pozisyona nasıl katkıda bulunduğunu anlamam gerekiyor. Yani, pozisyonu hangi strateji (veya iki) oluşturdu.

Nasıl yapılır?


Teşekkür ederim!

Danışman stratejilerden birini devre dışı bırakma yeteneğine sahipse ve ayarlardan sihirli sayıyı değiştirebilirsiniz. Ardından hesaba iki Uzman Danışman ekleyin ve her birinde stratejilerden birini kapatın ve pozisyonlar için farklı büyüler atayın, ardından daha büyük bir artı veya eksi veren büyülerle tarihte takip edin.
 
Kino :
Danışman stratejilerden birini devre dışı bırakma yeteneğine sahipse ve ayarlardan sihirli sayıyı değiştirebilirsiniz. Ardından hesaba iki Uzman Danışman ekleyin ve her birinde stratejilerden birini kapatın ve pozisyonlar için farklı büyüler atayın, ardından daha büyük bir artı veya eksi veren büyülerle tarihte takip edin.

Cevap için teşekkürler. Stratejiye göre pozisyonun açık olması durumunda değerini değiştiren statik değişkenler üzerinden yaptım (kapanış ve stop loss sırasında değerler de değişiyor). Genel olarak iyi çalışıyor, ancak danışmanı yeniden başlattıktan sonra emirlerini kaybedeceğini anlıyorum.

Документация по MQL5: Основы языка / Переменные / Статические переменные
Документация по MQL5: Основы языка / Переменные / Статические переменные
  • www.mql5.com
Основы языка / Переменные / Статические переменные - Документация по MQL5
 
dolar neden kenetlenmiyor?
Dosyalar:
965pp1ixr4.png  2000 kb
 
sneak :
dolar neden kenetlenmiyor?
yerleşimi nadiren güncelleyin. muhtemelen günde bir kez.
 

ATP arkadaşı yardım etti .. Bileceğim

ve sonra bilgisayarlar bodrumda .... bitcoin madeni kaplar dinleniyor .. kimlik yapsın

 

İşlevin neden 0 döndürdüğünü anlamıyorum:

 int BarsAmountPassed( datetime open_time)
  {
   datetime time_array[];
   int n;
   Print ( "inpupt time=" , TimeToString (open_time));
   CopyTime ( _Symbol , _Period ,open_time, TimeCurrent (),time_array);
   n= ArraySize (time_array);
   Print ( "number of elements in array=" ,n);
   return (n);
  }

Ben buna şöyle sesleniyorum:

 int bars;
bars=BarsAmountPassed( 1365198000 );  
Print ( __FUNCTION__ + ": Баров прошло с этого времени " ,bars);
n doğru olanı yazar ve 0 döndürür.
 
tor4en :

İşlevin neden 0 döndürdüğünü anlamıyorum:

Ben buna şöyle sesleniyorum:

n doğru olanı yazar ve 0 döndürür.
Garip bir şekilde, işlev türünü kısa veya çift olarak değiştirirsem, hesaplanan değeri döndürür (bu örnekte 4 çıkıyor). Ve int 0 ile.