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

 
SanAlex :

Ben de denedim - kamerayı açtım ama kapatmak mümkün değil - süreç öldürülene kadar.

https://www.gunsmoker.ru/2015/01/avoid-using-ShellExecuteEx.html

Почему вам не следует использовать ShellExecute(Ex)
  • 2015.01.05
  • GunSmoker
  • www.gunsmoker.ru
В прошлый раз мы узнали, почему вам никогда не следует использовать функцию . В этот раз я расскажу вам о том, почему вам не следует использовать функцию . Заголовки этого и предыдущего постов выбраны крайне тщательно. Предыдущий пост говорил о том, что если вы пишете код в 1995 году или позднее, то вы не должны использовать функцию . Поскольку...
 

Lütfen bana sorunun ne olduğunu anlamıyorum söyle

     if (buy_lots> 0 ||sell_lots> 0 )
       ChartSetSymbolPeriod ( 0 , Symbol (), PERIOD_M15 );
     if (buy_lots== 0 ||sell_lots== 0 )
       ChartSetSymbolPeriod ( 0 , Symbol (), PERIOD_M5 );

Açık sipariş yoksa, M5 açılır ve her şey yolundadır,

ama bir emir açılır açılmaz M5, M15, M5, M15 atlamaya başlıyor...

 
MakarFX :

Lütfen bana sorunun ne olduğunu anlamıyorum söyle

Açık sipariş yoksa, M5 açılır ve her şey yolundadır,

ama bir emir açılır açılmaz M5, M15, M5, M15 atlamaya başlıyor...

Her şey yazıldığı gibi ve oluyor.

Veya altta AND ile değiştirin

 
Valeriy Yastremskiy :

Her şey yazıldığı gibi ve oluyor.

Veya altta AND ile değiştirin

Teşekkür ederim değiştirdim ama sonuç aynı

     if (buy_lots> 0 ||sell_lots> 0 )
       ChartSetSymbolPeriod ( 0 , Symbol (), PERIOD_M15 );
     if (buy_lots+sell_lots== 0 )
       ChartSetSymbolPeriod ( 0 , Symbol (), PERIOD_M5 );
 
MakarFX :

Teşekkürler değiştirdim ama sonuç aynı

  
       Alert ( "1 buy_lots " ,buy_lots, " sell_lots " sell_lots);
     if (buy_lots> 0 ||sell_lots> 0 )
       ChartSetSymbolPeriod ( 0 , Symbol (), PERIOD_M15 );
     Alert ( "2 buy_lots " ,buy_lots, " sell_lots " sell_lots);
     if (buy_lots== 0 && sell_lots== 0 )
       ChartSetSymbolPeriod ( 0 , Symbol (), PERIOD_M5 );

Yani bir şey değil. Yani buy_lots+sell_lots= 0 toplamı

Ve eklemekten daha iyi VE. Yardım için Uyarı veya Yazdır

 
Valeriy Yastremskiy :

Yani bir şey değil. Yani buy_lots+sell_lots= 0 toplamı

Ve eklemekten daha iyidir VE'dir . Yardım için Uyarı veya Yazdır

Daha iyi ne var?

(0 == 0 ve 1 == 0) - koşul karşılanmadı

(0 + 1 == 0) - koşul da karşılanmadı

Bu özel örnekte VE'nin toplamadan farkı nedir?

 
MakarFX :

Teşekkürler değiştirdim ama sonuç aynı

Bu yüzden buy_lots ve sell_lots değerlerini kontrol edin, muhtemelen bir yerlerde değerlerini kaybediyorlar.
 
Alexey Viktorov :
Bu yüzden buy_lots ve sell_lots değerlerini kontrol edin, muhtemelen bir yerlerde değerlerini kaybediyorlar.

Yazdır


Neden M5'e geçtiği belli değil

 
MakarFX:

Yazdır


Neden M5'e geçtiği belli değil

TF değiştirildiğinde, EA yeniden başlatılır. Baskıları koşul altına almayı deneyin, değiştirin ve Yazdır . Ya da tam tersi.

Ve koşula bir dönem kontrolü eklediğinizden emin olun. M15'e geçtiyseniz, neden tekrar geçiş yapıyorsunuz?

 
Igor Makanu :

bu yüzden EA'nın çalışmalarını yalnızca sihirbazlarıyla yapmayı denemeyi tavsiye ediyorlar.

Görev belirli bir saatte günde bir kez sipariş açmaksa, algoritma aşağıdaki gibidir:

- EA'yı başlattı, açık siparişlerin sayısını kontrol eder, sihrimizle bir sipariş açıksa, bir sonraki onay işaretine kadar çıkın

- sipariş yoksa, EA mevcut saat ve dakika verilenlerden daha büyük olana kadar bekler

- bu sefer geldi, EA, siparişlerin geçmişini kontrol ediyor ve son gün için sihrimizle bir sipariş verilmediyse, o zaman bir sipariş verip çıkacağız - çıkış, sunucu hatalarını işlememek için faydalıdır, sipariş verilmezse, bir sonraki onay işaretinde tekrar yapmayı deneyeceğiz, yani. bu kene üzerinde bir siparişin yeniden açılması için bir döngü düzenlemeye gerek yok .... ancak bu bir zevk ve görev meselesi ve en basit uygulama )))

Lütfen yazınızda yazdıklarınız bağlamında EA'nın ne olduğunu söyleyin. Daha fazlasını öğrenmek istiyorum...
Teşekkür ederim.