Hatalar, hatalar, sorular - sayfa 2235

 
fxsaber :

Son fiyat nasıl TickSize'ın katı olamaz?

belki bu soruyu birkaç yıl önce sordum, döngülü bir komut dosyasında işaretler yazdım while(true) , "piyasa izlemede" veri değişikliklerine işaretler yazdım, genellikle 1.35555000001 veya 1.3555999999 gibi işaretler vardı

Sunucudan normalleştirilmemiş fiyat verilerinin gelmesine şaşırdım, o zaman bir yanıt alamadım, ancak daha sonraki konuları okudum ve geliştiricilerin yanıtlarından bazılarının terminalin çalışması için işaretler olduğu yanıtını gördüm ve danışman bu tür keneler üzerinde işlem yapmaz

yani sizin durumunuzda, SYMBOL_TRADE_TICK_SIZE katı olmayan böyle bir fiyat, böyle bir fiyattan ticaret işlemi yapmayacağınız anlamına gelir .... Son fiyat analizinin de anlamsız olabileceği ortaya çıktı))) )

 
Igor Makanu :

belki bu soruyu birkaç yıl önce sordum, döngülü bir komut dosyasında işaretler yazdım while(true) , "piyasa izlemede" veri değişikliklerine işaretler yazdım, genellikle 1.35555000001 veya 1.3555999999 gibi işaretler vardı

Davanız, double -> string dönüşümünün bir özelliğidir. Biraz farklı bir durumum var.

 
Uzman günlüğü - 15 GB. Terminalde görüntülemeye çalışmak, bir dakikadan fazla askıda kalmasına neden oluyor.
 
fxsaber :
Uzman günlüğü - 15 GB. Terminalde görüntülemeye çalışmak, bir dakikadan fazla askıda kalmasına neden oluyor.

Nasıl olmasını isterdin?

 
Alexey Kozitsyn :

Nasıl olmasını isterdin?

Büyük bir log olması durumunda, önce bununla ilgili bir uyarı verin ve devam edip etmeyeceğinizi sorun.

 
fxsaber :

Büyük bir log olması durumunda, önce bununla ilgili bir uyarı verin ve devam edip etmeyeceğinizi sorun.

Nasıl hemen daha yapıcı hale geldiğini görün :)

 
Alexey Viktorov :

Hatanız, bir dosyaya yazdıktan sonra, verilerin yalnızca FileClose'dan sonra VEYA verileri FileFlush tarafından diske atılmaya zorladıktan sonra diske gelmesidir.

Aksi halde var olmayan bir dosyayı nasıl okuyabilirsiniz???

Beni başkasıyla karıştırıyorsun. Ve FileFlush ile ve onsuz - hata aynıdır. Her şeyi başlatan gerçek Uzman Danışman, başlangıçta hem FileFlush'a hem de dosyanın kendisine sahiptir.

Burada bu kombinasyondaki FILE_SHARE_WRITE bayrağı işe yarıyor gibi görünüyor, ancak başka bir soru ortaya çıkıyor: Böyle bir kaydın anlamı nedir? Mantıksal olarak, yazarken bölmeyi etkinleştirirseniz, bunu yazma bayrağına eklemeniz gerekir:

 FILE_READ | FILE_BIN | FILE_SHARE_READ |(writing?( FILE_WRITE | FILE_SHARE_WRITE ): 0 )

Ben de öyle denedim hata veriyor.

 
Genel olarak, yalnızca okuma-ayırma işlemi gerektiğinde neden dosyayı yazmak için karıştırmam gerektiği açık değil mi?
 
Beyler, yoldaşlar, bu sorunla başa çıkmak için yardım edebilecek var mı?
 

MqlTradeCheckResult ile araç ipucu ME'de açılmıyor

 #define TOSTRING(A)   #A + " = " + ( string )(A) + "\n"
#define TOSTRING2(A) #A + " = " + EnumToString (A) + " (" + ( string )(A) + ")\n"

string ToString( const MqlTradeRequest &Request )
{
   return (TOSTRING2(Request.action) + TOSTRING(Request.magic) + TOSTRING(Request.order) +
         TOSTRING(Request.symbol) + TOSTRING(Request.volume) + TOSTRING(Request.price) +
         TOSTRING(Request.stoplimit) + TOSTRING(Request.sl) +  TOSTRING(Request.tp) +
         TOSTRING(Request.deviation) + TOSTRING2(Request.type) + TOSTRING2(Request.type_filling) +
         TOSTRING2(Request.type_time) + TOSTRING(Request.expiration) + TOSTRING(Request.comment) +
         TOSTRING(Request.position) + TOSTRING(Request.position_by));
}

string ToString( const MqlTradeResult &Result )
{
   return (TOSTRING(Result.retcode) + TOSTRING(Result.deal) + TOSTRING(Result.order) +
         TOSTRING(Result.volume) + TOSTRING(Result.price) + TOSTRING(Result.bid) +
         TOSTRING(Result.ask) + TOSTRING(Result.comment) + TOSTRING(Result.request_id) +
         TOSTRING(Result.retcode_external));
}

string ToString( const MqlTrade