MQL4 ve MQL5 ile ilgili herhangi bir acemi sorusu, algoritmalar ve kodlar hakkında yardım ve tartışma - sayfa 1893

 

Lütfen bana söyle.

mql4, açılış fiyatında MA'ya dayalı bir göstergeye sahipti ve bu, mevcut çubukta yeniden boyamayı önlemeye izin verdi. int start() aracılığıyla iyi çalıştı. Her şey açıkça gösterdi

mql5'te aynı gösterge int start üzerinden çalışmıyor, int OnCalculate üzerinden çalışıyor. Ve sürekli olarak yeniden hesaplar ve yeniden çizer, görüntü bir saniyenin milleri boyunca kaybolur ve zaten başka değerler olabilir, çünkü iki MA'nın kesiştiği sınır durumu, iki MA arasındaki mesafe ayarlanmış olmasına rağmen yardımcı olmaz. Ve açılış fiyatlarında da yardımcı olmaması gerçeği, MA tamponundan 0. değil 1. değeri almak için düşünceler vardı, ancak yardımcı olmadı, önce yürütmeyi devre dışı bırakmak için bir fikir vardı. yeni bir barın gelmesi de yardımcı olmadı (hiçbir şey göstermeyi bıraktı Bu durum nasıl aşılır?

Grafiği sağa sola kaydırırken, gösterge ayrıca sürekli yeniden hesaplamalarla titriyor

 
Sergey Dymov açılış fiyatlarında da yardımcı olmaması gerçeği, MA tamponundan 0. değil 1. değeri almak için düşünceler vardı, ancak yardımcı olmadı, önce yürütmeyi devre dışı bırakmak için bir fikir vardı. yeni bir barın gelmesi de yardımcı olmadı (hiçbir şey göstermeyi bıraktı Bu durum nasıl aşılır?

Grafiği sağa sola kaydırırken, gösterge ayrıca sürekli yeniden hesaplamalarla titriyor

Burada bir soru sorun - kesinlikle yardımcı olacaklar.

 
Sergey Dymov açılış fiyatlarında da yardımcı olmaması gerçeği, MA tamponundan 0. değil 1. değeri almak için düşünceler vardı, ancak yardımcı olmadı, önce yürütmeyi devre dışı bırakmak için bir fikir vardı. yeni bir barın gelmesi de yardımcı olmadı (hiçbir şey göstermeyi bıraktı Bu durum nasıl aşılır?

Grafiği sağa sola kaydırırken, gösterge ayrıca sürekli yeniden hesaplamalarla titriyor

kodu gönder
 

Grafikte bir şey var

Yanılmıyorsam herhangi bir renkte yaptıklarıyla tanıştım.

Nasıl?

 
Vitaly Muzichenko # :

grafikte bir şey var

Yanılmıyorsam her renkte yaptıklarıyla tanıştım.

Nasıl?

F8 ve


Ama bu aynı zamanda ızgaranın rengidir, bu yüzden işaretini kaldırın


 
Artyom Trishkin # :

F8 ve

Ancak bu aynı zamanda ızgaranın da rengidir, bu nedenle işaretini kaldırın.

Anladım teşekkürler!

Şebekeye ihtiyaç var, bölünmemesi üzücü.

PS Ve 15 çubuğu programlı olarak sağ kenardan nasıl hareket ettirebilirim?
 
Vitaly Muzichenko # :

Anladım teşekkürler!

Şebekeye ihtiyaç var, bölünmemesi üzücü.

PS Ve 15 çubuğu programlı olarak sağ kenardan nasıl hareket ettirebilirim?

Belki bu yüzden?

 //+------------------------------------------------------------------+
//| Функция включает/выключает режим отображения ценового графика с  |
//| отступом от правого края.                                        |
//+------------------------------------------------------------------+
bool ChartShiftSet( const bool value, const long chart_ID= 0 )
  {
//--- сбросим значение ошибки
   ResetLastError ();
//--- установим значение свойства
   if (! ChartSetInteger (chart_ID, CHART_SHIFT , 0 ,value))
     {
       //--- выведем сообщение об ошибке в журнал "Эксперты"
       Print ( __FUNCTION__ + ", Error Code = " , GetLastError ());
       return ( false );
     }
//--- успешное выполнение
   return ( true );
  }
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Примеры работы с графиком
Документация по MQL5: Константы, перечисления и структуры / Константы графиков / Примеры работы с графиком
  • www.mql5.com
Примеры работы с графиком - Константы графиков - Константы, перечисления и структуры - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Alexey Viktorov # :

Belki bu yüzden?

Evet ama düğmeye basıyor

İşaretçiyi elinizle sürüklediğinizde, sağ kenara ulaşmadan önce oldukça fazla duruyor - bu, terminalin temelde yanlış bir sınırlamasıdır!

Düğmeye basıldığında, uç çubuk neredeyse sağ kenara yapışır, grafiğin bilgi içeriği kaybolur.

Her yeni çubuğun görünümü ile bu işlemi yapmazken programlı olarak 15-20 bara kadar sıkmak gerekir. Bir kez basın.

PS Neden böyle bir kısıtlama ve bu kadar çok boş alan?


 
Vitaly Muzichenko # :

Evet ama düğmeye basıyor

İşaretçiyi elinizle sürüklediğinizde, sağ kenara ulaşmadan önce oldukça fazla duruyor - bu, terminalin temelde yanlış bir sınırlamasıdır!

Düğmeye basıldığında, uç çubuk neredeyse sağ kenara yapışır, grafiğin bilgi içeriği kaybolur.

Her yeni çubuğun görünümü ile bu işlemi yapmazken programlı olarak 15-20 bara kadar sıkmak gerekir. Bir kez basın.

yüzde olarak

 //+------------------------------------------------------------------+ 
//| Функция устанавливает размер отступа нулевого бара от правого    | 
//| края графика в процентах (от 10% до 50%). Для включения режима   | 
//| отступа, нужно установить значение свойства CHART_SHIFT равным   | 
//| true.                                                            | 
//+------------------------------------------------------------------+ 
bool ChartShiftSizeSet( const double value, const long chart_ID= 0 ) 
  { 
//--- сбросим значение ошибки 
   ResetLastError (); 
//--- установим значение свойства 
   if (! ChartSetDouble (chart_ID, CHART_SHIFT_SIZE ,value)) 
     { 
       //--- выведем сообщение об ошибке в журнал "Эксперты" 
       Print ( __FUNCTION__ + ", Error Code = " , GetLastError ()); 
       return ( false ); 
     } 
//--- успешное выполнение 
   return ( true ); 
  }
 
Alekseu Fedotov # :

yüzde olarak

Çalışır, ancak minimum, elle ayarlanabilen bir girintidir ve daha az değil

Görsel olarak - yaklaşık %10 minimum. %5 neden çalışmıyor

Neden: