Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5 - sayfa 1159

 
Vladimir Karputov :
Değişimin gece istenen sembol üzerinde çalıştığından emin misiniz?

Bu yüzden, terminali, sahip olmadığı kesin olarak tanımlanmış bir zamanda bana kene göndermeye zorlamam, sadece bir istek gönderirim:

from=0 , // kenelerin istendiği tarih

sayı = 0                  // alınacak kene sayısı

Ve bana hikayeyi kendisi gönderiyor, değil mi?

 
VANDER :

Bu yüzden, terminali, sahip olmadığı kesin olarak tanımlanmış bir zamanda bana keneler göndermeye zorlamam, sadece bir istek gönderirim:

from=0 , // kenelerin istendiği tarih

sayı = 0                  // alınacak kene sayısı

Ve bana hikayeyi kendisi gönderiyor, değil mi?

İstenen sembol için müzayede kapalıysa (örneğin, dışarıda gece) - istenen sembol için tikler nereden gelecek?
 

Expert Advisor'ın başlatıldığı ana RTS-12.19 sembolü için son onayın 23:59:30'da ve SBRF-12.19 için 23:52:21'de olduğunu kontrol ettim, peki neden onayları yükleyemedi?

Ve aptal olmasına yardımcı olmak için SymbolInfoTick işlevi ne kadar ilginç?

 
VANDER :

Expert Advisor'ın başlatıldığı ana RTS-12.19 sembolü için son onayın 23:59:30'da ve SBRF-12.19 için 23:52:21'de olduğunu kontrol ettim, peki neden onayları yükleyemedi?

Ve aptal olmasına yardımcı olmak için SymbolInfoTick işlevi ne kadar ilginç?

Ticaret, otomatik ticaret sistemleri ve ticaret stratejilerinin test edilmesi hakkında forum

Yeni başlayanlardan sorular MQL5 MT5 MetaTrader 5

Vladimir Karputov , 2019.12.08 13:20

İstenen sembol için müzayede kapalıysa (örneğin, dışarıda gece) - istenen sembol için tikler nereden gelecek?

 
VANDER :

Expert Advisor'ın başlatıldığı ana RTS-12.19 sembolü için son onayın 23:59:30'da ve SBRF-12.19 için 23:52:21'de olduğunu kontrol ettim, peki neden onayları yükleyemedi?

Ve onun aptal olmasına yardımcı olacak SymbolInfoTick işlevi ne kadar ilginç?

İşte danışman:

 //+------------------------------------------------------------------+
//|                                                  CopyTicks_1.mq5 |
//|                              Copyright © 2015, Vladimir Karputov |
//|                                           http://wmua.ru/slesar/ |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2015, Vladimir Karputov"
#property link        "http://wmua.ru/slesar/"
#property version    "1.100"
#property description "Сравнение трёх режимов получения тиков"
//--- input parameters
input string    name  = "RTSSiZ9" ;       // символ по которому запрашиваем тики
input int       ticks = 3000 ;           // количество запрашиваемых тиков
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit ()
  {
   SymbolSelect (name, true );
//--- succeed
   return ( INIT_SUCCEEDED );
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick ()
  {
//--- массив для приема тиков
   MqlTick ExTicks[];
//--- запросим тики
   ResetLastError ();
   int copied= CopyTicks (name,ExTicks, COPY_TICKS_ALL , 0 ,ticks);
//--- если тики получены, то выведем на график значения Bid и Ask
   Print ( "Получено тиков: " ,copied, " код ошибки: " , GetLastError ());
   if (copied> 1 )
     {
       Print ( "Тик: " ,ExTicks[ 0 ].time, " bid: " ,ExTicks[ 0 ].bid, " ask: " ,ExTicks[ 0 ].ask, " last: " ,ExTicks[ 0 ].last, " [0]" );
       Print ( "Тик: " ,ExTicks[copied- 1 ].time, " bid: " ,ExTicks[copied- 1 ].bid, " ask: " ,ExTicks[copied- 1 ].ask, " last: " ,ExTicks[copied- 1 ].last, " [" ,copied- 1 , "]" );
     }
  }
//+------------------------------------------------------------------+

RTSSRZ9'da çalışıyorum (bu SBRF-Dec19) - işte ayarlar:


RTSSiZ9'da keneler istiyorum (bu Si-Dec19).

Sonuç:

 2019.08 . 30 07 : 00 : 00    Получено тиков: - 1 код ошибки: 4004
2019.08 . 30 07 : 00 : 01    Получено тиков: 2 код ошибки: 0
2019.08 . 30 07 : 00 : 01    Тик: 2019.08 . 30 07 : 00 : 00 bid: 22552.0 ask: 22697.0 last: 0.0 [ 0 ]
2019.08 . 30 07 : 00 : 01    Тик: 2019.08 . 30 07 : 00 : 01 bid: 22552.0 ask: 22697.0 last: 0.0 [ 1 ]
2019.08 . 30 07 : 00 : 02    Получено тиков: 3 код ошибки: 0
2019.08 . 30 07 : 00 : 02    Тик: 2019.08 . 30 07 : 00 : 00 bid: 22552.0 ask: 22697.0 last: 0.0 [ 0 ]
2019.08 . 30 07 : 00 : 02    Тик: 2019.08 . 30 07 : 00 : 02 bid: 22425.0 ask: 22856.0 last: 0.0 [ 2 ]
2019.08 . 30 07 : 00 : 02    Получено тиков: 4 код ошибки: 0
2019.08 . 30 07 : 00 : 02    Тик: 2019.08 . 30 07 : 00 : 00 bid: 22552.0 ask: 22697.0 last: 0.0 [ 0 ]

vb ...


Yani, her şey gerçek bir sunucuda çalışır. İşinize yaramazsa: 1. Demo sunucuda değil, gerçek bir sunucuda çalışın, 2. Kodunuzu kontrol edin.

Dosyalar:
 

Hesap gerçek olmaktan öte, üzerinde işlem yapıyorum. Kodunuzu kullandım, hatta ayarları tamamen aynı yaptım yine güleceksiniz, tam logu veriyorum:


 2019.12 . 08 21 : 08 : 38.787 MetaTester 5 started on 127.0 . 0.1 : 3000
2019.12 . 08 21 : 08 : 38.790 initialization finished
2019.12 . 08 21 : 08 : 39.088 login (build 2265 )
2019.12 . 08 21 : 08 : 39.120 4372 bytes of account info loaded
2019.12 . 08 21 : 08 : 39.120 1482 bytes of tester parameters loaded
2019.12 . 08 21 : 08 : 39.120 1212 bytes of input parameters loaded
2019.12 . 08 21 : 08 : 39.138 29043 bytes of symbols list loaded
2019.12 . 08 21 : 08 : 39.138 expert file added: Experts\CopyTicks_1.ex5. 16437 bytes loaded
2019.12 . 08 21 : 08 : 39.152 6116 Mb available, 76 blocks set for ticks generating
2019.12 . 08 21 : 08 : 39.152 initial deposit 10000.00 USD, leverage 1 : 100
2019.12 . 08 21 : 08 : 39.153 successfully initialized
2019.12 . 08 21 : 08 : 39.153 37 Kb of total initialization data received
2019.12 . 08 21 : 08 : 39.153 Intel Core i5- 3450   @ 3.10 GHz, 8157 MB
2019.12 . 08 21 : 08 : 39.198 RTS- 12.19 : symbol to be synchronized
2019.12 . 08 21 : 08 : 39.199 RTS- 12.19 : symbol synchronized, 4120 bytes of symbol info received
2019.12 . 08 21 : 08 : 39.199 RTS- 12.19 : history synchronization started
2019.12 . 08 21 : 08 : 39.201 RTS- 12.19 : load 33 bytes of history data to synchronize in 0 : 00 : 00.000
2019.12 . 08 21 : 08 : 39.201 RTS- 12.19 : history synchronized from 2018.01 . 12 to 2019.12 . 06
2019.12 . 08 21 : 08 : 39.201 RTS- 12.19 : ticks synchronization started
2019.12 . 08 21 : 08 : 39.202 RTS- 12.19 : load 40 bytes of tick data to synchronize in 0 : 00 : 00.000
2019.12 . 08 21 : 08 : 39.202 RTS- 12.19 : history ticks synchronized from 2019.01 . 03 to 2019.12 . 05
2019.12 . 08 21 : 08 : 39.205 RTS- 12.19 ,H1: history cache allocated for 2480 bars and contains 971 bars from 2018.01 . 12 13 : 00 to 2019.08 . 29 23 : 00
2019.12 . 08 21 : 08 : 39.205 RTS- 12.19 ,H1: history begins from 2018.01 . 12 13 : 00
2019.12 . 08 21 : 08 : 39.207 RTS- 12.19 ,H1 (Open-Broker): generating based on real ticks
2019.12 . 08 21 : 08 : 39.207 RTS- 12.19 ,H1: testing of Experts\CopyTicks_1.ex5 from 2019.08 . 30 00 : 00 to 2019.11 . 26 00 : 00 started with inputs:
2019.12 . 08 21 : 08 : 39.207    name=SBRF- 12.19
2019.12 . 08 21 : 08 : 39.207    ticks= 3000
2019.12 . 08 21 : 08 : 39.263 SBRF- 12.19 : symbol to be synchronized
2019.12 . 08 21 : 08 : 39.263 SBRF- 12.19 : symbol synchronized, 4120 bytes of symbol info received
2019.12 . 08 21 : 08 : 40.615 RTS- 12.19 : real ticks begin from 2019.01 . 03 00 : 00 : 00
2019.12 . 08 21 : 08 : 55.958 2019.08 . 30 00 : 03 : 46    Получено тиков: - 1 код ошибки: 4401
2019.12 . 08 21 : 08 : 56.877 2019.08 . 30 00 : 03 : 46    Получено тиков: - 1 код ошибки: 4401
2019.12 . 08 21 : 08 : 57.764 2019.08 . 30 09 : 52 : 14    Получено тиков: - 1 код ошибки: 4401
2019.12 . 08 21 : 08 : 58.739 2019.08 . 30 10 : 00 : 01    Получено тиков: - 1 код ошибки: 4401
2019.12 . 08 21 : 08 : 59.784 2019.08 . 30 10 : 00 : 01    Получено тиков: - 1 код ошибки: 4401
2019.12 . 08 21 : 09 : 04.628 2019.08 . 30 10 : 00 : 03    Получено тиков: - 1 код ошибки: 4401
2019.12 . 08 21 : 09 : 05.579 2019.08 . 30 10 : 00 : 04    Получено тиков: - 1 код ошибки: 4401
2019.12 . 08 21 : 09 : 06.596 2019.08 . 30 10 : 00 : 06    Получено тиков: - 1 код ошибки: 4401

Benim için tek fark gece başlıyor ama sabah bile aynı oluyor..

 
VANDER :

Hesap gerçek olmaktan öte, üzerinde işlem yapıyorum. Kodunuzu kullandım, hatta her şeyi tamamen aynı ayarladım ve yine de güleceksiniz, tam günlüğü veriyorum:


Benim için tek fark gece başlıyor ama sabah bile aynı oluyor..

ERR_HISTORY_NOT_FOUND

4401

İstenen geçmiş bulunamadı

SBRF- 12.19 enstrümanı hangi tarihten ve hangi tarihe kadar işlem görmektedir? Bu tarihler 2019.08.30-2019.11.26 arasına mı denk geliyor?

 
Vladimir Karputov :

ERR_HISTORY_NOT_FOUND

4401

İstenen geçmiş bulunamadı

SBRF- 12.19 enstrümanı hangi tarihten ve hangi tarihe kadar işlem görmektedir? Bu tarihler 2019.08.30-2019.11.26 arasına mı denk geliyor?

Evet yaparlar, herhangi bir tarihte olur


Tamam, çekiçle, kendim için bir çıkış yolu buldum, ondan önce işlevi kullan

 SymbolInfoTick (необходимый символ)

Sonra CopyTicks() onunla çalışmaya başlar, belki Açıcı diğer brokerlerde kontrol etmemiştir, belki birileri için kullanışlı olacaktır.

 
VANDER :

Evet yaparlar, herhangi bir tarihte olur


Tamam, çekiçle, kendim için bir çıkış yolu buldum, ondan önce işlevi kullan

Sonra CopyTicks() onunla çalışmaya başlar, belki Açıcı diğer brokerlerde kontrol etmemiştir, belki birileri için kullanışlı olacaktır.

Açıkçası ticaret sunucusuna bağlı - her şey benim için çalıştı.
Belki de sunucu kısımlarını on yıldır güncellemediler.
 
fxsaber :

Herhangi bir uyarı olmaması için kodu düzeltmeyi engelleyen nedir?

600 uyarınız olduğunda hata satırlarını bulmanız gerekir (aslında katı modu etkinleştirirsem daha fazlasına sahibim)

Ve neredeyse tüm uyarılar işe yaramaz. Çünkü birçoğu gizli değişkenler veya tür dönüşümleri ile ilgilidir. Belki bazı insanlar bu konuda yanlış gidebileceğinizi düşünüyor, ancak bu deneyimli programcılarda yaygın değil.

Mt4 yeni başlayanlar için haklı. Ancak mevcut mql5 dili, acemi programcılar için bir hedef oluşturacak kadar karmaşıktır. Ve deneyimli programcılar, belli bir nedenle yapılmış 600 satırlık bir şeye ihtiyaç duymazlar.


Açıkçası bu benim öznel görüşüm, ancak diğer diller ne kadar ayrıntılı istediğinize karar vermenize izin veriyor.