[Arşivle!] Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz hiçbir yerde - 2. - sayfa 319

 

durumu hatırlatayım

Lütfen bana bundan sonrasını söyleyin:

1. "if (timecur == "08:00:00") OrderSend (Symbol(), OP_BUY, Loot, Ask, 50, SL, TP,NULL,0,0,L);" fonksiyonu vardır.

2. 23.08.2010-23.10.2010 döneminde test ediyorum.

3. 10/12/2010 tarihine kadar işlemler 1 adet için normal olarak açılır.

4. Ancak 10/12/2010'da fonksiyon, mevduatın izin verdiği ölçüde (yaklaşık 7 adet) maksimum işlemleri açar.

Sebebini anlayamıyorum, saniyede en az 5 tik geçip sonuç olarak bu kadar çok açmayı başarıyor olabilir mi yoksa başka bir şey mi?

çok minnettar olacağım, teşekkürler

 
En kolay yol, yeni bir tane açmadan önce piyasada belirli sayıda emir olup olmadığını kontrol etmektir.
 
Boneshapper :

durumu hatırlatayım

Lütfen bana bundan sonrasını söyleyin:

1. "if (timecur == "08:00:00") OrderSend (Symbol(), OP_BUY, Loot, Ask, 50, SL, TP,NULL,0,0,L);" fonksiyonu vardır.

2. 23.08.2010-23.10.2010 döneminde test ediyorum.

3. 10/12/2010 tarihine kadar işlemler 1 adet için normal olarak açılır.

4. Ancak 10/12/2010'da fonksiyon, mevduatın izin verdiği ölçüde (yaklaşık 7 adet) maksimum işlemleri açar.

Sebebini anlayamıyorum, saniyede en az 5 tik geçip sonuç olarak bu kadar çok açmayı başarıyor olabilir mi yoksa başka bir şey mi?

çok minnettar olacağım, teşekkürler

Açık siparişlerin sayısını kontrol etmek için basit bir fonksiyon:

 int Opened(){
     int Orders= 0 ;
     for ( int cnt= OrdersTotal ()- 1 ; cnt>= 0 ; cnt--){
       if ( OrderSelect (cnt,SELECT_BY_POS,MODE_TRADES)){
         if (OrderSymbol()== Symbol ()){
           if (OrderMagicNumber()==Magic){
               if (OrderType()< 2 )Orders++;
      } } } }       
   return (Orders);
} 

Opened() işlevi, start() işlevinin dışında olmalıdır. Kodun en sonunda yapabilirsiniz.

Durumunuza ekleyin:

 if (timecur == "08:00:00" && Opened()== 0 ) OrderSend ( Symbol (), OP_BUY, Loot, Ask, 50 , SL, TP, NULL , 0 , 0 ,L);
 
DhP :

Açık siparişlerin sayısını kontrol etmek için basit bir fonksiyon:

Durumunuza ekleyin:


Evet, gerçekten yardımcı oldu, ama sadece birkaç sipariş açacağım ve bunlar birbirine bağlı olmamalı.Bir işlemin açılışını belirli bir bayrakla sınırlamak istiyorum ve hepsi bu.

ben böyle yazdım

intControl;

if ((timecur == "08:00:00") && (Kontrol == 0)) OrderSend (Symbol(), OP_BUY, Loot,Ask, 50, SL, TP,NULL,0,0,L);
Uyarı( GetLastError() );
kontrol=1;

Ve sadece siparişi kapattığımda sıfır döndü

SiparişKapat(Bilet,Yağma,Teklif,50,R);
Uyarı(GetLastError());
kontrol=0;

Ama neden böyle bir kayıt yardımcı olmadı.Belki bir yerde bir hata yaptım?Lütfen yardım edin

 
Boneshapper :


Evet, gerçekten yardımcı oldu, ama sadece birkaç sipariş açacağım ve bunlar birbirine bağlı olmamalı.Bir işlemin açılışını belirli bir bayrakla sınırlamak istiyorum ve hepsi bu.

ben böyle yazdım

intControl;

if ((timecur == "08:00:00") && (Kontrol == 0)) OrderSend (Symbol(), OP_BUY, Loot,Ask, 50, SL, TP,NULL,0,0,L);
Uyarı(GetLastError());
kontrol=1;

Ve sadece siparişi kapattığımda sıfır döndü

SiparişKapat(Bilet,Yağma,Teklif,50,R);
Uyarı(GetLastError());
kontrol=0;

Ama neden böyle bir kayıt yardımcı olmadı.Belki bir yerde bir hata yaptım?Lütfen yardım edin

İşlevi istediğiniz gibi "parçalayabilirsiniz". Tüm arzularınızı yerine getirebilir.

Örneğin, ne tür bir operasyonla ilgilendiğinizi veya hangi Magics ile ilgilendiğinizi belirtebilir veya bir pozisyon açmak için bir koşul ve çok daha fazlasını girebilirsiniz.

İşte Al ve Sat'a bölünmenin bir örneği:

 int Opened( int OP){
     int Orders= 0 ;
     for ( int cnt= OrdersTotal ()- 1 ; cnt>= 0 ; cnt--){
       if ( OrderSelect (cnt,SELECT_BY_POS,MODE_TRADES)){
         if (OrderSymbol()== Symbol ()){
           if (OrderMagicNumber()==Magic){
               if (OP==OP_BUY)Orders++;
               if (OP==OP_SELL)Orders++;
      } } } }       
   return (Orders);
 } 

İmkanlarımız sadece hayal gücümüzle sınırlıdır. Kesinlikle başarılı olacaksın.

 
DhP :

İşlevi istediğiniz gibi "parçalayabilirsiniz". Tüm arzularınızı yerine getirebilir.

Örneğin, ne tür bir operasyonla ilgilendiğinizi veya hangi Magics ile ilgilendiğinizi belirtebilir veya bir pozisyon açmak için bir koşul ve çok daha fazlasını girebilirsiniz.

İşte Al ve Sat'a bölünmenin bir örneği:

İmkanlarımız sadece hayal gücümüzle sınırlıdır. Bekle ve işe yarayacak.


Deneyeceğim, çok teşekkür ederim!
 

Bu arada, bayraklar hakkında.

Farklı işlemlerin eylemini değiştirmek için farklı bayrakları bir aktarma sistemi olarak kullanabilirsiniz. Herhangi bir isteğinizi yerine getirme konusunda oldukça yetenekliler.

Ancak neyin ve nasıl çalışmasını istediğinize dair net bir resme sahip olmak önemlidir.

Bir demiryolu kavşağında olduğu gibi, geçiş noktaları sistemine aşina olmalısınız.

 

SW. profesyoneller, söyleyin bana... Kendi hesaplamalarınızı çizelgede çizmeniz için bir komut dosyası var. Çizmeye başlamak için, onu gezginden grafiğe sürüklemeniz gerekir. Soru şudur - bir tuşa basarak (mevcut olanlardan birine sahip olun veya atayın) " Grafik Araçlar " panelinden çağrılan komut dosyasını yapmak mümkün müdür?

 
kon12 :

SW. profesyoneller, söyleyin bana... Kendi hesaplamalarınızı çizelgede çizmeniz için bir komut dosyası var. Çizmeye başlamak için, onu gezginden grafiğe sürüklemeniz gerekir. Soru şudur - bir tuşa basarak (kendi veya mevcut olanlardan birine atanmış) "Grafik Araçları" panelinden çağrılan komut dosyasını yapmak mümkün müdür?


Kısayol Tuşları

Kısayol tuşları (hızlandırıcı tuşlar), menülere veya kontrol panellerine erişmeden çeşitli komutları hızlı bir şekilde yürütmenizi sağlayan tuşlar ve tuş kombinasyonlarıdır.

  • "ï" - sola kayan grafik;

  • "ð" - sağa kayan çizelge;

  • "ñ" - hızlı tablo sola kaydırma ve sabit bir ölçek olması durumunda - tablo yukarı kaydırma;

  • "ò" hızlı çizelge sağa kayar ve sabit bir ölçek durumunda - çizelge aşağı kayar;

  • Numpad 5 – Grafiğin otomatik dikey ölçeğini değiştirdikten sonra geri yükleme. Ve sabit bir ölçekle - grafiğin görünürlük sınırlarına dönüşü;

  • Sayfa Yukarı - sola hızlı kaydırma tablosu;

  • Page Down - sağa hızlı kaydırma;

  • Ana Sayfa — grafiği en başa taşıyın;

  • Bitiş — grafiği sonuna taşıyın;

  • "-" — grafiği küçültün;

  • "+" - grafik ölçeğini artırın;

  • Sil — seçilen tüm grafik nesneleri silin;

  • Backspace - grafik penceresinde en son çizilen nesneleri silin;

  • Girin - hızlı gezinme penceresini açın / kapatın;

  • Esc - iletişim kutularını kapat;

  • F1 - bu "Kullanıcı Kılavuzunu" açın;

  • F2"Alıntı Arşivi" penceresini açın;

  • F3 - "Global değişkenler" penceresini açın;

  • F4 - danışmanların editörünü yükleyin MetaEditor ;

  • F6 - çizelge penceresine eklenmiş Uzman Danışmanı test etmek için "Test Edici" penceresini çağırın;

  • F7 - ayarları değiştirmek için grafik penceresine eklenmiş Uzman Danışman özelliklerinin bulunduğu pencereyi çağırın;

  • F8 - grafik ayarları penceresini çağırın;

  • F9 - "Yeni Düzen" penceresini çağırın;

  • F10"Teklifler penceresini" açın;

  • F11 - tam ekran modunu etkinleştirin / devre dışı bırakın;

  • F12 - grafiği bir çubuk sola hareket ettirin;

  • Shift+F12 — grafiği bir çubuk sağa hareket ettirin;

  • Shift + F5 - önceki profile geçin;

  • Alt+1 — grafiği bir dizi çubuk olarak sunun (çubuğa dönüştürün);

  • Alt+2 — grafiği bir dizi Japon şamdanı olarak sunun (muma dönüştürün);

  • Alt + 3 - grafiği kesikli bir çizgi olarak sunun (doğrusal hale dönüştürün);

  • Alt+A — Expert Advisor'ın tüm test veya optimizasyon sonuçlarını panoya kopyalayın;

  • Alt+W - grafik yönetim penceresini çağırın;

  • Alt+F4 — istemci terminalini kapatın;

  • Alt+Geri Al veya Ctrl+Z - nesnenin silinmesini iptal edin;

  • Ctrl+A — tüm gösterge pencerelerinin varsayılan yüksekliğini ayarlayın;

  • Ctrl+B - "Nesnelerin listesi" penceresini çağırın;

  • Ctrl+C veya Ctrl+Insert — panoya kopyalayın;

  • Ctrl+E - bir danışmanın kullanımını etkinleştirin/devre dışı bırakın;

  • Ctrl+F - "Artı işareti" etkinleştirin;

  • Ctrl+G - ızgarayı göster/gizle;

  • Ctrl+H - OHLC çizgisini göster/gizle;

  • Ctrl+I — "Gösterge listesi" penceresini açın;

  • Ctrl+L — birimleri göster/gizle;

  • Ctrl+P - grafiği yazdır;

  • Ctrl+S — grafiği "CSV", "PRN", "HTM" uzantılı bir dosyaya kaydedin;

  • Ctrl+W veya Ctrl+F4 — grafik penceresini kapatın;

  • Ctrl+Y — nokta ayırıcılarını göster/gizle;

  • Ctrl+Z veya Alt+Geri Al - nesnenin silinmesini iptal edin;

  • Ctrl+D"Veri penceresini" açar/kapatır;

  • Ctrl+M"Piyasa İzleme" penceresini açar/kapatır;

  • Ctrl+N"Gezgin" penceresini açar/kapatır;

  • Ctrl+O - "Ayarlar" penceresini açın;

  • Ctrl+R"Test Edici" penceresini açar/kapatır;

  • Ctrl+T"Terminal" penceresini açın/kapatın;

  • Ctrl+F5 - sonraki profile geç ;

  • Ctrl+F6 — sonraki grafik penceresini etkinleştirin;

  • Ctrl+F9 — "Terminal - Ticaret" penceresini açın ve kontrol odağını ona çevirin. Bundan sonra klavyeyi kullanarak ticaret faaliyetlerini yönetebilirsiniz.

"Hesaplar" grubunun öğeleri dışında, "Gezgin" penceresinin herhangi bir öğesini çağırmak için kısayol tuşları atamak mümkündür. Bir öğeye klavye kısayolu atamak için, içerik menüsünden "Kısayol Tuşu Ata" komutunu çalıştırmalısınız. Atanan kısayol tuşları, önceden tanımlanmış olanlardan önceliklidir. Örneğin, başlangıçta Ctrl + O kombinasyonu , terminal ayarları penceresinin çağrılmasına karşılık gelir. Bakiyede Hacim göstergesinin çağrısı aynı kombinasyona atanmışsa, Ctrl+O tuşlarına basarak terminal ayarları penceresini açmak mümkün olmayacaktır.

 
Vinin :

Kısayol Tuşları

Kısayol tuşları (hızlandırıcı tuşlar), menülere veya kontrol panellerine erişmeden çeşitli komutları hızlı bir şekilde yürütmenizi sağlayan tuşlar ve tuş kombinasyonlarıdır.


Kendimi tam olarak ifade edemedim. Soru şudur - simgeye (örneğin, Fibo simgesi) tıklayarak " Grafik Araçları " panelinden çağrılan komut dosyasını yapmak mümkün müdür?
Neden: