tik geçmişi - sayfa 24

 
juriy5555 :

Onay göstergesi isteklerine bakılırsa, time_msk alan verisi 1000'in katıdır. yani. herhangi bir milisaniyeden söz edilmez, çözünürlük 1 saniyedir.

Soru: O zaman MqlTick yapısını genişletmenin anlamı neydi?

Hangi ticaret sunucusuna bağlısınız?
 
Openbroker'da bir Demo ve orada gerçek bir hesabım var. Gerçek hayatta tüm Access sunucuları aynı sonucu verir. Eh, demo aynı. Si-6.16, RTS-6.16, SBRF-6.16'ya baktı. Tüm değişiklikler 1000'in katlarıdır.
değil mi?
 
juriy5555 :
Openbroker'da bir Demo ve orada gerçek bir hesabım var. Gerçek hayatta tüm Access sunucuları aynı sonucu verir. Eh, demo aynı. Si-6.16, RTS-6.16, SBRF-6.16'ya baktı. Tüm değişiklikler 1000'in katlarıdır.
değil mi?

Şimdi, gerçekten, SymbolInfoTick'in isteği üzerine, döndürülen MqlTick yapısında gerçek milisaniyeler (1000'in katları) yerine sıfırlar verilir.

Lütfen bir sonraki yapıyı bekleyin.

PS istek üzerine CopyTicks milisaniyesi olduğu gibi verilir

 

Bu göstergeyi test amacıyla bu konudan indirdim. CopyTicks aracılığıyla son 30 onay alır. Alternatif olarak, belki farklı bir sunucuda denemeliyim (açık komisyoncu değil).

>>" gerçek milisaniye yerine sıfır döndürür "

Sıfırlar döndürülmez, ancak her zaman 1000'in katı olan bir farkla aynı sayılar döndürülür. (...2064, ...2064, ...3064, ..., ..., ..4064 )

Dosyalar:
 
juriy5555 :

Bu göstergeyi test amacıyla bu konudan indirdim. CopyTicks aracılığıyla son 30 onay alır. Alternatif olarak, belki farklı bir sunucuda denemeliyim (açık komisyoncu değil).

>>" gerçek milisaniyeler yerine sıfırlar döndürülür "

Sıfırlar döndürülmez, ancak her zaman 1000'in katı olan bir farkla aynı sayılar döndürülür. (...2064, ...2064, ...3064, ..., ..., ..4064 )

Sıfırlar , SymbolInfoTick işlevi tarafından döndürülür .

CopyTicks'te gerçek milisaniyeler verilir. 2064, 3064, 4064 ise, öyle olduğu anlamına gelir. Neden oldu, bilmiyorum

kodunuza baktım. %-4d çıktı belirteci nedir? time_msc uzundur, bu yüzden sadece d gitmez. % I64d olmalıdır

 
Slawa :

Sıfırlar , SymbolInfoTick işlevi tarafından döndürülür .

CopyTicks'te gerçek milisaniyeler verilir. 2064, 3064, 4064 ise, öyle olduğu anlamına gelir. Neden oldu, bilmiyorum

kodunuza baktım. %-4d çıktı belirteci nedir? time_msc uzundur, bu yüzden sadece d gitmez. % I64d olmalıdır

Evet üzgünüm. Kod benim değil. Yazarın StringFormat'ta gerçekten bir sövesi var. Print (tick.time_msc) üzerinden döngünün her yinelemesinde görüntülenir. Sonuç, sonunda tamamen sıfırdır, sonuç olarak hala milisaniye yoktur. CopyTicks isteği her zaman devam eder.

Dosyalar:
99999.jpg  332 kb
 
Slawa :

Sıfırlar , SymbolInfoTick işlevi tarafından döndürülür .

CopyTicks'te gerçek milisaniyeler verilir. 2064, 3064, 4064 ise, öyle olduğu anlamına gelir. Neden oldu, bilmiyorum

kodunuza baktım. %-4d çıktı belirteci nedir? time_msc uzundur, bu yüzden sadece d gitmez. % I64d olmalıdır

Göstergeyi ilk gönderiden değiştirdim - her türlü StringFormat ile oynayacak hiçbir şey yok, şimdi şöyle olacak:

 string tick_string= IntegerToString (i, 2 , '0' )+ "  " + TimeToString (tick.time, TIME_MINUTES | TIME_SECONDS )+ "  " +
                             DoubleToString (tick.bid, Digits ())+ "  " + DoubleToString (tick.ask, Digits ())+ "  " +
                             DoubleToString (tick.last, Digits ())+ "  " + IntegerToString (tick.volume, 7 , '0' )+ "  " +
                             IntegerToString (tick.time_msc, 19 , '0' )+ "  " + IntegerToString (tick.flags, 2 , '0' );
 
juriy5555 :

Evet üzgünüm. Kod benim değil. Yazarın StringFormat'ta gerçekten bir sövesi var. Print (tick.time_msc) üzerinden döngünün her yinelemesinde görüntülenir. Sonuç, sonunda tamamen sıfırdır, sonuç olarak hala milisaniye yoktur. CopyTicks isteği her zaman devam eder.

İşte MetaQuotes Demo verileriyle ilgili göstergeniz


Komisyoncunuza kenelerdeki milisaniye eksikliğini sorun

 
Slawa :

İşte MetaQuotes Demo verileriyle ilgili göstergeniz


Komisyoncunuza kenelerdeki milisaniye eksikliğini sorun

Özellikle ne ve kiminle yazacağımı henüz bilmiyorum, birkaç aydır bu işin içindeyim. Umarım OpenBroker sunucuyu günceller.
ps benim müşteri derlemem 1340
 

juriy5555 :
Пока не знаю, что и у кому конкретно писать, я в этом несколько месяцев.  Буду надеяться, что  ОпенБрокер всё таки обновит сервер. 
ps мой билд клиента 1340

Benim de biraz farklı bir planım olsa da bir sorum var ve ben de kenelerden aktarılan bilgilerin doğru olup olmadığını merak ediyorum.

Gerçek hacimlerle ilgili bir soru.

Göstergeden keneler hakkında bilgi talep ederseniz, gerçek hacim hacim[] dizisinde oraya gider. Ve teoride, kenelerden bilgi alırsanız, mum başına biriken hacim, hacim[] dizisindeki değerle eşleşmelidir.

İşte bir test kodu örneği:

 //+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit ()
  {
//--- indicator buffers mapping

//---
   return ( INIT_SUCCEEDED );
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate ( const int rates_total,
                 const int prev_calculated,
                 const datetime &time[],
                 const double &open[],
                 const double &high[],
                 const double &low[],
                 const double &close[],
                 const long &tick_volume[],
                 const long &volume[],
                 const int &spread[])
  {
//--- Получение данных по тику
   MqlTick tick;                                               // Структура хранения инфо по тику
   SymbolInfoTick ( _Symbol ,tick );                             // Получение данных по тику
   Print ( "ask: " + DoubleToString (tick.ask, _Digits )+ ", bid: " + DoubleToString (tick.bid, _Digits )+ ", last: " + DoubleToString (tick.last, _Digits )+
         ", vol: " ,tick.volume, ", flags: " ,tick.flags);
//--- Формирование объема
   static ulong sVol;                                         // Суммарный объем из тиков на свече
   if (prev_calculated<= 0 )                                     // Если первый запуск
      sVol=tick.volume;                                       // Запоминаем значение тика
   else
     {
       if (rates_total>prev_calculated) // Если образовалась новая свеча
        {
         sVol=tick.volume;                                     // Запоминаем значение объема первого тика
        }
       else                                                      // Если новая свеча не образовалась
         sVol+=tick.volume;                                    // Суммируем объем тика с накопленным объемом
     }
   Print ( "Реальный объем: " ,volume[rates_total- 1 ], ", накопленный объем: " ,sVol);
//--- 
   return (rates_total);
  }
//+------------------------------------------------------------------+

Şimdilik bayraklara takılmayalım ve alınan her bir onay işaretinin toplam sVol hacmini değiştirdiğini varsayalım (bildiğim kadarıyla durum böyle olmasa da).

Yeni bir mum oluşumunu bekliyoruz ve dergideki girişlere bakıyoruz. Broker Açılışı, gerçek hesap, 1340 inşa, RTS-6.16:

 2016.06 . 09 17 : 07 : 01.820 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 1 , накопленный объем: 1
2016.06 . 09 17 : 07 : 03.142 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94670 , bid: 94660 , last: 94670 , vol: 3 , flags: 24
2016.06 . 09 17 : 07 : 03.142 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 1 , накопленный объем: 4
2016.06 . 09 17 : 07 : 03.142 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94670 , bid: 94660 , last: 94670 , vol: 3 , flags: 24
2016.06 . 09 17 : 07 : 03.142 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 5 , накопленный объем: 7
2016.06 . 09 17 : 07 : 03.142 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94670 , bid: 94660 , last: 94670 , vol: 3 , flags: 24
2016.06 . 09 17 : 07 : 03.142 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 7 , накопленный объем: 10
2016.06 . 09 17 : 07 : 03.142 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94670 , bid: 94660 , last: 94670 , vol: 3 , flags: 24
2016.06 . 09 17 : 07 : 03.142 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 8 , накопленный объем: 13
2016.06 . 09 17 : 07 : 03.142 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94670 , bid: 94660 , last: 94670 , vol: 3 , flags: 24
2016.06 . 09 17 : 07 : 03.142 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 11 , накопленный объем: 16
2016.06 . 09 17 : 07 : 03.266 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94670 , bid: 94660 , last: 94670 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 03.266 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 16 , накопленный объем: 17
2016.06 . 09 17 : 07 : 03.266 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94670 , bid: 94660 , last: 94670 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 03.266 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 18 , накопленный объем: 18
2016.06 . 09 17 : 07 : 03.266 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94670 , bid: 94660 , last: 94670 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 03.266 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 19 , накопленный объем: 19
2016.06 . 09 17 : 07 : 03.700 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94670 , bid: 94660 , last: 94660 , vol: 1 , flags: 24
2016.06 . 09 17 : 07 : 03.700 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 20 , накопленный объем: 20
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 22 , накопленный объем: 21
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 27 , накопленный объем: 22
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 28 , накопленный объем: 23
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 29 , накопленный объем: 24
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 31 , накопленный объем: 25
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 33 , накопленный объем: 26
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 38 , накопленный объем: 27
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 43 , накопленный объем: 28
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 45 , накопленный объем: 29
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 47 , накопленный объем: 30
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 49 , накопленный объем: 31
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 51 , накопленный объем: 32
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 56 , накопленный объем: 33
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 59 , накопленный объем: 34
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 60 , накопленный объем: 35
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.319 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 60 , накопленный объем: 36
2016.06 . 09 17 : 07 : 04.347 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94670 , last: 94670 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.347 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 61 , накопленный объем: 37
2016.06 . 09 17 : 07 : 04.347 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94670 , last: 94670 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 04.347 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 61 , накопленный объем: 38
2016.06 . 09 17 : 07 : 05.344 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94670 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 05.344 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 63 , накопленный объем: 39
2016.06 . 09 17 : 07 : 05.344 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94670 , last: 94680 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 05.344 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 64 , накопленный объем: 40
2016.06 . 09 17 : 07 : 05.460 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94670 , last: 94670 , vol: 1 , flags: 24
2016.06 . 09 17 : 07 : 05.460 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 65 , накопленный объем: 41
2016.06 . 09 17 : 07 : 05.516 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94670 , last: 94670 , vol: 1 , flags: 24
2016.06 . 09 17 : 07 : 05.516 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 68 , накопленный объем: 42
2016.06 . 09 17 : 07 : 05.516 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94670 , last: 94670 , vol: 1 , flags: 24
2016.06 . 09 17 : 07 : 05.516 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 69 , накопленный объем: 43
2016.06 . 09 17 : 07 : 06.016 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94670 , last: 94670 , vol: 1 , flags: 24
2016.06 . 09 17 : 07 : 06.016 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 70 , накопленный объем: 44
2016.06 . 09 17 : 07 : 06.557 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94670 , last: 94670 , vol: 1 , flags: 0
2016.06 . 09 17 : 07 : 06.557 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 71 , накопленный объем: 45
2016.06 . 09 17 : 07 : 06.702 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94670 , vol: 2 , flags: 2
2016.06 . 09 17 : 07 : 06.702 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 73 , накопленный объем: 47
2016.06 . 09 17 : 07 : 06.702 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94680 , bid: 94660 , last: 94670 , vol: 2 , flags: 2
2016.06 . 09 17 : 07 : 06.702 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 73 , накопленный объем: 49
2016.06 . 09 17 : 07 : 06.718 test_ticks_openbroker (RTS- 6.16 ,M1)     ask: 94670 , bid: 94660 , last: 94670 , vol: 2 , flags: 0
2016.06 . 09 17 : 07 : 06.718 test_ticks_openbroker (RTS- 6.16 ,M1)     Реальный объем: 74 , накопленный объем: 51

Ve böylece, göstergeden gelen gerçek hacim, birikmiş olandan çok daha büyük olacaktır. Bu, geliştiriciler için birkaç soruyu gündeme getiriyor:

1. OnCalculate() işlevinin volume[] dizisinden elde edilen hacim, tiklerden elde edilen birikmiş hacimle aynı mı olmalı? Benim düşüncem, elbette, aksi halde neden kenelerde belirtilmelidir?

2. Birimi biriktirmek için OnCalculate() işlevini kullanmak doğru mu, yoksa hacmi OnBookEvent() aracılığıyla almak mı daha iyi? Yardım diyor ki:

Calculate olayı , yalnızca Init olayı gönderildikten hemen sonra ve fiyat verilerinde herhangi bir değişiklik olduğunda göstergeler için oluşturulur. OnCalculate işlevi tarafından işlenir.

yani teorik olarak doğru ama bu konuda bir yorum duymak isterim.

3. Test sonuçları, bayrak analizi OLMADAN gösterilir. Bayrakları analiz edersek, anladığım kadarıyla, 24 bayraklı kenelerden hacim almanız gerekir (son ve hacimde eşzamanlı değişiklik):

  • TICK_FLAG_LAST - tik, son işlemin fiyatını değiştirdi
  • TICK_FLAG_VOLUME - değiştirilen ses seviyesini işaretleyin

Ancak bu durumda, biriken hacim daha da az olacaktır. Geliştiricilerin kenelerin nasıl doğru bir şekilde analiz edileceğine (tüm alanlar kaydedildiği için) ve bayraklar doğru şekilde uygulanıp uygulanmadığına ilişkin yorumlarını duymak istiyorum. Uygulamanın doğruluğu ile ilgili soru, bayraklı keneler fark etmediğim için ortaya çıktı:

  • TICK_FLAG_BUY - bir satın alma anlaşmasının sonucu olarak onay işareti oluştu
  • TICK_FLAG_SELL – bir satış anlaşmasının sonucu olarak bir onay işareti oluştu

Bu bayrakların sayısı kaçtır?

İndikatör dosyası da uygulamadadır.

Dosyalar: