"CopyTicks"in Test Edilmesi

 

Basit bir cilt ile başlayalım. Aşağıda, tespit edilen bir aksaklığa sahip bir resim bulunmaktadır. "İkizler" ciltlerde periyodik olarak görünür.


Win7-64

MT5-1085

Broker Açılış, gerçek sunucu.

Ana gösterge döngüsü şöyle görünür:

 //---------------------------------------------------------------------
//      Внешние задаваемые параметры:
//---------------------------------------------------------------------
input int                                TickCount = 2000 ;
input ENUM_TICK_TYPE                    TickType = ENUM_COPY_TICKS_ALL;
//---------------------------------------------------------------------
 //---------------------------------------------------------------------
MqlTick          ticks_Arr[ ];
int              copied;
//---------------------------------------------------------------------
int
OnCalculate ( const int _rates_total, const int _prev_calculated, const int _begin, const double & _price[ ] )
{
         if ( _prev_calculated <= 0 )
        {
                 ArrayInitialize ( VolumeBuffer, 0 );
        }

        copied = CopyTicks( _Symbol , ticks_Arr, TickType, 0 , TickCount );
         if ( copied > 0 )
        {
                 for ( int i = copied - 1 ; i >= 0 ; i-- )
                {
                         MqlTick tick = ticks_Arr[ i ];

                        VolumeBuffer[ _rates_total - copied + i ] = ( double )tick.volume;
//                      Print( tick.volume );
                }
        }

         return ( _rates_total );
}

"İkizlerin" görünümünde herhangi bir düzenlilik bulmak mümkün değildi. Umarım geliştiriciler bir an önce düzeltirler.

Kene hacmine sahip bir gösterge eklenmiştir (MT5-1100'de derlenmiştir).

Dosyalar:
 
Dima_S :

Basit bir cilt ile başlayalım. Aşağıda, tespit edilen bir aksaklığa sahip bir resim bulunmaktadır. "İkizler" ciltlerde periyodik olarak görünür.


Win7-64

MT5-1085

Broker Açılış, gerçek sunucu.

Ana gösterge döngüsü şöyle görünür:

"İkizlerin" görünümünde herhangi bir düzenlilik bulmak mümkün değildi. Umarım geliştiriciler bir an önce düzeltirler.

Kene hacmine sahip bir gösterge eklenmiştir (MT5-1100'de derlenmiştir).

Servis masasına CopyTicks() hakkında sordum (bu fonksiyonla ilgili bir hata vardı)

İşte SD'den gelen cevap:

Bu işlevsellik şu anda geliştirme aşamasındadır. Tick akışına tam erişim sağlamak için platformun birçok bileşeninde değişiklikler yapılır. Bir süre daha beklememiz gerekecek.

 
Mikalas :

Servis masasına CopyTicks() hakkında sordum (bu fonksiyonla ilgili bir hata vardı)

İşte SD'den gelen cevap:

Bu işlevsellik şu anda geliştirme aşamasındadır. Tick akışına tam erişim sağlamak için platformun birçok bileşeninde değişiklikler yapılır. Bir süre daha beklememiz gerekecek.

Şanslısın, servis masası hala bu özellik hakkında bana cevap vermedi...
 
Mikalas :

Servis masasına CopyTicks() hakkında sordum (bu fonksiyonla ilgili bir hata vardı)

İşte SD'den gelen cevap:

Bu işlevsellik şu anda geliştirme aşamasındadır. Tick akışına tam erişim sağlamak için platformun birçok bileşeninde değişiklikler yapılır. Bir süre daha beklememiz gerekecek.

Açık. Yani, yarı mamul bir ürün iken. biraz daha bekleyelim))

Başka bir şey net değil - neden zaten çalışmakta olanı kırdılar - genişletilmiş "cam" modu.

 

Geliştiriciler kaşınırken, düşündükleri anlamda - MqlTick yapısının bir varyantını sunacağım.

 struct MqlTick
{
   datetime    time;           // Время последнего обновления цен
   uint        time_count;     // микросекунды ( крайне желательно брать с биржи )
   double      bid;             // Текущая цена Bid
   double      ask;             // Текущая цена Ask
   double      last;           // Текущая цена последней сделки (Last)
   ulong       volume;         // Объем для текущей цены Last
   ulong       interest;       // Текущая величина ОИ , после исполнения последней сделки Last
   ulong       buy_orders;     // Текущее число ордеров покупателей , после исполнения последней сделки Last
   ulong       sell_orders;     // Текущее число ордеров продавцов , после исполнения последней сделки Last
   ulong       buy_orders_vol; // Текущий объем ордеров покупателей , после исполнения последней сделки Last
   ulong       sell_orders_vol; // Текущий объем ордеров продавцов , после исполнения последней сделки Last
  char       action;         // Действие ( 'B' - покупка, 'S' - продажа )
 };

İşlevdeki diğer her şey olduğu gibi bırakılabilir.

 
Dima_S :

Geliştiriciler kaşınırken, düşündükleri anlamda - MqlTick yapısının bir varyantını sunacağım.

İşlevdeki diğer her şey olduğu gibi bırakılabilir.

Sınıf! ! Desteklerim!
 
Dima_S :

Geliştiriciler kaşınırken, düşündükleri anlamda - MqlTick yapısının bir varyantını sunacağım.

İşlevdeki diğer her şey olduğu gibi bırakılabilir.

Anlaşmanın yönünü eklerdim. Başlatan kimdi (satıcı veya alıcı)
 
Prival-2 :
Anlaşmanın yönünü eklerdim. Başlatan kimdi (satıcı veya alıcı)
Evet, cevapsız - eklendi.
 
Ve en iyisi son fiyat güncellemeleri değil. Daha doğrusu, muhtemelen veri değiştirme zamanı olacaktır + bide üzerinde hangi hacmin olduğunu ve soruda ne olduğunu (belki de bir kerede daha iyidir) ekleyin.
 
Evet. ve tüm bu veriler için sunucu tarafından toplanan mümkün olan en derin geçmişi https://www.mql5.com/ru/docs/series/copyticks üzerinden alma ve bunlara ilişkin stratejileri test cihazında test etme yeteneği. Sonra Cennet MT5'te kafa derisi yüzücüleri için gelecek Ve eğer her biri için   Cam verileri biriktirmek için BookEvent - daha sonra sunucuya sığmayacak büyük bir arşiv boyutu ortaya çıkacaktır)
Документация по MQL5: Доступ к таймсериям и индикаторам / CopyTicks
Документация по MQL5: Доступ к таймсериям и индикаторам / CopyTicks
  • www.mql5.com
Доступ к таймсериям и индикаторам / CopyTicks - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 

neden tüm tarihi bezelye kralından sunucuda saklasın. Kendinizi örneğin bir hafta içinde makul bir derinlikle sınırlayabilirsiniz. Ve ayrı bir istekte (dosya sunucusundan) daha derin bir geçmiş sağlayın. Birisi 2010 için bir bardağın tarihini istiyorsa, sorun değil, indirin ve sonra yüzü maviye dönene kadar üzerinde test etmesine izin verin.

Torrent teknolojisini kullanarak başkalarına (geçmiş) sağlarken. Birçok çözüm var. Bu seçeneklerden sadece biri.

Neden: