MQL5 dilini sıfırdan kendi kendine öğrenme - sayfa 56

 
Valeriy Yastremskiy :

Genel olarak, zıt etkiye sahip iki motivasyon vardır. Yakın bir SL, kaybı azaltır ve SL'de kapanma olasılığını yükseltir. SL oynaklık açısından yakınsa, o zaman sizin seçeneğiniz daha iyidir, eğer normal bir seviyedeyse ve SL'yi yukarı çekmek tepki frekansını etkilemiyorsa, o zaman benimki.

Strateji alanına girdiniz ;) öğretin   önce 1 bu ayarlayın ve sonra hareket ettirin

 
VVT :

Strateji alanına girdiniz ;) öğretin   önce 1 bu ayarlayın ve sonra hareket ettirin

Merhaba! Bir yandan haklısın - sadece bir başabaş noktasında durabilir ve sadece bunun için kod yazabilirsiniz. Ancak, bence, başlangıçta takip eden durdurmanın genel olarak nasıl çalışması gerektiğine dair bir anlayış yoksa, bu da en iyi seçenek değildir. Ayrıca, neredeyse tüm Uzman Danışmanlar, açıkça tanımlanmış bir stratejiye göre yazılmıştır. Bu gibi durumlarda dedikleri gibi - "kıyıda müzakere gerekiyor."

Elektronik mühendisinin içimde tekrar "uyandığını" hissediyorum.

Saygılarımla, Vladimir.

 
Vasiliy Sokolov :

Ne demek istediğini anladım. İki takip eden permütasyon fonksiyonunuz var. İlk işlev, "Sondaki Seviye" parametresi tarafından yönlendirilen, izleyen başa baş noktasına taşır, ikinci işlev, "sondaki adım" parametresi tarafından yönlendirilen, durdurma kaybını fiyatın daha da gerisine çeker. IMHO, ben ilk parametreyi "Başabaş için stop-loss yeniden konumlandırma düzeyi" olarak adlandırırdım - çünkü bu başlı başına bir takip değil, sadece başa baş sıranın yeniden düzenlenmesidir.

Evet Vasily, kesinlikle doğru! Sondaki durma fikrimi doğru anladınız ve formüle ettiniz. Parametrenin başlangıçta şu şekilde adlandırılması gerekiyordu: "Zararı başa baş olarak yeniden düzenleme düzeyi" . Terminoloji benim için hala topal. Teşekkür ederim!

Saygılarımla, Vladimir.

 
MrBrooklin :

Merhaba! Bir yandan haklısınız - sadece bir başabaş noktasında durabilir ve yalnızca bunun için kod yazabilirsiniz. Ancak, bence, başlangıçta takip eden durdurmanın genel olarak nasıl çalışması gerektiğine dair bir anlayış yoksa, bu da en iyi seçenek değildir. Ayrıca, neredeyse tüm Uzman Danışmanlar, açıkça tanımlanmış bir stratejiye göre yazılmıştır. Bu gibi durumlarda dedikleri gibi - "kıyıda müzakere gerekiyor."

Elektronik mühendisinin içimde tekrar "uyandığını" hissediyorum.

Saygılarımla, Vladimir.

Merhaba! Stoploss'u adım adım nasıl hareket ettireceğinizi öğrenirseniz, ondan sonra bir yer olduğu sürece gerekirse 100 kez hareket ettirebilirsiniz ;)

Danışman stratejiye göre ayarlanır, tersi değil

 
MrBrooklin :

Evet Vasily, kesinlikle doğru! Sondaki durma fikrimi doğru anladınız ve formüle ettiniz. Parametrenin başlangıçta şu şekilde adlandırılması gerekiyordu: "Zararı başa baş olarak yeniden düzenleme düzeyi" . Terminoloji benim için hala topal. Teşekkür ederim!

Saygılarımla, Vladimir.


İyi günler Vladimir. Bu yazıma bir göz atın. Orada, parkurlarda, kar seviyesinden değişiklik yapabilir ve seçilen transfer seviyesi hakkında endişelenmenize gerek kalmaz.
https://www.mql5.com/ru/forum/352460/page55#comment_18711100
 
Aleksey Masterov :

İyi günler Vladimir. Bu yazıma bir göz atın. Orada, parkurlarda, kar seviyesinden değişiklik yapabilir ve seçilen transfer seviyesi hakkında endişelenmenize gerek kalmaz.
https://www.mql5.com/ru/forum/352460/page55#comment_18711100

Merhaba Alexey! Gönderinize hemen yanıt veremediğim için üzgünüm. Bağlantı çok ilginç. 11 tür izleme ve işlev kitaplığının tümünün kodlarına baktım. MQL4 dilinde yazılmış olmasına rağmen her şey çok bilgilendirici. Dürüst olmak gerekirse, bu kadar çok takip türü olduğunu hayal bile etmemiştim. Yardımın için çok teşekkür ederim!

Saygılarımla, Vladimir.

 

Herkese günaydın ve iyi bir ruh hali!

MQL5 programlama dilini öğrenmeye devam ediyorum. Vasily Sokolov'dan gelen değişiklikleri dikkate alarak, açık bir pozisyon için Stop Loss Trailing Expert Advisor algoritması şimdi şöyle görünüyor:

  1. Açık bir pozisyonun Zarar Durdurma seviyesinin takibini (bakımını) otomatikleştirmek için bir Uzman Danışman oluşturuyoruz.
  2. EA'da, iki parametreli bir giriş parametreleri bloğu oluşturuyoruz: "Başabaş için Kaybı Durdur permütasyon seviyesi" ve "Sondaki adım".
  3. Yeni alıntılar geldiğinde, bunları OnTick() işleviyle işleriz. İzleme, yalnızca geçerli sembol için yeni bir onay işareti geldiğinde çalışır.
  4. OnTick olayının varış zamanında veri talep ediyoruz.
  5. Her Alış pozisyonu için, mevcut fiyatın açık pozisyonun fiyatına göre nerede olduğunu belirleriz.
  6. Mevcut fiyat, pozisyon açılış fiyatından yüksekse, hangi seviyeye yükseldiğini kontrol ederiz.
  7. Mevcut fiyat, giriş parametrelerinde belirtilen "Zararı Durdur-başabaş düzeyi permütasyonu"na ulaştıysa, Durdur'u hareket ettirin . Kayıp Satın alma pozisyonunun açılış fiyatına eşit kayıpsız seviyeye . Aksi takdirde hiçbir şey yapmıyoruz.
  8. Mevcut fiyat, "Başabaş seviyesine kadar Zararı Durdur"u "Sondaki adım"a eşit bir miktarda aşmışsa, Durdur Satın alma pozisyonunun açılış fiyatı seviyesinden zarar hareketi fiyat, bu pozisyon için belirlenen Kâr Al düzeyine ulaşana kadar "Son Adım"a eşit bir değerle ve bu şekilde devam eder.
  9. Fiyat tersine dönerse ve zaten kayıpsız olan seviyeye ulaşırsa Durdur Kayıp , daha sonra pozisyon kapatılır.
  10. [Aşağıdaki bir Satış pozisyonu için benzer bir açıklamadır]

Vasily Sokolov'dan takip eden açıklamanın basitleştirilmiş bir versiyonu:
  1. Takip, OnTick işlevinde yeni bir onay işareti geldiğinde işlenir.
  2. Son durak iki ardışık bölümden oluşur:
  3. Bölüm 1. Her açık pozisyon için fiyat hesaplanır ve buna ulaşıldığında zararı durdurma başabaş noktasına taşınır.
  4. Bölüm 2. Stop başabaşa taşındıktan sonra, aktif pozisyon için stop'u fiyatla birlikte çekme algoritması etkinleştirilir.

Ardından, kalıbı izlemeniz gerekir:

Bölüm 1. Başabaş noktasına geçiş:
  • Satın almak için;
  • Satılık;
Bölüm 2. Durdurmanın çekilmesi:
  • Satın almak için;
  • Satılık;

Açık pozisyon için Stop Loss takip danışmanının algoritmasının bu versiyonu sonuncusu ve ben onu kullanarak program kodunu yazmaya devam ediyorum.

Saygılarımla, Vladimir.

 
VVT :

Merhaba! Stoploss'u bir kez adım adım hareket ettirmeyi öğrenirseniz, ondan sonra gerekirse 100 kez hareket ettirebilirsiniz, yeter ki bir yer var ;)

Danışman stratejiye göre ayarlanır, tersi değil

Merhaba! Daha önceki yazısında, kararınızda haklı olduğunuzu belirtmiştik. Mesele şu ki, Vasily Sokolov'un sağladığı yardımla, Stop Loss Trailing Expert Advisor'ın açık bir pozisyon için algoritması nispeten hızlı bir şekilde oluşturuldu, bu yüzden ona bağlı kalacağım.

Saygılarımla, Vladimir.

 
Zor yaklaşımınız bir Uzman yazmaktır . Ve pazara ihtiyaç yok.
 

MQL5 programlama dilini öğrenmeye devam ediyorum. Daha önce açık pozisyonlardan geçen döngünün kodu yayınlanmıştı. Şimdi, döngü başlatıldıktan sonra, mevcut tablodaki sembolle çalışmaya başlıyoruz:

     {
     /* Для работы с символом создадим переменную _Symbol, в которой будем хранить имя символа текущего графика.
        Делаем запрос на сервер. Сервер возвращает нам символ соответствующей открытой позиции и автоматически
        выбирает позицию для дальнейшей работы с ней при помощи функций PositionGetDouble, PositionGetInteger,
        PositionGetString. Если получим от сервера ответ о том, что для текущего символа была выбрана позиция для 
        дальнейшей работы с ней, то в торговом терминале выводим соответствующее сообщение во вкладке "Эксперт".*/
       if ( _Symbol == PositionGetSymbol (i))
         Print ( "Выбираем позицию для дальнейшей работы с ней" ); //
     }

Hızlı geri bildirim alabilmek için periyodik olarak kendi yorumlarımla yazılı kodları yayınlayacağım. Bu konudaki katılımcılardan kodda veya yorumlarda bana göre yanlışlıklar varsa düzeltmelerini rica ederim.

Saygılarımla, Vladimir.

Neden: