Hatalar, hatalar, sorular - sayfa 2096

 
elibrarius :

hm. Bulacağız)))

int OnInit()
  {
   return(INIT_SUCCEEDED);
}

void OnTick()
  {
  int s[];
  CopySpread(_Symbol,_Period,0,1,s);
  Print(s[0]);
  }

O halde size mevcut çubuğun yayılma alanının mevcut yayılmaya veya örneğin minimum olana eşit olduğunu kim söyledi?

SymbolInfoTick'i kullanın, çubuklar tarihi bir kalıntıdır.

 
fxsaber :

O halde size mevcut çubuğun yayılma alanının mevcut yayılmaya veya örneğin minimum olana eşit olduğunu kim söyledi?

SymbolInfoTick'i kullanın, çubuklar tarihi bir kalıntıdır.

CopySpread - çoğu durumda gerçeğin ölçütü olduğu ortaya çıkan minimum - söz konusu uygulamayı hatırlar. Ondan, bar 2017.10.23 01:00 CopySprea=-3 olduğu bulundu, çünkü keneler tarafından kontrol edildiğinde daha az değildi.

Barları çağırırdım - geçmişi analiz etmenizi sağlayan çok gerekli bir araç.

SymbolInfoTick - doğru görünüyor, ancak bu nedenle CopySpread'i yanlış bırakmak gerçekten gerekli mi? anladım o zaman 1 puan - bu önemsiz bir şey, s=s-1'i düzeltmenin temel olduğunu düşünüyorum. Ve herşey)

 
elibrarius :

SymbolInfoTick - doğru görünüyor, ancak bu nedenle CopySpread'i yanlış bırakmak gerçekten gerekli mi? anladım o zaman 1 puan - bu önemsiz bir şey, s=s-1'i düzeltmenin temel olduğunu düşünüyorum. Ve herşey)

Test cihazını başlatmadan önce, negatif yayılma için çubuk geçmişine bakın. Bu çarpık alan hiçbir şeyle ilgili değil.

Bugün geliştiriciler MqlRates ile gelseydi, o zaman bu pislik değil normal alanlar olurdu. Ancak bu yapıyı yeniden gözden geçirmeleri yeterli değil, zaten temelinde harika olan her şeyi ortaya çıkardılar. Yani burada tarihi bir ilke ortaya çıktı. Ve şimdi bu kayışı her zaman çekecekler.

 
elibrarius :

CopySpread - çoğu durumda gerçeğin ölçütü olduğu ortaya çıkan minimum - söz konusu uygulamayı hatırlar . Ondan bar 2017.10.23 01:00 CopySprea=-3 olduğu bulundu, çünkü keneler tarafından kontrol edildiğinde daha az değildi.

Barları çağırırdım - geçmişi analiz etmenizi sağlayan çok gerekli bir araç.

SymbolInfoTick - doğru görünüyor, ancak bu nedenle CopySpread'i yanlış bırakmak gerçekten gerekli mi? anladım o zaman 1 puan - bu önemsiz bir şey, s=s-1'i düzeltmenin temel olduğunu düşünüyorum. Ve herşey)

Dikkatli olursanız dakikaları izleyebilir ve yeni bir çubuk göründüğünde son spread değerinin hatırlandığını görebilirsiniz.

 
Alexey Viktorov :

Dikkatli olursanız dakikaları izleyebilir ve yeni bir çubuk göründüğünde son spread değerinin hatırlandığını görebilirsiniz.

Daha yakından baktım - katılıyorum, ama kısmen.

Uzman kodu:

void OnTick() { 
  int s[];
  CopySpread(_Symbol,_Period,0,1,s);
  Print(s[0]);
  MqlTick last_tick;
  if(SymbolInfoTick(Symbol(),last_tick)) { Print(last_tick.time,": Bid = ",last_tick.bid, " Ask = ",last_tick.ask,"  SP = ",DoubleToString(last_tick.ask-last_tick.bid,5)); }
}

İşte bir dakikalık bir çıktı - ilk olarak CopySpread'den yayıldı. Daha sonra Ask-Bid'den hesaplanır

2018.01.01 11:55:00.478 2017.10.23 01:00:00 14
2018.01.01 11:55:00.478 2017.10.23 01:00:00 2017.10.23 01:00:00: Teklif = 1.17715 Satış = 1.17729 SP = 0.00014
2018.01.01 11:55:00.494 2017.10.23 01:00:00 9
2018.01.01 11:55:00.494 2017.10.23 01:00:00 2017.10.23 01:00:00: Teklif = 1.17715 Satış = 1.17724 SP = 0.00009
2018.01.01 11:55:00.510 2017.10.23 01:00:00 9
2018.01.01 11:55:00.510 2017.10.23 01:00:00 2017.10.23 01:00:00: Teklif = 1.17716 Satış = 1.17726 SP = 0.00010
...........
2018.01.01 11:55:01.023 2017.10.23 01:00:30 1
2018.01.01 11:55:01.023 2017.10.23 01:00:30 2017.10.23 01:00:30: Teklif = 1.17704 Satış = 1.17705 SP = 0.00001
2018.01.01 11:55:01.876 2017.10.23 01:00:30 -1
2018.01.01 11:55:01.876 2017.10.23 01:00:30 2017.10.23 01:00:30: Teklif = 1.17707 Satış = 1.17705 SP = -0.00002
2018.01.01 11:55:01.893 2017.10.23 01:00:31 -3
2018.01.01 11:55:01.893 2017.10.23 01:00:31 2017.10.23 01:00:31: Teklif = 1.17707 Satış = 1.17703 SP = -0.00004

2018.01.01 11:55:01.909 2017.10.23 01:00:31 -3
2018.01.01 11:55:01.909 2017.10.23 01:00:31 2017.10.23 01:00:31: Teklif = 1.17707 Sor = 1.17704 SP = -0.00003
2018.01.01 11:55:01,925 2017.10.23 01:00:32 -3
...........
2018.01.01 11:55:02.293 2017.10.23 01:00:48 -3
2018.01.01 11:55:02.293 2017.10.23 01:00:48 2017.10.23 01:00:48: Teklif = 1.17702 Satış = 1.17707 SP = 0.00005
2018.01.01 11:55:02.309 2017.10.23 01:00:48 -3
2018.01.01 11:55:02.309 2017.10.23 01:00:48 2017.10.23 01:00:48: Teklif = 1.17703 Satış = 1.17707 SP = 0.00004
2018.01.01 11:55:02.325 2017.10.23 01:00:49 -3
2018.01.01 11:55:02.325 2017.10.23 01:00:49 2017.10.23 01:00:49: Teklif = 1.17707 Satış = 1.17707 SP = 0.00000

Onlar. Geçerli çubuktaki CopySpread değeri = minimum.

Ancak son anlam, barın tarihine gerçekten girdi.

<TARİH> <SAAT> <AÇIK> <YÜKSEK> <DÜŞÜK> <KAPAT> <TICKVOL> <VOL> <SPREAD>
2017.10.23 01:00:00 1.17715 1.17720 1.17693 1.17707 64 0 0

Çoğu durumda (10 dakika kontrol edildi), ancak burada bile hatalar var.
İşte yukarıda 2017.10.23 00:53 tarihinde açıklanan sorun

Tarihte

2017.10.23 00:53:00 1.17685 1.17725 1.17685 1.17725 8 0 9

Ve keneler tarafından:

2018.01.01 11:54:59.009 2017.10.23 00:53:43 48
2018.01.01 11:54:59.009 2017.10.23 00:53:43 2017.10.23 00:53:43: Teklif = 1.17724 Satış = 1.17733 SP = 0.00009
2018.01.01 11:54:59.025 2017.10.23 00:53:43 48
2018.01.01 11:54:59.025 2017.10.23 00:53:43 2017.10.23 00:53:43: Teklif = 1.17725 Satış = 1.17736 SP = 0.00011
2018.01.01 11:54:59.041 2017.10.23 00:53:43 48
2018.01.01 11:54:59.041 2017.10.23 00:53:43 2017.10.23 00:53:43: Teklif = 1.17725 Satış = 1.17737 SP = 0.00012 <<<<<<---------- barın son
işareti 2017.10.23 00:53
2018.01.01 11:54:59.057 2017.10.23 00:54:11 9
2018.01.01 11:54:59.057 2017.10.23 00:54:11 2017.10.23 00:54:11: Teklif = 1.17728 Satış = 1.17737 SP = 0.00009 <<<<<<---------- çubuğun ilk işareti 2017.10.23 00:54 - burada şuna karşılık geliyor

Bir sonraki çubuğun ilk kenesinden yayılmanın tarihe geçtiği versiyonunu kontrol ettim. Onaylanmadı:

Öykü
2017.10.23 00:59:00 1.17717 1.17723 1.17709 1.17715 14 0 3

sonraki çubuğun 1. işareti
2018.01.01 11:55:00.478 2017.10.23 01:00:00 14
2018.01.01 11:55:00.478 2017.10.23 01:00:00 2017.10.23 01:00:00: Teklif = 1.17715 Satış = 1.17729 SP = 0.00014

Öykü

2017.10.23 01:00:00 1.17715 1.17720 1.17693 1.17707 64 0 0

sonraki çubuğun 1. işareti
2018.01.01 11:55:02.342 2017.10.23 01:01:03 1
2018.01.01 11:55:02.342 2017.10.23 01:01:03 2017.10.23 01:01:03: Teklif = 1.17707 Satış = 1.17708 SP = 0.00001

Genel olarak - spreadlerle bir tür karışıklık (

 
elibrarius :

...

Genel olarak - spreadlerle bir tür karışıklık (


 

MT4 b1090, Market Watch'ta onlarca sembol var, birkaç çizelge açık. terminal.exe, CPU'nun %0-1'ini tüketir.

MT5 b1730, Piyasa İzleme'de yalnızca GBPUSD MetaQuotes-Demo, grafik yok. terminal64.exe , CPU'nun %2-3'ünü tüketir .

Bu iyi?

 
fxsaber :

MT4 b1090, Market Watch'ta onlarca sembol var, birkaç çizelge açık. terminal.exe, CPU'nun %0-1'ini tüketir.

MT5 b1730, Piyasa İzleme'de yalnızca GBPUSD MetaQuotes-Demo, grafik yok. terminal64.exe , CPU'nun %2-3'ünü tüketir .

Bu iyi?

Konu birkaç kez açıldı. MT5 işlemciyi biraz daha fazla yükler çünkü daha fazla bilgi yayınlar.

Ancak %1-2 içinde karşılaştırma yapmak yanlıştır.

 
Andrey Khatimlianskii :

Konu birkaç kez açıldı. MT5 işlemciyi biraz daha fazla yükler çünkü daha fazla bilgi yayınlar.

Ancak %1-2 içinde karşılaştırma yapmak yanlıştır.

Okuma modunda düzinelerce açık sekmeye sahip birkaç tarayıcı sıfır yer. Tamamen boş bir terminalin bir torrent istemcisi gibi tüketmesi garip. Ve interneti bilgisayardan çekerseniz hiçbir şey değişmez.

 
fxsaber :

Okuma modunda düzinelerce açık sekmeye sahip birkaç tarayıcı sıfır yer. Tamamen boş bir terminalin bir torrent istemcisi gibi tüketmesi garip. Ve interneti bilgisayardan çekerseniz hiçbir şey değişmez.

Bir tarayıcı ile karşılaştırmak doğru değildir. Arka plan sekmeleri, hayal edebildiğim kadarıyla kaynakları hiç tüketmiyor.

Ve terminal, tikler alır ve grafiğin aktif olup olmadığına bakılmaksızın bir zaman serisi oluşturur, böylece ona geçiş yaparken gecikmeden güncel bilgileri gösterir.

Ama ben gerçekten MT'yi savunmuyorum, kimsenin hizmet masası için tüm hesaplamalarla tam teşekküllü bir karşılaştırma yapma zahmetine girmediğini açıkladım.

Neden: