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

 
Vitaly Muzichenko :

Yazıyı maalesef ben görmedim belki başkası anlatır.

İstenen kurulum fiyatını girmek mümkün olmayacağından sipariş veremezsiniz. Aynı şey lotlar için de geçerli.

fareyi koydum.

  • Fiyatın üstüne tıklayın+Ctrl - Satış Limiti
  • Fiyat+Ctrl -Satın Alma Limitinin Altına Tıklayın
  • Fiyatın üstüne tıklayın+Ctrl+Shift - Satın Al Durdur
  • Fiyatın altına tıklayın+Ctrl+Shift - Satış Durdur
Ayrıca BuyStopLimit ve SellStopLimit'i bir vardiya ile ayarlayabilirsiniz.
 
Artyom Trishkin :

fareyi koydum.

  • Fiyatın üstüne tıklayın+Ctrl - Satış Limiti
  • Fiyat+Ctrl -Satın Alma Limitinin Altına Tıklayın
  • Fiyatın üstüne tıklayın+Ctrl+Shift - Satın Al Durdur
  • Fiyatın altına tıklayın+Ctrl+Shift - Satış Durdur
Ayrıca BuyStopLimit ve SellStopLimit'i bir vardiya ile ayarlayabilirsiniz.

Bu makaledeki kontrol paneli https://www.mql5.com/ru/articles/62 test cihazında çalışır mı (yalnızca düğmeler)?

Создание активных панелей управления на MQL5 для торговли
Создание активных панелей управления на MQL5 для торговли
  • 2010.04.15
  • Евгений
  • www.mql5.com
Удобство имеет большое значение в работе, а тем более в работе трейдера, где скорость и точность решают многое. При подготовке терминала к работе каждый настраивает своё рабочее место максимально комфортно для себя, чтобы в максимально короткий срок можно было совершить анализ и войти в рынок. Но реальность такова, что разработчики не могут...
 
Sergey Savinkin :

Bu makaledeki kontrol paneli https://www.mql5.com/ru/articles/62 test cihazında çalışır mı (yalnızca düğmeler)?

Öyleyse dene - seni durduran ne?

Ben sadece görselleştiriciye nasıl gecikmeler koyduğumu yazdım.

 
Artyom Trishkin :

Öyleyse dene - seni durduran ne?

Ben sadece görselleştiriciye nasıl gecikmeler koyduğumu yazdım.

Sadece deniyorum. Zaman kaybetmek istemedim, robotun çalışmasında bir panele ihtiyacım yok, sadece test için ihtiyacım var. Bu nedenle, konuyu ayrıntılı olarak incelemeyi planlamadım.

 
İyi makale, ancak test cihazında OnChartEvent() olayı çağrılmıyor, düğmeler çalışmıyor. https://www.mql5.com/en/forum/42817/page2 forumunda soruna bir çözüm buldum
Использование переменных в событии OnChartEvent индикатора в тестере
Использование переменных в событии OnChartEvent индикатора в тестере
  • 2016.02.25
  • www.mql5.com
При тестировании в эксперте можно обрабатывать пользовательские события с помощью функции OnChartEvent(), но в индикаторах эта функция в тестере не вызывается.
 

Aşağıdaki kodda neden c close[i-1] öğesini close[i-2] olarak değiştirdiğimde, Array of Range oluşuyor? Kod, kesinlikle MQL5'teki kitaba göre yazılmıştır, ancak fiyat 2'den fazla hücre değiştirildiğinde arabelleğin neden sınırların dışında olduğunu açıklamıyor.

  {
   int values_to_copy;
   int start;
   int calculated= BarsCalculated (iBands1_handle);

   
   if (calculated <= 0 )
   {
     return ( 0 );
   }
   if (prev_calculated== 0 || calculated!=bars_calculated)
   {
    start= 1 ;
     if (calculated> rates_total) values_to_copy=rates_total;
     else values_to_copy=calculated;
    }
     else
    {
   start=rates_total- 1 ;
   values_to_copy= 1 ;
   }
   
   if (!FillArrayFrom_iBands1_handleBuffer(Base,Upper,Lower,iBands1_handle,values_to_copy)) return ( 0 );

   for ( int i=start; i <rates_total &&! IsStopped ();i++)
   {
     Print ( "C " , close[i- 2 ]);
   }
 
clickaider :

Aşağıdaki kodda neden c close[i-1] öğesini close[i-2] olarak değiştirdiğimde, Array of Range oluşuyor? Kod, kesinlikle MQL5'teki kitaba göre yazılmıştır, ancak fiyat 2'den fazla hücre değiştirildiğinde arabelleğin neden sınırların dışında olduğunu açıklamıyor.

Anladığım kadarıyla göstergeden bahsediyoruz. Öyleyse, -timeseries dizisine " kapat " erişimle ilgili iki durumu göz önünde bulundurun: (1) " başlangıç ", "1"e eşit olduğunda ne olur ve (2) " başlangıç ", "rates_total-1"e eşit olduğunda ne olur.

Durum (1) ve durum (2) için "close[i-2]" yapmaya çalışırsanız, elde edilen dizi indeksi " kapalı " aklınızdan hesaplayın.

 
Vladimir Karputov :

Anladığım kadarıyla göstergeden bahsediyoruz. Öyleyse, -timeseries dizisine " kapat " erişimle ilgili iki durumu göz önünde bulundurun: (1) " başlangıç ", "1"e eşit olduğunda ne olur ve (2) " başlangıç ", "rates_total-1"e eşit olduğunda ne olur.

Durum (1) ve durum (2) için "close[i-2]" yapmaya çalışırsanız, elde edilen dizi indeksi " kapalı " aklınızdan hesaplayın.

Teşekkürler, kontrol ettim, orada start = 1 değerine 1'den büyük bir sayı koymak gerekiyordu, hata ayıklama, yeniden hesaplamanın başlangıcında, yakın dizi bir hücreden bir değer almaya çalıştığında hatanın oluştuğunu gösterdi. henüz ortaya çıkmadı.

 
lütfen bana bir diziye nasıl bilgi yazabileceğimi ve sonra onu oradan yeniden oluşturabileceğimi ve sonra gerekirse tekrar üzerine yazabileceğimi söyle, ama hepsinin değil, belirli hücrelerin. veya onlardan bilgi silin, örneğin bir işlemi kapatırken, işlemle ilgili bilgiler silinir. Pip cinsinden iki boyutlu açık zaman ve mum uzunluğu dizisi. bu mekanizma çok ilginç. oraya bir döngü ekleyin ve çok güzel olurdu. Bu örneği, daha yüksek matematik, yani üç katlı integral kullanarak bir Uzman Danışman oluşturmak için kullanmak istiyorum. Diyelim ki x ve y fiyat ve zaman biliniyor, z'yi buluyoruz - bu durumda ciddiyim. ve bu bir sır. Anlayışın için teşekkürler .
 
Başka bir soru - bu koda kapanış fiyatının satırın üzerinde olması için bir koşul koyarsanız (diyelim ki bu koşul program başlatılmadan önce var), kod beklendiği gibi çalışır, ancak bunun tersini yazarsanız, yani. kodu çalıştırmadan önce şu anda iki kutuplu olan koşullar, hata ayıklama verileri yanlış gidecektir. Söyle bana, bu neden oluyor? Ne de olsa, bu yalnızca koşul ifadesindeki bir karşılaştırmadır, bunun neden kod üzerinde zararlı bir etkisi olsun?
   for ( int i = start; i < rates_total &&! IsStopped ();i++)
   {
     if (close[i] > Upper[i])
     Print ( "C " , close[i]);
    
Örnek: eğer
 if (close[i] < Upper[i])

Hata ayıklamanın sonucu aşağıdaki gibidir:

Veriler doğrudur, fiyat güncelleme oranına eşit düzenli aralıklarla güncellenir

Ancak ilk koşulu şu şekilde ayarlarsanız:

 if (close[i] > Upper[i])

O zaman sonuç yanlış olacaktır:

Yani kapanış fiyatlarının değerleri artık cari fiyat ile örtüşmemektedir.


Bu neden oluyor, anlayamıyorum.

ana kod bloğu  
Neden: