Hatalar, hatalar, sorular - sayfa 2350

 

iyi

Bir şeyi mi kaçırıyorum, yoksa şimdiki fiyatın üzerinde limit emirleri göndermek ve böylece anında işlemek mümkün mü? Gerçek bir değişim sisteminde olduğu gibi mi?

Kayma sınırlayıcı gibi mi?

 

Çözemedim lütfen akıl verin. Böyle bir zaman var

 int GetHandle() { return ( 0 ); }

bool SelectHandle( int ) { return ( true ); }
  
int NewHandle = 0 ;  
int PrevHandle = GetHandle();    

datetime time = SelectHandle(NewHandle) ? TimeCurrent () : 0 ;  
SelectHandle(PrevHandle);


Aynı şeyi yapan bir makro nasıl yazılır

time = MACROS(NewHandle, TimeCurrent ()); // Макрос


Sorun, PrevHandle'ın makroda oluşturulamamasıdır.

 

Merhaba.

Terminal yapısı 1960 (beta 1966'da aynı). CopyTicks, CopyTicksRange işlevleri, terminalin kendisinde başlatılan göstergede hatasız çalışır, ancak test cihazında, bu işlevlerdeki aynı gösterge -1 sonucunu ve 4014 hatasını verir. Geliştiriciler, bana nedenini söyle?

 
fxsaber :

Aynı şeyi yapan bir makro nasıl yazılır

İşlevde yanlış olan ne?
 
Alexey Navoykov :
İşlevde yanlış olan ne?

TimeCurrent yerine kesinlikle herhangi bir işlev olabileceği gerçeği.

 
fxsaber :

TimeCurrent yerine kesinlikle herhangi bir işlev olabileceği gerçeği.

Peki o zaman sadece global bir değişken kullanılacaksa.
 
fxsaber :

Aynı şeyi yapan bir makro nasıl yazılır

Sorun, PrevHandle'ın makroda oluşturulamamasıdır.

Benim düşünceme göre, büyük sorun şu ki virgül operatörü yok; onsuz böyle bir makronun ortaya çıkması pek mümkün değil.

 
Tanınmayan dahilerin tipik bir sendromu... önemli meseleler hakkında konuşurlar ama en basit sorunu çözemezler.
Eh, tekrar düşünün ... bir hafta
İpucu: MQL çözümünün zaten mevcut olması başlı başına bir ipucudur
 
pavlick_ :

Benim düşünceme göre, büyük sorun şu ki virgül operatörü yok; onsuz böyle bir makronun ortaya çıkması pek mümkün değil.

Bu şekilde mümkündür:

 int MACROS_helper_int;
#define MACROS(NEW_HANDLE_, FN_)  (MACROS_helper_int=GetHandle())* 0 +(SelectHandle(NEW_HANDLE_) ? FN_ : 0 );  \
                                  SelectHandle(MACROS_helper_int);

Ama bu bir koltuk değneği, onu koşulda bir yere koyamazsınız, sadece = aracılığıyla.

Not: ve if, while, vb. sonrasında dikkatli kullanın.

 if ( true )
   MACROS(...);

Muhtemelen böyle kullanmazdım.

 
A100 :
Tanınmayan dahilerin tipik bir sendromu... önemli meseleler hakkında konuşurlar ama en basit sorunu çözemezler.
Eh, tekrar düşünün ... bir hafta
İpucu: MQL çözümünün zaten mevcut olması başlı başına bir ipucudur

Pekala, usta, plebleri harika bir uygulama ile şaşırtalım.