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

 
barabashkakvn :
Tüm hesaplamalar OnCalculate'de yapılır (yani, yeni bir çubuğun ortaya çıkması olayı burada tanımlanır)
Teşekkürler, bir bakacağım. Belki bir şeyi yanlış anlıyorum, ancak ilk beşte özel bir göstergenin değerini almak için arabellek dizinini belirtme olasılığı yok gibi görünüyor.
 
forexman77 :
Teşekkürler, bir bakacağım. Belki bir şeyi yanlış anlıyorum, ancak ilk beşte özel bir göstergenin değerini almak için arabellek dizinini belirtme olasılığı yok gibi görünüyor.
iCustom, özel bir gösterge tanıtıcısı döndürür. Ardından, ikinci parametrenin yalnızca arabellek numarası olduğu CopyBuffer.
 
Lütfen söyleyin - Expert Advisor'ın optimizasyonunu tamamen durduran herhangi bir fonksiyon var mı ve ayrı bir optimizasyon geçişi değil mi?
 
barabashkakvn:
iCustom , özel bir gösterge tanıtıcısı döndürür. Ardından, ikinci parametrenin yalnızca arabellek numarası olduğu CopyBuffer.

Söyle bana, komut dosyasındaki göstergenin değerini almak mümkün mü?

Bu şekilde denedim:

 input int MA_Period= 21 ;
input int MA_Shift= 0 ;
input ENUM_MA_METHOD MA_Method= MODE_SMA ;
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {
//---
double MA_handle= iCustom ( NULL , 0 , "Examples\\Custom Moving Average" ,
                     MA_Period,
                     MA_Shift,
                     MA_Method,
                     PRICE_CLOSE // считаем по ценам закрытия
                     );  
Alert ( "MA_handle=" ,MA_handle);
  }

Herhangi bir göstergedeki değeri alıyorum 10.

Bunu da denedim (4807 hatası çıkıyor):

 input int MA_Period= 21 ;
input int MA_Shift= 0 ;
input ENUM_MA_METHOD MA_Method= MODE_SMA ;
int MA_handle;
double ma1Val[]; 
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart ()
  {

//--- массив значений индикатора MA
   ArraySetAsSeries (ma1Val, true );
//--- копируем значения индикаторов из индикаторных буферов
   if ( CopyBuffer (MA_handle, 0 , 0 , 3 ,ma1Val)< 0 )
     {
       Alert ( "Ошибка копирования буферов индикатора Moving Average - номер ошибки:" , GetLastError (), "!!" );
       return ;
     }
MA_handle= iCustom ( NULL , 0 , "Examples\\Custom Moving Average" ,
                     MA_Period,
                     MA_Shift,
                     MA_Method,
                     PRICE_CLOSE // считаем по ценам закрытия
                     );  
Alert ( "ma1Val[0]=" ,ma1Val[ 0 ]);
  }
 
forexman77 :
barabashkakvn:
iCustom , özel bir gösterge tanıtıcısı döndürür. Ardından, ikinci parametrenin yalnızca arabellek numarası olduğu CopyBuffer.

Söyle bana, komut dosyasındaki göstergenin değerini almak mümkün mü?

Bu şekilde denedim:

Herhangi bir göstergedeki değeri alıyorum 10.

Bunu da denedim (4807 hatası çıkıyor):

1. iCustom yardımını okuyun.
2. Gösterge arabelleğinin değerini elde etme prosedürü: gösterge tutamağını alın ve ardından CopyBuffer kullanarak bu tutamacı kullanarak gerekli gösterge arabelleğini kopyalayın.
 
barabashkakvn :
1. iCustom yardımını okuyun.
2. Gösterge arabelleğinin değerini elde etme prosedürü: gösterge tutamağını alın ve ardından CopyBuffer kullanarak bu tutamacı kullanarak gerekli gösterge arabelleğini kopyalayın.
Tabii ki ders çalışacağım. Komut dosyasını sordum çünkü içinde "OnInit" yok, ancak tanıtıcı alındı. Komut dosyasında "OnStart" öncesi tanıtıcıyı talep ettiğimiz ortaya çıkıyor?
 
forexman77 :
Tabii ki ders çalışacağım. Komut dosyasını sordum çünkü içinde "OnInit" yok, ancak tanıtıcı alındı. Komut dosyasında "OnStart" öncesi tanıtıcıyı talep ettiğimiz ortaya çıkıyor?
OnInit, Uzman Danışmanlarda ve göstergelerde mevcuttur.
 
barabashkakvn :
OnInit, Uzman Danışmanlarda ve göstergelerde mevcuttur.
Her şey yolunda gitti! Teşekkürler!!
 
forexman77 :
Her şey yolunda gitti! Teşekkürler!!
Rica ederim.
 
Fleder :
Market'teki ürünler 5 ila 20 aktivasyona sahiptir (satıcının takdirine bağlı olarak). Aktivasyon denemelerinizi kullanmadıysanız, endişelenmenize gerek yok, ekstra ganimeti kaldırmayacaklar.
Cevap için teşekkürler, satın al butonuna basacağım. Başka yok :-)