FORTS alıntıları hakkında soru - sayfa 3

 

Günlükleri yanlış anlama olasılığını azaltmak için bilgisayar zamanını doğru tutmak istenir.

Senaryo için teşekkürler: işte bu senaryonun 1 dakikadaki sonuçları 17:36

CollectTicks (ED- 12.14 ,M1)       2014.11 . 10 17 : 36 : 06 ; Bid = 1.2474 ; Ask = 1.2475 ; Last = 1.2476 ; Vol = 3
CollectTicks (ED- 12.14 ,M1)       2014.11 . 10 17 : 36 : 06 ; Bid = 1.2474 ; Ask = 1.2476 ; Last = 1.2476 ; Vol = 3
CollectTicks (ED- 12.14 ,M1)       2014.11 . 10 17 : 36 : 12 ; Bid = 1.2474 ; Ask = 1.2476 ; Last = 1.2476 ; Vol = 5
CollectTicks (ED- 12.14 ,M1)       2014.11 . 10 17 : 36 : 26 ; Bid = 1.2474 ; Ask = 1.2475 ; Last = 1.2476 ; Vol = 5
CollectTicks (ED- 12.14 ,M1)       2014.11 . 10 17 : 36 : 28 ; Bid = 1.2474 ; Ask = 1.2476 ; Last = 1.2476 ; Vol = 5
CollectTicks (ED- 12.14 ,M1)       2014.11 . 10 17 : 36 : 29 ; Bid = 1.2474 ; Ask = 1.2476 ; Last = 1.2474 ; Vol = 8
CollectTicks (ED- 12.14 ,M1)       2014.11 . 10 17 : 36 : 29 ; Bid = 1.2473 ; Ask = 1.2475 ; Last = 1.2474 ; Vol = 8
CollectTicks (ED- 12.14 ,M1)       2014.11 . 10 17 : 36 : 30 ; Bid = 1.2473 ; Ask = 1.2474 ; Last = 1.2473 ; Vol = 5
CollectTicks (ED- 12.14 ,M1)       2014.11 . 10 17 : 36 : 30 ; Bid = 1.2472 ; Ask = 1.2474 ; Last = 1.2473 ; Vol = 5
CollectTicks (ED- 12.14 ,M1)       2014.11 . 10 17 : 36 : 43 ; Bid = 1.2472 ; Ask = 1.2474 ; Last = 1.2474 ; Vol = 2

OnTick'in özelliği, hem Teklif/Soruşturma değişikliklerine (bilgi akışı) hem de Son'a (ticaret akışı) tepki vermesidir.

Sonuç olarak, borsada işlem gören enstrümanlar için OnTick çağrılarının sayısının alım satım işlemlerinden açıkça daha fazla olduğu ortaya çıktı.

Neden böyle yapılır:

  1. Bir uzmanı sadece ticaretle boğamazsınız ve ona piyasa değişiklikleri hakkında bilgi veremezsiniz (bir şey 5 kez aramak, diğeri - 15 kez)
  2. Tüccarlardan biri patlayacağından, canlı bir piyasa çerçevesinde piyasaya genel bakışta sıfır son ve son_hacim yayınlamak imkansızdır.


Toplu güncellemelerde, bir enstrüman için aynı anda iki veya daha fazla onay işareti geldiğinde OnTick'in bir kez çağrılması gerçeğiyle ilgili bir şey daha var. Bu, gelen tekliflerin akışını yavaşlatmamaya ve Uzman Danışmanları yavaşlatmak için büyük bir onay kuyruğu oluşturmamaya izin verir.

Anlaşma akışını doğru bir şekilde analiz etmenizi sağlayacak Zaman ve Satış akışını yakında etkinleştireceğiz.

 
Renat :

Günlükleri yanlış anlama olasılığını azaltmak için bilgisayar zamanını doğru tutmak istenir.

Senaryo için teşekkürler: işte bu senaryonun 1 dakikadaki sonuçları 17:36

OnTick'in özelliği, hem Teklif/Soruşturma değişikliklerine (bilgi akışı) hem de Son'a (ticaret akışı) tepki vermesidir.

Sonuç olarak, borsada işlem gören enstrümanlar için OnTick çağrılarının sayısının alım satım işlemlerinden açıkça daha fazla olduğu ortaya çıktı.

Neden böyle yapılır:

  1. Bir uzmanı sadece ticaretle boğamazsınız ve ona piyasa değişiklikleri hakkında bilgi veremezsiniz (bir şey 5 kez aramak, diğeri - 15 kez)
  2. Tüccarlardan biri patlayacağından, canlı bir piyasa çerçevesinde piyasaya genel bakışta sıfır son ve son_hacim yayınlamak imkansızdır.


Toplu güncellemelerde, bir enstrüman için aynı anda iki veya daha fazla onay işareti geldiğinde OnTick'in bir kez çağrılması gerçeğiyle ilgili bir şey daha var. Bu, gelen tekliflerin akışını yavaşlatmamaya ve Uzman Danışmanları yavaşlatmak için büyük bir onay kuyruğu oluşturmamaya izin verir.

Anlaşma akışını doğru bir şekilde analiz etmenizi sağlayacak Zaman ve Satış akışını yakında etkinleştireceğiz.

Bütün bunlar elbette harika, ancak sipariş kitaplarının olduğu FORTS için MqlTick yapısına bir alıntı bayrağı eklemek gerekiyordu.

İşlemlerin "yeniden üretilmesi" korkutucu değildir, korkutucu olan gerçek işlemlerin ortadan kalkmasıdır.

Not BAN'ım IP adresim ile ilgili, lütfen kaldırın, aksi halde size cevap verebilmek için her seferinde tarayıcıyı yeniden kurmam gerekiyor.

 

Есть еще один момент с тем, что на пакетных обновлениях, когда одновременно приходят два и более тика по инструменту, то OnTick вызывается однократно. Это позволяет не тормозить поток входящих котировок и не делать огромную очередь тиков для тормозящих экспертов.

Bu yaklaşım aşağıdakilerle sonuçlanır:

Olmalı:

Kağıt Süresi Süre(µs) Fiyat Adet

317922.000000 RTS-12.14 [FORTS] 18:44:54 199000.000000 104140.000000 1.000000

317923.000000 RTS-12.14 [FORTS] 18:44:54 261000.000000 104130.000000 1.000000
317924.000000 RTS-12.14 [FORTS] 18:44:54 5870000000 104140.000000 1.000000
317925.000000 RTS-12.14 [FORTS] 18:44:54 589000.000000 104140.000000 1.000000
317926.000000 RTS-12.14 [FORTS] 18:44:54 691000.000000 104140.000000 1.000000
317927.000000 RTS-12.14 [FORTS] 18:44:54 691000.000000 104140.000000 1.000000
317928.000000 RTS-12.14 [FORTS] 18:44:54 842000.000000 104130.000000 2.000000
317929.000000 RTS-12.14 [FORTS] 18:44:54 919000.000000 104150.000000 1.000000
317930.000000 RTS-12.14 [FORTS] 18:44:55 337000.000000 104150.000000 1.000000
317931.000000 RTS-12.14 [FORTS] 18:44:55 337000.000000 104150.000000 1.000000
317932.000000 RTS-12.14 [FORTS] 18:44:55 337000.000000 104160.000000 1.000000
317933.000000 RTS-12.14 [FORTS] 18:44:55 337000.000000 104160.000000 1.000000
317934.000000 RTS-12.14 [FORTS] 18:44:55 337000.000000 104160.000000 3.000000
317935.000000 RTS-12.14 [FORTS] 18:44:55 375000.000000 104140.000000 1.000000
317936.000000 RTS-12.14 [FORTS] 18:44:55 375000.000000 104130.000000 5.000000
317937.000000 RTS-12.14 [FORTS] 18:44:55 7960000000 104130.000000 1.000000
317938.000000 RTS-12.14 [FORTS] 18:44:55 799000.000000 104130.000000 2.000000
317939.000000 RTS-12.14 [FORTS] 18:44:56 54000.000000 104160.000000 1.000000
317940.000000 RTS-12.14 [FORTS] 18:44:57 235000.000000 104160.000000 1.000000
317941.000000 RTS-12.14 [FORTS] 18:44:57 451000.000000 104140.000000 2.000000
317942.000000 RTS-12.14 [FORTS] 18:44:57 4870000000 104140.000000 6.000000
317943.000000 RTS-12.14 [FORTS] 18:44:57 521000.000000 104160.000000 1.000000
317944.000000 RTS-12.14 [FORTS] 18:44:57 621000.000000 104160.000000 1.000000
317945.000000 RTS-12.14 [FORTS] 18:44:58 3800.0000000 104160.000000 3.000000
317946.000000 RTS-12.14 [FORTS] 18:44:58 695000.000000 104160.000000 13.000000
317947.000000 RTS-12.14 [FORTS] 18:44:58 883000.000000 104140.000000 2.000000

317948.000000 RTS-12.14 [FORTS] 18:44:58 9860000000 104160.000000 1.000000
317949.000000 RTS-12.14 [FORTS] 18:44:58 99300.000.000 104160.000000 5.000000
317950.000000 RTS-12.14 [FORTS] 18:44:58 99300.000.000 104160.000000 5.000000
317951.000000 RTS-12.14 [FORTS] 18:44:58 995000.000000 104160.000000 5.000000
317952.000000 RTS-12.14 [FORTS] 18:44:58 9960000000 104160.000000 1.000000
317953.000000 RTS-12.14 [FORTS] 18:44:59 560000000 104160.000000 1.000000
317954.000000 RTS-12.14 [FORTS] 18:44:59 560000.000000 104140.000000 1.000000
317955.000000 RTS-12.14 [FORTS] 18:44:59 604000.000000 104140.000000 1.000000
317956.000000 RTS-12.14 [FORTS] 18:44:59 6470000000 104160.000000 1.000000


MT5'e nasıl giriyoruz:

NE 0 18:44:54.483 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:54 Teklif = 104130 Satış = 104150 Son = 104140 Cilt = 1
ES 0 18:44:54.639 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:54 Teklif = 104130 Satış = 104150 Son = 104130 Hac = 2
VEYA 0 18:44:54.720 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:54 Teklif = 104130 Satış = 104150 Son = 104150 Hac = 1
NQ 0 18:44:54.983 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:55 Teklif = 104140 Satış = 104150 Son = 104150 Cilt = 1
FP 0 18:44:55.139 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:55 Teklif = 104140 Sor = 104160 Son = 104160 Hacim = 3
JO 0 18:44:55.174 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:55 Teklif = 104140 Satış = 104160 Son = 104130 Cilt = 5
GN 0 18:44:55.206 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:55 Teklif = 104130 Satış = 104160 Son = 104130 Hacim = 5
RM 0 18:44:55.592 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:55 Teklif = 104130 Satış = 104160 Son = 104130 Hacim = 2
IL 0 18:44:55.891 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:56 Teklif = 104130 Satış = 104160 Son = 104160 Hacim = 1
HJ 0 18:44:55.921 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:56 Teklif = 104140 Satış = 104160 Son = 104160 Hacim = 1
RI 0 18:44:57.032 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:57 Teklif = 104140 Satış = 104160 Son = 104160 Hacim = 1
PH 0 18:44:57.242 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:57 Teklif = 104140 Satış = 104160 Son = 104140 Hacim = 2
FG 0 18:44:57.297 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:57 Teklif = 104140 Satış = 104160 Son = 104140 Hacim = 6
PF 0 18:44:57.328 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:57 Teklif = 104140 Satış = 104160 Son = 104160 Hacim = 1
JE 0 18:44:57.436 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:57 Teklif = 104140 Satış = 104160 Son = 104160 Hacim = 1
QD 0 18:44:57.838 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:58 Teklif = 104140 Satış = 104160 Son = 104160 Hacim = 3
DP 0 18:44:58.514 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:58 Teklif = 104140 Satış = 104160 Son = 104160 Hacim = 13
RR 0 18:44:58.693 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:58 Teklif = 104140 Satış = 104160 Son = 104140 Hacim = 2
JP 0 18:44:58.795 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:58 Teklif = 104140 Satış = 104160 Son = 104160 Hacim = 1
CO 0 18:44:58.852 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:59 Teklif = 104140 Satış = 104160 Son = 104160 Hacim = 1
GN 0 18:44:59.358 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:59 Teklif = 104140 Satış = 104160 Son = 104140 Hacim = 1
MM 0 18:44:59.406 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:59 Teklif = 104140 Satış = 104160 Son = 104140 Hacim = 1
IL 0 18:44:59.453 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:44:59 Teklif = 104140 Satış = 104160 Son = 104160 Hacim = 1
CK 0 18:50:31.437 FORTSTicksAction (RTS-12.14,M1) Zaman = 18:50:24 Teklif = 0 Talep = 0 Son = 104160 Hacim = 1
KH 0 18:50:33.357 FORTSticksAction (RTS-12.14,M1) Zaman = 18:50:24 Teklif = 104080 Satış = 104180 Son = 104160 Cilt = 1


Bunların hepsi, oturumun kapanmasından hemen önceki sonunculardır (yani, takasın sonuna kadar aşağıda hiçbir alıntı yoktur).

Başlangıç noktası olarak siyahla vurgulanan üç çizgiyi alıyoruz. İki soru var:

1.Kırmızılar nereye gitti?

2. Vurgulanan mavi nereden geldi?


Başka bir soru (ek) - hangi zaman aralığı "eşzamanlı varış" anlamına gelir?

 
Dima_S :

Bu yaklaşım aşağıdakilerle sonuçlanır:

317945.000000 RTS-12.14 [FORTS] 18:44:58 3800.0000000 104160.000000 3.000000
317946.000000 RTS-12.14 [FORTS] 18:44:58 695000.000000 104160.000000 13.000000
317947.000000 RTS-12.14 [FORTS] 18:44:58 883000.000000 104140.000000 2.000000

317948.000000 RTS-12.14 [FORTS] 18:44:58 9860000000 104160.000000 1.000000
317949.000000 RTS-12.14 [FORTS] 18:44:58 99300.000.000 104160.000000 5.000000
317950.000000 RTS-12.14 [FORTS] 18:44:58 99300.000.000 104160.000000 5.000000
317951.000000 RTS-12.14 [FORTS] 18:44:58 995000.000000 104160.000000 5.000000
317952.000000 RTS-12.14 [FORTS] 18:44:58 9960000000 104160.000000 1.000000



Bunların hepsi, oturumun kapanmasından hemen önceki son sözlerdir (yani, takasın sonuna kadar aşağıda hiçbir alıntı yoktur).

Başlangıç noktası olarak siyahla vurgulanan üç çizgiyi alıyoruz. İki soru var:

1.Kırmızılar nereye gitti?

Büyük olasılıkla tek bir ağ paketiyle geldiler ve bir OnTick olarak gönüllü oldular. Bir saniyede 8 tıklama vardı, bunlardan üçü tek çağrı olarak geldi ve son 5'i büyük olasılıkla son alıntı Son olarak görüntülenen tek bir paketteydi.


2. Vurgulanan mavi nereden geldi?

Bu postmarket. Pazar sonrası etkinlikleri de yakalama fırsatı veriyoruz. Orada, genellikle başvuruların geri çekilmesi sadece işe yarar.


Başka bir soru (ek) - hangi zaman aralığı "eşzamanlı varış" anlamına gelir?

Bu bir aralık değil, fiziksel bir ağ paketidir. 2-3-4 tik için bir paket gelir, hepsi tabanda örtüşür, ancak OnTick çağrısı bir tane gider.

EA'nın yavaşlaması (meşgul olması) ve veritabanına yeni bir gelen teklifin eklenmesi olasılığı hala vardır, ancak EA çalıştığı için OnTick çağrılmaz. Böyle bir mekanizma olmasaydı, uzman için gelen alıntı kuyruklarını kolayca taşar ve uzmana eski alıntıları göndermeye başlar ve onu yanlış yönlendirirdik.

 

Renat!

Detaylı açıklama için teşekkürler ama...

FORTS için bu yaklaşım bana göre kabul edilebilir değil.

Olması gereken: alıntı hacimdir ve başka bir şey değildir.

11 alıntı vardı, bu yüzden OnTick'te 11 tane olmalı.

Değil mi?

 

Bu taraftan değil.

Terminale doğru ve doğru veri akışlarının sağlanması ve uzmanların aranması/bildirilmesi konusunu birbirine karıştırmayın.

Tüm verilerin doğru ve doğru bir şekilde terminale iletilmesi esastır. Grafikleri karşılaştırmak yeterlidir.

Ancak uzmanların (ontic) başlatılması bağımsız ve eşzamansız bir bildirimdir. Gelen bir veri paketi, bazı yavaşlayan Expert Advisor'ları bekleyemez, ancak anında pazar ortamına uygulanmalı ve yalnızca isteğe bağlı olarak (Uzman Danışman önceki çağrıyı tamamladıysa) Expert Advisor'ı başlatmalıdır.

Durumu düşünün: teklif akışı saniyede 2'dir ve yavaşlayan, işlem yapan, ancak aynı zamanda kuyrukta bekleyen yeni fiyatların Majesteleri'ne kadar terminalin piyasa ortamıyla çakışmamasını gerektiren çalışan bir Uzman Danışman Uzman Danışman işini bitirir.

Bunun nereye varacağını görüyor musunuz? Tüm terminal, piyasanın anlık görüntüsünü işlenmekte olan teklifin durumu hakkında tutmak gibi aptalca bir fikir için tüm süreçleri geciktirmeye başlayacaktır. Ve diğer araçları düşünüyorsanız, sadece kendinizi vurun.

Bu nedenle, piyasa güncellemelerinin uygulanmasına her zaman öncelik verilir, anında ve diğer süreçlerden bağımsız olarak. Diğer herkes eşzamansız olarak piyasaya ayak uydurmalıdır.

 
Renat :

Bu taraftan değil.

Terminale doğru ve doğru veri akışlarının sağlanması ve uzmanların aranması/bildirilmesi konusunu birbirine karıştırmayın.

Tüm verilerin doğru ve doğru bir şekilde terminale iletilmesi esastır. Grafikleri karşılaştırmak yeterlidir.

Ancak uzmanların (ontic) başlatılması bağımsız ve eşzamansız bir bildirimdir. Gelen bir veri paketi, bazı yavaşlayan Expert Advisor'ları bekleyemez, ancak anında pazar ortamına uygulanmalı ve yalnızca isteğe bağlı olarak (Uzman Danışman önceki çağrıyı tamamladıysa) Expert Advisor'ı başlatmalıdır.

Durumu düşünün: teklif akışı saniyede 2'dir ve yavaşlayan, işlem yapan, ancak aynı zamanda kuyrukta bekleyen yeni fiyatların Majesteleri'ne kadar terminalin piyasa ortamıyla çakışmamasını gerektiren çalışan bir Uzman Danışman Uzman Danışman işini bitirir.

Bunun nereye varacağını görüyor musunuz? Tüm terminal, piyasanın anlık görüntüsünü işlenmekte olan teklifin durumu hakkında tutmak gibi aptalca bir fikir için tüm süreçleri geciktirmeye başlayacaktır. Ve diğer araçları düşünüyorsanız, sadece kendinizi vurun.

Bu nedenle, piyasa güncellemelerinin uygulanmasına her zaman öncelik verilir, anında ve diğer süreçlerden bağımsız olarak. Diğer herkes eşzamansız olarak piyasaya ayak uydurmalıdır.

Aynı fikirde olmamak.

Diyelim ki cam kullanmıyorum (teklif et ve sor kene içinde)

FORTS piyasasındaki durum hakkında ne fikrim olacak (uzman) hangi alıntıyla net değil

ve hacim?

Sonuçta, FORTS için teklifi devretme ve sorma (bardağın içindeler) mümkündür.

Ve kodda, değişiklikler minimum - cama abone olun - teklifte yayınlanmıyor ve onay soruyor

 
Mikalas :

Aynı fikirde olmamak.

Açıklamamı birkaç kez tekrar okuyun lütfen.

Diyelim ki cam kullanmıyorum (teklif et ve sor kene içinde)

FORTS piyasasındaki durum hakkında ne fikrim olacak (uzman) hangi alıntıyla net değil

Mevcut eşzamansız olarak güncellenen teklifle ve başka bir şey yok.

Eğer çağrıldıysanız, o kadar - önünüzde bardakta sadece alıntı var. Paketteki 2 fiyat teklifi geldiyse ve üst üste geldiyse, sadece sonuncusunu göreceksiniz. Çünkü hiç kimse ilk alıntıyı bir uzmana iletmeyecek ve uzmanın hesaplamasını tamamlamaya tenezzül etmesini bekleyemeyecektir. İşte bu, eski alıntı gitti ve zamanında yakalayamaz ve çözemezseniz, tren gitti. Bu eski alıntıda, yine de hiçbir şey yürütemeyeceksiniz. Evet ve mevcut / son sipariş için yerine getirileceği de şüpheli, çünkü sipariş gönderildiğinde piyasa değişebilir.

Hiçbir "teklif verme/sorma" yardımcı olmaz. Eski keneler eskidir - kimse piyasayı donduramaz ve eski kenelerle çalışmanıza izin vermez.

İsterseniz, yapabilirsiniz:

  1. terminali yüksek hızlı bir bilgisayarda komisyoncuya daha yakın bir yere koyun ve giderek daha aktif bir şekilde yakalayın
  2. uzmanı döngüye alın, mevcut olan her şeyi daha sık çıkarmak için sürekli olarak sipariş defterini ve piyasa gözlemini tarayın
  3. grafiği analiz et, sipariş defterini analiz et

Zaman ve Satış ile birlikte, ardışık tiklere erişilebilmesi için en son tik fiyat akışına doğrudan erişim sağlamayı düşüneceğiz. Piyasa incelemesinde seanslar halinde topluyoruz. Bu, yüzücülere daha fazla fırsat verecektir.

 

Renat :

Zaman ve Satış ile birlikte, ardışık tiklere erişilebilmesi için en son tik fiyat akışına doğrudan erişim sağlamayı düşüneceğiz. Piyasa incelemesinde seanslar halinde topluyoruz. Bu, yüzücülere daha fazla fırsat verecektir.

Kabul edilebilir tek çözüm bu. Umarım verilen karakterler için fifo kuyrukları olacaktır. Bu, bu olay modeli çerçevesinde çözülemeyen başka bir sorunu çözecektir - uzman sembolü dışındaki sembollerin alıntılarını kayıpsız olarak elde etmek.
 

Bir şey şüphelerim var.

Şimdi, onu çalışacak şekilde ayarlayacağım:

//+------------------------------------------------------------------+
//|                                                    Kotirovki.mq5 |
//|                                                   Copyright 2014 |
//|                                              http://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2014, Mikalas"
#property link      "http://www.mql5.com"
#property version   "1.02"
//
MqlTick curr_tick;
double  start_last   = 0;
double  start_bid    = 0;
double  start_ask    = 0; 
ulong   start_volume = 0;  
//  
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
{
  return( INIT_SUCCEEDED );
}
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit( const int reason )
{

}
//+------------------------------------------------------------------+
//| Expert On Tick event function                                    |
//+------------------------------------------------------------------+  
void OnTick()
{
  if ( SymbolInfoTick( _Symbol, curr_tick ) )
  {
    if ( start_last == curr_tick.last )
    {
      if ( start_volume == curr_tick.volume )
      {
        if ( ( start_ask == curr_tick.ask ) &&
             ( start_bid == curr_tick.bid )  )
        {
          Print( curr_tick.time, "; Bid = ", curr_tick.bid,
                                 "; Ask = ", curr_tick.ask,
                                 "; Last = ", curr_tick.last,
                                 "; Vol = ", curr_tick.volume, "; Новая котировка(Всё одинаковое)" );
        }
        else
        {
          start_ask = curr_tick.ask;
          start_bid = curr_tick.bid;
          Print( curr_tick.time, "; Bid = ", curr_tick.bid,
                                 "; Ask = ", curr_tick.ask,
                                 "; Last = ", curr_tick.last,
                                 "; Vol = ", curr_tick.volume, "; Изменение ask или bid? Или же новая котировка?" );
        }
      }
      else
      {
        start_last = curr_tick.last;
        start_volume = curr_tick.volume;
        start_ask = curr_tick.ask;
        start_bid = curr_tick.bid;
        Print( curr_tick.time, "; Bid = ", curr_tick.bid,
                               "; Ask = ", curr_tick.ask,
                               "; Last = ", curr_tick.last,
                               "; Vol = ", curr_tick.volume, "Новая котировка (Изменён объём)!" );
      }
    }
    else
    {
      start_last = curr_tick.last;
      start_volume = curr_tick.volume;
      start_ask = curr_tick.ask;
      start_bid = curr_tick.bid;
      Print( curr_tick.time, "; Bid = ", curr_tick.bid,
                             "; Ask = ", curr_tick.ask,
                             "; Last = ", curr_tick.last,
                             "; Vol = ", curr_tick.volume, "Новая котировка! (Изменена котировка)" );
    }
  }
}

bakalım yarın neler olacak...

Dosyalar:
Kotirovki.ex5  5 kb