// --- если обычное тестирование без оптимизации и визуализацииbool IsUsualTester = (MQLInfoInteger(MQL_TESTER) && !MQLInfoInteger(MQL_OPTIMIZATION) && !MQLInfoInteger(MQL_VISUAL_MODE));
// --- если не тестирование и не оптимизация, значит видимый графикbool IsVisibleChart = (!IsUsualTester && !MQLInfoInteger(MQL_OPTIMIZATION));
В статье рассматривается идея мультирежимного программирования торговых роботов на MQL5. Используется объектно-ориентированный подход для реализации каждого из режимов. Приводится пример иерархии режимных классов и пример классов для тестирования. Предполагается, что мультирежимное программирование торговых роботов полностью учитывает особенности каждого режима работы MQL5-советника. Для идентификации режимов создаются функции и перечисление.
Bu ne anlama geliyor? Biraz daha açabilir misiniz?
Bazılarına bunun doğru dal olmadığı görünebilir, ancak basittir:
ChartID makul bir sonuç veriyorsa - bu GUI'de bir yer olduğu ve içinde çalışabileceği anlamına gelir, bu nedenle ya VISUAL_TESTER ya da sadece terminalde çalışın.
ChartGetInteger(ChartID(),CHART_WINDOW_HANDLE) geçersiz tanıtıcı döndürürse, o zaman test cihazının içindeyiz demektir. (Ya da belki MQ VPS - ona dokunmadım, bilmiyorum).
Bu bazılarına yanlış bir konu gibi görünebilir, ancak basittir:
ChartID makul bir sonuç veriyorsa - bu GUI'de bunun için bir yer olduğu ve içinde çalışabileceği anlamına gelir, bu nedenle ya VISUAL_TESTER ya da sadece terminalde çalışın.
ChartGetInteger(ChartID(),CHART_WINDOW_HANDLE) geçersiz tanıtıcı döndürürse, test cihazının içindeyiz demektir. (Ya da belki MQ VPS - ona dokunmadım, bilmiyorum).
Test cihazının da sanal da olsa bir çizelgesi var, bu yüzden bu bir çıkmaz sokak.
//true если работа на чарте или в визуальном тестировании, в остальных случаях falsebool CheckMode ()
{
if(MQLInfoInteger(MQL_DEBUG) ||
MQLInfoInteger(MQL_PROFILER) ||
(MQLInfoInteger(MQL_TESTER) && ! MQLInfoInteger(MQL_VISUAL_MODE)) ||
MQLInfoInteger(MQL_OPTIMIZATION) ||
MQLInfoInteger(MQL_FRAME_MODE)) returnfalse;
returntrue;
}
if (ChartID()!=0) {
// Graphical chart presents
// draws on it
}
Bu ne anlama geliyor? Biraz daha açabilir misiniz?
Bu ne anlama geliyor? Biraz daha açabilir misiniz?
Andrew, bu yanlış başlık. Başka bir başlıkta öğrenmen gerekiyor.
Andrew, bu yanlış başlık. Böyle şeyleri başka bir başlıkta öğrenmelisin.
Herhangi bir fikri olan var mı?
Belki bunu denersin?
Herhangi bir fikri olan var mı?
Andrei, lütfen makaleye bakın (Bölüm 2. MQL5'teki Modlar), yardımcı olabilir )).
Bu ne anlama geliyor? Biraz daha açabilir misiniz?
Bazılarına bunun doğru dal olmadığı görünebilir, ancak basittir:
ChartID makul bir sonuç veriyorsa - bu GUI'de bir yer olduğu ve içinde çalışabileceği anlamına gelir, bu nedenle ya VISUAL_TESTER ya da sadece terminalde çalışın.
ChartGetInteger(ChartID(),CHART_WINDOW_HANDLE) geçersiz tanıtıcı döndürürse, o zaman test cihazının içindeyiz demektir. (Ya da belki MQ VPS - ona dokunmadım, bilmiyorum).
Bu bazılarına yanlış bir konu gibi görünebilir, ancak basittir:
ChartID makul bir sonuç veriyorsa - bu GUI'de bunun için bir yer olduğu ve içinde çalışabileceği anlamına gelir, bu nedenle ya VISUAL_TESTER ya da sadece terminalde çalışın.
ChartGetInteger(ChartID(),CHART_WINDOW_HANDLE) geçersiz tanıtıcı döndürürse, test cihazının içindeyiz demektir. (Ya da belki MQ VPS - ona dokunmadım, bilmiyorum).
Test cihazının da sanal da olsa bir çizelgesi var, bu yüzden bu bir çıkmaz sokak.
Test cihazının da sanal da olsa bir çizelgesi var, bu yüzden çıkmaz bir yol
Size o başlıkta cevap verdim (sorular aynı).
Herhangi bir fikri olan var mı?
Size o başlıkta cevap verdim (aynı soru).
Tüm haklara sahipsiniz. Konu dışı olan yerleri silin... Sorun nedir?