durdurma limiti - sayfa 6

 

Ertesi gün gün seansının açılışında uygun fiyata verilen ara sonrası geri çekilme.
Bu, pazarın açılışında bir sıkışma.
Sadece teklifin fiyatının neden uygulanmadığını karıştırıyor.
Test cihazındaki DOM alıntılarının ya yalan söylediğine ya da alıntıların çarpık olduğuna dair bir şüphe var.
Gerçek kene simülasyonu seçildi mi?

Gerçek ticarette, genellikle piyasanın açılmasından sonraki ilk 1-5 dakika atlanır.
Aksi takdirde, ilk uygun fiyatta bu tür sıkışmalar ve çılgın bir spread ile oynaklık olacaktır.
Bu nedenle, piyasa kapanmadan önce, örneğin 23.40'ta, tüm stoplimit siparişlerinizi kaldırın.
Ve yayılma kontrolü ile 10.01'den sonra sipariş verilmesine izin verin.

Dün verilen bir stoplimit emriniz var ve piyasanın açılışında likidite olmadığında piyasaya çıkıyor.
Limiti neden 100 tik olarak belirlediniz? Giriş için limiti 5 kene olarak ayarlayın.


 
Dmitry Fedoseev :

Bu yüzden tembellikten garip sonuçlar çıkarıyorsunuz. Bu benim için değil, neler olduğunu anlaman için.

Grafikte son fiyat 2 Aralık 23:48'de. Günlüklerde, siparişler 10'un 3'ünde tetiklenir. Nedir?

Bir kez daha tekrar ediyorum, buna ihtiyacım yok, uzun zamandır her şey benim için açıktı. Gerçekten anlamıyor musun yoksa numara mı yapıyorsun?

2 Aralık 23:48'deki grafikte - bu son fiyat değil, bu zaman ölçeği, terminal böyle tasarlandı))))))))))))


 
Sergey Chalyshev :

Bir kez daha tekrar ediyorum, buna ihtiyacım yok, uzun zamandır her şeyi anladım. Gerçekten anlamıyor musun yoksa numara mı yapıyorsun?

2 Aralık 23:48'deki grafikte - bu son fiyat değil, bu zaman ölçeği, terminal böyle tasarlandı))))))))))))


Çok anlamlı bir ifade: 23:48 bir fiyat değildir.

Tamam... Ben gidiyorum... Artık konularınıza karışmamaya çalışacağım.

 
Dmitry Fedoseev :

Çok anlamlı bir ifade: 23:48 bir fiyat değildir.

Tamam... Ben gidiyorum... Artık konularınıza karışmamaya çalışacağım.

Dmitry, uzağa gitme ve işe karışma))

Bazen yardım ediyorsun ve kişisel olarak bazı sorunları çözmeme yardım ediyorsun.

Sana bir değişim hesabı için bir kullanıcı adı ve şifre vermemi ister misin? Sadece şu şartla: Çok fazla birleştirme yapmayın ve şifreyi değiştirmeyin.

 
Sergey Chalyshev :

Dmitry, uzağa gitme ve işe karışma))

Bazen yardım ediyorsun ve kişisel olarak bazı sorunları çözmeme yardım ediyorsun.

Sana bir değişim hesabı için bir kullanıcı adı ve şifre vermemi ister misin? Sadece şu şartla: Çok fazla birleştirme yapmayın ve şifreyi değiştirmeyin.

Evet. Test cihazında da birkaç sipariş deneyeceğim.

 
Dmitry Fedoseev :

Evet. Test cihazında da birkaç sipariş deneyeceğim.

özelden yazdım

 
Sergey Chalyshev :

Anlaşılan kimse kullanmıyor

sipariş var olmayan fiyatlarla açılır:

kontrol etmek için basit bir örnek:

 //+------------------------------------------------------------------+
//|                                               StopLimit_Test.mq5 |
//+------------------------------------------------------------------+
#include <Trade\Trade.mqh>
CTrade trade;

input int Deviation = 100 ;
//+------------------------------------------------------------------+
void OnTick ()
  {
   MqlTick tick;
   SymbolInfoTick ( _Symbol ,tick);
   trade.SetTypeFilling( ORDER_FILLING_RETURN );
   double ticksise= SymbolInfoDouble ( _Symbol , SYMBOL_TRADE_TICK_SIZE );

   if ( OrdersTotal ()== 0 )
      trade.OrderOpen(
         _Symbol ,                       // символ
         ORDER_TYPE_BUY_STOP_LIMIT ,     // тип ордера
         1.0 ,                           // объем ордера
         tick.ask+Deviation*ticksise,   // цена исполнения
         tick.ask+ 10 *ticksise,         // цена стоплимита
         0 ,                             // цена stop loss
         0                              // цена take profit
      );
  }
//+------------------------------------------------------------------+

Ama aslında sorun nedir: stop-limit fiyatı ve limit karıştırılır. Aslında, önce limit_price parametresi ve ardından fiyat. Bu nedenle bir al-durdur limiti belirlerseniz fiyat fiyatı limit_fiyat fiyatından yüksek olmalıdır. Ancak teklifteki kodda, tam tersine, ilk tetikleme tick.ask+10*ticksise fiyatına yakın bir noktada gerçekleşir ve orada bir yerde (piyasa fiyatının üzerinde) bir baylit belirir ve hemen tetiklenir.

Ancak test cihazında, test süresinin başında fiyat düşüyor, bu yüzden bir durdurma limiti ile kontrol ettim, bu kod iyi çalışıyor:

 void OnTick ()
  {

   static int x= 0 ;
   
   if (x== 1 ) return ;
   
   x= 1 ;
  

   MqlTick tick;
   SymbolInfoTick ( _Symbol ,tick);
   trade.SetTypeFilling( ORDER_FILLING_RETURN );
   double ticksise= SymbolInfoDouble ( _Symbol , SYMBOL_TRADE_TICK_SIZE );

   if ( OrdersTotal ()== 0 ){
       Comment ( GetTickCount (), " " ,ticksise);
      trade.OrderOpen(
         _Symbol ,                       // символ
         ORDER_TYPE_SELL_STOP_LIMIT ,     // тип ордера
         1.0 ,                           // объем ордера
         tick.bid- 100 *ticksise,   // цена исполнения
         tick.bid- 1000 *ticksise,         // цена стоплимита
         0 ,                             // цена stop loss
         0                              // цена take profit
      );
   }

  }

ilk işlemden sonra bir limit belirir ...

 
Dmitry Fedoseev :

Ama aslında sorun nedir: stop-limit fiyatı ve limit karıştırılmıştır . Aslında, önce limit_price parametresi ve ardından fiyat. Bu nedenle, bir al-durdur limiti belirlerseniz, fiyat fiyatı, fiyat limiti_fiyatından yüksek olmalıdır . Ancak teklifteki kodda, tam tersine, ilk tetikleme tick.ask+10*ticksise fiyatına yakın bir noktada gerçekleşir ve orada bir yerde (piyasa fiyatının üzerinde) bir baylit belirir ve hemen tetiklenir.

Ancak test cihazında, test süresinin başında fiyat düşüyor, bu yüzden bir durdurma limiti ile kontrol ettim, bu kod iyi çalışıyor:

ilk işlemden sonra bir limit belirir ...

Benim örneğimde, hiçbir şey karıştırılmaz, BuyLimit, Ask'tan daha yükseğe yerleştirilir ve BuyLimit'te belirtilen fiyattan değil, Ask'ta gerçekleştirilmelidir.

Tüm konuyu tekrar okuyun, açıklama yapmaktan bıktım.

BuyLimit'i StopLimit olmadan Sor'un üstüne ayarlamaya çalışın.

ORDER_TYPE_BUY_STOP_LIMIT ile ORDER_TYPE_BUY_LIMIT değiştirin.

BuyLimit, Alış fiyatında yeterli, BuyStopLimit durumunda ise BuyLimit'te belirtilen fiyatta yetersiz çalışır.

 
Sergey Chalyshev :

Benim örneğimde, hiçbir şey karışmıyor, BuyLimit, Ask'ın üzerine yerleştirildi ve BuyLimit'te belirtilen fiyattan değil, Ask'ta gerçekleştirilmelidir.

Tüm konuyu tekrar okuyun, açıklama yapmaktan bıktım.

BuyLimit'i StopLimit olmadan Sor'un üstüne ayarlamaya çalışın.

ORDER_TYPE_BUY_STOP_LIMIT ile ORDER_TYPE_BUY_LIMIT değiştirin.

BuyLimit, Alış fiyatında yeterli, BuyStopLimit durumunda ise BuyLimit'te belirtilen fiyatta yetersiz çalışır.

Şimdi net.

 

Stop limit emri, Test Cihazında ve Forex için kontrol edilebilir. "Execution" = Exchange olarak ayarlamanız yeterlidir.



Buy stop limitini şu şekilde kontrol ettim: Limit emrinin fiyatını aktivasyon fiyatından daha kötü ayarladım. Etkinleştirildiğinde, emir piyasada açıldı (fiyat sor). Yani Tester'daki işlevsellik çalışıyor gibi görünüyor.

Neden: