Forumu kirletmemek için herhangi bir acemi sorusu. Profesyonel, kaçırmayın. Sensiz, hiçbir yerde - 6. - sayfa 311

 
ALXIMIKS :

merhaba, sorduğun şeyi başka bir şekilde ifade et, çok net değil.


cevap verdiğiniz için teşekkürler. EA'mda:

eğer (koşul)

{iki buystop ve sellstop siparişi açık}

ve pozisyonlardan biri açıldığında, en yakın emrin silinmesi ve en yakın emrin silinmesi gerekir, çünkü şu anda başka emirler olabilir - gerçek fiyattan uzakta

Belki burada bir emri silmek için bir açık pozisyon sayacı + bir komut dosyası kullanın (doğru düşünüyorsam nasıl yapacağımı bilmiyorum, yeni başlıyorum) Bilgiler için şimdiden teşekkür ederim.

 
PGM5 :


ve pozisyonlardan biri açıldığında, en yakın emrin silinmesi ve en yakın emrin silinmesi gerekir, çünkü şu anda başka emirler olabilir - gerçek fiyattan uzakta

Belki burada bir emri silmek için bir açık pozisyon sayacı + bir komut dosyası kullanın (doğru düşünüyorsam nasıl yapacağımı bilmiyorum, yeni başlıyorum) Bilgiler için şimdiden teşekkür ederim.


Lütfen terminolojiyi öğrenin, aksi takdirde özellikle neye ihtiyacınız olduğunu anlamak hala o problemdir.

Bekleyen iki emir veriyorsunuz, biri açılırsa neyi silmeniz gerekiyor?

En yakın emir harika bir kavram, bir sonraki emir açık pozisyon yönünde mi yoksa karşısında mı yoksa tam tersini silmeniz gerektiğini mi söylüyorsunuz?

Başka izinler de var - nereden geliyorlar? manuel ticaretten? aynı Expert Advisor'dan ancak farklı koşullar altında mı açılıyor?

Belirli bir cevaba mı ihtiyacınız var yoksa soru kadar aptalca mı? (soruyu formüle etmek için fazladan bir dakika harcayın - herkes bundan faydalanacaktır)

 
ALXIMIKS :

Bu satırları okurken, mesajlarda okuma yazma bilmemekle, daha doğrusu tembellikle nasıl suçlandığımı hatırlıyorum ve şimdi daha da yanıldığımı anlıyorum.

1) çizim nedir? (sizin anlayışınıza göre)

2) MACD'de sapma bulmak için temel işlevler nelerdir?

3) Arama motoruna "divergence" yazıp "Kod Tabanı" kategorisindeki üçüncü bağlantıyı seçmek bu kadar zor mu?

(birinin size hazır bir şey vereceğini ve her şeyi çiğneyeceğini umuyorsanız - umut, insanlar bizimle farklıdır: inananlar ve öyle değil)



Prokseminin ne olduğunu biliyorsunuzdur umarım!Bizsiz de olsanız!Sizce bu forumun metafizikle birbirine yüklenmek için olduğu ortaya çıkıyor?

Risovalka - grafiğe çıktı ile.

Temel işlevler, karmaşık ifadeler kullanmadan yalnızca MQL4 öğreticisi kullanılarak kullanılabilen işlevlerdir.

MACD sapmasını belirlerken gösterge arabellekleri nasıl kullanılır:

nasıl anlaşılır?

 for (i=limit- 1 ; i>= 0 ; i--) 
     {
      BufferMacdMain[i]   = iMACD ( NULL , 0 , macd_fast, macd_slow, macd_signal, PRICE_CLOSE , MODE_MAIN, i);
      BufferMacdSignal[i] = iMACD ( NULL , 0 , macd_fast, macd_slow, macd_signal, PRICE_CLOSE , MODE_SIGNAL, i);
      BufferMacdOsMA[i]   = BufferMacdMain[i] - BufferMacdSignal[i];
      BufferTop[i]        = EMPTY_VALUE ;
      BufferBottom[i]     = EMPTY_VALUE ;
      BufferCross[i]      = EMPTY_VALUE ;
 
       double main2 = BufferMacdMain[i + 2 ];
       double main1 = BufferMacdMain[i + 1 ];
       double sig2  = BufferMacdSignal[i + 2 ];
       double sig1  = BufferMacdSignal[i + 1 ];
 
       if ((main1>=sig1 && main2<sig2) || 
         (main1<sig1 && main2>=sig2))
 
Burger :


Prokseminin ne olduğunu biliyorsunuzdur umarım!Bizsiz de olsanız!Sizce bu forumun birbirini metafizikle yüklemek için olduğu ortaya çıkıyor?

Risovalka - grafiğe çıktı ile.

Temel işlevler, karmaşık ifadeler kullanmadan yalnızca MQL4 öğreticisi kullanılarak kullanılabilen işlevlerdir.

MACD sapmasını belirlerken gösterge arabellekleri nasıl kullanılır:

nasıl anlaşılır?


İlk olarak, sapmanın ne olduğunu ve onu belirlemek için kaç değere ihtiyaç olduğunu anlayın. İşte örneklerle.
 
Burger :


Prokseminin ne olduğunu biliyorsunuzdur umarım!Bizsiz de olsanız!Sizce bu forumun metafizikle birbirine yüklenmek için olduğu ortaya çıkıyor?

Risovalka - grafiğe çıktı ile.

Temel işlevler, karmaşık ifadeler kullanmadan yalnızca MQL4 öğreticisi kullanılarak kullanılabilen işlevlerdir.

MACD sapmasını belirlerken gösterge arabellekleri nasıl kullanılır:

nasıl anlaşılır?


Bu bir medyumlar kulübü değil, yeterli cevaplara ihtiyacınız varsa - yeterli sorular sorun. Nasıl formüle edeceğinizi bilmiyorsanız - uzaklardan gidin, ancak net olması ve belirli bir bireyin bu veya bu terimle ne anlama geldiğini yüz kez sormanıza gerek kalmaması için.

Temel işlevler, karmaşık ifadeler kullanmayan işlevlerdir. Muhteşem.

Döngü kapatma parantezleri olmadan kod, koşuldan sonra işlevler olmadan - ne umuyorsunuz?

for (i=limit- 1 ; i>= 0 ; i--)       //цикл  расчета нерассчитанных баров, наверное
     {
      BufferMacdMain[i]   = iMACD ( NULL , 0 , macd_fast, macd_slow, macd_signal, PRICE_CLOSE , MODE_MAIN, i);   // расчет значения основной   линии масд на i баре
      BufferMacdSignal[i] = iMACD ( NULL , 0 , macd_fast, macd_slow, macd_signal, PRICE_CLOSE , MODE_SIGNAL, i); // расчет значения сигнальной линии масд на i баре
      BufferMacdOsMA[i]   = BufferMacdMain[i] - BufferMacdSignal[i];   // разница основной и сигнальной линии масд на i баре
      BufferTop[i]        = EMPTY_VALUE ;                               // буфер заполняется EMPTY_VALUE на i баре (не рисуется на графиках)
      BufferBottom[i]     = EMPTY_VALUE ;                               // буфер заполняется EMPTY_VALUE на i баре (не рисуется на графиках)
      BufferCross[i]      = EMPTY_VALUE ;                               // буфер заполняется EMPTY_VALUE на i баре (не рисуется на графиках)
 
       double main2 = BufferMacdMain[i + 2 ];                           // переменная берет значение основной линии масд на i+2 баре с массива BufferMacdMain
       double main1 = BufferMacdMain[i + 1 ];                           // переменная берет значение основной линии масд на i+1 баре с массива BufferMacdMain
       double sig2  = BufferMacdSignal[i + 2 ];                         // переменная берет значение сигнальной линии масд на i+2 баре с массива BufferMacdSignal
       double sig1  = BufferMacdSignal[i + 1 ];                         // переменная берет значение сигнальной линии масд на i+1 баре с массива BufferMacdSignal
 
       if ((main1>=sig1 && main2<sig2) ||                       // если main1>=sig1 и main2<sig2 тогда будет выполнятся условие (сигнальная пересекает основную снизу вверх)
         (main1<sig1 && main2>=sig2))                         // если main1<sig и main2>=sig2 тогда будет выполнятся условие  (сигнальная пересекает основную сверху вниз)
 
ALXIMIKS :


Lütfen terminolojiyi öğrenin, aksi takdirde özellikle neye ihtiyacınız olduğunu anlamak hala o problemdir.

Bekleyen iki emir veriyorsunuz, biri açılırsa neyi silmeniz gerekiyor?

En yakın emir harika bir kavram, bir sonraki emir açık pozisyon yönünde mi yoksa karşısında mı yoksa tam tersini silmeniz gerektiğini mi söylüyorsunuz?

Başka izinler de var - nereden geliyorlar? manuel ticaretten? aynı Expert Advisor'dan ancak farklı koşullar altında mı açılıyor?

Belirli bir cevaba mı ihtiyacınız var yoksa soru kadar aptalca mı? (soruyu formüle etmek için fazladan bir dakika harcayın - herkes bundan faydalanacaktır)

Evet, her şeyi doğru anladınız: bir emir açarken karşıdaki bekleyen emri silmeniz gerekiyor, diğer emirler aynı danışmandan ama farklı koşullar altında açılıyor

Şimdiden teşekkürler.

 
PGM5 :

Evet, her şeyi doğru anladınız: bir emir açarken karşıdaki bekleyen emri silmeniz gerekiyor, diğer emirler aynı danışmandan ama farklı koşullar altında açılıyor

Şimdiden teşekkürler.


Ne istediğinizi doğru anladıysam: Bu mekanizmanın adı OCO (Biri Diğerini İptal Ediyor - biri diğerini iptal ediyor). Böyle bir oran, örneğin, bir "piyasa emri" (MT4 açısından) için alma ve durdurma ile ilgilidir - biri (al veya durdur) çalıştı, ikincisi otomatik olarak silinecek ve tam olarak uygulama o kadar önemsiz bir görev değil . Çok karmaşık bir algoritma anlamında değil, basitçe çözülmemiş olması anlamında. Siparişlerin paralel muhasebesini yazmanız gerekir: siparişlerin bağlantılı olduğu özniteliği girin ve izleyin. Yanılmıyorsam, bu mekanizma MT5'te de uygulanmadı, ancak değişim terminalleri için bu standart bir işlevdir ve sunucu tarafında çalışır.

Mekanizmayı müşteri tarafında uygulamak, sihirle "oynamak" mümkündür (o zaman "çok" zor olmayacaktır): sadece bir tanesinin kalması gereken tüm siparişler aynı sihire sahiptir. Kontrol ederken: bir pazar varsa, diğerleri silinir. O zaman sihrin eşlik etmesi gerekiyor. Sihirbaz için ayrı bir dizi ayırın: birden fazla siparişe eşlik etmeniz gerekebilir. Sihir, bu nedenle, global değişkenler veya bir dosyaya yazılırken kaybolamaz. Daha küresel olarak yapılırsa (yalnızca siparişlerin bağlanabilirliğini değil, aynı zamanda uzmanın kendi kararlarını belirlemesini de dikkate alarak), o zaman muhasebe mekanizması daha karmaşık hale gelir: sihir zaten bileşik hale gelecektir ve bunun aslında desteklenmesi gerekir / normal sipariş verme algoritması tarafından "temel" (terminolojinize göre) işlevlerin kullanılmasından çok daha derine genişletildi, ancak yine de hepsi müşteri tarafında: yani, terminal kapatılırsa veya bağlantı kesilirse, çalışmayacak (siparişleri takip et).

 
VladislavVG :

Doğru anladıysam, ne istediğinizi: Bu mekanizmaya OCO (Bir Cansel Diğer - biri diğerini iptal eder) denir. Böyle bir oran, örneğin, bir "piyasa emri" (MT4 açısından) için alma ve durdurma ile ilgilidir - biri (al veya durdur) çalıştı, ikincisi otomatik olarak silinecek ve tam olarak uygulama o kadar önemsiz bir görev değil . Çok karmaşık bir algoritma anlamında değil, basitçe çözülmemiş olması anlamında. Siparişlerin paralel muhasebesini yazmanız gerekir: siparişlerin bağlantılı olduğu özniteliği girin ve izleyin. Yanılmıyorsam, bu mekanizma MT5'te de uygulanmadı, ancak değişim terminalleri için bu standart bir işlevdir ve sunucu tarafında çalışır.

Mekanizmayı müşteri tarafında uygulamak, sihirle "oynamak" mümkün olsa da (o zaman "çok" zor olmayacak): sadece bir tanesinin kalması gereken tüm siparişler aynı sihire sahiptir. Kontrol ederken: bir piyasa varsa, diğerleri silinir. O zaman sihrin eşlik etmesi gerekiyor. Sihirbaz için ayrı bir dizi ayırın: birden fazla siparişe eşlik etmeniz gerekebilir. Sihir, bu nedenle, global değişkenler veya bir dosyaya yazılırken kaybolamaz. Daha küresel olarak yapılırsa (yalnızca siparişlerin bağlanabilirliğini değil, aynı zamanda uzmanın kendi kararlarını belirlemesini de dikkate alarak), o zaman muhasebe mekanizması daha karmaşık hale gelir: sihir zaten bileşik hale gelecektir ve bunun aslında desteklenmesi gerekir / normal sipariş verme algoritması tarafından "temel" (terminolojinize göre) işlevlerin kullanılmasından çok daha derine genişletildi, ancak yine de hepsi müşteri tarafında: yani, terminal kapatılırsa veya bağlantı kesilirse, çalışmayacak (siparişleri takip et).



Üzgünüm, bu kadar karmaşık olduğunu bilmiyordum. Sistemi nasıl basitleştireceğimi düşüneceğim.

 
PGM5 :

Üzgünüm, bu kadar karmaşık olduğunu bilmiyordum. Sistemi nasıl basitleştireceğimi düşüneceğim.



Yardım etmek.
 


Bu sadece çok "mütevazı" bir uygulamadır ve ayrıca genişletilebilir değildir: Danışmanın tüm emirlerini veya bir piyasa varsa, verilen enstrüman için verilen sihirle tüm emirleri siler. Yani enstrüman tarafından verilen tüm emirlerin (sihirli/sihirsiz) OCO oranı ile ilişkili olduğunu kabul eder.

Bu hiç de böyle olmayabilir. Örneğin, verilen 20 siparişten 2-3 bağlı 2 veya 3 sipariş grubu olabilir ve geri kalanı hiç bağlantılı değildir. Bu Uzman Danışman böyle bir muhasebeye genişletilemez - her şeyi yeniden yazmanız gerekir veya bu Uzman Danışmanı manuel modda kullanabilirsiniz: o zaman bağlı sipariş gruplarının sihirlerinin kaydını manuel olarak tutmanız ve mümkün olduğu kadar çok Uzman Danışmanı "askıya almanız" gerekir. ticarette emir grupları vardır.